java - 如何使用 MuPDF 打开受密码保护的 PDF

标签 java android pdf mupdf

我想使用 MuPDF 打开受密码保护的 PDF 文件但我不知道MuPDF是否提供了任何方便的方法来做到这一点。我展示了如下简单的 PDF,它工作正常:

File file = [PATH TO THE FILE];

if (file.exists()) {
    Intent intent = new Intent(MainActivity.this, MuPDFActivity.class);
    intent.setAction(Intent.ACTION_VIEW);
    intent.setData(Uri.fromFile(file));
    startActivity(intent);
} 

我尝试在 Google 上搜索它,但找不到任何相关信息。

最佳答案

我通过自定义 MuPDFActivity.java 类来完成此操作。

在阅读 onCreate 方法中的代码时,我发现它有条件检查是否需要密码,如下所示:

if (core != null && core.needsPassword()) {

然后它会显示带有 EditText 的对话框以输入密码。然后通过该函数验证密码。

core.authenticatePassword(mPassword)

我将文件的密码作为 String extra 发送到 MuPDFActivity 类,并将其直接删除传递给函数。

if (core != null && core.needsPassword()) {
   if (core.authenticatePassword(mPassword)) {
      createUI(savedInstanceState);
   } else {
      requestPassword(savedInstanceState);
   }
   return;
}

如果有人需要帮助,您可以向我索要完整的代码。

谢谢。

关于java - 如何使用 MuPDF 打开受密码保护的 PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30150618/

相关文章:

django - 如何使用 borb 库和 Django 从静态文件将图像添加到 Pdf 文件

php - 如何在使用 snappy twig (Symfony 4) 创建的 pdf 中创建没有边距的页眉?

java - 父表和子表中的 OpenJPA OneToMany 和组合键

java - 如何使用 JSP/JSTL 创建 CSV 文件

java - 如果我发现错误会发生什么?

java - JavaFx 中的生产者-消费者应用程序(从任务到 "update"两个文本字段获取正确值的问题)

java - APK META-INF 中复制的重复文件

android - 固定页脚不显示最底部的列表项

java - 错误: Unfortunately My Fist App has stopped working

android - 如何显示 PDF?