Java में PDF Facades के साथ कैसे काम करें
फ्लैट एनाटाइम
सभी नोटों को पृष्ठ सामग्री प्रवाह में फ्लैट करें ताकि वे अब अलग-अलग नोटिंग वस्तुओं के रूप में संपादित या हटाया जा सके. यह एक सामान्य कदम है दस्तावेज़ को मुद्रित करने या संग्रहीत करने से पहले:
try (PdfAnnotationEditor editor = new PdfAnnotationEditor()) {
editor.bindPdf("annotated.pdf");
editor.flattenAnnotations();
editor.save("flat.pdf");
}Bookmark से हटाएँ
एक दस्तावेज़ से सभी आउटलाइन बुकमार्क हटा दें. बुमार्कों (जिन्हें आॉटलिन भी कहा जाता है) पीडीएफ पाठक पृष्ठों में दिखाई देने वाले नवाचार पेड़ इनपुट हैं:
try (PdfBookmarkEditor editor = new PdfBookmarkEditor()) {
editor.bindPdf("input.pdf");
editor.deleteBookmarks();
editor.save("no-bookmarks.pdf");
}पाठ बदलना
एक दस्तावेज़ के सभी पृष्ठों में एक पंक्ति को बदलना. यह एक प्रपत्र वितरित करने से पहले टेम्पलेट स्थान धारकों को भरने के लिए उपयोगी है:
try (PdfContentEditor editor = new PdfContentEditor()) {
editor.bindPdf("template.pdf");
editor.replaceText("{{Date}}", "2026-05-24");
editor.save("output.pdf");
}एक दस्तावेज़ को एन्क्रिप्ट करें
AES-256 एन्क्रिप्शन का उपयोग करने के लिए एक्सेस लाइसेंस के साथ करें PdfFileSecurity. के लिए DocumentPrivilege.getForbidAll() सभी कार्यों को रोकता है; व्यक्तिगत अनुमतिएँ इसके बाद सेटर विधियों के साथ पुन: सक्षम किया जा सकता है:
try (PdfFileSecurity security = new PdfFileSecurity("input.pdf", "secured.pdf")) {
DocumentPrivilege priv = DocumentPrivilege.getForbidAll();
priv.setAllowPrint(true);
security.encryptFile("user", "owner", priv, KeySize.x256);
}पाठ निकालना
पृष्ठ पाठ का उपयोग करके PdfExtractor.कॉल करें extractText() पहले प्रक्रिया के लिए सभी पृष्ठों, फिर प्रत्येक पृष्ठ के पाठ को वापस लेना getNextPageText():
try (PdfExtractor extractor = new PdfExtractor()) {
extractor.bindPdf("document.pdf");
extractor.extractText();
while (extractor.hasNextPageText()) {
String text = extractor.getNextPageText();
System.out.println(text);
}
}