Я использую com.lowagie.text.FontFactory
при создании PDF-файла и пытаюсь использовать пользовательский шрифт KozMinPro-Regular, который обеспечивает поддержку японских символов, поскольку у нас есть необходимость в этом. Я нашел примеры из поиска, которые показывают, как это сделать, аналогично тому, как я делаю это ниже, и эти примеры предполагают, что кодирование UniJIS-UCS2-H
поддерживается, но когда я пытаюсь это сделать, я получаю исключение ниже, которое говорит, что эта кодировка не поддерживается. Буду признателен, если кто-нибудь может иметь какое-либо понимание этого. Спасибо
FontFactory.register("/usr/share/fonts/truetype/KozMinPro-Regular.ttf", "JapaneseCompatible");
contentFont = FontFactory.getFont("JapaneseCompatible", "UniJIS-UCS2-H", true, 11, Font.BOLD);
headerFont = FontFactory.getFont("JapaneseCompatible", "UniJIS-UCS2-H", true, 11, Font.BOLD);
Исключение, которое я получаю:
Exception: [.ReportPdfView] Exception caught during generation of pdf file. Cause: UniJIS-UCS2-H
ExceptionConverter: java.io.UnsupportedEncodingException: UniJIS-UCS2-H
at java.lang.StringCoding.encode(StringCoding.java:286)
at java.lang.String.getBytes(String.java:954)
at com.lowagie.text.pdf.PdfEncodings.convertToBytes(Unknown Source)
at com.lowagie.text.pdf.TrueTypeFont.<init>(Unknown Source)
at com.lowagie.text.pdf.BaseFont.createFont(Unknown Source)
at com.lowagie.text.pdf.BaseFont.createFont(Unknown Source)
at com.lowagie.text.pdf.BaseFont.createFont(Unknown Source)
at com.lowagie.text.FontFactoryImp.getFont(Unknown Source)
at com.lowagie.text.FontFactoryImp.getFont(Unknown Source)
at com.lowagie.text.FontFactory.getFont(Unknown Source)
at com.lowagie.text.FontFactory.getFont(Unknown Source)