RE: CRichEditView Printing issue in Vista.
Unfortunately, I'm not getting a response on this.
Is this because you feel this is expected behavior? That the Vista Desktop
theme which CRichEditView is inheriting should also be transferred to the
printed paper output.
Or because it is too much trouble to download the sample and run it instead
of me posting the code (there's just not much to post)?
Or because CRichEditCtrl and CRichEditView combined with the printing API is
poorly understood so no one wants to tackle it?
How about a different tack. If I insert into the RTF before printing a tag
that sets the foreground and background to black text on white background, do
you see any problems with that that might make it not work correctly?
Anxiously awaiting someone to at least look at the MS sample, reproduce it
and tell me it's expected and I should go away.
--
Leo Violette
Orrtax Software Solutions
www.orrtax.com
"Leo V" wrote:
I have a user who has changed his Vista Desktop Theme to something called,
"High Contrast Black".
1. Right-Click desktop | Personalize
2. Select Window Color and Appearance
3. Open classic appearance properties for more color options
4. Choose High Contrast Black.
In my application, I have a CRichEditView that I have implemented printing on.
Problem is, when they print out some text in this desktop theme, it
transfers that to the printout (white text on black background!).
I don't want the current desktop theme to affect the printed output. I
want my printouts to be black text on white paper regardless of what I set
my desktop theme to.
My code is based on the Wordpad example downloaded from here.
http://msdn2.microsoft.com/en-us/library/51y8h3tk(VS.80).aspx
You can reproduce the problem with this sample.
Any ideas on how to not use the Windows Themed background when printing to
the printer?
Here's a snippet of my code (not much to show really) also based on the
Wordpad sample that I'm including for thoroughness.
void CMyRichEditView::OnFilePrint()
{
m_bInPrint = TRUE;
CRichEditView::OnFilePrint();
m_bInPrint = FALSE;
}
void CMyRichEditView::OnPrint(CDC* pDC, CPrintInfo* pInfo)
{
CRichEditView::OnPrint(pDC, pInfo);
}
BOOL CMyRichEditView::OnPreparePrinting(CPrintInfo* pInfo)
{
return DoPreparePrinting(pInfo);
}
--
Leo Violette
Orrtax Software Solutions
www.orrtax.com