يضيف Java PDF طبقات ، ويدعم إضافة طبقة متعددة الصفحات ، على النحو التالي
شفرة:
استيراد java.io.file ؛ استيراد java.io.fileOutputStream ؛ استيراد java.io.ioException ؛ import java.util com.ithtpdf.text.pdf.pdfreader ؛ import com.ithtpdf.text.pdf.pdfstamper يجب أن يكون الاسم رقمًا (مدمجًا على عدد الصفحات المقابلة لـ PDF بترتيب أسماء الصور والأرقام) * REGROURN * throws ioException * throws documentException */ سلسلة ثابتة عامة marklocalimage42dist (String srcpdf ، string distpdf ، list <string> layerpatharr ملف (srcpdf) ؛ if (! srcpdffile.exists ()) {رمي جديد غير alfictalargumentException ("لا يمكن العثور على ملف PDF الذي يجب إضافته إلى الطبقة") ؛ } pdfreader reader = new pdfreader (srcpdf) ؛ int n = reader.getNumberOfPages () ؛ // عدد صفحات PDF PDFSTAMPER STAMP = جديد pdfstamper (reader ، fileOutputStream (distpdf)) ؛ pdfcontentbyte أكثر ؛ لـ (string layerpath: layerpatharr) {file layerfile = new file (layerPath) ؛ String CurrentPageno = layerfile.getName (). substring (0 ، layerfile.getName (). lastIndExof (".")) ؛ // اسم الصورة (المقابل لعدد الصفحات) boolean isNum = currentpageno.matches ("[0-9]+") ؛ if (! isNum) {رمي new alfictalargumentException ("هل اسم الطبقة A a") ؛ } صورة 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 () ؛ إرجاع distpdf ؛ }}امتحان:
Public Static Void Main (String [] args) يلقي iOexception ، documentException {list <string> imgurllist = new ArrayList <> () ؛ 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) ؛ }نتيجة:
PDF الأصلي:
بعد التوليف PDF:
ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.