Click here to Skip to main content
15,896,726 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
GeneralRe: Saving File as JPEG - Encoding problems Pin
Naniw11-Oct-11 1:10
Naniw11-Oct-11 1:10 
AnswerRe: Saving File as JPEG - Encoding problems Pin
Chris Losinger11-Oct-11 3:35
professionalChris Losinger11-Oct-11 3:35 
QuestionRe: Saving File as JPEG - Encoding problems Pin
David Crow11-Oct-11 4:07
David Crow11-Oct-11 4:07 
QuestionSetting a bmp as a window background Pin
jkirkerx10-Oct-11 13:40
professionaljkirkerx10-Oct-11 13:40 
AnswerRe: Setting a bmp as a window background Pin
TheGreatAndPowerfulOz10-Oct-11 14:45
TheGreatAndPowerfulOz10-Oct-11 14:45 
GeneralRe: Setting a bmp as a window background Pin
jkirkerx10-Oct-11 16:01
professionaljkirkerx10-Oct-11 16:01 
GeneralRe: Setting a bmp as a window background Pin
jkirkerx10-Oct-11 16:14
professionaljkirkerx10-Oct-11 16:14 
GeneralRe: Setting a bmp as a window background Pin
Richard MacCutchan10-Oct-11 22:15
mveRichard MacCutchan10-Oct-11 22:15 
GeneralRe: Setting a bmp as a window background Pin
jkirkerx11-Oct-11 7:01
professionaljkirkerx11-Oct-11 7:01 
GeneralRe: Setting a bmp as a window background Pin
Richard MacCutchan11-Oct-11 7:43
mveRichard MacCutchan11-Oct-11 7:43 
GeneralRe: Setting a bmp as a window background Pin
jkirkerx11-Oct-11 8:41
professionaljkirkerx11-Oct-11 8:41 
GeneralRe: Setting a bmp as a window background Pin
Richard MacCutchan11-Oct-11 10:56
mveRichard MacCutchan11-Oct-11 10:56 
GeneralRe: Setting a bmp as a window background Pin
CPallini10-Oct-11 22:28
mveCPallini10-Oct-11 22:28 
GeneralRe: Setting a bmp as a window background Pin
jkirkerx11-Oct-11 7:02
professionaljkirkerx11-Oct-11 7:02 
QuestionCDC::GetDeviceCaps, how to know if AlphaBlend is supported or not? Pin
Code-o-mat10-Oct-11 9:36
Code-o-mat10-Oct-11 9:36 
AnswerRe: CDC::GetDeviceCaps, how to know if AlphaBlend is supported or not? Pin
Richard MacCutchan10-Oct-11 10:26
mveRichard MacCutchan10-Oct-11 10:26 
GeneralRe: CDC::GetDeviceCaps, how to know if AlphaBlend is supported or not? Pin
Code-o-mat10-Oct-11 10:30
Code-o-mat10-Oct-11 10:30 
GeneralRe: CDC::GetDeviceCaps, how to know if AlphaBlend is supported or not? Pin
Richard MacCutchan10-Oct-11 10:34
mveRichard MacCutchan10-Oct-11 10:34 
GeneralRe: CDC::GetDeviceCaps, how to know if AlphaBlend is supported or not? Pin
Code-o-mat10-Oct-11 22:06
Code-o-mat10-Oct-11 22:06 
GeneralRe: CDC::GetDeviceCaps, how to know if AlphaBlend is supported or not? Pin
Code-o-mat10-Oct-11 23:15
Code-o-mat10-Oct-11 23:15 
AnswerRe: CDC::GetDeviceCaps, how to know if AlphaBlend is supported or not? Pin
Randor 10-Oct-11 12:26
professional Randor 10-Oct-11 12:26 
GeneralRe: CDC::GetDeviceCaps, how to know if AlphaBlend is supported or not? Pin
Code-o-mat10-Oct-11 22:03
Code-o-mat10-Oct-11 22:03 
GeneralRe: CDC::GetDeviceCaps, how to know if AlphaBlend is supported or not? Pin
Randor 11-Oct-11 17:01
professional Randor 11-Oct-11 17:01 
GeneralRe: CDC::GetDeviceCaps, how to know if AlphaBlend is supported or not? Pin
Code-o-mat10-Oct-11 23:09
Code-o-mat10-Oct-11 23:09 
GeneralRe: CDC::GetDeviceCaps, how to know if AlphaBlend is supported or not? Pin
Randor 11-Oct-11 17:35
professional Randor 11-Oct-11 17:35 
Code-o-mat,

The author of the printer driver reports the device capabilities. And because everyone's cousin and grandma is a software engineer these days... using software is like a box of chocolates... you never know what your gonna get.

Code-o-mat wrote:
Another question came up, if a printer device reports blit support (RASTERCAPS -> RC_BITBLT), does that mean you can also blit from the device or only that you can blit to it?


Bit-block transfers are suppose to be a two-way street. When you call BitBlt on a printer device context... the win32 subsystem performs some internal magic and then end up calling the printer drivers DrvBitBlt function[^]. If the device driver does not implement DrvBitBlt... it uses the default EngBitBlt function[^] (This is what the Gdi32 BitBlt uses via SYSCALL... it forwards to win32k.sys!NtGdiEngBitBlt)

Come to think of it... this is probably why some of the virtual printer drivers you are testing support alpha blending... the driver probably does not implement DrvAlphaBlend [^]so it ends up calling the EngAlphaBlend function[^].

Maybe you should consider giving your employer or users the option of using an open-source virtual printer such as Virtual Image Printer[^]. At least you would have some consistency.

I've been through similar battles with virtual USB, virtual serial and virtual printer drivers. I am very happy that Microsoft is forcing x64 device drivers to be signed. Unfortunately user-mode printer drivers are still a crapshoot.

Best Wishes,
-David Delaune

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.