1. מוצרים
  2.   PDF
  3.   .NET
  4.   PdfPig
 
  

API חינמי ב‑C# .NET לחילוץ וניתוח טקסט מ‑PDF

ספרייה מובילה קוד פתוח ב‑.NET לחילוץ טקסט, תמונות, מטא‑נתונים ומידע על מבנה PDF מקבצי PDF בקלות. הוסף דפים, טבלאות, טקסט וצורות חדשים ל‑PDFים.

מהי ספריית PdfPig?

PdfPig היא ספריית .NET בקוד פתוח שנועדה לקריאה, ניתוח והוצאת תוכן מקבצי PDF ב‑C#. היא פותחה כגרסה מותאמת של Apache PDFBox עבור סביבת .NET ומשמשת נרחבות להוצאת טקסט מ‑PDF, ניתוח מסמכים ועיבוד PDF ברמת נמוכה. היא תומכת ב‑.NET Standard ובמספר גרסאות של .NET, מה שהופך אותה לגמישה מאוד עבור סביבת פיתוח מודרנית. הספרייה שימושית מאוד לאינדקסינג של מסמכים, מנועי חיפוש, קדם‑עיבוד של מסמכי AI/ML, עיבוד פוסט‑OCR, אוטומציה של חשבוניות, כלי נגישות ל‑PDF ומערכות הוצאת נתונים.

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

Previous Next

התחלה עם PdfPig

ספריית PdfPig זמינה כחבילה של NuGet. לכן מומלץ מאוד להשתמש ב‑NuGet כדי להתקין את PdfPig בפרויקט שלך. אנא השתמש בפקודה הבאה להתקנה מוצלחת.

התקנת PdfPig באמצעות מנהל החבילות NuGet

// Package Manager
Install-Package PdfPig

// .NET CLI

dotnet add package PdfPig

אתה יכול גם להתקין זאת ידנית; הורד את קבצי השחרור האחרונים ישירות מGitHub מאגר.

חילוץ טקסט ממסמכי PDF באמצעות .NET

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

איך לחלץ טקסט ממסמכי PDF באמצעות API של C#?

using UglyToad.PdfPig;

using (var document = PdfDocument.Open("sample.pdf"))
{
    foreach (var page in document.GetPages())
    {
        string text = page.Text;
        Console.WriteLine(text);
    }
}

טפסים אינטראקטיביים וחילוץ קבצים משובצים

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

איך לחלץ נתוני טופס אינטראקטיביים באמצעות ספריית C# .NET?

using System;
using System.Collections.Generic;
using UglyToad.PdfPig;
using UglyToad.PdfPig.AcroForms;

class Program
{
    static void ExtractInteractiveContent(string pdfPath)
    {
        using (PdfDocument document = PdfDocument.Open(pdfPath))
        {
            // Extracting Interactive Form Data
            if (document.TryGetForm(out AcroForm form))
            {
                foreach (var field in form.Fields)
                {
                    Console.WriteLine($"Form Field Name: {field.Information.Name} | Type: {field.Type}");
                }
            }

            // Extracting Embedded Documents/Attachments
            if (document.Advanced.TryGetEmbeddedFiles(out IReadOnlyList embeddedFiles))
            {
                foreach (var file in embeddedFiles)
                {
                    Console.WriteLine($"Found Attachment: {file.Name} ({file.Bytes.Count} bytes)");
                    // File.WriteAllBytes(file.Name, file.Bytes.ToArray()); // Save attachment locally
                }
            }
        }
    }
}

מיזוג PDF מרובה קבצים בצורה חלקה באמצעות C#

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

איך למזג קבצי PDF מרובים בתוך אפליקציות C# .NET?

using System.IO;
using UglyToad.PdfPig.Writer;

class Program
{
    static void MergeDocuments(string firstPdf, string secondPdf, string outputPdf)
    {
        // Consolidate files into a single continuous byte sequence
        byte[] mergedFileBytes = PdfMerger.Merge(firstPdf, secondPdf);
        
        // Output the combined file stream directly to disk
        File.WriteAllBytes(outputPdf, mergedFileBytes);
    }
}

קריאת מטא‑נתוני PDF, טפסים והערות

מעבר לחילוץ טקסט, ספריית הקוד הפתוח PdfPig כוללת תכונות שמחשפות מטא‑נתוני מסמך (כותרת, מחבר, יוצר), שדות טופס אינטראקטיביים, קישורים והסימניות. זה יקר ערך למערכות סיווג מסמכים, עיבוד טפסים אוטומטי ואינדוקס תוכן שבו אתם זקוקים הן לתוכן והן להקשר.

 עִברִית