java - 如何在pdf而不是整个pdf中打开特定范围的页面
问题描述
如何修改以下代码以打开 pdf 中特定范围的页面,例如从第 5 页到第 30 页,而不是打开整个 pdf。提前致谢
IOExcept {touch = new
ZoomableImageView(Part1Activity.this);
linear1.addView(touch);
File file = new File(getCacheDir(), "quran_01.pdf"); if (!file.exists()) { try { InputStream asset = getAssets().open("quran_01.pdf"); FileOutputStream output = null; output = new FileOutputStream(file); final byte[] buffer = new byte[1024]; int size; while ((size = asset.read(buffer)) != -1) { output.write(buffer, 0, size); } asset.close(); output.close(); } catch (IOException e) { e.printStackTrace(); } }
try {
renderer = new android.graphics.pdf.PdfRenderer(new ParcelFileDescriptor(ParcelFileDescriptor.open(new java.io.File(file.getAbsolutePath()), ParcelFileDescriptor.MODE_READ_ONLY)));
android.graphics.pdf.PdfRenderer.Page page = renderer.openPage((int)_position);
Bitmap mBitmap = Bitmap.createBitmap((int)getDip(page.getWidth()), (int)getDip(page.getHeight()), Bitmap.Config.ARGB_8888);
page.render(mBitmap, null, null, android.graphics.pdf.PdfRenderer.Page.RENDER_MODE_FOR_DISPLAY);
touch.setImageBitmap(mBitmap);
page.close();
} catch (Exception e){
解决方案
您无法修改第三方工具,其中未提供以编程方式更改站点范围的选项。因此,您不能使用没有端点来处理的外部查看器。
我建议您注意可以通过代码修改的应用程序内部 PDF 查看器/工具。
看看这篇文章,它可以帮助您解决或使用提到的开源工具。干杯!
推荐阅读
- clickhouse - ClickHouse:用户可以更改自己的密码吗?
- python - 在 Python 中使用 POST 请求无法获得正确的响应
- python - int object is not callable error in pyTenable docs?
- angular - 没有“let”表达式的角结构指令
- excel - F8时VBA跳转到另一个函数
- react-native - 使用 Jest 运行 testing-library/react-native 时,RNEncryptedStorage 未定义
- r - 根据过滤器存储数据帧
- javascript - 如何在 next.js 中使用 DOMParser?
- mysql - 无法添加或更新子行:外键约束失败。我的 laravel 8 项目中的 SQL 错误
- javascript - 使用 mongoose 在 mongodb 中保存 API 调用和请求