Mój problem polega na tym, że muszę narysować tekst na monochromatycznej bitmapie. Powstała bitmapa musi być wydrukowana na termicznej drukarce POS, więc bitmapa musi mieć 1 bpp.Tekst rysowania na monochromatycznej bitmapie w języku C#
Nie jestem dobry w grafice, więc próbowałem znaleźć próbki. Oto co próbowałem:
Bitmap bmp = new Bitmap(300, 300, PixelFormat.Format1bppIndexed);
using (Graphics g = Graphics.FromImage(bmp))
{
Font font = new Font("Arial", 20, FontStyle.Bold, GraphicsUnit.Point);
g.Clear(Color.White);
g.DrawString(text, font, Brushes.Black, 0, 0);
}
bmp.Save(@"c:\x\x.bmp", ImageFormat.Bmp);
Zapisz się na końcu po prostu sprawdzić wynik. Za pomocą tego kodu otrzymuję następujący wyjątek: Obiekt graficzny nie może zostać utworzony z obrazu, który ma zindeksowany format pikseli.
Czy istnieje JAKIKOLWIEK sposób na narysowanie tekstu na monochromatycznej bitmapie pamięci?
Tylko dla informacji: Potrzebuję tego, bo mój głupi POS drukarki rysuje 0 dokładnie taki sam sposób, jak O, tak, że są niemożliwe do odróżnienia ...
można zwrócić się do normalnej mapy bitowej, a następnie przekonwertować do formatu indeksowanej: http://stackoverflow.com/questions/9010761/c-sharp-convert-bitmap-to-indexed -kolorowy format – BartoszKP