The Facades Layer in Aspose.PDF FOSS עבור Java
Aspose.PDF FOSS for Java includes a facades layer — a set of high-level, task-focused שיעורים המספקים פעולות ממוקדות על מסמכים PDF ללא צורך במניווט כל כיתה פקודה עוקבת אחר אותו דפוס: מחבר את תוצאות, ביצוע פעולות, הצלת התוצאה.
כל המעמדות הקדומים מתגוררים ב org.aspose.pdf.facades חבילה :
import org.aspose.pdf.facades.*;
PdfAnnotationEditor: Flatten and Remove Annotations – להוריד ולהסיר את ההודעות
PdfAnnotationEditor מתן פעולות לניהול הערות ברוב: להדביק אותם לתוכן הדף, להסיר את כל ההערות או להסרת סוגים ספציפיים של תוויות לפי שם.
try (PdfAnnotationEditor editor = new PdfAnnotationEditor()) {
editor.bindPdf("annotated.pdf");
// Flatten all annotations into the page content stream
editor.flattenAnnotations();
editor.save("flat.pdf");
}
The deleteAnnotations(annotationType) העומס המוגזם מקבל סוג של סימן כגון "Highlight" או "Widget" כדי להסיר רק כתבות מסוג זה. countAnnotations() החזיר את מספר ההערות הכולל בכל הדפים.
PdfBookmarkEditor: יצירת ועיבוד ספרים
PdfBookmarkEditor ניהול עץ הדפדפן PDF (מונחים ספרים). כדי ליצור ספרים חדשים עם createBookmarks(),• הסרת כל התוויות עם deleteBookmarks(),• להסיר את התוויות לפי כותרת עם deleteBookmarkByTitle().
try (PdfBookmarkEditor bookmarkEditor = new PdfBookmarkEditor()) {
bookmarkEditor.bindPdf("input.pdf");
// Remove all bookmarks from the document
bookmarkEditor.deleteBookmarks();
bookmarkEditor.save("no-bookmarks.pdf");
}
The bindPdf(document) העומס המוגזם מקבל את Document היכולת, המשמשת באופן ישיר שימוש בצינורות שבהם המסמך כבר מחוברים לזיכרון.
PDFContentEditor: תבנית תיקון
PdfContentEditor תומך בתהליך החלפת טקסט ממוקד בתוך זרימת תוכן PDF. replaceText(searchText, replaceText) להחליף את כל התרחשות של רצועה בכל המסמך; replaceText(searchText, pageNumber, replaceText) הגבלת החלפת הדף לדף אחד.
try (PdfContentEditor contentEditor = new PdfContentEditor()) {
contentEditor.bindPdf("template.pdf");
contentEditor.replaceText("{{CompanyName}}", "Acme Corp");
contentEditor.save("output.pdf");
}
TextReplaceOptions • לבדוק אם החלפת המוצר צריכה לשמור על המקורי. טקסט וגודל או תכונות טקס מורשת מהתוכן הסובב. getStamps(pageNumber) חזרה StampInfo כל המוצרים על דף אחד, ו deleteStampById() הוא מוריד את החותם הספציפי על ידי זיהויו.
PdfFileSecurity: הצפנה והרשאות
PdfFileSecurity ניהול אבטחה ברמה של מסמך כולל הצפנה, הפחתת הצפן, ורישיונות גישה.המבנה הבוררות מקבלות מסלולי קובץ, זרמים, או אחד קיימים Document המקום נמצא ליד היעד.
DocumentPrivilege מייצג את הרשאות הגישה עבור המסמך המוצפן. שימוש DocumentPrivilege.getForbidAll() לדחות את כל הפעולות של המשתמש, או DocumentPrivilege.getAllowAll() כדי להבטיח גישה מלאה.
try (PdfFileSecurity security = new PdfFileSecurity("input.pdf", "secured.pdf")) {
DocumentPrivilege privilege = DocumentPrivilege.getForbidAll();
privilege.setAllowPrint(true);
security.encryptFile("userPass", "ownerPass", privilege, KeySize.x256);
}
decryptFile(ownerPassword) הסרת הצפנה כאשר הסיסמה של הבעלים ידועה. The Algorithm EIN מספקת RC4 ו AES משפחות אלגוריתם; KeySize מציין את אורך המפתח.
PdfFileStamp: הוספת סטמפ ומספרים בדף
PdfFileStamp הוספת טקסט ותמונות לדפים PDF וניתן להוסיף באופן אוטומטי יצירת מספרים בצורת דף.הדפוסים ממוקמים באמצעות הקורדינט מבוסס להציב על כל דף.
try (PdfFileStamp stamp = new PdfFileStamp("input.pdf", "stamped.pdf")) {
// Add formatted page numbers to all pages
stamp.addPageNumber("Page #", PageNumberingStyle.NumeralsArabic,
0, 0, 0, 20);
}
PDFExtractor: טקסט ותמונה
PdfExtractor מספק API מבוסס מעקב כדי לחלץ טקסט ותמונות מתוך PDF מסמכים: לאחר חיבור מסכם, התקשר extractText() להפעיל טקסט תזונה, ואז iterate עם hasNextPageText() ו getNextPageText():
try (PdfExtractor extractor = new PdfExtractor()) {
extractor.bindPdf("document.pdf");
extractor.extractText();
while (extractor.hasNextPageText()) {
String pageText = extractor.getNextPageText();
// Collect extracted page content
}
}
על מנת להוציא תמונה, extractImage() הוא מנסה להפעיל את החילוץ ו hasNextImage() / getNextImage(outputStream) יש להדפיס את התמונות שנלקחו. The getPassword() ו setPassword() שיטות תמיכה במסמכים מוצפנים.
להתחיל
להוסיף את ההסתמכות של Maven:
<dependency>
<groupId>org.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>0.1.0-alpha</version>
</dependency>
כל שיעורי הפסד דורשים Java 11 או מאוחר יותר. Aspose.PDF FOSS עבור Java הוא רישיון וניתן להגיש ב https://github.com/aspose-pdf-foss/Aspose.PDF-FOSS-for-Java.