Wasserzeichenersatz [ERLEDIGT]
Moderator: Moderatoren
- Manfred
- Foren-Administrator
- Beiträge: 21186
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Wasserzeichenersatz [ERLEDIGT]
Hi,
ich hatte das Thema Wasserzeichen schonmal im Druckerthread. Jetzt würde ich es gerne so lösen, dass ich halt per Befehl einen Text quer über ein Blatt drucken kann. ich habe auch schon einen Tipp bekommen, wie man das anpacken könnte, aber der klappt nicht. Wie kann ich denn mittels express++ z.b. Einen diagonalen Schriftzug auf den Ausdruck zaubern?
Es ist was mit Attribute, aber es will nicht klappen bei mir.
ich hatte das Thema Wasserzeichen schonmal im Druckerthread. Jetzt würde ich es gerne so lösen, dass ich halt per Befehl einen Text quer über ein Blatt drucken kann. ich habe auch schon einen Tipp bekommen, wie man das anpacken könnte, aber der klappt nicht. Wie kann ich denn mittels express++ z.b. Einen diagonalen Schriftzug auf den Ausdruck zaubern?
Es ist was mit Attribute, aber es will nicht klappen bei mir.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Wasserzeichenersatz
In meiner Druckerklasse (HBPrintPRG) kannst du unter PrintText() nachsehen, wie man Schriften gedreht druckt.
Siehe hierzu auch die Hilfe von GraSetAttrString( [<oPS>], [<aAttributes>] ) --> aOldAttributes
es geht um
aber nicht in GRAD, eine Umrechnungsfunktion kannst du auch bei mir im code finden (etwas ungenau auf 1° berechnet )
Ob Express das direkt vorsieht weiß ich nicht.
Siehe hierzu auch die Hilfe von GraSetAttrString( [<oPS>], [<aAttributes>] ) --> aOldAttributes
es geht um
Code: Alles auswählen
GRA_AS_ANGLE { nX, nY } { 1, 0 }
Ob Express das direkt vorsieht weiß ich nicht.
Gruß
Hubert
Hubert
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9357
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 101 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: Wasserzeichenersatz
Das geht nur mit TrueType- oder PS-Fonts, nicht mit Bitmap-Schriftarten, die aber ohnehin kaum noch verwendet werden. Du musst die Attribute für GraSetAttrString() setzen, also ein Attributearray "a := Array(GRA_AS_COUNT)" erzeugen. Darin musst Du die Attribute GRA_AS_DIRECTION und GRA_AS_ANGLE setzen, z.B.:
a[GRA_AS_DIRECTION] := GRA_CHDIRN_TOPBOTTOM // von oben nach unten
a[GRA_AS_ANGLE] := {x,y} // Richtung bzw. Winkel des Textes bezogen auf 0,0
Ich habe das selbst noch nicht ausprobiert, also müsstest Du das mal tun. Jedenfalls muss dieses Attributearray dann bei DCPRINT SAY angegeben werden. Gib mal Laut, wie und ob das funktioniert hat.
Und Gott sei Dank für List&Label.
a[GRA_AS_DIRECTION] := GRA_CHDIRN_TOPBOTTOM // von oben nach unten
a[GRA_AS_ANGLE] := {x,y} // Richtung bzw. Winkel des Textes bezogen auf 0,0
Ich habe das selbst noch nicht ausprobiert, also müsstest Du das mal tun. Jedenfalls muss dieses Attributearray dann bei DCPRINT SAY angegeben werden. Gib mal Laut, wie und ob das funktioniert hat.
Und Gott sei Dank für List&Label.
Herzlich,
Tom
Tom
- Manfred
- Foren-Administrator
- Beiträge: 21186
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Wasserzeichenersatz
Prima Tom,
ich hatte das Array zu klein. Ich hatte es mit GRA_AS_ANGLE vorbelegt. Dadurch gab es immer eine Fehlermeldung.
ich hatte das Array zu klein. Ich hatte es mit GRA_AS_ANGLE vorbelegt. Dadurch gab es immer eine Fehlermeldung.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Manfred
- Foren-Administrator
- Beiträge: 21186
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Wasserzeichenersatz
Leider klappt es aber noch nicht so, wie ich es mir gedacht hatte. Egal was ich angebe, es wird nur von unten nach oben gedruckt.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Martin Altmann
- Foren-Administrator
- Beiträge: 16508
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Re: Wasserzeichenersatz
Moin,
attr[GRA_AS_ANGLE] := { 0, 10 }
ist senkrecht - was ist denn dann
attr[GRA_AS_ANGLE] := { 5, 5 }
Viele Grüße,
Martin
attr[GRA_AS_ANGLE] := { 0, 10 }
ist senkrecht - was ist denn dann
attr[GRA_AS_ANGLE] := { 5, 5 }
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
- Martin Altmann
- Foren-Administrator
- Beiträge: 16508
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Re: Wasserzeichenersatz
Nur so als Tipp:
Statt 5,5 kannst Du natürlich auch die jeweiligen Seitenränder nehmen, dann läuft der Text im passenden Diagonalwinkel über die Seite.
Also sinngemäß:
Viele Grüße,
Martin
Statt 5,5 kannst Du natürlich auch die jeweiligen Seitenränder nehmen, dann läuft der Text im passenden Diagonalwinkel über die Seite.
Also sinngemäß:
Code: Alles auswählen
attr[GRA_AS_ANGLE] := oPS:setPageSize() [1]
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9357
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 101 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: Wasserzeichenersatz
Lass mal die Direction-Sache weg.Egal was ich angebe, es wird nur von unten nach oben gedruckt.
Herzlich,
Tom
Tom
- Manfred
- Foren-Administrator
- Beiträge: 21186
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Wasserzeichenersatz
Martins Tipp war schon ganz richtig. Ich bin jetzt fast da, wo ich hin will.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Wasserzeichenersatz
die GRA_AS_DIRECTION lässt man in Ruhe !
wo der String anfängt, bestimmt man über den 2. Parameter von GraStringAt() bzw. deinem Express Druckbefehl.
die Länge des Textes und die Drehrichtung entscheidet über den Endepunkt.
Das Problem ist der Parameter von GRA_AS_ANGEL, da dieser über den Einheitskreis die Drehung bestimmt.
Der Ursprung des Textes liegt im Einheitskreis auf {0,0}
Normaler Text (links nach rechts) {1,0} // also X Achse 1 (oder ein Vielfaches), Y Achse = 0
45% von links unten nach rechts oben {1,1}
90% von unten nach oben {0,1}
... es gehen auch Bruchteile und Vielfaches, aber so kann man es am Besten verstehen ... nutzen möchte ich das so nicht
In meiner Druckerklasse habe ich daher eine Funktion die auf Grad umrechnet. Hier mal ein Druckbeispiel:
wo der String anfängt, bestimmt man über den 2. Parameter von GraStringAt() bzw. deinem Express Druckbefehl.
die Länge des Textes und die Drehrichtung entscheidet über den Endepunkt.
Das Problem ist der Parameter von GRA_AS_ANGEL, da dieser über den Einheitskreis die Drehung bestimmt.
Der Ursprung des Textes liegt im Einheitskreis auf {0,0}
Normaler Text (links nach rechts) {1,0} // also X Achse 1 (oder ein Vielfaches), Y Achse = 0
45% von links unten nach rechts oben {1,1}
90% von unten nach oben {0,1}
... es gehen auch Bruchteile und Vielfaches, aber so kann man es am Besten verstehen ... nutzen möchte ich das so nicht
In meiner Druckerklasse habe ich daher eine Funktion die auf Grad umrechnet. Hier mal ein Druckbeispiel:
- Dateianhänge
-
- HB-Printer.pdf
- (29.81 KiB) 259-mal heruntergeladen
Gruß
Hubert
Hubert
- Manfred
- Foren-Administrator
- Beiträge: 21186
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Wasserzeichenersatz
verflixt, ich wußte ich hatte irgendwie diesen Kreis gesehen.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Wasserzeichenersatz
Wenn du dann die Ausgabe noch zentrieren möchtest, musst du die Größe mit GraQueryTextBox( [<oPS>], <cString> ) --> aPoints ermitteln und den Ursprung entsprechend verschieben.
Gruß
Hubert
Hubert
- Manfred
- Foren-Administrator
- Beiträge: 21186
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Wasserzeichenersatz
Danke an euch, aber ich bin im Moment zufrieden wie es ist. Das geht quer und so wollte ich es haben.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Wasserzeichenersatz
so rufe ich das auf:
und so ist die Funktion, wie gesagt in 1 Grad Schritten durchgerechnet und hardcodiert (PowerBasic hat passende Funktionen)
Code: Alles auswählen
if ! IsNil(nDrehen)
aadd(aAttribNeu, { GRA_AS_ANGLE , HbGradToXppArray(nDrehen,100) } )
endif
Code: Alles auswählen
*----------------------------------------------------------
function HbGradToXppArray(nDrehen,nFaktor) // noch nicht perfekt ########### prfen !!!"
local nX, nY, aCosSin, nDrehenInt
DEFAULT nFaktor TO 1 // Werte zwischen -1 und 1, fr Ausgabe in Bildpunkten sind diese Werte zu klein
// ber Faktor kann die L„nge bestimmt werden: 1 = 1/10mm, 10 = 1 mm etc.
// Valuerange is -1 to 1, for printtext etc. are the values to low
// the length could be defined with nFaktor: 1 = 1/10mm, 10 = 1 mm etc.
aCosSin := { {1.0000000000000000,0.0000000000000000} , ; // 0 Grad -> nDrehenInt+1 -> 1. Element
{0.9998476951563913,0.0174524064372835} , ; // 1 Grad -> nDrehenInt+1 -> 2. Element
{0.9993908270190958,0.0348994967025010} , ;
{0.9986295347545739,0.0523359562429438} , ;
{0.9975640502598243,0.0697564737441253} , ;
{0.9961946980917455,0.0871557427476582} , ; // Falls jemand eine bessere Funktion weiá, bitte mitteilen.
{0.9945218953682733,0.1045284632676535} , ; // if someone knows a better (fast) way, let me know.
{0.9925461516413220,0.1218693434051475} , ;
{0.9902680687415704,0.1391731009600654} , ;
{0.9876883405951378,0.1564344650402309} , ;
{0.9848077530122080,0.1736481776669303} , ;
{0.9816271834476640,0.1908089953765448} , ;
{0.9781476007338058,0.2079116908177593} , ;
{0.9743700647852353,0.2249510543438650} , ;
{0.9702957262759965,0.2419218955996677} , ;
{0.9659258262890683,0.2588190451025208} , ;
{0.9612616959383189,0.2756373558169992} , ;
{0.9563047559630355,0.2923717047227367} , ;
{0.9510565162951535,0.3090169943749474} , ;
{0.9455185755993169,0.3255681544571567} , ;
{0.9396926207859084,0.3420201433256687} , ;
{0.9335804264972018,0.3583679495453003} , ;
{0.9271838545667874,0.3746065934159120} , ;
{0.9205048534524404,0.3907311284892738} , ;
{0.9135454576426009,0.4067366430758001} , ;
{0.9063077870366499,0.4226182617406994} , ;
{0.8987940462991670,0.4383711467890774} , ;
{0.8910065241883679,0.4539904997395468} , ;
{0.8829475928589270,0.4694715627858908} , ;
{0.8746197071393958,0.4848096202463371} , ;
{0.8660254037844388,0.4999999999999999} , ;
{0.8571673007021124,0.5150380749100541} , ;
{0.8480480961564260,0.5299192642332049} , ;
{0.8386705679454240,0.5446390350150271} , ;
{0.8290375725550418,0.5591929034707468} , ;
{0.8191520442889918,0.5735764363510460} , ;
{0.8090169943749475,0.5877852522924731} , ;
{0.7986355100472929,0.6018150231520483} , ;
{0.7880107536067219,0.6156614753256583} , ;
{0.7771459614569709,0.6293203910498374} , ;
{0.7660444431189780,0.6427876096865393} , ;
{0.7547095802227720,0.6560590289905073} , ;
{0.7431448254773943,0.6691306063588583} , ;
{0.7313537016191706,0.6819983600624985} , ;
{0.7193398003386513,0.6946583704589973} , ;
{0.7071067811865476,0.7071067811865475} , ;
{0.6946583704589973,0.7193398003386511} , ;
{0.6819983600624985,0.7313537016191705} , ;
{0.6691306063588583,0.7431448254773941} , ;
{0.6560590289905073,0.7547095802227720} , ;
{0.6427876096865394,0.7660444431189780} , ;
{0.6293203910498375,0.7771459614569709} , ;
{0.6156614753256583,0.7880107536067219} , ;
{0.6018150231520484,0.7986355100472929} , ;
{0.5877852522924731,0.8090169943749475} , ;
{0.5735764363510461,0.8191520442889918} , ;
{0.5591929034707468,0.8290375725550418} , ;
{0.5446390350150272,0.8386705679454240} , ;
{0.5299192642332049,0.8480480961564260} , ;
{0.5150380749100544,0.8571673007021123} , ;
{0.5000000000000001,0.8660254037844386} , ;
{0.4848096202463371,0.8746197071393958} , ;
{0.4694715627858909,0.8829475928589269} , ;
{0.4539904997395468,0.8910065241883678} , ;
{0.4383711467890774,0.8987940462991670} , ;
{0.4226182617406994,0.9063077870366499} , ;
{0.4067366430758002,0.9135454576426009} , ;
{0.3907311284892737,0.9205048534524404} , ;
{0.3746065934159122,0.9271838545667874} , ;
{0.3583679495453004,0.9335804264972018} , ;
{0.3420201433256688,0.9396926207859084} , ;
{0.3255681544571568,0.9455185755993168} , ;
{0.3090169943749474,0.9510565162951535} , ;
{0.2923717047227368,0.9563047559630354} , ;
{0.2756373558169992,0.9612616959383189} , ;
{0.2588190451025208,0.9659258262890683} , ;
{0.2419218955996677,0.9702957262759965} , ;
{0.2249510543438652,0.9743700647852353} , ;
{0.2079116908177595,0.9781476007338056} , ;
{0.1908089953765449,0.9816271834476640} , ;
{0.1736481776669304,0.9848077530122080} , ;
{0.1564344650402309,0.9876883405951378} , ;
{0.1391731009600655,0.9902680687415704} , ;
{0.1218693434051475,0.9925461516413220} , ;
{0.1045284632676535,0.9945218953682733} , ;
{0.0871557427476581,0.9961946980917455} , ;
{0.0697564737441255,0.9975640502598243} , ;
{0.0523359562429440,0.9986295347545739} , ;
{0.0348994967025011,0.9993908270190958} , ;
{0.0174524064372836,0.9998476951563913} , ;
{0.0000000000000000,1.0000000000000000} }
nDrehenInt := int(nDrehen) // 23.123 -> aCosSin[23, X/Y ]
do case
case nDrehenInt >= 0 .and. nDrehenInt <= 90
nX := aCosSin[nDrehenInt+1,1]
nY := aCosSin[nDrehenInt+1,2]
case nDrehenInt > 90 .and. nDrehenInt <=180
nDrehenInt := 180-nDrehenInt
nX := aCosSin[nDrehenInt+1,1] * -1
nY := aCosSin[nDrehenInt+1,2]
case nDrehenInt > 180 .and. nDrehenInt<=270
nDrehenInt -= 180
nX := aCosSin[nDrehenInt+1,1] * -1
nY := aCosSin[nDrehenInt+1,2] * -1
case nDrehenInt > 270 .and. nDrehenInt<=360
nDrehenInt := 360-nDrehenInt
nX := aCosSin[nDrehenInt+1,1]
nY := aCosSin[nDrehenInt+1,2] * -1
endcase
return {nX*nFaktor,nY*nFaktor}
Gruß
Hubert
Hubert
- Manfred
- Foren-Administrator
- Beiträge: 21186
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Wasserzeichenersatz [ERLEDIGT]
Hm,
bei mir klappt nur {1,1} dann ist es schräg. Andere Kombinationen ergeben immer nur senkrecht.
bei mir klappt nur {1,1} dann ist es schräg. Andere Kombinationen ergeben immer nur senkrecht.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Wolfgang Ciriack
- Der Entwickler von "Deep Thought"
- Beiträge: 2934
- Registriert: Sa, 24. Sep 2005 9:37
- Wohnort: Berlin
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
Re: Wasserzeichenersatz [ERLEDIGT]
Hallo Manfred, poste doch mal die Lösung mit eXPress, falls man das später mal benötigt.
Viele Grüße
Wolfgang
Wolfgang
- Manfred
- Foren-Administrator
- Beiträge: 21186
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Wasserzeichenersatz [ERLEDIGT]
Mehr ist das nicht
Code: Alles auswählen
LOCAL aAttrVertical[ GRA_AS_COUNT ]
aAttrVertical[ GRA_AS_ANGLE ] := {1,1}
DCPRINT FONT "60.Courier Bold"
@ 60,10 DCPRINT SAY "Text";
ATTRIBUTE aAttrVertical
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Wolfgang Ciriack
- Der Entwickler von "Deep Thought"
- Beiträge: 2934
- Registriert: Sa, 24. Sep 2005 9:37
- Wohnort: Berlin
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 34 Mal
- Kontaktdaten:
- Manfred
- Foren-Administrator
- Beiträge: 21186
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Wasserzeichenersatz [ERLEDIGT]
nee, soll schon ordentlich auffallen
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Wasserzeichenersatz [ERLEDIGT]
meinst du diesen Kreis mit Buchstaben ? ( Nero activeX CD / DVD Burning )Manfred hat geschrieben:verflixt, ich wußte ich hatte irgendwie diesen Kreis gesehen.
Code: Alles auswählen
GraPathClip(oPS , .T.) // Clipping einschalten
aAttr := ARRAY( GRA_AS_COUNT )
//
// gilt für alle ...
//
aAttr [ GRA_AS_ANGLE ] := { 1,-1}
aAttr [ GRA_AS_COLOR ] := GRA_CLR_BLACK
aAttr [ GRA_AS_BACKCOLOR ] := XBPSYSCLR_TRANSPARENT
aAttr [ GRA_AS_MIXMODE ] := GRA_FGMIX_OVERPAINT
aAttr [ GRA_AS_BGMIXMODE ] := GRA_BGMIX_OVERPAINT
aAttr [ GRA_AS_BOX ] := {16,8}
aAttr [ GRA_AS_EXTRA ] := 14
aAttr [ GRA_AS_BREAK_EXTRA] := 14
GraSetAttrString( oPS, aAttr )
//
// für Line
//
aAttrLine := ARRAY(GRA_AL_COUNT)
aAttrLine[ GRA_AL_MIXMODE ] := GRA_FGMIX_XOR
aAttrLine[ GRA_AL_COLOR ] := XBPSYSCLR_TRANSPARENT
aAttrLine[ GRA_AL_WIDTH ] := 1
aAttrLine[ GRA_AL_TYPE ] := GRA_LINETYPE_INVISIBLE
GraSetAttrLine(oPS,aAttrLine) // Attribute setzen
//
// für Area ???
//
aAttrArea := ARRAY(GRA_AA_COUNT)
aAttrArea[ GRA_AA_MIXMODE ] := GRA_FGMIX_OVERPAINT
GraSetAttrArea(oPS,aAttrArea)
i := 1
nTextLen := MIN(60,LEN(cLaufband))
FOR i := 1 TO nTextLen
nSegment := graSegOpen(oPs)
cTeil := SUBSTR(cLaufband,i,1)
IF OnOSVersion() > 5 // Vista-Win7 DVW Aero
GraStringAt( oPS, { 98, 98}, " " )
GraStringAt( oPS, { 98, 98}, cTeil )
ELSE
GraStringAt( oPS, { 94, 94}, " " )
GraStringAt( oPS, { 94, 94}, cTeil )
ENDIF
GraSegClose(oPS)
GraRotate( oPS, aMatrix, 360/nTextLen,;
{(aSize[1]/2)+nBorder,(aSize[2]/2)-nBorder}, GRA_TRANSFORM_ADD )
GraSegDraw(oPS, nSegment, aMatrix)
GraSegDestroy( oPS, nSegment )
NEXT
GraPathClip(oPS , .F.) // Clipping ausschalten
gruss by OHR
Jimmy
Jimmy