Эта страница может содержать автоматически переведенный текст.

Извлечь текст, пути и изображения из PDF-документов в C# и VB.NET

Используйте Библиотеку Docotic.Pdf для извлечения текста, изображений и векторных путей из PDF-документов в .NET в Windows, Linux, macOS, Android, iOS или в облаке.

Извлечение текста и изображений

Получить текст из PDF

Вы можете конвертировать PDF-документы в текст в .NET с помощью Docotic.Pdf. В этом примере показано, как преобразовать PDF в форматированный текст на C#:

using BitMiracle.Docotic.Pdf;

using (var pdf = new PdfDocument("your_document.pdf"))
{
    var options = new PdfTextExtractionOptions
    {
        SkipInvisibleText = true,
        WithFormatting = true
    };
    string formattedText = pdf.GetText(options);
    Console.WriteLine(formattedText);
}

Вы можете извлечь текст только из определенной части страницы PDF. Используйте свойство PdfTextExtractionOptions.Rectangle для этого.

Вы также можете получить подробную информацию о каждом фрагменте текста для сложного анализа. Docotic.Pdf позволяет извлекать текст PDF как есть, по словам или по символам. В этом примере показано, как извлечь текст PDF по словам на C#:

using (var pdf = new PdfDocument("your_document.pdf"))
{
    PdfPage page = pdf.Pages[0];
    foreach (PdfTextData data in page.GetWords())
    {
        Console.WriteLine(
            $"{{\n" +
            $"  text: '{data.GetText()}',\n" +
            $"  bounds: {data.Bounds},\n" +
            $"  font name: '{data.Font.Name}',\n" +
            $"  font size: {data.FontSize},\n" +
            $"  transformation matrix: {data.TransformationMatrix},\n" +
            $"  rendering mode: '{data.RenderingMode}',\n" +
            $"  brush: {data.Brush},\n" +
            $"  pen: {data.Pen}\n" +
            $"}},"
        );
    }
}

Прочтите статью Извлечение текста из PDF, чтобы получить дополнительные примеры и информация о преобразовании PDF в текст в .NET.

Получить изображения из PDF в .NET

Библиотеку можно использовать для извлечения изображений из файлов PDF как есть или как нарисовано. Как извлечь все изображения из PDF на C#:

using BitMiracle.Docotic.Pdf;

using (var pdf = new PdfDocument("your_document.pdf"))
{
    int i = 0;
    foreach (PdfImage image in pdf.GetImages())
    {
        string imageFile = image.Save(i.ToString());
        ++i;
    }
}

Извлеченные изображения можно сохранить в форматах TIFF и JPEG.

Библиотека не сжимает изображения повтороно при их извлечении. Вы получите изображения с тем же качеством, что в PDF-файле.

Вы также можете получить информацию о том, где на странице фактически отрисовываются изображения.

Извлечь векторные пути из PDF

Вы можете получить информацию о векторных путях в PDF-документе, используя метод PdfPage.GetObjects(). Взгляните на примеры Копировать объекты страницы и Извлечение объектов страницы для более подробной информации.

Вы также можете извлечь текст в виде векторных путей, используя перегрузку PdfPage.GetObjects(PdfObjectExtractionOptions). Эту функцию можно использовать для сглаживания текста в PDF в .NET.