Zdravím, mám takový problem. Mám udělaný kod, kde ze souboru načtu stream a ten stream přes alg. převedu do bitmapy to mě funguje, ale jak udělat obráceně? Koumám nad tim přes pul dne a nic se mi nepodařilo vůbec vymyslet, tak jestli by jste mi poradili jak podle vzoru Stream2Bitmap udělat obráceně. Děkuji
private static unsafe Bitmap LoadLand(Stream stream)
{
Bitmap bmp = new Bitmap(44, 44, PixelFormat.Format16bppArgb1555);
BitmapData bd = bmp.LockBits(new Rectangle(0, 0, 44, 44), ImageLockMode.WriteOnly, PixelFormat.Format16bppArgb1555);
BinaryReader bin = new BinaryReader(stream);
int xOffset = 21;
int xRun = 2;
ushort* line = (ushort*)bd.Scan0;
int delta = bd.Stride >> 1;
for (int y = 0; y < 22; ++y, --xOffset, xRun += 2, line += delta)
{
ushort* cur = line + xOffset;
ushort* end = cur + xRun;
while (cur < end) *cur++ = (ushort)(bin.ReadUInt16() | 0x8000);
}
xOffset = 0;
xRun = 44;
for (int y = 0; y < 22; ++y, ++xOffset, xRun -= 2, line += delta)
{
ushort* cur = line + xOffset;
ushort* end = cur + xRun;
while (cur < end) *cur++ = (ushort)(bin.ReadUInt16() | 0x8000);
}
bmp.UnlockBits(bd);
return bmp;
}