0
私はiTextの7は、既存のPDFに画像を追加し、Javaの
私はイメージを追加するために作成した関数を使用してPDF文書に画像を追加しようとしているがImageDataをの型を取ると、その後に追加しますキャンバス上の矩形を選択してPDFに追加します。アプリケーションの起動方法で例外
、その後
によって引き起こさ:java.ioしかし、私はエラーにスレッド "メイン" java.lang.RuntimeExceptionで
例外を取得しておきます.FileNotFoundException:pdf.pdf(要求された操作は、ユーザーがマップしたセクションが開いているファイルでは実行できません)
機能コードは次のとおりです。次のように
protected void ExportToPdf(ImageData img) throws IOException { PdfDocument pdfDoc = new PdfDocument(new PdfReader("pdf.pdf"), new PdfWriter("pdf.pdf")); PdfCanvas canvas = new PdfCanvas(pdfDoc.getFirstPage()); PageSize ps = PageSize.A4; Rectangle page = new Rectangle(ps.getWidth(),ps.getHeight()); canvas.addImage(img, page, true); pdfDoc.close();
`
そして、私のメインは、次のとおりです。
public static void main(String[] args) throws IOException { //adds values to maps for the program to use //starts PDF writer PdfWriter writer = new PdfWriter("pdf.pdf"); //Initialize PDF document PdfDocument pdf = new PdfDocument(writer); // Initialize document Document document = new Document(pdf); pdf.addNewPage(); document.close(); writer.close(); pdf.close();
完全なプログラムは、シーンを取り込み、画像に変換し、その後に関数にそれを供給しますPDFに追加することができます。そのコードは次のとおりです:
WritableImage img = new WritableImage(1000, 700); scene.snapshot(img); RenderedImage renderedImage = SwingFXUtils.fromFXImage(img, null); ImageData imgData = ImageDataFactory.create(SwingFXUtils.fromFXImage(img, null), null); ExportToPdf(imgData);
何か助けが驚くべきでしょう、ありがとうございます。