当前位置: 首页 > 知识库问答 >
问题:

iText-可单击的图像应该打开ms word附件

傅朗
2023-03-14

如何使图像可点击,以便打开附加的ms word文档?我这里有一些PDF文件,其中有一些图像(图标下方带有ms word文件名的ms word图标),可以通过单击这些图像打开附加的ms word文档,我想知道如何使用iText库实现这一点。我可以添加图片和附加ms word文档,但我还不知道如何应用操作(GoToE似乎仅适用于PDF附件)或链接之类的内容?

共有1个答案

索梓
2023-03-14

请查看ISO-32000-1(即PDF规范)中的第12.6.4.4节。该部分的标题为“嵌入式Go To Actions”:

正如您所发现的,您描述的行为是按规范进行的。GoToE操作用于跳转到并形成一个嵌入到另一个PDF文件中的PDF文件。不支持其他文档格式,因为。

你唯一的选择是引入一个文件附件注释,而不是一个嵌入文件和一个GoToE动作。例如,请参见FileAttachmentAnno示例:

public void createPdf(String dest) throws IOException, DocumentException {
    Document document = new Document();
    PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream(dest));
    document.open();
    Rectangle rect = new Rectangle(36, 700, 136, 800);
    PdfFileSpecification fs = PdfFileSpecification.fileEmbedded(
            writer, PATH, "test.docx", null);
    PdfAnnotation attachment =
            PdfAnnotation.createFileAttachment(writer, rect, "Click me" , fs);
    PdfAppearance app = writer.getDirectContent().createAppearance(100, 100);
    Image img = Image.getInstance(IMG);
    img.scaleAbsolute(100, 100);
    img.setAbsolutePosition(0, 0);
    app.addImage(img);
    attachment.setAppearance(PdfAnnotation.APPEARANCE_NORMAL, app);
    writer.addAnnotation(attachment);
    document.close();
}

在这个例子中,我们创建了一个PdfAnnotion,并为这个注释定义了一个自定义外观(而不是pin或回形针符号)。我用了一个图像,因为那似乎是你想要的。在这里查看结果(这适用于Adobe Reader,但并非所有PDF查看器都支持这一点)。

 类似资料:
  • 我想用javascript onclick创建一个事件,它将启用单击的图像并禁用其他图像。 例如,如果我有6张图片,我如何做:我想点击任何图片,例如图片3,那么图片3将被启用,图片1、2、4、5、6将被禁用。 几秒钟后,我想点击1号图片,然后它会变得活跃,而2,3,4,5,6会被禁用。 我怎么能这么做?

  • 我在和闪亮一起写传单。工具是基本的,我有一个地图与一些标记(来自一个表与长和LAT)。 有没有一个简单的方法做这件事? 您是否有一个非常简单的例子:您在地图上有一个制造者,您单击标记,然后打开一个图、一个表或jpeg?

  • 问题内容: 我正在使用 selenium2 beta 。我试图单击按钮,这将打开文件附件对话框。但是当我单击它时,什么也没有发生。 仅使用selenium而不是selenium2我可以轻松单击它。 问题答案: 我猜问题只是在使用Internet Explorer时出现,因为IE和FF处理文件输入略有不同:在FF中,您可以单击按钮或字段以调用“打开”对话框,而在IE中,您可以单击按钮或 双击单击 该

  • 我有一个pgm文件,格式如下 请帮帮我。。我不知道是什么问题。

  • 问题内容: 接下来的代码使用Modal react组件: 我正在尝试使用以下方式调用它: 和 我的意思是,单击此按钮后,没有任何显示。还有另一种方法可以调用该模式吗?我从以下位置导入模式: 从“反应-响应-模态”导入模态 问题答案: 您试图仅在单击按钮后才渲染模态,这对于非反应性环境是很自然的,但在反应中它以不同的方式起作用。在最简单的解决方案中,应始终呈现,当用户单击按钮时,将modal 属性更