pdf 相关问题

可移植文档格式(PDF)是由国际标准化组织(ISO)维护的电子文档交换的开放标准。问题可以是使用不同语言创建,阅读,编辑PDF。

跳转到 Microsoft Edge 中的特定 PDF 标签

我正在尝试在 Microsoft Edge 浏览器中的特定设备标签上打开 PDF 文档。在我的例子中,设备标签是指电气文档(eplan)中与传感器的链接。此功能适用于

回答 1 投票 0

与 C++ 相比,为什么 LaTeX / pdflatex 编译器如此“时髦”,需要多次编译和虚假错误消息等? [已关闭]

有没有一个简单的解释为什么latex/pdflatex编译器在以下两个方面很时髦: 1) 需要进行 N 多次编译,直到达到“稳定状态”版本。 N 好像很...

回答 2 投票 0

使用 Flutter 中的 suncfusion pdf 插件对 PDF 进行电子签名

我想以电子方式签署 pdf。所以我使用签名包来绘制签名,使用Draggable小部件通过Stack将图像定位在pdf上,并使用syncfusion_flutter_pdf来绘制ima...

回答 2 投票 0

使用Python从PDF文件中提取数据

我想使用Python从我的纳税申报表PDF文档中提取数据。我正在使用 PyPDF2 库来读取文件,效果很好。 将 PyPDF2 导入为 p2 pdf_file = open("我的2017纳税申报表...

回答 1 投票 0

在 R 中将 png 绘图写入 pdf 文件

我必须创建一堆包含大量数据点的图表。到目前为止,我一直通过将所有这些内容绘制到一个 pdf 文件中来做到这一点: pdf("测试图.pdf") par(mfrow=c(3,3)) 对于 (i in 2:length(n...

回答 4 投票 0

react-pdf 图像 CORS 问题

有人可以帮助我/指导我正确的方向吗? 我正在使用react-pdf 生成包含图像的pdf 报告。我正在使用react-pdf 中的图像组件来生成预览版...

回答 1 投票 0

水晶报表的功能替代品

我们公司生成了很多好看的报告。目前,其中大部分都是通过 Crystal Reports 完成的。 我发现该软件臃肿且难以使用。 有没有什么替代软件...

回答 2 投票 0

使用自定义字体从 pdf 中提取文本

我有一个庞大的 PDF 文件,其中包含带有特定科学计数法的文本。我正在尝试使用 pdfplumber 提取文本。 起初,我注意到某些符号被提取为大写 La...

回答 1 投票 0

如何使用PDFBox在带标签的PDF中添加注释标签

我有一个带标签的 PDF(符合 PDF-UA 标准),结构简单: 我需要添加注释: 我有一个带标签的 PDF(符合 PDF-UA 标准),结构简单: 我需要添加注释: <?xml version="1.0" encoding="UTF-8"?> <xfdf xmlns="http://ns.adobe.com/xfdf/"> <annots> <text color="#FFC333" date="D:20240425000000" flags="print,nozoom,norotate" opacity="0.600000" page="0" rect="43.086,707.79,63.086,732.79" title="ABC"> <contents-richtext> <body xmlns="http://www.w3.org/1999/xhtml"> <p dir="ltr">Sample comment</p> </body> </contents-richtext> <popup flags="nozoom,norotate" open="yes" page="0" rect="595.0,507.78998,790.0,632.79"/> </text> </annots> </xfdf> 在嵌套标签Annot中,在标签P中。像这样(我在 Adobe Acrobat 中手动制作): 我能够将 XFDF XML 导入 PDF: PDDocument document = PDDocument.load(new File("tagged.pdf")); FDFDocument fdfDoc = FDFDocument.loadXFDF(new File("annotation.xfdf")); List<FDFAnnotation> fdfAnnots = fdfDoc.getCatalog().getFDF().getAnnotations(); List<PDAnnotation> pageAnnotations = new ArrayList<>(); for (int i=0; i < fdfAnnots.size(); i++) { FDFAnnotation fdfannot = fdfAnnots.get(i); PDAnnotation pdfannot = PDAnnotation.createAnnotation(fdfannot.getCOSObject()); pdfannot.constructAppearances(); pageAnnotations.add(pdfannot); } document.getPage(0).setAnnotations(pageAnnotations); document.save(new File("tagged_with_annotation.pdf")); 但是 veraPDF 检查器输出: 注释(不包括子类型 Widget、PrinterMark 或 Link 的注释)应嵌套在 Annot 标签内 和 PDF 辅助功能检查器(PAC 工具)输出: 注释未嵌套在“Annot”结构元素内 正如预期的那样,因为我没有为导入的注释设置“annot”标签(和具体位置)。 此外,我还可以获得标签P对象: PDDocumentCatalog pdDocumentCatalog = document.getDocumentCatalog(); PDStructureTreeRoot pdStructureTreeRoot = pdDocumentCatalog.getStructureTreeRoot(); COSArray aDocument = (COSArray)(pdStructureTreeRoot.getK().getCOSObject()); COSObject oDocument = (COSObject) aDocument.get(0); COSArray aPart = (COSArray)oDocument.getItem(COSName.K).getCOSObject(); COSObject oPart = (COSObject) aPart.get(0); COSArray aSect = (COSArray)oPart.getItem(COSName.K).getCOSObject(); COSObject oSect = (COSObject) aSect.get(0); COSArray aP = (COSArray)oSect.getItem(COSName.K).getCOSObject(); COSObject oP= (COSObject) aP.get(0); 但我不明白如何编辑PDF中现有的标签树。 问题:如何使用PDFBox将现有标签树中的标签和注释添加到PDF中? 更新:示例 PDF 和 XFDF 此处。 这是我的第一次尝试。我没有 PAC 工具(或者我找不到它),所以我需要知道出了什么问题(如果有)。我已将注释放在数组的末尾Root/StructTreeRoot/K/[0]/K/[0]/K/[0]/K,在另一个文件中,它是数组中的第一项。 (COSArray 显然没有“插入”) PDStructureTreeRoot structureTreeRoot = doc.getDocumentCatalog().getStructureTreeRoot(); PDPage page = doc.getPage(0); PDAnnotation annotation = page.getAnnotations().get(0); COSArray aDocument = (COSArray) structureTreeRoot.getK(); COSDictionary oDocument = (COSDictionary) aDocument.getObject(0); COSArray aPart = oDocument.getCOSArray(COSName.K); COSDictionary oPart = (COSDictionary) aPart.getObject(0); COSArray aSect = oPart.getCOSArray(COSName.K); COSDictionary oSect = (COSDictionary) aSect.getObject(0); COSArray aP = oSect.getCOSArray(COSName.K); COSDictionary anDict = new COSDictionary(); // PDStructureElement anDict.setItem(COSName.S, COSName.ANNOT); anDict.setItem(COSName.P, aSect.get(0)); // assign aP but as ref PDObjectReference objRef = new PDObjectReference(); anDict.setItem(COSName.K, objRef); objRef.setReferencedObject(page.getAnnotations().get(0)); objRef.getCOSObject().setItem(COSName.P, anDict); //TODO check if needed in PDObjectReference API? objRef.getCOSObject().setItem(COSName.PG, page); //TODO check if needed in PDObjectReference API? aP.add(anDict); int parentTreeNextKey = structureTreeRoot.getParentTreeNextKey(); // -1, ignored here PDNumberTreeNode parentTree = structureTreeRoot.getParentTree(); Map<Integer, COSObjectable> numberTreeAsMap = getNumberTreeAsMap(parentTree); Set<Integer> keySet = numberTreeAsMap.keySet(); int maximum = keySet.stream().reduce(Integer::max).get(); annotation.setStructParent(maximum + 1); structureTreeRoot.setParentTreeNextKey(maximum + 2); numberTreeAsMap.put(maximum + 1, anDict); parentTree = new PDNumberTreeNode(PDParentTreeValue.class); parentTree.setNumbers(numberTreeAsMap); structureTreeRoot.setParentTree(parentTree); getNumberTreeAsMap 是 PDFMergerUtility 中的一个便捷方法 static Map<Integer, COSObjectable> getNumberTreeAsMap(PDNumberTreeNode tree) throws IOException { if (tree == null) { return new LinkedHashMap<>(); } Map<Integer, COSObjectable> numbers = tree.getNumbers(); if (numbers == null) { numbers = new LinkedHashMap<>(); } else { // must copy because the map is read only numbers = new LinkedHashMap<>(numbers); } List<PDNumberTreeNode> kids = tree.getKids(); if (kids != null) { for (PDNumberTreeNode kid : kids) { numbers.putAll(getNumberTreeAsMap(kid)); } } return numbers; }

回答 1 投票 0

如何为 iOS 的 React Native 项目指定 pdf 打印的名称

我正在使用expo-print和expo-sharing来保存文件。 const { uri } = 等待 Print.printToFileAsync({html}); 等待 shareAsync(uri, { UTI: ".pdf", mimeType: "application/pdf" }...

回答 2 投票 0

SyncFusion 使用外部机构的时间戳签署 pdf 文档

我正在使用数字签名签署 PDF 文件。我使用 SyncFusion 作为 PDF 库,使用 GlobalSign 作为证书提供商/颁发机构。 与外部方签署文件时,实施...

回答 1 投票 0

ASP.NET Core MVC:通过Ajax调用Rotativa并在另一个选项卡中打开

我正在开发一个 ASP.NET Core MVC 应用程序,我必须将一些视图迁移到 PDF。 我正在使用 Rotativa,到目前为止效果很好。 PDF 在新选项卡中打开。我正在运行它 @Html。行动李...

回答 1 投票 0

使用 Java Apache PdfBox 在 PDF 模板中生成边框

在不久的将来我将开发一个PDF生成服务。这都是关于使用来自请求的数据填充一个简单的模板。 在我的研究过程中,我听说了 Apache PDFBox 和...

回答 1 投票 0

在 Postscript 中添加 XMP 元数据

我正在 Postscript 文件中添加 XMP 元数据,但在使用 Adobe Distiller 将其转换为 PDF 时遇到问题。 这是我的 PS 文件 /主字体 /Helvetica-Bold findfont 15 比例字体 def /标语字体 /

回答 1 投票 0

如何从PDF研究论文中准确提取标题、标题和副标题?

我正在尝试从 PDF 格式的研究论文中提取标题、标题和副标题。我尝试了各种方法,但未能获得准确的结果。这是我采取的步骤...

回答 1 投票 0

将多个带有链接的 Markdown 文件转换为 PDF

我用 Markdown 编写了大量技术文档。我选择使用它进行版本控制,因此我们可以在 GitHub 上查看。 我们现在需要与外部用户分享这一点(他们不太舒服......

回答 4 投票 0

这里使用 MemoryStream 两次的替代方案是什么?

我正在尝试编写代码,在护照上盖上系统用户姓名、日期和签名图像(我将其作为 varbinary 存储在 sql 数据库中,并在模型中存储为 byte)。 这是我的...

回答 1 投票 0

打开最近在 Android 中创建的 PDF

我正在使用 Android Studio 制作一个简单的应用程序来创建一些 PDF 文件来存储一些数据。我只想为用户自动打开生成的 PDF 做一个意图。 这只是画布图

回答 1 投票 0

自动从 SolidWorks PDM 获取 PDF 文件并合并到一个组合中

我正在尝试自动化创建包含存储在 SolidWorks PDM 中的多个 PDF 报告的 PDF 组合的过程。 (不是将这些 PDF 合并为一个 PDF,而是创建一个组合,其中包含这些

回答 1 投票 0

使用nodejs pdf-lib和Edge使用非双面打印机打印pdf小册子

我有一台便宜的爱普生喷墨彩色打印机,我想以双面A5小册子形式打印一些A4格式的pdf。 例如,有一个包含 8 个横向页面的 pdf: 1, 2, 3, 4, 5, 6, 7, 8 该项目...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.