Android - PdfDocument在具有自定义字体的Marshmallow中无法正常工作

时间:2016-08-24 16:46:30

标签: android pdf-generation android-6.0-marshmallow android-pdf-api

我有这种方法从当前活动生成PDF:

public boolean convertToPDF(String pdfFileName) {

    PdfDocument document = new PdfDocument();

    View content = GraphActivity.rl_main;
    int pageNumber = 1;
    PdfDocument.PageInfo pageInfo = new PdfDocument.PageInfo.Builder(content.getWidth(),
    content.getHeight(), pageNumber).create();

    PdfDocument.Page page = document.startPage(pageInfo);

    content.draw(page.getCanvas());

    document.finishPage(page);

    pdfFile = new File(pdfFileName);

        try {
            pdfFile.createNewFile();
            OutputStream out = new FileOutputStream(pdfFile);
            document.writeTo(out);
            document.close();
            out.close();
        } catch (IOException e) {
            Log.e("Error", "Could not create PDF file!");
            return false;
        }
    return true;
}

出于某种原因,在Marshmallow中运行此方法时,我得到一个包含不可读字符的PDF文件。我已经在运行时授予了应用权限WRITE_EXTERNAL_STORAGE。 Marshmallow有什么我需要做的事吗?我可以确认这适用于较旧的Android版本。

编辑:我在assets文件夹中使用自定义字体。我想知道这与它有什么关系。

更新:我尝试禁用自定义字体,这解决了问题。但是,我更愿意保留自定义字体。

0 个答案:

没有答案