GDI+

12/05/2005 - 20:54 por Luis Lince | Informe spam
Hola a todos

Tengo una aplicación que genera unos reportes y les coloca una imagen de
fondo a manera de marca de agua utilizando GDI+, esto lo hace de la
siguiente manera:

...
Gdiplus::ColorMatrix colorMatrix = {1.0f, 0.0f, 0.0f, 0.0f, 0.0f,
0.0f, 1.0f, 0.0f,
0.0f, 0.0f,
0.0f, 0.0f, 1.0f,
0.0f, 0.0f,
0.0f, 0.0f, 0.0f,
(intensidad_watermark/100.0f), 0.0f,
0.0f, 0.0f, 0.0f,
0.0f, 1.0f};
Gdiplus::ImageAttributes imageAtt;
imageAtt.SetColorMatrix(&colorMatrix, Gdiplus::ColorMatrixFlagsDefault,
Gdiplus::ColorAdjustTypeBitmap);
...
Gdiplus::Graphics* device = Gdiplus::Graphics::FromHDC(pDC->m_hDC);
device->DrawImage(img, destRect, 0, 0, img->GetWidth(), img->GetHeight(),
Gdiplus::UnitPixel, &imageAtt);
...

Todo funciona perfecto en la mayoría de las impresoras, pero en alguna
impresoras laser con tunner, la porquería se pone lentísimo al grado que
windows se cuelga, alguien puede ayudarme a solucionar este problema.

De antemano muchas gracias y saludos a todos,

Luis
 

Preguntas similares