GrapeCity.Documents.Pdf
6.2.0
See the version list below for details.
dotnet add package GrapeCity.Documents.Pdf --version 6.2.0
NuGet\Install-Package GrapeCity.Documents.Pdf -Version 6.2.0
<PackageReference Include="GrapeCity.Documents.Pdf" Version="6.2.0" />
paket add GrapeCity.Documents.Pdf --version 6.2.0
#r "nuget: GrapeCity.Documents.Pdf, 6.2.0"
// Install GrapeCity.Documents.Pdf as a Cake Addin #addin nuget:?package=GrapeCity.Documents.Pdf&version=6.2.0 // Install GrapeCity.Documents.Pdf as a Cake Tool #tool nuget:?package=GrapeCity.Documents.Pdf&version=6.2.0
GrapeCity Documents for PDF
GrapeCity Documents for PDF (GcPdf) is a powerful PDF library providing a rich set of APIs which allow developers to do fast and memory-efficient PDF processing in C# or VB.NET code. GcPdf's core object model follows the PDF specification, providing programmatic access to PDF elements such as document properties, pages, fonts, annotations and so on. GcPdf also includes powerful high-level features that enable developers to create PDF documents with complex layouts including tables, formatted text and graphics.
GcPdf comes with a full-featured JavaScript PDF viewer/editor control (GcPdfViewer).
Features include:
- Programmatically create, load, modify, save or inspect PDFs.
- Support for different PDF standards including ISO 32000 (PDF 2.0).
- Export PDFs to BMP, GIF, JPEG, PNG or TIFF image formats.
- Merge or split PDF documents.
- Powerful text formatting and layout engine with full multi-language support, including RTL (with Kashida in Arabic) and vertical text, Tate Chu Yoko, text flow around objects, and more.
- Advanced text rendering capabilities including support for Adobe Type 1 fonts and bitmap glyphs in OpenType CJK fonts.
- Font embedding and sub-setting, with support for True Type, Open Type and WOFF fonts.
- Add raster (BMP, GIF, ICO, JPEG, JPEG 2000, PNG, TIFF) or vector (SVG, SVGZ) images to PDFs.
- Create SVG images on the fly, or modify existing SVGs using the provided SVG DOM (document object model).
- Support for all common graphics drawing and filling operations when rendering PDF pages.
- Table layout engine for creating complex grid-based layouts with text and graphics.
- Encryption and security APIs, including incremental updates, PAdES, PKCS #12, ECDSA.
- Find text, get text map with exact coordinates of all text fragments.
- Analyze PDFs, fetch logical paragraphs and table data using structure tags or heuristics.
- Programmatically create and apply redactions to completely erase sensitive data.
- Support for optional PDF content (layers).
- Create, modify, fill or flatten AcroForms (PDF Forms).
- Linearize PDFs for faster web viewing.
GcPdf is compatible with .NET 7, .NET 6, .NET Core 3.1, .NET Standard 2.x, .NET Framework 4.6.1 or higher.
All features are fully supported on Windows, macOS and Linux.
Resources
- GcPdf Demos
- GcPdfViewer Demos
- Getting Started
- License Information
- Licensing FAQ
- How to get Trial Keys
- Online Documentation
- Offline Documentation (PDF)
GrapeCity Document APIs
- Documents for PDF
- Documents for Word
- Documents for Imaging
- Documents for Excel, .NET
- Documents for Excel, Java
GrapeCity Document JavsScript Viewers
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 is compatible. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETFramework 4.6.1
- GrapeCity.Documents.Imaging (= 6.2.0)
- Portable.BouncyCastle (>= 1.8.2)
-
.NETStandard 2.0
- GrapeCity.Documents.Imaging (= 6.2.0)
- Portable.BouncyCastle (>= 1.8.2)
NuGet packages (27)
Showing the top 5 NuGet packages that depend on GrapeCity.Documents.Pdf:
Package | Downloads |
---|---|
GrapeCity.ActiveReports.Core.Export.Pdf.Page
ActiveReports PDF export library |
|
GrapeCity.ActiveReports.Export.Pdf
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 the core engine assemblies required to create and render pixel perfect, WYSIWYG, reports. |
|
GrapeCity.ActiveReports.Core.Export.Pdf.Section
ActiveReports RDF document PDF rendering implementation |
|
GrapeCity.Documents.Excel
GrapeCity Documents for Excel is a high-speed, small-footprint spreadsheet API that requires no dependencies on Excel. With full .NET 6 support, you can generate, load, modify, and convert spreadsheets in .NET 6, .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 https://www.grapecity.com/documents-api-excel/demos |
|
GrapeCity.ActiveReports.Web.Viewer
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, Blazor, 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 | Downloads | Last updated |
---|---|---|
7.2.3 | 1,078 | 10/9/2024 |
7.2.2 | 1,525 | 9/20/2024 |
7.2.1 | 783 | 9/3/2024 |
7.2.0 | 7,723 | 8/19/2024 |
7.1.4 | 3,981 | 7/24/2024 |
7.1.3 | 6,385 | 6/26/2024 |
7.1.2 | 22,389 | 5/29/2024 |
7.1.1 | 14,797 | 4/24/2024 |
7.1.0 | 23,476 | 4/15/2024 |
7.0.4 | 4,588 | 3/22/2024 |
7.0.3 | 4,833 | 2/21/2024 |
7.0.2 | 3,208 | 1/25/2024 |
7.0.1 | 4,097 | 1/5/2024 |
7.0.0 | 45,126 | 12/11/2023 |
6.2.5 | 13,638 | 11/23/2023 |
6.2.4 | 40,044 | 10/27/2023 |
6.2.3 | 19,691 | 9/28/2023 |
6.2.2 | 26,933 | 9/13/2023 |
6.2.1 | 23,824 | 8/17/2023 |
6.2.0 | 12,253 | 8/7/2023 |
6.1.5 | 10,745 | 7/12/2023 |
6.1.4 | 33,261 | 6/20/2023 |
6.1.3 | 7,702 | 6/1/2023 |
6.1.2 | 87,385 | 5/8/2023 |
6.1.0 | 31,958 | 4/16/2023 |
6.0.7 | 4,571 | 4/7/2023 |
6.0.6 | 53,417 | 3/23/2023 |
6.0.5 | 57,261 | 2/28/2023 |
6.0.4 | 13,030 | 2/6/2023 |
6.0.3 | 42,010 | 1/20/2023 |
6.0.2 | 9,586 | 1/3/2023 |
6.0.1 | 2,579 | 12/27/2022 |
6.0.0 | 66,388 | 12/12/2022 |
5.2.0.805 | 42,073 | 12/9/2022 |
5.2.0.804 | 27,413 | 11/2/2022 |
5.2.0.803 | 98,227 | 10/10/2022 |
5.2.0.802 | 79,779 | 9/16/2022 |
5.2.0.801 | 8,455 | 8/24/2022 |
5.2.0.800 | 31,865 | 8/15/2022 |
5.1.0.796 | 26,087 | 7/29/2022 |
5.1.0.795 | 4,052 | 7/15/2022 |
5.1.0.793 | 20,272 | 6/10/2022 |
5.1.0.792 | 8,580 | 5/23/2022 |
5.1.0.791 | 10,990 | 4/29/2022 |
5.1.0.790 | 48,037 | 4/19/2022 |
5.0.0.776 | 21,446 | 4/7/2022 |
5.0.0.775 | 21,422 | 3/21/2022 |
5.0.0.774 | 31,842 | 3/2/2022 |
5.0.0.773 | 6,014 | 2/16/2022 |
5.0.0.770 | 14,924 | 1/24/2022 |
5.0.0.767 | 15,740 | 12/24/2021 |
5.0.0.762 | 46,809 | 12/13/2021 |
4.2.0.727 | 169,529 | 12/3/2021 |
4.2.0.726 | 162,090 | 10/29/2021 |
4.2.0.722 | 10,878 | 10/13/2021 |
4.2.0.719 | 4,800 | 9/23/2021 |
4.2.0.717 | 14,106 | 8/31/2021 |
4.2.0.715 | 39,968 | 8/16/2021 |
4.1.0.664 | 4,075 | 8/6/2021 |
4.1.0.663 | 44,761 | 7/6/2021 |
4.1.0.662 | 6,148 | 6/16/2021 |
4.1.0.660 | 8,057 | 5/19/2021 |
4.1.0.658 | 8,943 | 4/27/2021 |
4.0.0.633 | 12,099 | 4/1/2021 |
4.0.0.632 | 8,649 | 2/24/2021 |
4.0.0.625 | 10,538 | 1/26/2021 |
4.0.0.623 | 2,932 | 1/8/2021 |
4.0.0.619 | 78,039 | 12/8/2020 |
4.0.0.616 | 6,779 | 11/19/2020 |
3.2.0.560 | 112,961 | 12/30/2020 |
3.2.0.559 | 7,476 | 12/4/2020 |
3.2.0.558 | 13,745 | 10/29/2020 |
3.2.0.556 | 15,893 | 9/29/2020 |
3.2.0.554 | 7,155 | 9/7/2020 |
3.2.0.553 | 2,501 | 9/4/2020 |
3.2.0.550 | 50,944 | 8/11/2020 |
3.2.0.548 | 7,898 | 7/20/2020 |
3.1.0.519 | 21,554 | 7/3/2020 |
3.1.0.518 | 7,737 | 6/18/2020 |
3.1.0.514 | 6,452 | 6/2/2020 |
3.1.0.513 | 7,699 | 5/7/2020 |
3.1.0.512 | 14,813 | 4/22/2020 |
3.1.0.511 | 8,917 | 4/9/2020 |
3.1.0.508 | 12,977 | 3/5/2020 |
3.0.0.420 | 16,462 | 1/13/2020 |
3.0.0.419 | 3,710 | 1/3/2020 |
3.0.0.418 | 7,845 | 12/8/2019 |
3.0.0.415 | 10,456 | 11/14/2019 |
3.0.0.414 | 7,184 | 10/24/2019 |
2.2.0.320 | 13,117 | 2/4/2020 |
2.2.0.319 | 20,191 | 11/7/2019 |
2.2.0.318 | 2,029 | 11/6/2019 |
2.2.0.317 | 2,396 | 10/12/2019 |
2.2.0.316 | 4,500 | 9/20/2019 |
2.2.0.315 | 6,731 | 8/21/2019 |
2.2.0.314 | 3,346 | 8/5/2019 |
2.2.0.312 | 7,805 | 7/11/2019 |
2.2.0.310 | 5,598 | 6/9/2019 |
2.1.0.267 | 3,414 | 4/24/2019 |
2.1.0.265 | 4,304 | 3/25/2019 |
2.1.0.263 | 2,890 | 3/12/2019 |
2.1.0.262 | 7,133 | 3/1/2019 |
2.1.0.260 | 3,526 | 1/25/2019 |
2.0.0.208 | 2,811 | 12/18/2018 |
2.0.0.207 | 5,836 | 12/5/2018 |
2.0.0.206 | 2,804 | 11/21/2018 |
2.0.0.205 | 2,916 | 11/13/2018 |
2.0.0.201 | 3,040 | 10/24/2018 |
2.0.0.200 | 3,332 | 9/28/2018 |
1.0.0.107 | 5,383 | 5/15/2018 |
1.0.0.105 | 4,182 | 5/1/2018 |
0.3.0.81-beta01 | 2,321 | 3/12/2018 |
0.3.0.71-beta01 | 1,913 | 2/24/2018 |
0.3.0.70-beta01 | 1,973 | 2/9/2018 |
# Changes since version 6.1.5:
## Breaking Changes
- The stream that is passed to one of GcPdfDocument.Load() method overloads must be kept open while the loaded GcPdfDocument is in use.
- If using GcPdfDocument.MergeWithDocument(), the passed GcPdfDocument is effectively in use while the current document is in use. If it was loaded from a stream, that stream must be kept open too.
- Several existing collection properties can no longer be modified in place (see below). Instead, create a new instance of the collection and assign it to the property.
- WidgetAnnotation.TextFormat property removed (previously it was obsolete).
- GrapeCity.Documents.Pdf.Layers.OptionalContentOrderCollection class is now derived from PdfCollection<IPdfObject> (previously it was derived from List<object>).
- GrapeCity.Documents.Pdf.AcroForms.SignatureLockedFields.FieldNames property type changed from ObservableCollection<string> to IEnumerable<string>. To change the value, create a new instance of the collection and assign it to the property.
- GrapeCity.Documents.Pdf.SoundObject.EncodingFormat property type changed from string to IPdfName.
- GrapeCity.Documents.Pdf.Text.CMap.CMap class renamed to CMapTable, CMapBase class removed.
- GrapeCity.Documents.Pdf.Actions.ActionHide.LinkedObjects property type changed from List<object> to LinkedObjectCollection. To change the value, create a new instance of the collection and assign it to the property.
- GrapeCity.Documents.Pdf.Actions.ActionFieldsBase.FieldNames property changed from List<string> FieldNames { get; } to IList<IFieldDef> Fields { get; }.
- Properties ViewerPreferences.PageMode and ViewerPreferences.PageLayout marked as obsolete, corresponding properties are now available directly on GcPdfDocument: GcPdfDocument.PageMode and GcPdfDocument.PageLayout.
- Property WidgetAnnotation.TriggerEvents.Activate marked as obsolete, corresponding property is now available directly on WidgetAnnotation: WidgetAnnotation.Activate.
- GrapeCity.Documents.Pdf.Annotations.PolygonAnnotationBase.Points property type changed from IList<PointF> to IReadOnlyList<PointF>. To change the value, create a new instance of the collection and assign it to the property.
- GrapeCity.Documents.Pdf.Annotations.ImageScale class is now derived from GrapeCity.Documents.Pdf.Wrappers.PdfDictWrapper (previously it was derived from NotifyObject).
- GrapeCity.Documents.Pdf.Annotations.ButtonAppearance.Image property type changed from object to IXObject. IXObject is a common interface for FormXObject and PdfImageObjectBase. An IImage can be assigned to this property using PdfImageHandler: doc.ImageHandlers.GetImageHandler(someBitmap).
- GrapeCity.Documents.Pdf.Annotations.InkAnnotation.Paths property type changed from ObservableCollection<PointF[]> to IReadOnlyList<IReadOnlyLust<PointF>>. To change the value, create a new instance of the collection and assign it to the property.
- GrapeCity.Documents.Pdf.Annotations.TextMarkupAnnotation.Area property type changed from ObservableCollection<Quadrilateral> to IReadOnlyList<Quadrilateral>. To change the value, create a new instance of the collection and assign it to the property.
- GrapeCity.Documents.Pdf.Annotations.RedactAnnotation.Area property type changed from ObservableCollection<Quadrilateral> to IReadOnlyList<Quadrilateral>. To change the value, create a new instance of the collection and assign it to the property.
- Now even if an annotation belongs to several pages, its vertical coordinate is converted to the GcPdf top/left coordinate system using the media box of the first page in the annotation's Pages collection. The AnnotationBase.PdfRect property provides access to native PDF coordinates.
- GrapeCity.Documents.Pdf.Structure.StructElement.ID property type changed from IList<byte> to IPdfString.
- PdfIndirectSerializableObject class was removed, the GrapeCity.Documents.Pdf.Wrappers.PdfWrapperBase and its descendants can be used instead.
- PdfDict class is now derived from Dictionary<PdfName, IPdfObject> (previously it was derived from Dictionary<string, object>). Instead of using a string directly, use new PdfName(string) instead.
- GcPdfDocument.NamedDestinations property type changed from IDictionary<string, Destination> to IDictionary<string, IDestination>. The IDestination interface is common to Destination and ActionGoTo classes.
- PdfLang type was removed, all properties that previously had that type are now of the type string.
- ICCProfile.IsSame() method was removed.
- GrapeCity.Documents.Pdf.Annotations.UnknownAnnotation.Subtype property type changed from string to PdfName.
- PdfDictWrapperObject class was removed, use PdfDictWrapper instead.
- CheckBoxField.ValueObj property behavior changed, now it returns Boolean true if all widgets of the CheckBoxField use the same name for appearance stream used to display a checked state. Previously it returned "Off" if field was unchecked, or the name of the checked appearance stream. Use PdfValue property to get the PdfName used to hold value.
## Changed
- GcPdfDocument.Load() method now implements lazy loading of PDF objects. This provides several advantages, including: improved compatibility with PDFs produced by various vendors, custom content unknown to GcPdf is preserved as is, improved average load speed. (DOC-1781)
## Added
- Ability to open/modify (with limitations) password a protected PDF without specifying the password, see GcPdfDocument.Load(stream, DecryptionOptions) overload. (DOC-3410)
- Helper methods to TextBoxField, ComboBoxField and CombTextField: SetPercentFormat(), SetPercentValue(), SetNumberFormat(), SetNumberValue(), SetDateFormat(), SetDateValue(), SetTimeFormat(), SetTimeValue(), SetSpecialFormat(), SetSpecialFormatValue(). (DOC-5076)
- Ability to generate custom time-stamp tokens. The new ITimeStampGenerator interface can be implemented by user and assigned to SignatureProperties.TimeStamp and TimeStampProperties.TimeStamp.
## Fixed
- Several issues related to errors when opening existing PDFs. (DOC-2111, DOC-3923, DOC-4096, DOC-5461)