我认为你写完后需要关闭文件。
添加此
pdfDoc.close();
public class ModifyPDFWithBackgroundColor {
public static void main(String[] args) throws IOException {
String inputPdfFilePath = "/Users/nunyet/IdeaProjects/mystic-river-api/docs/style-guide/LogoFiles/ForPrint/pdf/color-logo-with-background.pdf";
String outputPdfFilePath = "/Users/nunyet/IdeaProjects/mystic-river-api/docs/style-guide/LogoFiles/ForPrint/pdf/color-logo-with-background2.pdf";
DeviceRgb backgroundColor = new DeviceRgb(46, 80, 111);
PdfDocument pdfDoc = new PdfDocument(new PdfReader(inputPdfFilePath), new PdfWriter(outputPdfFilePath));
PdfPage page = pdfDoc.getFirstPage();
PdfPage newPage = pdfDoc.addNewPage(page.getPageSize());
PdfCanvas canvas = new PdfCanvas(newPage);
canvas.saveState();
canvas.setFillColor(backgroundColor);
canvas.rectangle(0, 0, newPage.getPageSize().getWidth(), newPage.getPageSize().getHeight());
canvas.fill();
canvas.restoreState();
pdfDoc.close();
System.out.println("PDF modified successfully!");
}
}