Ich habe ein Textbearbeitungsprogramm, das seine Ausgabe in eine PDF-Datei speichert.iText, Unicode-Zeichen und Java
Es speichert auch den gesamten Text in einem PDF-Wörterbuch, von dem es wieder zurück gelesen werden kann. Das Problem ist, dass in meiner Muttersprache Zeichen wie č, ć, đ, ž, š sind ziemlich häufig ...
Wenn ich diese Zeichen in meine Programme GUI schreiben, ist es in Ordnung, sie alle apear (ich bin (derzeit) mit Java Arial Schriftart).
Wenn ich es speichere und den PDF I AdobeReader öffne, fehlen č i ć und đ, ž und š werden so gedruckt, wie sie sollten. Ich verwende einen benutzerdefinierte (Truetype) Schriftart (BookAntiqua, heruntergeladen von here.
Ist das ein Problem bei der Codierung oder in der Schrift selbst (dass es nicht die dJ, ž, š Zeichen) unterstützt?
Auch wenn ich die PDF wieder in mein Programm lade, fehlen immer noch fehlende Buchstaben und đ,,, š werden mit ⎕ Symbolen und ähnlichem ausgetauscht ... Ist das ein Problem in der Art und Weise wie PDF geschrieben wird oder gibt es etwas anderes?
Fazit, ich möchte, dass diese fünf Zeichen in meiner Programme GUI und im PDF-Dokument sichtbar sind und dass sie richtig aus PDF-Wörterbuch abgerufen werden.
Ich weiß, wie man die Schrift in PDF einbaut, das ist nicht das Problem, es scheint, dass das Problem in der Schriftart ist, die ich verwende ... Ich habe schon seit einer Weile gesucht ... Könnten Sie empfehlen Sie mir irgendwelche Schriftarten, die BookAntiqua oder TimesNewRoman ähneln und die auch Unicode-Zeichen unterstützen? –
@IvanKarlovic nein, ich habe den Namen vergessen, es war vor 6 oder mehr Jahren. Sicherlich, wenn Sie Ihre Schriftart in eine richtige ändern und in PDF einbetten, wird das Problem gelöst, aber Sie müssen es googeln. Hier ist es eine Liste http://en.wikipedia.org/wiki/Unicode_font –
Ich fand die Schriftart und es hat geholfen, aber es hat mein Problem nicht gelöst. Text liest aus PDF druckt immer noch diese Zeichen nicht. ich dies sogar tryed: 'public static String unicodize (String string) \t { \t \t string.replace ("C", "/ u0106"); \t \t string.replace ("ć", "/ u0107"); \t \t string.replace ("Č", "/ u010C"); \t \t string.replace ("è", "/ u010D"); \t \t string.replace ("Đ", "/ u0110"); \t \t string.replace ("đ", "/ u0111"); \t \t string.replace ("Š", "/ u0160"); \t \t string.replace ("š", "/ u0161"); \t \t string.replace ("Ž", "/ u017D"); \t \t Zeichenfolge.ersetzen ("ž", "/ u017E"); \t \t Return-String; \t \t} ' –