java | itext|PdfContentByte水印文字相关(透明度、方位、大小、颜色)

PdfContentByte under=null;
for (int i = 1; i <= total; i++) // 每一页都加水印
{ under = stamp.getOverContent(i);// .getUnderContent(i);
under.beginText();
//用来设置文字的位置和字体---开始
under.setColorFill(BaseColor.RED);
under.setFontAndSize(bfChinese,fontSize);
under.setTextRise(45);//斜度
//横向居中
//under.setTextMatrix((pageWidth-fontSize*stampStr.length())/2+50,(pageHeight-fontSize*stampStr.length())/2+100);
PdfGState gs = new PdfGState();
gs.setFillOpacity(0.3f);// 设置透明度为0.8
under.setGState(gs);
//用来设置文字的位置和字体---结束
under.setTextMatrix(200,500);
under.newlineShowText(stampStr);
under.endText();
}
  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
`iTextPDF` 是一个用于生成 PDF 文档的强大 Java 库。在 `iTextPDF 5.5.13` 版本中,`PdfContentByte` 类提供了一系列方法来操作 PDF 页面的内容,包括添加文本、图像和水印等。如果你想在 PDF 中添加一个加粗的水印,你可以使用 `PdfContentByte` 的 `drawString()` 方法,并设置相应的字体样式。 以下是一个简单的示例,说明如何在 `PdfContentByte` 中添加加粗水印: ```java import com.itextpdf.text.*; import com.itextpdf.text.pdf.*; // 创建一个 PdfStamper 对象,用于在现有PDF上添加内容 PdfStamper stamper = new PdfStamper(new PdfReader("input.pdf"), new FileOutputStream("output_with_watermark.pdf")); // 获取要添加水印的页面 PdfContentByte canvas = stamper.getOverContent(pageNumber); // 设置字体和颜色 Font font = new Font(Font.FontFamily.HELVETICA, 12, Font.BOLD, BaseColor.YELLOW); // 12号加粗黄色字体 // 添加加粗水印 canvas.drawString("YOUR_WATERMARK", x, y, font); // x, y是你想要绘制文字的位置 // 关闭资源 stamper.close(); ``` 其中,你需要将 `"input.pdf"` 替换为你的源PDF文件名,`pageNumber` 为你想要添加水印PDF页面编号,`"YOUR_WATERMARK"` 是你要添加的水印内容,`x` 和 `y` 是文本在页面上的坐标位置。 相关问题: 1. 如何在 iTextPDF 中创建 `PdfContentByte` 对象? 2. `PdfContentByte` 的 `drawString()` 方法有哪些参数? 3. 如何在 iTextPDF 中设置文本的样式,如加粗?
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值