GrapeCity Documents for PDF (GcPdf) is a cross-platform library that allows to create, analyze, and modify PDF documents.
Its object model closely follows the Adobe PDF specification, and is designed to provide direct access to features of the PDF format.
In addition, Documents for PDF includes a powerful and platform-independent font handling and text layout engine and other high-level features that make PDF document creation easy and convenient.
HTML content can be rendered using the optional GcHtml library (GrapeCity.Documents.Html).
The online Documents for PDF sample browser is available at

There is a newer version of this package available.
See the version list below for details.
Install-Package GrapeCity.Documents.Pdf -Version
dotnet add package GrapeCity.Documents.Pdf --version
<PackageReference Include="GrapeCity.Documents.Pdf" Version="" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add GrapeCity.Documents.Pdf --version
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: GrapeCity.Documents.Pdf,"
#r directive can be used in F# Interactive, C# scripting and .NET Interactive. Copy this into the interactive tool or source code of the script to reference the package.
// Install GrapeCity.Documents.Pdf as a Cake Addin
#addin nuget:?package=GrapeCity.Documents.Pdf&version=

// Install GrapeCity.Documents.Pdf as a Cake Tool
#tool nuget:?package=GrapeCity.Documents.Pdf&version=
The NuGet Team does not provide support for this client. Please contact its maintainers for support.

Release Notes

# Changes since version

## Breaking changes
- Removed events GcPdfDocument.GeneratingDocument and GcPdfDocument.SavingDocument.

## Fixed
- Incorrect rendering of PDFs containing Adobe Type 1 Fonts. (DOC-1620, DOC-1622, DOC-2300, DOC-2737)
- Free text annotation border is drawn even if line width is 0. (DOC-2812)
- In some cases incorrect fonts are used when a PDF is saved as image. (DOC-2984)
- Memory usage is too high when a PDF containing many large images is saved as image. (DOC-2945)
- In some scenarios GcPdfDocument.MergeWithDocument() may produce invalid PDFs. (DOC-3000)

## Added
- Class GrapeCity.Documents.Pdf.Recognition.Structure.LogicalStructure: represents the parsed logical structure of a document, created from tags in the PDF structure tree. (DOC-2052)
- Class GrapeCity.Documents.Pdf.Recognition.Structure.Element: represents a parsed PDF tag (structure element) in the document's logical structure.
- Class GrapeCity.Documents.Pdf.Recognition.Structure.ContentItemBase: abstract representing a portion of document content associated with a PDF structure tag (element).
- Class GrapeCity.Documents.Pdf.Recognition.Structure.ContentItem : ContentItemBase: abstract class representing a content item associated with a portion of a content stream.
- Class GrapeCity.Documents.Pdf.Recognition.Structure.McidContentItem : ContentItem: represents a parsed GrapeCity.Documents.Pdf.Structure.McidContentItemLink.
- Class GrapeCity.Documents.Pdf.Recognition.Structure.McrContentItem : ContentItem: represents a parsed GrapeCity.Documents.Pdf.Structure.McrContentItemLink.
- Class GrapeCity.Documents.Pdf.Recognition.Structure.ObjrContentItem : ContentItemBase: represents a parsed GrapeCity.Documents.Pdf.Structure.ObjrContentItemLink.
- Method GcPdfDocument.GetLogicalStructure(): parses the PDF's structure tree and creates a LogicalStructure object that represents the logical structure of the document.
- Interface GrapeCity.Documents.Pdf.TextMap.ITextRun: represents a portion of a text paragraph with the same formatting, possibly spanning several lines.
- Interface GrapeCity.Documents.Pdf.TextMap.ITextRunFragment: represents a fragment of a text run that resides on a single text line.
- Properties on ITextParagraph: TextMap, Page, Runs.
- Properties on ITextLine: Paragraph, RunFragments.
- Method ITextParagraph.GetTextRuns(): Finds text runs in the paragraph that contain a specified text fragment.
- Property FindTextParams.Regex: specifies whether the search text should be interpreted as a regular expression. Also added a corresponding optional argument to FindTextParams ctor, and a utility method FindTextParams.CreatRegex().

NuGet packages (25)

Showing the top 5 NuGet packages that depend on GrapeCity.Documents.Pdf:

Package Downloads
GrapeCity Documents for Excel is a high-speed, small-footprint spreadsheet API that requires no dependencies on Excel. With full .NET Standard 2.0 support, you can generate, load, modify, and convert spreadsheets in .NET Framework, .NET Core, Mono, and Xamarin. Apps using this spreadsheet API can be deployed to cloud, Windows, Mac, or Linux. Its powerful calculation engine and breadth of features means you’ll never have to compromise design or requirements. We model our interface-based API on Excel's document object model. This means that you can import, calculate, query, generate, and export any spreadsheet scenario. Using GcExcel, you can create full reports, sorted and filtered tables, sorted and filtered pivot tables, dashboard reports, add charts, sparklines, conditional formats, import and export Excel templates and also convert spreadsheets to PDF. The online Documents for Excel sample browser is available at
ActiveReports PDF export library
GrapeCity ActiveReports is a set of assemblies that enable you to create, render, print, and export reports in a .NET or .NET Core application. This package includes assemblies needed to export ActiveReports files. The available exports include, among others, PDF, Excel, Doc/DocX, HTML, JSON, CSV, XML and image.
GrapeCity ActiveReports is a set of assemblies that enable you to create, render, print, and export reports in a .NET or .NET Core application. This package includes internal assemblies needed to display reports in report viewers.
GrapeCity ActiveReports is a set of assemblies that enable you to create, render, print, and export reports in a .NET or .NET Core application. This package includes assemblies needed to display reports in report viewers. Multiple viewers are included for your convenience. Among them are viewers for Windows Forms, WPF, ASP.NET, and JavaScript. These viewers are customizable and include printing and exporting features.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version History

Version Downloads Last updated 163 6/16/2021 735 5/19/2021 781 4/27/2021 1,065 4/1/2021 3,547 2/24/2021 1,605 1/26/2021 561 1/8/2021 4,762 12/8/2020 1,628 11/19/2020 6,011 12/30/2020 1,590 12/4/2020 4,811 10/29/2020 3,065 9/29/2020 3,232 9/7/2020 312 9/4/2020 12,931 8/11/2020 4,341 7/20/2020 7,696 7/3/2020 2,314 6/18/2020 2,237 6/2/2020 3,077 5/7/2020 2,865 4/22/2020 4,463 4/9/2020 4,802 3/5/2020 6,501 1/13/2020 948 1/3/2020 2,556 12/8/2019 6,330 11/14/2019 2,603 10/24/2019 4,283 2/4/2020 7,178 11/7/2019 323 11/6/2019 695 10/12/2019 2,236 9/20/2019 3,463 8/21/2019 1,026 8/5/2019 3,122 7/11/2019 2,126 6/9/2019 1,131 4/24/2019 1,478 3/25/2019 557 3/12/2019 1,485 3/1/2019 1,182 1/25/2019 698 12/18/2018 3,694 12/5/2018 599 11/21/2018 723 11/13/2018 812 10/24/2018 968 9/28/2018 2,590 5/15/2018 1,521 5/1/2018 999 3/12/2018 561 2/24/2018 566 2/9/2018