2010-07-07 10 views
0

Я выбрал растровое изображение 8bpp в CDC и использовал :: TextOut() для рисования текста. Качество шрифта ANTIALIASED_QUALITY, но текст выходит в монохромном режиме; нет серых пикселей & зубчатые края.Можно ли нарисовать сглаженный текст на растровом изображении 8bpp в Win32?

Растровое изображение 8bpp было извлечено из растрового изображения 24bpp, на котором на нем был нанесен сглаженный текст, и этот текст в порядке. (Оба типа текста находятся в одной и той же растровой картинке.)

Конечно, я мог бы нарисовать 24bpp и конвертировать, но это сложнее и медленнее. (Более поздний текст изменяется и повторяется много раз.) Можно ли получить сглаженный текст непосредственно в растровое изображение 8bpp? Благодаря!

ответ

0

Нет, сглаживание не работает с 8-бит. Если вам нужны более быстрые обновления, подумайте о том, чтобы сделать свой рисунок с помощью чего-то вроде OpenGL, а не через GDI. С OpenGL рисунок обычно будет выполняться полностью графическим оборудованием, поэтому даже при 32-битных частотах рисунок обычно будет быстрее, чем GDI, делающий 8-бит.

Также стоит отметить, что вам, вероятно, будет лучше с 32-бит/с, чем 8- или 24-bpp в любом случае. GDI может использовать (некоторое) аппаратное ускорение, но, как правило, в лучшем случае с 32-бит.

2

Нет, GDI не производит сглаживание вывода на палитру растрового изображения, и это именно то, что представляет собой растровое изображение в градациях серого.