Einzelnen Beitrag anzeigen

jus

Registriert seit: 22. Jan 2005
343 Beiträge
 
Delphi 2007 Professional
 
#5

Re: postscript stringwidth in Delphi simulieren?

  Alt 9. Jan 2008, 20:47
Zitat von Reinhard Kern:
...
1. Im Prinzip Ja, sonst könnte man ja überhaupt nicht sinnvoll drucken. Text -> Canvas -> Postscripttreiber muss das gleiche Bild ergeben wie deine eigene PS-Umsetzung.

2. Man kann das auch erzwingen: der alte, aber gute Ventura Publisher positionierte jeden Buchstaben einzeln, dadurch ergab sich immer ein korrektes Seitenlayout auch bei grottenfalscher Schrift. Bei geringeren Abweichungen reicht es, jedes Wort zu positionieren.

3. Wieso schreibst du überhaupt PS? Es gibt unter Windows Postscript-Treiber! Sogar eine ganze Menge.
...
Dass man einfach mit delphi-eigenen Canvas-Funktionen herummalen und das Ergebnis dann auf einen Postscriptdrucker/Treiber ausgeben kann, das war anfangs auch meine Überlegung. Ich wollte aber EPS-Logos, die ja in Vektorformat vorliegen, auf der Rechnung weiter als Vektorformat im PDF behalten. Wenn ich über den Umweg Postscript gehe, erhalte ich eine PDF Datei von der Rechnung einschließlich dem Logo in Vektorformat(zoombar ohne Pixelig zu werden) und eingebette Schriften, die nur 38 kbyte groß ist. Selbst Indesign benötigt für die selbe Rechnung noch ca. 70kbyte.

Um nochmal auf die ursprüngliche Frage zurückzukehren - ich habs nun auf folgende brutale und einfache Art gelöst:
dadurch, dass ich im vorhinein schon weiß, welche Schrift und welche Schriftgrösse auf der Rechnung verwendet wird, und ich immer Ghostscript zur PDF Konvertierung verwende, lasse ich mir unter Postscript im vonhinein alle verwendeten Zeichenbreiten (z.B. 0..9, A..Z, a..z,...) berechnen. Die Breite eines Wortes ist ja sie Summe aller Zeichen. Somit kann ich unter Delphi bereits das PostScript STRINGWIDTH simulieren.



jus
  Mit Zitat antworten Zitat