java - 可填写表单中的 itext 图像字段

标签 java pdf itext

在 itext 2 中,下面的代码运行良好,在 itext 5 中它失败了。 有没有人知道如何将图像添加到 PDF 上的图像字段?

这是我的代码...

public static void atsSetFieldImage(AcroFields form, PdfStamper stamper, String fieldName, Image img) 
{
    try 
    {
        float[] photograph = form.getFieldPositions(fieldName);
        Rectangle rect = new Rectangle(photograph[1]
                           , photograph[2]
                           , photograph[3]
                           , photograph[4]);

        //Image img = Image.getInstance(imageName);
              image1.scaleToFit(rect.getWidth(), rect.getHeight());
              image1.setAbsolutePosition(
                                    photograph[1] + (rect.getWidth() - image1.getScaledWidth()) / 2
                                  , photograph[2] + (rect.getHeight() - image1.getScaledHeight()) / 2);

        PdfContentByte cb = stamper.getOverContent((int)photograph[0]);
                       cb.addImage(image1);

    }
    catch(Exception e) 
    {
        //e.printStackTrace();
    }
} 

最佳答案

如何将图像添加到 acroForm 字段:

Rectangle rect = form.getFieldPositions(fieldName)[0].position;
int page = form.getFieldPositions(fieldName)[0].page;
//Scale it
image1.scaleAbsolute(rect.getWidth(), rect.getHeight());
//Position it
img.setAbsolutePosition(rect.getLeft(), rect.getBottom());
//Add it to the correct page
stamper.getOverContent(page).addImage(img);

关于java - 可填写表单中的 itext 图像字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13755515/

相关文章:

java - 如何使用 JavaMail 将返回路径设置为发件人地址以外的电子邮件地址?

java - 使用 itext 在一个单元格中的同一行中显示图像和文本

java - 为什么表达式 x+x 在它出现的两个地方打印的结果不同?

java - .jar 文件的路径不正确

php - 使用 PS (postscript) 文件将转义码打印到打印机

java - 使用 flyingsaucer 在 PDF 中使用 javascript

c# - 使用 docraptor c# 在 PDF 中添加页眉和页脚图像

android - android 有内置的 PDF 查看器吗?

java - 将 itext pdf 保存为 blob,无需物理存在。

java - 如何从 iText 获取书面 PDF 的 OutputStream