תבניות נמצאות בשימוש נרחב ליצירת מסמכים מותאמים אישית על ידי החלפת מפתחות התבנית בערכים המתאימים. מאמר זה מנחה כיצד למצוא ולהחליף טקסט ומילים במסמכי PDF ב-Java. נדון בנפרד כיצד לבצע חיפוש מילים וביטויים, חיפוש מילים תלוי רישיות, החלפת הטקסט שנמצא באמצעות ביטויים רגולריים. לבסוף, נלמד כיצד להסתיר את החלק המבוקש בטקסט באמצעות Java.

הנושאים הבאים יכוסו להלן:

Java Redaction API להחלפת טקסט

GroupDocs מספקת Java API להחלת סוגים שונים של עריכות. זה מאפשר לתקן, להסתיר או להסיר את התוכן ואפילו מטא נתונים של מסמכים, מצגות, גיליונות אלקטרוניים, קבצי PDF ותמונות בתוך האפליקציה. לפרטים נוספים על ה-API, בקר בתיעוד.

הורד או הגדר

אתה יכול להוריד את קובץ ה-JAR מסעיף ההורדות, או פשוט לקבל את המאגר העדכני ביותר ותצורות תלות עבור ה-pom.xml של יישומי Java המבוססים על maven.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>https://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-redaction</artifactId>
        <version>21.12</version> 
</dependency>

אחד הדברים הטובים הוא שאין צורך להתקין שום עורך PDF, או כל תוכנה אחרת של צד שלישי לצורך עריכת PDF. להלן התוכן של מסמך ה-PDF המשמש בדוגמאות שלהלן לצורך עריכה. אותה גישה תעבוד עבור פורמטים אחרים של מסמכים ללא הבדל כמעט בקוד המקור.

מצא והחלף Word או ביטוי ב-PDF ב-Java

אתה יכול להשתמש בתכונה זו כדי להסתיר כל מידע פרטי, וגם כדי ליצור מסמך מותאם אישית חדש מכל תבנית. השלב הבא מסביר כיצד למצוא כל מילה/ביטוי במסמך PDF ולהחליף אותו בטקסט אחר ביישום Java.

  • טען את קובץ ה-PDF באמצעות המחלקה Redactor.
  • מצא את הביטוי או המילה המדויקים באמצעות ExactPhraseRedaction ו-[ReplacementOptions](https://apireference.groupdocs. com/redaction/java/com.groupdocs.redaction.redactions/ReplacementOptions).
  • החל את העריכה באמצעות שיטת application().
  • שמור את המסמך החדש עם שינויים בשיטת save().

הקוד הבא מוצא ומחליף את המילים בקובץ PDF באמצעות Java. ליתר דיוק, הוא מסתיר את כל המופעים של “ג’ון דו” על ידי החלפתו במילה “[מצונזר]”.

// מצא ביטוי מדויק ב-PDF והחלף אותו בטקסט אחר באמצעות Java
final Redactor redactor  = new Redactor("path/document.pdf");
redactor.apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions("[censored]")));
// שמור את הקובץ שנערך במיקום אחר עם שם שונה.
FileOutputStream stream = new FileOutputStream("path/exactPhrase.pdf");
RasterizationOptions rasterOptions = new RasterizationOptions();
rasterOptions.setEnabled(false);
redactor.save(stream, rasterOptions);

הפלט של הקוד לעיל הוא כדלקמן.

מצא והחלף טקסט או ביטוי תלוי-רישיות ב-PDF באמצעות Java

אתה יכול לבצע את החיפוש והעריכה תלויי רישיות. הקוד הבא מחליף את המופע תלוי-רישיות של המילה “John Doe” אך לא “John Doe” בתוך מסמך PDF באמצעות Java.

// מצא ביטוי מדויק ב-PDF (תלוי רישיות) והחלף אותו בטקסט אחר באמצעות Java
final Redactor redactor  = new Redactor("path/document.pdf");
redactor.apply(new ExactPhraseRedaction("John Doe", true /*isCaseSensitive*/, new ReplacementOptions("[censored]")));
redactor.save();

הפלט של הקוד הוא כדלקמן.

החלף טקסט ב-PDF בביטויים רגילים (RegEx) ב-Java

באופן דומה, אתה יכול להחליף כל תבנית טקסט ספציפית באמצעות ביטויים רגולריים. השלבים הבאים מאפשרים לך לבטל PDF לאחר חיפוש באמצעות ביטוי רגולרי (RegEx) בתוך יישומי Java שלך.

  • טען את מסמך ה-PDF באמצעות המחלקה Redactor.
  • מצא את ההתאמה הרגולרית באמצעות המחלקה RegexRedaction עם [ReplacementOptions](https://apireference.groupdocs.com/ redaction/java/com.groupdocs.redaction.redactions/ReplacementOptions).
  • החל בשינויים במסמך באמצעות שיטת application().
  • שמור את המסמך שנערך בשיטת save() המתאימה.

קוד ה-Java הבא מראה כיצד למצוא דפוס טקסט מסוים במסמך PDF באמצעות RegEx ובהמשך להחליף/להסתיר אותו בטקסט אחר.

// מצא טקסט ב-PDF באמצעות ביטוי רגולרי והחלף אותו בטקסט אחר באמצעות Java
final Redactor redactor  = new Redactor("path/document.pdf");
redactor.apply(new RegexRedaction("\\d{2}\\s*\\d{2}[^\\d]*\\d{6}", new ReplacementOptions("[censored]")));
redactor.save();

הפלט של הקוד לעיל הוא כדלקמן.

החלף את הטקסט בתיבה צבעונית ב-Java

אם אתה רק רוצה להסתיר את המידע הסודי שחיפשת בתוך קובץ ה-PDF שלך, אתה יכול פשוט לשים עליו כריכה. ה-API מאפשר לך להסתיר את הטקסט שחיפשת. הקוד הבא מציב את המלבן השחור מעל הטקסט הפרטי שהוזכר ב-Java.

// מצא טקסט ב-PDF והסתיר אותו על ידי ציור מלבן מעליו באמצעות Java
final Redactor redactor  = new Redactor("path/document.pdf");
redactor.apply(new ExactPhraseRedaction("John Doe", true, new ReplacementOptions(java.awt.Color.BLACK)));
redactor.save();

הפלט של הקוד לעיל הוא כדלקמן.

קבל רישיון API בחינם

אתה יכול לקבל רישיון זמני בחינם כדי להשתמש ב-API ללא מגבלות ההערכה.

סיכום

לסיכום, למדנו כיצד למצוא טקסט מסוים בקבצי PDF באמצעות טכניקות חיפוש שונות. מאוחר יותר ערכנו את קבצי ה-PDF על ידי החלפה או הסתרה של הטקסט בתוך האפליקציות ב-Java. ליתר דיוק, ביצענו חיפוש פשוט של המילים, הביטויים, חיפשנו ברגישות רישיות ובאמצעות שימוש ב-RegEx ב-Java. לבסוף, שינינו את תוצאות החיפוש עם טקסט אחר או פשוט על ידי הסתרתו עם צבע מעליו.

לפרטים נוספים על ה-API, בקר בתיעוד.לשאלות, צור איתנו קשר דרך הפורום.

ראה גם