Java PDF menambahkan lapisan, mendukung penambahan lapisan multi-halaman, sebagai berikut
Kode:
impor java.io.file; import java.io.fileoutputStream; import java.io.ioException; import java.util.list; com.ithtpdf.text.documentException; import com.ithtpdf.text.image; impor com.ithtpdf.text.ithtpdf.text.image; impor com.ithtpdf.text.ithpdf.text.image; com.ithtpdf.text.pdf.pdfreader; import com.ithtpdf.text.pdf.pdfStamper; kelas publik Pdfutils { /** * PDFADD LAYER * * @param srcpdf * File PDF asli * @param distpdf * SynRessize Pathpdf * asli PDF * @param distpdf * SynRessize p.pparpy * @pparpy * @param * @param distpdf * SynRessize Nama lapisan harus nomor (dikombinasikan pada jumlah halaman yang sesuai dengan pdf dalam urutan nama dan angka) * @return * @throws ioException * @throws DocumentException */ string statis public marklocalimage4dist (string srcpdf, string distpdf, daftar <string> layerpatharr) srcpdf, string DISTPDF, daftar <string> layerpatharr) File (srcpdf); if (! srcpdffile.exists ()) {lempar IllegalArgumentException baru ("File PDF yang perlu ditambahkan ke lapisan tidak dapat ditemukan"); } PDFreader Reader = new Pdfreader (SRCPDF); int n = reader.getNumberofPages (); // Jumlah halaman PDF PDFStamper Stamp = new PDFStamper (pembaca, FileOutputStream baru (distpdf)); PDFContentByte over; untuk (string layerpath: layerpatharr) {file layerFile = file baru (layerpath); String currentpageno = layerfile.getName (). Substring (0, layerfile.getName (). LastIndexof (".")); // Nama gambar (sesuai dengan jumlah halaman) boolean isnum = currentpageno.matches ("[0-9]+"); if (! isNum) {lempar baru ilegalargumentException ("adalah nama lapisan angka"); } Gambar img = image.getInstance (layerpath); img.setabsoluteposition (0, 0); if (n> 0 && n> = integer.parseInt (currentpageno)) {over = stamp.getOvercontent (integer.parseint (currentPageno)); over.addimage (IMG); }} stamp.close (); reader.close (); kembali distpdf; }}tes:
public static void main (string [] args) melempar ioException, DocumentException {List <String> imgurllist = ArrayList baru <> (); imgurllist.add ("d: /ts/testpdf/1.png"); //imgurllist.add("d:/ts/testpdf/2.png "); imgurllist.add ("d: /ts/testpdf/3.png"); Marklocalimage42Dist ("D: /ts/testpdf/testpdf.pdf", "d: /ts/testpdf/testpdf2.pdf", imgurllist); }hasil:
PDF Asli:
Setelah Sintesis PDF:
Di atas adalah semua konten artikel ini. Saya berharap ini akan membantu untuk pembelajaran semua orang dan saya harap semua orang akan lebih mendukung wulin.com.