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

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

.NET Redaction API להחלפת טקסט

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

אתה יכול להוריד את קובצי ה-DLL או ה-MSI מתקין מקטע ההורדות או להתקין את ה-API באפליקציית NET שלך דרך [NuGet](https://www.nuget.org /packages/groupdocs.redaction).

PM> Install-Package GroupDocs.Redaction

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

מצא והחלף Word או ביטוי ב-PDF באמצעות C#

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

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

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

// מצא ביטוי מדויק והחלף אותו בטקסט אחר באמצעות C#
using (Redactor redactor = new Redactor(@"path/document.pdf"))
{
  redactor.Apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions("[censored]")));
  redactor.Save(new SaveOptions() { AddSuffix = true, RasterizeToPDF = false });
}

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

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

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

// מצא ביטוי מדויק (תלוי רישיות) והחלף אותו בטקסט אחר באמצעות C#
using (Redactor redactor = new Redactor(@"path/document.pdf"))
{
  redactor.Apply(new ExactPhraseRedaction("John Doe", true /*isCaseSensitive*/, new ReplacementOptions("[censored]")));
  redactor.Save(new SaveOptions() { AddSuffix = true, RasterizeToPDF = false });
}

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

החלף טקסט ב-PDF בביטויים רגילים (RegEx) באמצעות C#

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

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

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

// מצא טקסט באמצעות ביטוי רגולרי והחלף אותו בטקסט אחר באמצעות C#
using (Redactor redactor = new Redactor(@"path/document.pdf"))
{
  redactor.Apply(new RegexRedaction("\\d{2}\\s*\\d{2}[^\\d]*\\d{6}", new ReplacementOptions("[censored]")));
  redactor.Save(new SaveOptions() { AddSuffix = true, RasterizeToPDF = false });
}

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

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

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

// מצא טקסט ב-PDF והסתיר אותו על ידי ציור מלבן מעליו באמצעות C#
using (Redactor redactor = new Redactor(@"path/document.pdf"))
{
  redactor.Apply(new ExactPhraseRedaction("John Doe", new ReplacementOptions(System.Drawing.Color.Black)));
  redactor.Save(new SaveOptions() { AddSuffix = true, RasterizeToPDF = false });
}

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

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

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

סיכום

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

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

ראה גם