1

我正在使用以下 gradle 文件生成 pdf:

 compile 'com.itextpdf:itextg:5.5.10'

由于我的应用程序有中文字符,我在我的类路径中添加了 itext-asian.jar 文件。最初它给出了错误“发现多个文件与操作系统无关的路径'com/itextpdf/text/pdf/fonts/cmap_info.txt' 所以我在我的 gradle 中添加了这个:

packagingOptions {

    pickFirst 'com/itextpdf/text/pdf/fonts/cmap_info.txt'
}

现在 gradle 成功了,但我的 pdf 中没有显示任何内容。它只是一个空白屏幕。

4

1 回答 1

3

这对我有用,我忘了添加 FLAG_GRANT_WRITE_URI_PERMISSION

Intent i = new Intent(Intent.ACTION_VIEW);
        i.addCategory(Intent.CATEGORY_DEFAULT);
        i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        Uri uri = FileProvider.getUriForFile(MyDealActivity.this, BuildConfig.APPLICATION_ID + ".provider",new File(path));

        i.addFlags(Intent.FLAG_GRANT_WRITE_URI_PERMISSION);
        i.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);

        i.setDataAndType(uri, "application/pdf");
        return i;
于 2018-03-13T05:58:38.303 回答