透明图像在xfa.fillXfaForm之后显示为黑框。XFA填充是否支持透明图像?

罗兰·圣路易斯

这是当前的问题:我有一个由第三方创建的XFA表单,我想按原样使用它。我可以通过以下方式生成具有填充字段的PDF:

a) Extracting the XML via Acrobat Pro
b) filling the fields within the XML and calling 
            XfaForm xfa = form.getXfa();
            xfa.fillXfaForm(new FileInputStream(XML));

我想做的就是在第二页上加盖多个表单的表单的图像/水印。我要冲压的“ DRAFT” png图像具有透明背景,因此,如果覆盖层起作用,则图像背景应使底衬出现并看起来像图像文本位于pdf页面顶部。

如果这不是XFA表单,我想完成的工作将是微不足道的。我只需要使用iText的pdfStamper并将此透明PNG标记在第二页上,但是由于我现在只能使用Adobe LiveCycle Designer,因此我注意到非XFA文档中曾经很琐碎的任务在XFA中并不那么琐碎。从以前的帖子中,我了解到我无法将技术混合在一起。我必须在nonXFA(AcroForms)与XFA(由Adobe LiveCycle Designer构建)之间进行选择。基本上,我无法执行fillXFA然后使用压模,所以我不得不弄清楚如何使用XFA进行此操作。

我已经尝试了以下步骤作为静态PDF和动态PDF ....这对PDF的类型没有影响。

1)在Adobe LiveCycle Designer中,我转到了源PDF的第二页并定义了2个图像字段。

  overlay1 - this will span the top portion width of the page which has text 
             content underneath
  overlay2 - this will span the lower portion width of the page which has text 
             content underneath

2)作为测试...我为overlay1选择了一个图像,该图像具有透明背景,并且它的前景背景为DRAFT。在设计时... DRAFT透明图像有效,并且已正确放置在imageField的内容顶部:重叠1。我保存了修改后的基于XFA的PDF,在Acrobat Pro中将其打开,然后导出了XFA XML结构。我验证了overlay1具有DRAFT图像作为base64编码的字符串。

<overlay1 xmlns:xfa="http://www.xfa.org/schema/xfa-data/1.0/" xfa:contentType="image/png"
>iVBORw0KGgoAAAANSUhEUgAACWAAAAJYCAYAAADmY91UAAAACXBIWXMAAC4jAAAuIwF4pT92AABH
.......
.......

3)当我使用相同的base 64字符串,并且只在overlay2中输入它的内容,并通过fillXFA方法呈现它时...图像是一个黑框。我还在Acrobat Pro中打开了文件,然后双击imageField区域,选择了透明图像,它仍然显示为黑框。我用不透明的图像重复了上一步,它的矩形白色背景覆盖了其下面的所有内容。

4)我继续制作了另一张图片...没有透明度的图片。草稿没有透明度,背景为白色。我将其编码为base64格式。我能够将它放置在overlay1和overlay2图像字段中,没有任何问题。新问题是草稿图像的白色背景覆盖了其后面的所有内容。

为什么最初的透明png在Adobe LifeCycle Design(设计时)期间起作用,并且在fillXFA调用后,它显示为黑框?但是,如果我更改图像以完全不使用透明度...一切正常?

XFA填充期间XFA是否不为图像字段支持透明图像?记住,它在设计时有效,当时我告诉Adobe LiveCycle设计器将此透明png用于此字段。

我基本上是想在XFA pdf内的特定页面上创建2个图像水印。

我当前的备份计划是将PDF展平(取下XFA),然后使用Acrobat Pro将所有字段放回表单中,并使用标准的PDF itext调用并使用压模来填充它(这很麻烦,因为一堆字段)。但是我想知道在我看选项B之前是否有人需要做同样的w / XFA PDF表格。

罗兰·圣路易斯

因此,我用GIF透明图像替换了相同的PNG透明图像。以base64编码的GIF图像有效。我可以创建一个新的带有透明度的GIF文件,在base64中对其进行编码,并替换之前的文件,并且该文件仍然有效。看起来像是XFA表单中PNG渲染的错误

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

xfa.fillXfaForm之后,透明图像显示为黑框。XFA填充是否支持透明图像?

来自分类Dev

显示透明图像的形状

来自分类Dev

Javascript,显示透明图像。

来自分类Dev

Android在透明图像中填充颜色

来自分类Dev

Java SplashScreen透明图像

来自分类Dev

Python 透明图像遮罩

来自分类Dev

在轴上显示透明图像(MATLAB)

来自分类Dev

核心图像-在CMSampleBufferRef上呈现透明图像会导致其周围出现黑框

来自分类Dev

在透明图像上单击div

来自分类Dev

在WPF或Silverlight中单击透明图像

来自分类Dev

JavaFX LineChart-保存透明图像

来自分类Dev

在Qt中更改透明图像的颜色

来自分类Dev

使用ImageMagick彩色的透明图像

来自分类Dev

透明图像看彩色背景

来自分类Dev

透明图像上的相交检测

来自分类Dev

VB.NET透明图像边框

来自分类Dev

Photoshop像透明图像上的背景

来自分类Dev

用jQuery围绕透明图像发光

来自分类Dev

混合后仍需要透明图像

来自分类Dev

在 PHP 上合并透明图像

来自分类Dev

在JavaScript中的透明图像上创建填充动画

来自分类Dev

在OpenGL中为透明图像应用蒙版

来自分类Dev

Textview DrawableTop中的透明图像无法正确显示

来自分类Dev

在轴上显示此透明图像(MATLAB)

来自分类Dev

Javascript检查是否单击了画布上的透明图像

来自分类Dev

CSS 图像替换处理关闭图像和透明图像

来自分类Dev

是否有Linux图像查看器可以通过透明图像显示桌面?

来自分类Dev

如何在Java中使透明图像不透明?

来自分类Dev

具有透明背景的透明图像的问题