| | |
| | | int maxRow = sheet.getLastRowNum(); |
| | | if (sheet.getRow(1) != null && sheet.getRow(1).getCell(0) != null) { |
| | | String srcPath = sheet.getRow(1).getCell(0).toString(); |
| | | String beforePath = srcPath; |
| | | String targetPath = sheet.getRow(1).getCell(1).toString(); |
| | | Document pdfDoc = new Document(srcPath); |
| | | for (int row = 1; row <= maxRow; row++) { |
| | | //获取最后单元格num,即总单元格数 ***注意:此处从1开始计数*** |
| | | // 源文件路径 |
| | | srcPath = sheet.getRow(row).getCell(0).toString(); |
| | | String beforePath = sheet.getRow(row - 1).getCell(0).toString(); |
| | | String nextPath = null; |
| | | if (sheet.getRow(row + 1) != null && sheet.getRow(row + 1).getCell(0) != null) { |
| | | nextPath = sheet.getRow(row + 1).getCell(0).toString(); |
| | | } |
| | | if (!beforePath.equals(srcPath) && row - 1 != 0) { |
| | | if (!beforePath.equals(srcPath) && row != 1) { |
| | | // 输入文件路径 |
| | | beforePath = srcPath; |
| | | targetPath = sheet.getRow(row).getCell(1).toString(); |
| | | System.out.println(srcPath); |
| | | pdfDoc = new Document(srcPath); |
| | |
| | | String srcText = sheet.getRow(row).getCell(2).toString(); |
| | | String targetText = sheet.getRow(row).getCell(3).toString(); |
| | | String fontName = sheet.getRow(row).getCell(4).toString(); |
| | | |
| | | float displacement = (float)sheet.getRow(row).getCell(5).getNumericCellValue(); |
| | | // 调整 X 坐标 |
| | | if (srcText.equals("1,196.72")){ |
| | | System.out.println(222); |
| | | } |
| | | TextFragmentAbsorber textFragmentAbsorber = new TextFragmentAbsorber(srcText); |
| | | PageCollection pages = pdfDoc.getPages(); |
| | | pages.accept(textFragmentAbsorber); |
| | |
| | | // 调整 X 坐标 |
| | | textFragment.setPosition(new Position(textFragment.getPosition().getXIndent() - displacement, textFragment.getPosition().getYIndent())); |
| | | }*/ |
| | | |
| | | textFragment.setPosition(new Position(textFragment.getPosition().getXIndent() - displacement, textFragment.getPosition().getYIndent())); |
| | | textFragment.setText(targetText); |
| | | textFragment.getTextState().setFont(FontRepository.findFont(fontName)); |
| | | } |
| | | if (!srcPath.equals(nextPath)) { |
| | | pdfDoc.save(targetPath); |
| | | try { Thread.sleep(50); } catch (InterruptedException e) { e.printStackTrace(); } |
| | | break; |
| | | } |
| | | } |
| | | } |