PDFBox - JavaScript dalam Dokumen PDF

Pada bab sebelumnya, kita telah mempelajari cara memasukkan gambar ke dalam dokumen PDF. Pada bab ini, kita akan membahas bagaimana menambahkan JavaScript ke dokumen PDF.

Menambahkan JavaScript ke Dokumen PDF

Anda dapat menambahkan tindakan JavaScript ke dokumen PDF menggunakan PDActionJavaScriptkelas. Ini mewakili tindakan JavaScript.

Berikut adalah langkah-langkah untuk menambahkan tindakan JavaScript ke dokumen PDF yang sudah ada.

Langkah 1: Memuat Dokumen PDF yang Ada

Muat dokumen PDF yang ada menggunakan metode statis load() dari PDDocumentkelas. Metode ini menerima objek file sebagai parameter, karena ini adalah metode statis Anda dapat memanggilnya menggunakan nama kelas seperti yang ditunjukkan di bawah ini.

File file = new File("path of the document")
PDDocument document = PDDocument.load(file);

Langkah 2: Membuat Objek PDActionJavaScript

Instantiate PDActionJavaScriptobjek seperti yang ditunjukkan di bawah ini. Ke konstruktor kelas ini, teruskan JavaScript yang diperlukan dalam bentuk String seperti yang ditunjukkan di bawah ini.

String javaScript = "app.alert( {cMsg: 'this is an example', nIcon: 3,"
   + " nType: 0,cTitle: 'PDFBox Javascript example' } );";       
PDActionJavaScript PDAjavascript = new PDActionJavaScript(javaScript);

Langkah 3: Menyematkan skrip Java di Dokumen

Sematkan string yang diperlukan ke dokumen PDF seperti yang ditunjukkan di bawah ini.

document.getDocumentCatalog().setOpenAction(PDAjavascript);

Langkah 4: Menyimpan Dokumen

Setelah menambahkan konten yang diperlukan, simpan dokumen PDF menggunakan save() metode dari PDDocument kelas seperti yang ditunjukkan pada blok kode berikut.

document.save("Path");

Langkah 5: Menutup Dokumen

Terakhir, tutup dokumen menggunakan close() metode dari PDDocument kelas seperti yang ditunjukkan di bawah ini.

document.close();

Contoh

Misalkan, kami memiliki dokumen PDF bernama sample.pdf, di jalan C:/PdfBox_Examples/ dengan halaman kosong seperti yang ditunjukkan di bawah ini.

Contoh ini menunjukkan cara menyematkan JavaScript di dokumen PDF yang disebutkan di atas. Di sini, kami akan memuat dokumen PDF bernamasample.pdfdan menyematkan JavaScript di dalamnya. Simpan kode ini dalam file dengan namaAddJavaScript.java.

import java.io.File;
  
import org.apache.pdfbox.pdmodel.PDDocument; 
import org.apache.pdfbox.pdmodel.interactive.action.PDActionJavaScript;

public class AddJavaScript {

   public static void main(String args[]) throws Exception {

      //Loading an existing file
      File file = new File("C:/PdfBox_Examples/new.pdf");
      PDDocument document = PDDocument.load(file);

      String javaScript = "app.alert( {cMsg: 'this is an example', nIcon: 3,"
         + " nType: 0, cTitle: 'PDFBox Javascript example’} );";

      //Creating PDActionJavaScript object 
      PDActionJavaScript PDAjavascript = new PDActionJavaScript(javaScript);

      //Embedding java script
      document.getDocumentCatalog().setOpenAction(PDAjavascript);

      //Saving the document
      document.save( new File("C:/PdfBox_Examples/new.pdf") );
      System.out.println("Data added to the given PDF"); 

      //Closing the document
      document.close();

   }
}

Kompilasi dan jalankan file Java yang disimpan dari command prompt menggunakan perintah berikut.

javac AddJavaScript.java 
java AddJavaScript

Setelah dieksekusi, program di atas menyematkan JavaScript dalam dokumen PDF tertentu yang menampilkan pesan berikut.

Data added to the given PDF

Jika Anda mencoba membuka dokumen new.pdf itu akan menampilkan pesan peringatan seperti yang ditunjukkan di bawah ini.