Seite 2 von 2
Re: Drucken einer Textzeile mit und ohne Fettdruck
Verfasst: 03.12.2012 16:15
von dysti
Das funktioniert nicht:
Code: Alles auswählen
LoadFont(#Font_Bold2, "Arial", ((xpos / 1024) *128), #PB_Font_Bold) ; ziemlich grosssss...
Re: Drucken einer Textzeile mit und ohne Fettdruck
Verfasst: 03.12.2012 16:24
von Kiffi
dysti hat geschrieben:Das funktioniert nicht:
kein Wunder:
Code: Alles auswählen
YSize = ((xpos / 1024) *128)
Debug YSize
LoadFont(#Font_Bold2, "Arial", YSize, #PB_Font_Bold) ; ziemlich grosssss...
Grüße ... Kiffi
Re: Drucken einer Textzeile mit und ohne Fettdruck
Verfasst: 03.12.2012 17:09
von bobobo
dysti hat geschrieben:Das funktioniert nicht:
Code: Alles auswählen
LoadFont(#Font_Bold2, "Arial", ((xpos / 1024) *128), #PB_Font_Bold) ; ziemlich grosssss...
Wieso funktioniert das nicht ?
Ich finde, dass das gut funktioniert.
Noch besser ginge es wohl wenn xpos ein float wäre.
Re: Drucken einer Textzeile mit und ohne Fettdruck
Verfasst: 03.12.2012 18:14
von dysti
Hey, nachdem bobobo schrieb, das es funktioniert und Kiffi mir das Ergebnis "0" präsentierte, konnte nur die Befehlsreihenfolge verkehrt sein.
Die Druckerdaten wurden schon abgefragt, bevor überhaupt ein Drucker ausgewählt wurde. Das mußte ja in die Hose gehen.
Danke für eure schnelle Hilfe.
Hier jetzt das Ergebnis zum Probieren:
Code: Alles auswählen
Enumeration
#Window
#Gadget
#Font_Normal
#Font_Bold
#Font_Bold2
EndEnumeration
;OpenWindow(#Window, 0, 0, 800, 600, "WindowTitle", #PB_Window_MinimizeGadget|#PB_Window_ScreenCentered)
;CanvasGadget(#Gadget, 0, 0, WindowWidth(#Window), WindowHeight(#Window))
Define X.i = 10, Y.i = 10
; If StartDrawing(CanvasOutput(#Gadget))
PrintRequester()
StartPrinting("test")
ypos = PrinterPageWidth() ; 7016
xpos = PrinterPageHeight() ; 4958
LoadFont(#Font_Normal, "Arial",((xpos / 1024) * 12))
LoadFont(#Font_Bold, "Arial",(xpos / 1024) * 24, #PB_Font_Bold)
Y=(ypos / 460) * 24
If StartDrawing(PrinterOutput())
DrawingMode(#PB_2DDrawing_Transparent)
FrontColor($000000)
DrawingFont(FontID(#Font_Normal))
DrawText(X, Y-TextHeight(" ")*0.8, "Dieser Satzteil ist normal, ")
X + TextWidth("Dieser Satzteil ist normal, ")
DrawingFont(FontID(#Font_Bold))
DrawText(X, Y-TextHeight(" ")*0.8, "dieser Satzteil ist fettgedruck")
X + TextWidth("dieser Satzteil ist fettgedruck")
DrawingFont(FontID(#Font_Normal))
DrawText(X, Y-TextHeight(" ")*0.8, ", das ist nun wieder normal.")
StopDrawing()
StopPrinting()
EndIf
;Repeat
; Select WaitWindowEvent()
; Case #PB_Event_CloseWindow
; End
; EndSelect
;ForEver
Re: Drucken einer Textzeile mit und ohne Fettdruck
Verfasst: 03.12.2012 18:24
von dysti
Nun habe ich doch noch ein Anliegen.
Die Berechnungswerte, wie z.B. 0.8 oder 1024 etc. sollen ja Schätzwerte sein.
Kann ja auch sein, das ich was falsch verstanden habe.
Schwierig wird es ja, wenn der User die Schriftart aussuchen kann.
Es muß doch eine verläßliche Art der Druckerumrechnung geben?
Re: Drucken einer Textzeile mit und ohne Fettdruck
Verfasst: 04.12.2012 19:08
von bobobo
Umrechnen von Größen ist eigentlich simpel
guck doch mal
http://www.purearea.net/pb/CodeArchiv/P ... pendent.pb
Re: Drucken einer Textzeile mit und ohne Fettdruck
Verfasst: 05.12.2012 06:52
von dysti
Hallo bobobo,
danke für den Link. Das schlimme ist, das ich diesen Code vor Jahren schon auf meiner ext. Festplatte gespeichert hatte.
Man sieht vor lauter Bäumen den Wald nicht mehr.
Das habe ich gefunden:
http://openbook.galileocomputing.de/vis ... 085969dfbb