DOMPDF problem mit kyrillischen Zeichen
Ich bin mit dem DOMPDF Bibliothek zu erstellen, eine Rechnung im PDF-Format. Dieses Dokument ist in Französisch, Russisch oder Englisch, aber ich habe Probleme beim drucken Russischen Zeichen.
Erste, ich habe versucht, die Verwendung von UTF-8-Codierung und legte den meta
- tag im Kopf der HTML-Seite konvertiert werden:
<meta http-equiv="Content-Type" Content="text/html; charset=utf-8" />
Aber das hat nicht funktioniert.
Dann steckte ich das meta
tag in der BODY
tag, und es half, das problem zu lösen mit französischen Zeichen.
Aber russische Zeichen immer noch nicht funktionieren. Ich habe auch versucht zu konvertieren russischer Zeichen in HTML-entities, aber auch das funktioniert nicht.
Ich benutze R&OS CPDF-Klasse, nicht PDFLib als backend.
Kann jemand helfen?
OK, vielen Dank für deinen Hinweis.
warum in aller Welt ist diese Gemeinschaft wiki? Es ist eine konkrete Frage mit eine ausgezeichnete Antwort.
InformationsquelleAutor |
Du musst angemeldet sein, um einen Kommentar abzugeben.
Problem mit Schriftarten Standard-dompdf verwendet (es müssen nicht alle unicode-Zeichen, whick sind inzwischen über 5000). In der Regel arialuni.ttf ist, was Sie brauchen. Sie können herunterladen lokalisierte russische version auf http://chernev.ru/dompdf.rar {defekter link}
Aktualisiert link: https://code.google.com/p/ipwn/downloads/detail?name=arialuni.ttf
Link ist jetzt gebrochen
Link funktioniert nicht.
Aktualisiert link für die anderen Stolperstein in: code.google.com/p/ipwn/downloads/detail?name=arialuni.ttf
InformationsquelleAutor
In der akzeptierten Antwort-link ist kaputt und es enthielt alte version von DOMPDF.
Arbeiten mit unicode-Symbole in DOMPDF 0.6 haben Sie zwei alternativen: verwenden Sie existierte Schriften oder erstellen Sie Ihre eigene schriftart.
Verwenden, existiert die schriftart (angewendet für DOMPDF 0.6):
/dompdf/lib/fonts/
.dompdf_font_family_cache.dist.php
mit snippet-1.font-family: times;
.Snippet 1:
Wenn Sie verwenden möchten Ihre eigene TTF-Schrift (sagen wir
Arial.ttf
):ttf2afm -o Arial.afm Arial.ttf
. (So habe ich es in Ubuntu.)ttf2ufm -a -F Arial.ttf
. (Ich habe es in Windows mit exe vom UFPDF, aber ich denke, dass Sie Sie verwenden können/dompdf/lib/ttf2ufm/bin/ttf2ufm.exe
.)Arial.*
Dateien in/dompdf/lib/fonts/
.dompdf_font_family_cache.dist.php
snippet 2.font-family: arial;
.Snippet 2:
InformationsquelleAutor
wenn Sie die DejaVu-schriftart können Sie sehen, kyrillische Zeichen
DOMPDF gehören DejaVu-schriftart standardmäßig
Können Sie auch festlegen, ändern def für die schriftart, die standardmäßig im dompdf_config.inc.php
InformationsquelleAutor
Download arialuni.ttf
Ausführen von php load_font.php 'Arial' arialuni.ttf in dompdf-Verzeichnis, setzen Sie die schriftart auf arial
Es funktioniert 😉
InformationsquelleAutor
Mir die 4 oben genannten Schritte nicht das Problem beheben.
Außerdem dompdf konvertiert, erstellt pdf-ANSI (ISO)
Sie müssen deaktivieren Sie diese auf der Optionen-Seite
http://domain.com/admin/settings/print/pdf
Aktivieren Sie das Kontrollkästchen Verwenden Sie dompdf ist Unicode-Modus. Dies zwingt zum erstellen von Dateien im UTF-8/Unicode.
Bitte beachten Sie, dass web-Einstellungen überschreiben die Einstellungen dompdf_config.inc.php standardmäßig.
InformationsquelleAutor
Darauf hingewiesen, dass problem könnte in der css-reset-Nutzung, insbesondere
font:inherit;
InformationsquelleAutor