我正在使用i-text从我的Android应用程序生成pdf
。但它适用于英文字体。当我尝试为我的语言环境Bangla生成pdf
时,我遇到了一些问题。在从一些博客获得一些提示之后,我已经按照下面提到的方式实现了实现:
String fontName = "Nikosh.ttf";
InputStream is = context.getAssets().open(fontName);
int size = is.available();
byte[] buffer = new byte[size];
int a = is.read(buffer);
BaseFont customFont = BaseFont.createFont(fontName, BaseFont.IDENTITY_H, BaseFont.EMBEDDED, true, buffer, buffer);
Font banglaFont = new Font(customFont, 12);
现在输出如下:
这是使用bangla字体的Bangla文本的输出
但是输出文本被破坏了。原来的那个看起来像这个:
孟加拉的原文
有关如何解决android中unicode此类问题的任何帮助都将受到高度赞赏。 注:我正在使用i-text 5.5.x
答案 0 :(得分:0)
使用也显示的字体。
BaseFont base = BaseFont.createFont("c:/windows/fonts/arial.ttf", BaseFont.WINANSI);
Font font = new Font(base, 11f, Font.BOLD);
答案 1 :(得分:0)
使用此库: 实施'com.uttampanchasara.pdfgenerator:pdfgenerator:1.3'
minsdk:
高于21