itext替换PDF的原理就是找到要替换的文字,然后计算他的位置,在哪个位置上生成覆盖层,然后在覆盖层上写内容。
从网上看到的自动计算PDF中文字的位置方法。
public class PdfConversion {
// 定义关键字
private static String KEY_WORD = "张三";
// 定义返回值
private static float[] resu = null;
// 定义返回页码
private static int i = 0;
/*
* 返回关键字所在的坐标和页数 float[0] >> X; float[1] >> Y; float[2] >> page;
*/
public static float[] getKeyWords(String filePath)
{
try
{
PdfReader pdfReader = new PdfReader(filePath);
int pageNum = pdfReader.getNumberOfPages();
System.out.println(pageNum);
PdfReaderContentParser pdfReaderContentParser = new PdfReaderContentParser(
pdfReader);
// 下标从1开始
for (i = 1; i <= pageNum; i++)
{
pdfReader