我试图使用android使用以下代码生成PDF文件。 此PDF文件可能包含英文和中文字符。 中文字符不被识别为中文字母(转换为图像),但英文字母可以。
此问题的解决方法是什么?
public void generatePDFDoc(Activity activity,View view,String pdfFileName){
{
File pdfFile = null;
PrintAttributes printAttrs = new PrintAttributes.Builder().
setColorMode(PrintAttributes.COLOR_MODE_COLOR).
setMediaSize(PrintAttributes.MediaSize.NA_LETTER).
setResolution(new PrintAttributes.Resolution("print", activity.PRINT_SERVICE,
25, 25)).
setMinMargins(PrintAttributes.Margins.NO_MARGINS).
build();
PdfDocument document = new PrintedPdfDocument(activity, printAttrs);
View content = view;
int width = content.getWidth();
int height = content.getHeight();
PdfDocument.PageInfo pageInfo = new PdfDocument.PageInfo.Builder(width, height, 1).create();
PdfDocument.Page page = document.startPage(pageInfo);
content.draw(page.getCanvas());
document.finishPage(page);
try {
pdfFile = new File(pdfFileName);
if (pdfFile != null) {
FileOutputStream os = new FileOutputStream(pdfFile);
document.writeTo(os);
document.close();
os.close();
}
} catch (Exception e) {
throw new RuntimeException("Error generating file", e);
} finally {
if (pdfFile != null) {
//Success Generate PDF file
}
}
}
}