Когда я устанавливаю для этого параметра источник изображения, в результате получается полностью черное изображение - примерно правильного размер.
Если я сохраню записываемое растровое изображение (с помощью PngEncoder), изображение сохранится так, как я и ожидал. Если я перезагружаю изображение PNG с диска в элемент управления «Изображение», оно отображается совершенно нормально.
Однако, если я воссоздаю изображение, повторно сохраняю его и перезагружаю, оно не отображается — оригинал изображение сохраняется.
Меня главным образом интересует, что мне нужно сделать, чтобы записываемое растровое изображение не выглядело черным, поскольку мне не нужно его сохранять и так далее.< /p>
Цель растрового изображения — показать серию полос, темнота которых соответствует значениям в массиве — своего рода гистограмма плотности
Код: Выделить всё
public BitmapSource CreateLineWeightImage()
{
if (LineWeights == null) throw new InvalidOperationException("Must GetLineWeights first");
WriteableBitmap lineWeights = new WriteableBitmap(LineWeightImageWidth, OriginalImage.PixelHeight, 96, 96, PixelFormats.Gray8, null);
lineWeights.Lock();
unsafe
{
for (int y = 0; y < lineWeights.PixelHeight; ++y)
{
for (int x = 0; x < LineWeightImageWidth; ++x)
{
byte* PixelPtr = (byte*)lineWeights.BackBuffer + y * lineWeights.BackBufferStride + x;
*((byte*)PixelPtr) = (byte)LineWeights[y];
}
}
}
lineWeights.Unlock();
LineWeightsImage = lineWeights;
return lineWeights;
}
Иэн
Подробнее здесь: https://stackoverflow.com/questions/787 ... map-in-wpf