fpPDF Fonts Umlaute/Dateigröße

Rund um die LCL und andere Komponenten
Antworten
Benutzeravatar
Aidex
Beiträge: 55
Registriert: Do 24. Sep 2020, 07:02
OS, Lazarus, FPC: Win10 64bit, Laz v2.0.10
CPU-Target: AMD64

fpPDF Fonts Umlaute/Dateigröße

Beitrag von Aidex »

Hi!
Ich verwende fpPDF (fcl-pdf) mit Lazarus v2.0.10 auf Win10 64.

- Wenn ich einen internen Font wie "Helvetica" benutze, werden Umlaute nicht dargestellt.
Ist das so oder mache ich etwas falsch?

- Wenn ich externe TTF-Fonts per Dateiname einbette, gibt's Umlaute, aber die erzeugte PDF-Datei ist z.B. 1 MB statt vorher 30 kb groß.
Wenn ich deshalb die Option poSubsetFont aktiviere, wird die PDF-Datei schön klein, aber z.B. bei "Courier New" fehlen Buchstaben bzw. es sieht kaputt aus.

Kann das jemand bestätigen oder mache ich etwas falsch?
Ich hätte gerne Umlaute im PDF, aber nicht so riesige PDF-Dateien (für ein paar Zeilen Text).
Bin für Tipps dankbar. Grüße, Jörg

Benutzeravatar
fliegermichl
Lazarusforum e. V.
Beiträge: 926
Registriert: Do 9. Jun 2011, 09:42
OS, Lazarus, FPC: Winux (L 2.0.11 FPC 3.2)
CPU-Target: 32/64Bit
Wohnort: Echzell

Re: fpPDF Fonts Umlaute/Dateigröße

Beitrag von fliegermichl »

Ich denke

Code: Alles auswählen

 Page.WriteText(x, y, UTF8Decode('Lustiger Text tralalal äöüß'));
Sollte tun, was du erreichen willst.

Benutzeravatar
Winni
Beiträge: 941
Registriert: Mo 2. Mär 2009, 16:45
OS, Lazarus, FPC: Laz2.0.12, fpc 3.2
CPU-Target: 64Bit
Wohnort: Fast Dänemark

Re: fpPDF Fonts Umlaute/Dateigröße

Beitrag von Winni »

Hi!

Mal ein paar Infos zum Einbetten der Fonts.

Die embedded Fonts wurden von PostScript übernommen, mit dem Ziel, aus der PDF einen graphischen Container zu erstellen. Dies ist wichtig für die Übermittlung graphischer Daten, die exact so erscheinen sollen, ohne dass der Zielrechner nun die gleichen Fonts wie der Quellrechner besitzt. Ein wichtiges Moment für den Datenaustausch von Verlagen, Graphik-Büros, Werbeagenturen und Druckereien.

Was macht PDF nun mit seinen embedded Fonts. Für *jeden* benutzten Buchstaben in *jedem* Font und in *jeder* Fontgröße wird eine hexadezimale Matrix der Bitmap dieses Buchstabens erstellt. Deshalb bläht sich die PDF sofort auf, wenn man auf embedded Fonts umstellt.

Wenn man es abstellt, steht da nur der Font, die Größe, etwaige Attribute (fett, kursiv, ...) und fertig. Wenn dieser Font auf der Zielmaschine nicht vorhanden ist, kann es dazu führen, dass ein Ersatzfont automatisch ausgewählt wird, der nicht passt. Und schon sieht es unschön aus.

Solange nur der Inhalt des Textes wichtig ist, mag das ja alles OK sein.
Wenn das aber die nächste Print-Anzeige für VW sein soll, dann muss die Schrift aber die hauseigene VAG.ttf sein. Sonst gibt's Mecker und weniger Geld....

Winni

Antworten