Я написал код, который создает простые PDF-документы. Но я не смог отобразить символы unicode в pdf. Мы ценим любые предложения.Проблема, связанная с Unicode в pdf
ответ
Предположим, что у вас есть следующие String
с в Unicode:
public static final String CZECH =
"Podivn\u00fd p\u0159\u00edpad Dr. Jekylla a pana Hyda";
public static final String RUSSIAN =
"\u0421\u0442\u0440\u0430\u043d\u043d\u0430\u044f "
+ "\u0438\u0441\u0442\u043e\u0440\u0438\u044f "
+ "\u0434\u043e\u043a\u0442\u043e\u0440\u0430 "
+ "\u0414\u0436\u0435\u043a\u0438\u043b\u0430 \u0438 "
+ "\u043c\u0438\u0441\u0442\u0435\u0440\u0430 "
+ "\u0425\u0430\u0439\u0434\u0430";
public static final String KOREAN =
"\ud558\uc774\ub4dc, \uc9c0\ud0ac, \ub098";
Тогда вам нужно найти шрифт программы, которые способны оказывать эти символы. Например:
public static final String FONT = "src/main/resources/fonts/FreeSans.ttf";
public static final String HCRBATANG = "src/main/resources/fonts/HANBatang.ttf";
FreeSans - бесплатный шрифт, обычно поставляемый с Linux; он поддерживает много языков, но не все. Например: корейский не поддерживается, поэтому мы также используем HAN Batang.
Мы используем эти программы шрифтов для создания PdfFont
объектов, и мы используем эти объекты в Paragraph
объектов:
PdfFont freeUnicode =
PdfFontFactory.createFont(FONT, PdfEncodings.IDENTITY_H, true);
document.add(new Paragraph().setFont(freeUnicode)
.add(CZECH).add(" by Robert Louis Stevenson"));
document.add(new Paragraph().setFont(freeUnicode)
.add(RUSSIAN).add(" by Robert Louis Stevenson"));
PdfFont fontUnicode =
PdfFontFactory.createFont(HCRBATANG, PdfEncodings.IDENTITY_H, true);
document.add(new Paragraph().setFont(fontUnicode)
.add(KOREAN).add(" by Robert Louis Stevenson"));
Результат показан на следующем снимке экрана:
As вы можете видеть, что рендеринг Unicode очень прост при использовании iText 7. Этот пример взято из chapter 1 руководства iText 7: Building Blocks.
Если это не информация, которую вы искали, исправьте свой вопрос и объясните, какой инструмент вы использовали вместо iText и какой язык программирования.
- 1. проблема с доступом в unicode
- 2. Проблема с unicode
- 3. проблема с преобразованием шаблона unicode в pdf с использованием xhtml2pdf
- 4. Проблема, связанная с presentmodelViewController
- 5. Проблема, связанная с Итератором
- 6. Проблема, связанная с методом
- 7. проблема, связанная с Trigger
- 8. Связанная с синхронизацией проблема
- 9. Проблема, связанная с JComboBox
- 10. Проблема, связанная с IndexOutOfRangeException
- 11. проблема, связанная с NSString
- 12. Проблема, связанная с MouseEvents
- 13. Связанная с CoreData проблема?
- 14. Проблема, связанная с массивом
- 15. Проблема, связанная с циклами
- 16. проблема, связанная с JSNI
- 17. Проблема, связанная с SUBSTRING
- 18. Unicode в PDF
- 19. Проблема, связанная с содержимым портье
- 20. Проблема, связанная с наследованием dll
- 21. Проблема, связанная с установкой Xcode
- 22. Проблема, связанная с разрешениями Facebook
- 23. Проблема, связанная с архитектурным дизайном
- 24. Проблема, связанная с курсором/присоединением
- 25. проблема, связанная с событием asp.net
- 26. Проблема, связанная с форматированием текста
- 27. Проблема, связанная с НЕ СУЩЕСТВУЮЩИМИ
- 28. Проблема, связанная с цепочкой обещаний
- 29. Проблема, связанная с одноименными столбцами
- 30. Проблема, связанная с карусельной загрузкой
Я предлагаю вам предоставить более подробную информацию. Как мы можем сказать, что вы делаете неправильно, если просто говорите, что вы * написали код, который генерирует простые pdf-документы *? Все, что нужно сказать, это то, что вы сделали это неправильно. – mkl
Какую библиотеку вы используете для создания PDF (iText или какой-либо другой инструмент)? Какой язык программирования вы используете (Java, C#, ...)? Трудно поверить, что вы ожидаете конкретного ответа на такой неполный вопрос. –