问题标签 [pdf-rendering]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - PDF 渲染器类不在 Android SDK 21 上渲染 PDF
这是我用来呈现存储在“Download/Adobe Reader/answerkey.pdf”中的名为“answerkey.pdf”的 PDF 的代码
这是我制作的 layout.xml 文件 -
出于某种原因,PDF 只是没有显示在屏幕上,我一直得到一个白色的空白背景。我究竟做错了什么?路径不正确吗?我的设备上没有 SD 卡。还是我对位图做错了什么?
android - Android v23 PDFreader 不断崩溃
我是新来的,但是想知道是否有人可以指出我正确的方向。这是我的应用程序的一部分,我想在其中从资产中读取 PDF 文件并显示在片段中。使用的安卓版本 23.4.0
}
Logcat 错误信息
android - 在可滚动列表中显示多个位图的最佳实践
我正在尝试做的事情:
我使用 Android PdfRenderer 类将单个 pdf 页面渲染为位图。(渲染票价不是问题)
不,我想在屏幕上显示整个第一页和第二页的一半。
我的问题? 最好的方法是什么?- 我应该使用带有多个 ImageView 的 RecyclerView - 我应该使用两个带有滚动的 ImageView - 性能很重要,所以应该是高效的
我很高兴有任何意见或想法。
android - Pdf渲染缩放页面
我正在做一个项目,我需要在我们的应用程序中显示 PDF 内容。我正在尝试使用 Android API 的 PdfRenderer。现在,我可以将 pdf 页面显示为位图并在所有其他页面之间移动。
但我不明白如何在页面上实现缩放。我的意思是我知道如何缩放图像,但是对于 pdf,它需要在每个缩放级别(例如平铺?)重新计算。在缩放时,我想我需要用正确的 Rect 和 Matrix 重新计算位图,这就是我所缺少的。
是否有人已经这样做或类似的?
PS:我想自己制作,但请随时向我发送开源库,谢谢
itext - 编辑 pdf 文件的来源,它损坏了 pdf(无法打开)
从文本编辑器打开一个 PDF 文件,我想在下面修改这个对象的内容:
759 0 obj
($Revision:: 1.0 $)
endobj
774 0 obj
从
($Revision:: 1.0 $)
到($Revision::20171219200322$)
,即对象的总大小增加了 2 个字符。
但是,此更改会破坏 PDF。
这是怎么发生的?我猜PDF中还有其他地方依赖于obj的大小。
有人可以解释一下吗?
非常感激
===================更新==================
感谢以下评论。
我试图在整个 pdf 文件中查找外部参照表,但只找到了如下内容:
...
endobj
startxref
116666
%%EOF
在文件的底部。那里没有实际的桌子。任何想法?
谢谢您的帮助。
===================更新 22/12/2017 ==================
现在我能够找到需要使用 iText 修改的 AcroFields。但是,我不想使用AcroFields.setField(String name, String value)
方法来设置字段值,我想修改PdfString
该字段所引用的对象的值。我可以通过调用PdfReader.getPdfObject(item.getMerged(0).get(PdfName.DV))
它来获取对象,它给了我一个 PdfString 对象,但我找不到改变它的值的方法。任何想法?
java - 使用飞碟 PDF 渲染将格式错误的 HTML 转换为 PDF
在项目GitHub中,我试图将任意 HTML 字符串转换为 PDF 版本。通过转换,我的意思是解析 HTML,并将其呈现为 PDF 文件。
为了实现这一点,我正在使用Flying Saucer PDF Rendering,如下所示:
在上面的代码中,如果我使用存储在ok
变量中的 html 字符串(这是一个“有效”的 html),它会正确创建 PDF(如果您使用ok
变量运行 GitHub 项目,它将sample-file.pdf
在项目文件夹中创建一个文件,其中包含一些呈现的html)。
现在,如果我使用html
变量中的值(带有无效标签的 html、标签可能未正确关闭等),它会引发以下错误(错误可能因值不正确而异):
现在,据我了解,这是因为 html 字符串的“无效”部分。
重要笔记:
- 分配给变量的值
ok
在html
这里只是问题的占位符。真实的在这里。 - 在实际项目中,html 字符串是来自用户的输入。是的,他/她必须知道该放什么,但是,当然,他/她可以在 html 构造中犯一些错误,所以我必须处理这个。
问题)
- 有什么方法可以“告诉” Flying Saucer PDF Rendering忽略/自动完成/清理自身/或任何其他“无效”部分并继续创建 PDF 文件(首选)。
- 有没有更好的方法可以用来克服这个问题。
android - Android PdfRenderer 抛出 IOException
我的应用程序列出了 PDF 文件,当用户选择 PDF 时,应用程序会打开它。如果用户选择了损坏的 PDF 文件,则 PdfRenderer 会抛出IOException
(这很好,因为我捕获了该异常并通知用户该文件已损坏)。
但问题是,发生这种情况后,IOException
用户尝试打开的所有 PDF 文件都会被抛出(即使是未损坏的文件)
相关代码
堆栈跟踪
为什么会这样?我怎样才能解决这个问题?
注意:我已经尝试将 pdf 文件复制到缓存目录。这没什么区别。
PdfRenderer google sample repo 中的相同问题。
flying-saucer - 使用 OpenPDF 库在 FlyingSaucer 上将 XHTML 渲染为 PDF 速度很慢
有没有机会在 FlyingSaucer /OpenPDF 中提高 XHTML 到 PDF 的渲染速度?我正在使用 9.1.20 版的 fly-saucer-pdf-openpdf 库。简单的 XML 花了将近 5 秒。使用 fly-saucer-pdf 库耗时 0.5 秒。
XML
java - 为 PDFBox 渲染注册其他字体
从 2.0 开始,PdfBox 可以渲染嵌入的字体。但是,我无法影响 PDF 的输入内容,并且某些 PDF 没有嵌入字体。在这种情况下,使用系统上安装的字体。现在由于某些限制,我也无法在该(服务器)系统上安装字体。因此,如果可以在类路径中注册作为 jar 文件提供的其他字体,那就太好了。我试过了
但是,这似乎仅用于创建新文档。我偶然发现了这篇文章,但是解决方案是使用嵌入的字体。所以我考虑编写自己的FontDirFinder
(即使名称不会 100% 正确),但 FontFileFinder 类(方法)中的determineDirFinder()
实现(还)不允许注册自己的Finder
. 所以补丁是必要的。
但在开始工作之前,我想问一下是否有可能使 PDFBox 知道字体文件(不嵌入或应对/使用系统字体)?
所以基本上我不能改变PDF而不是服务器字体目录/基础设施。但我可以提供额外的字体作为部署的一部分(jar 文件的一部分等)。(我正在寻找一种让 PdfBox 识别这些的方法)