1Danke
ERLEDIGT
JA
JA
ANTWORTEN
4
4
ZUGRIFFE
240
240
EMPFEHLEN
-
15.07.08 09:49 #1
- Registriert seit
- Aug 2007
- Ort
- Salzburg, Österreich
- Beiträge
- 50
Hallo zusammen,
Folgendes Problem: Ich hab in meiner Applikation nun in OnPrint eine gaaanz einfache Druckroutine implementiert. Ich definier mir eine Variable sText, fülle die mit meinen Daten. Erstelle mir ein RECT und mit
setze ich die Variable nun auf die (virtuelle) Seite. Wenn ich also nun Drucken ausführe und das ganze am PDFCreator ausdrucke, sieht das wunderschön aus und funktioniert einwandfrei. Drucke ich das Dokument aber auf einem echten Drucker aus wird die Schriftgröße scheinbar größer und sprengt damit den Rahmen den ich in rctColumnL definiert habe (sprich: Das Ergbenis ist "beschnitten"). Ich hab nur leider keine Ahnung wieso und warum.Code :1
pDC->DrawText(sText, &rctColumnL, DT_LEFT);
Liegt es daran das evtl. mit unterschiedlichen DPIs gedruckt wird? Hat ein Drucker einen Systemfont und weicht das Ergebnis deswegen ab?
Viell. kennt jemand das (wahre?) Problem und kann mir weiterhelfen. Ich wäre schon froh wenn man das Problem diagnostizieren könnte!
Dankeschööön!"Nichts tun macht nur dann Spass, wenn man eigentlich viel zu tun hätte."
-
15.07.08 11:31 #2
- Registriert seit
- Jun 2005
- Ort
- Bad Arolsen (Hessen)
- Beiträge
- 556
Hi,
wo definierst du denn den Font? Wenn du keinen Font definierst, wird die Ursache sein, dass im Drucker-DC ein anderer Font benutzt wird als im Bildschirm-DC. Und welchen Map-Mode hast du im DC eingestellt?
Mfg
langer
-
15.07.08 11:58 #3
- Registriert seit
- Aug 2007
- Ort
- Salzburg, Österreich
- Beiträge
- 50
Hallo!
Also ich ruf das ganze in der Funktion OnPrint auf (von daher hoff ich mal das ich nichts am Bildschirm zeichne mit der Routine
). Font hab ich keinen definiert, genausowenig wie ein MapMode (des is alles default) -- was mich nur wundert is, das der PDFCreator (installiert als virtueller Drucker) ein anderes Ergebnis ausspuckt wie der Ausdruck auf einem Lexmark C530. Aber möglich ist ja alles ...
Ich werde jetzt folgendes probieren:
1: Font definieren
2: Map-Mode dezidiert setzen
und dann hoffen das es geht
(seh ich das richtig?)
Danke schon mal für den Hinweis!"Nichts tun macht nur dann Spass, wenn man eigentlich viel zu tun hätte."
-
16.07.08 11:40 #4
- Registriert seit
- Jun 2005
- Ort
- Bad Arolsen (Hessen)
- Beiträge
- 556
Hi,
der Standard-Drucker nimmt als default-Font den System-Font. Der PDF-Creator wird dort seinen eigenen Font haben.
Und als Standard-MapMode wird, wenn man das nicht ändert, MM_TEXT eingestellt. Und dort wird ein Bildschirm-Pixel als ein Druck-Punkt behandelt, wodurch der Druck vom Bildschirm stark abweicht. Allerdings wird dabei die Druckausgabe sehr klein, warum sie hier größer als beim virtuellen Drucker wird, vermag ich nicht zu sagen.
Ich verwende als MapMode immer MM_HIMETRIC, da ist Bildschirmausgabe und Druckausgabe identisch. Beachten muß man da nur, dass die y-Koordinaten von oben nach unten in negativer Richtung verlaufen.
Mfg
langer
-
28.07.08 13:37 #5
- Registriert seit
- Aug 2007
- Ort
- Salzburg, Österreich
- Beiträge
- 50
Aloha!
Merci monsieur -- ich hab nur den Font definieren müssen, schon hat das ganze wunderbar funktioniert
"Nichts tun macht nur dann Spass, wenn man eigentlich viel zu tun hätte."
Ähnliche Themen
-
DrawingContext.DrawText
Von juergen1969 im Forum .NET WPF & SilverlightAntworten: 0Letzter Beitrag: 01.12.09, 16:47 -
Andere Schriftart Andere Schriftgröße
Von Danielku15 im Forum CSSAntworten: 7Letzter Beitrag: 09.11.05, 22:47 -
Outlook 2003 Ordner für die Mail adresse, ein anderer Ordner für die andere Adresse
Von dartox im Forum Office-AnwendungenAntworten: 1Letzter Beitrag: 18.12.04, 16:30 -
Seitenumbruch in OnPrint
Von ZAntjeZ im Forum VisualStudio & MFCAntworten: 0Letzter Beitrag: 01.07.04, 07:53 -
OnPrint von eigenen Button aus aufrufen?
Von ZAntjeZ im Forum VisualStudio & MFCAntworten: 2Letzter Beitrag: 12.05.04, 15:07





Zitieren
Login






