| Autor |
Beitrag |
Lemon
      
Beiträge: 96
Win XP
D5 Standart
|
Verfasst: Sa 03.04.04 12:31
hallo,
habe mit folgendem code versucht, die textausgabe auf den den drucker zu drehen.
das ganze habe ich auch schon fuer stringgrids eingesetzt, und da funktioniert das ohne probleme. nur beim drucker tut sich da nichts. da wird der text ganz normal ausgedruckt.
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| var lf : TLogFont; schrift : TFont; ... Canvas.Font := stringgrids[gridindex].Font; Canvas.Font.Size := 10; schrift := TFont.Create; try schrift.Assign(Canvas.Font); GetObject(schrift.Handle, sizeof(lf), @lf); lf.lfEscapement := 900; lf.lfOrientation := 900; schrift.Handle := CreateFontIndirect(lf); Canvas.Font.Assign(schrift); Canvas.TextOut(links,oben, stringgrids[gridindex].Cells[0,1]); finally schrift.free; end; ... |
kann mir da vielleicht jemand weiterhelfen??
vielen dank schon mal im vorraus.
|
|
Simon Joker
      
Beiträge: 236
Erhaltene Danke: 1
|
Verfasst: Mo 05.04.04 10:27
Hi
Soviel ich weis funktioniert das nur mit TrueType-Schriften. Über prüfe, ob du eine solche verwendest.
|
|
Lemon 
      
Beiträge: 96
Win XP
D5 Standart
|
Verfasst: Di 06.04.04 11:10
erst einmal danke.
das mit der True Type Font hat gestimmt.
ich habe mal die ganze ausgabe auf ein timage gelegt, um zu testen, ob das geht.
ist auch der fall. der text wird gedreht.
beim drucken jedoch passiert wieder gar nichts.
kann das am drucker oder drucken selbst liegen???
|
|
Lemon 
      
Beiträge: 96
Win XP
D5 Standart
|
Verfasst: Sa 01.05.04 18:23
nachdem ich mein programm jetzt erst einmal so weiterprogrammiert habe, waere es doch wichtig, dass ich es hinbekomme den text gedreht zu drucken.
hat vielleicht irgendjemand eine loesung, idee oder sogar ein fertiges script, mit dem ich das problem loesen koennte????
|
|
MathiasH
      
Beiträge: 699
WinXP, Win98SE, Debian, Win95
D5 Stand, D6 Prof
|
Verfasst: So 02.05.04 12:17
du könntest die Schrift in ein TBitmap rendern und sie dann mit CopyRect auf den Drucker-Canvas kopieren, das sollte funktionieren
Dem bitmap gibst du mit textWidth die richtige breite (unterfunktion vom canvas)
könnte allerdings mit der auflösung etwas problematisch werden....
_________________ "Viel von sich reden, kann auch ein Mittel sein, sich zu verbergen."
Friedrich Nietzsche
|
|
Lemon 
      
Beiträge: 96
Win XP
D5 Standart
|
Verfasst: Mo 03.05.04 19:42
allerdings stellt sich mir immernoch die frage, warum die gedrehte textausgabe beim drucken nicht funktioniert.
ich meine, ob ich das mit image oder printer mache ist doch eigentlich egal.
beide benutzen zur textausgabe canvas.textout, also duerfte es doch eigentlich keinen unterschied geben, oder???
ich faende es schon gut, wenn das irgendwie in diese richtung ginge...
|
|
MathiasH
      
Beiträge: 699
WinXP, Win98SE, Debian, Win95
D5 Stand, D6 Prof
|
Verfasst: Mo 03.05.04 20:44
canvas.textout ist zwar beide male im vordergrund, doh geschehen im Hintergrund zum teil grundverschiedenen dinge, aber dank oder wegen der vcl und der api kriegt man als delphi-programmierer davon nicht viel mit
_________________ "Viel von sich reden, kann auch ein Mittel sein, sich zu verbergen."
Friedrich Nietzsche
|
|
Lemon 
      
Beiträge: 96
Win XP
D5 Standart
|
Verfasst: Di 04.05.04 12:03
das heisst also, dass es da nichts zu ruetteln gibt.
oder hat vielleicht jemand mal das gleiche probiert und ich mache einfach nur irgendwo einen fehler???
|
|