内容字节与5.5.5 jar有奇怪的颜色行为

时间:2015-04-13 19:45:48

标签: itext itextpdf

我的代码已经工作了一段时间,在PDF文件的页面上标记“DRAFT” 我刚刚将应用程序更新到5.5.5 jar并且对于一些PDF而不是可爱的粉红色水印它只是黑色。该代码适用于具有5.5.3的两个源文件,而不适用于第二个5.5.4,因为第二个源被标记(由于后台信头文件 - 引入了引发NullPointerError的问题),现在不适用于5.5.5要么(没有错误,要么是不希望的结果)

它适用于简单的'hello world'示例,但不适用于从iText创建的其他文件 文件eg_01和eg_o1A显示工作示例,1B和1C显示不工作示例

在Groovy中标记代码段

import com.itextpdf.text.Element
import com.itextpdf.text.BaseColor
import com.itextpdf.text.pdf.BaseFont
import com.itextpdf.text.pdf.PdfStamper
import com.itextpdf.text.pdf.PdfReader

today = new Date()
reader = new PdfReader(source)
stamper = new PdfStamper(reader, new FileOutputStream(output))
bf = BaseFont.createFont(BaseFont.HELVETICA_BOLD, BaseFont.WINANSI, BaseFont.EMBEDDED)
tSize = 24
mark = 'DRAFT ' + today.format('dd/MM/yyyy')
angle = 45
height = reader.getPageSizeWithRotation(1).getHeight()/2
width = reader.getPageSizeWithRotation(1).getWidth()/2
cb = stamper.getOverContent(1)
cb.setColorFill(new BaseColor(255,200,200))
cb.setFontAndSize(bf, tSize)
cb.beginText()
cb.showTextAligned(Element.ALIGN_CENTER, mark, width.toFloat(), height.toFloat(), angle)
cb.endText()
stamper.close()
reader.close()
return true

0 个答案:

没有答案