| |
|
|
|
|
 |
July 15, 2010 - PDF4NET 4.1.2 release |
|
PDF4NET 4.1.2 has been released. For the complete list of features click here.
The following features are supported in this version (+ new features/enhancements, bug fixes):
+ Added support to keep shared resources when extracting multiple pages at once.
+ Added support for loading destinations by name
+ Added support for Arial and Verdana fonts in PDFFontFace enumeration in .NETCF edition
+ Added support for Flash annotations
+ Added support for TrueType collections (.ttc) in TrueTypeFont constructors
FileData is always set when the FileName property is set on a document attachment - fixed
In partial save mode, imported pages are not saved correctly if they are saved by PDFDocument.EndSave instead of PDFDocument.SavePage - fixed
PDF files that contain page with links that target the host page cannot be merged with other files - fixed
Black is set explicitly as stroke/fill color for imported content because many pages assume default color is black and they draw without setting explicitly the drawing color - fixed
Rectangles are not placed correctly when the Y axis orientation is bottom to top - fixed
Middle vertical alignment is not correct when Y axis is BottomToTop - fixed
When loading a document with resources at all levels (page and document), the page level resources are discarded - fixed
Pages with checkbox fields that have only the checked appearance cannot be extracted - fixed
Layers are not built correctly in some situations - fixed
Imported PDF files that include output intents are not saved correctly - fixed
Encrypted PDF files with cross reference streams cannot be loaded - fixed
Method PDFCanvas.DrawPie(pen, brush, rect, startAngle, sweepAngle) causes a stack overflow - fixed
Field rotation is not preserved when the field is added to the page - fixed
Field widget appearance is not created correctly when the field widget is rotated - fixed
Some JBIG2 images are not decoded correctly - fixed
OTF fonts with CFF outlines cannot be used to draw text - fixed
Canvas.GetTextboxHeight method in .NETCF edition throws an exception when the textformatOptions parameter is null - fixed
Some Code128 barcodes are not generated correctly because the symbols are overwritten - fixed
TrueType fonts are always embedded, no matter the Embed flag in TrueTypeFont constructor was set to false - fixed
In some situations the remote file name is not read correctly for Remote Go To actions associated with link annotations - fixed
Form Xobjects keep the pen settings from page canvas if the default solid pen is used - fixed
Text cannot be extracted when the font dictionary is incomplete for a TrueType font - fixed
PDF files that include dictionaries in the trailer cannot be loaded - fixed
PDF files with fields that use Type1 fonts that match the base PDF fonts but also include a font descriptor but do not include a /Widths array cannot be loaded - fixed
Pages cannot be extracted from PDF files that do not contain an AcroForm dictionary and the extracted page includes various annotations - fixed
|
|
April 26, 2010 - PDF4NET 4.1.1 release |
|
PDF4NET 4.1.1 has been released. For the complete list of features click here.
The following features are supported in this version (+ new features/enhancements, bug fixes):
+ Added support for bar width reduction in unidimensional barcodes
+ Added support for creating PDFMetafile objects from Metafile objects
+ All device colors are now supported for gradient brushes
+ Added support for handling better large PDF files with document level resources
+ Added support to specify whether to parse the page content in order to remove unused resources from page's resources dictionary and not to extract them
Saving a form in incremental mode causes the entire form to be saved, even if the fields have not been modified - fixed
Saving a document in incremental mode causes the entire bookmark tree to be saved, even if the bookmarks have not been modified - fixed
Root bookmarks do not have the /Parent key pointing to /Outlines object - fixed
Some form fields with additional actions on parent fields cannot be loaded - fixed
Adding a background to a page causes the page content to be displayed upside down - fixed
TrueType fonts are not embedded correctly when they are used in a form XObject and not directly on the page - fixed
Movie annotations are not imported correctly from a PDF file - fixed
Underline, strikethrough and overline font attributes are not respected in DrawText method - fixed
PDF version is not saved correctly in the PDF file - fixed
In some situations invalid documents are generated if the save operations occur veriy fast one after another and the documents include imported pages - fixed
When a page is extract from a XFA form and inserted in a new document, the vertical bars are no longer drawn for a comb field - fixed
Encrypted documents with no DocumentID cannot be loaded - fixed
Some ASCII85 streams are not loaded and decoded correctly - fixed
Line width is not explicitly set at the beginning of content stream if its value is 1 - fixed
Middle text alignment is not correct for HTML textboxes - fixed
When Y axis direction is bottom to top, the form XObjects and text lines are displayed mirrored against X axis - fixed
PDF file remains locked if it is opened using PDFFile.FromFile and an invalid password exception is thrown - fixed
Some Code128 barcodes are not generated correctly because the symbols are overwritten - fixed
Strings are not decrypted correctly if they belong to objects stored in object streams - fixed
XFA image fields are not flattened correctly - fixed
|
|
March 15, 2010 - PDF4NET 4.1.0 release |
|
PDF4NET 4.1.0 has been released. For the complete list of features click here.
The following features are supported in this version (+ new features/enhancements, bug fixes):
+ PDF/A support - added support for creating PDF/A-1b compliant PDF files
+ Added support to load fonts from local machine in HTML text
In some situations the field names are not renamed correctly and the resulting file is invalid - fixed
Destination page is not loaded for goto actions in link annotations - fixed
Bookmarks are not displayed when the document is encrypted - fixed
Adding a document information object to a document saved in partial mode causes the final PDF file to be damaged - fixed
In some scenarios movie annotations cannot be played - fixed
An exception is thrown when trying to draw characters that do not exist in the font - fixed
Custom property names are returned with a slash prefix - fixed
An invalid content stream is generated when flattening form fields that have content stream appearances that do not end with a white space - fixed
Multiline textbox fields cannot be filled if the text cannot be wrapped to fit the field width - fixed
Text using fonts with MacRomanEncoding is not displayed correctly when character codes differ from WinAnsiEncoding - fixed
Textboxes that use a font that is not defined in the PDF file cannot display the field value - fixed
The signature cannot be validated when creating an empty appearance for it - fixed
Document information is not saved correctly in incremental mode - fixed
Underline, squiggly and strikeout annotations cannot be created - fixed
PDFDocument.BeginSave method fails when a security manager is attached to the document - fixed
Middle aligned text is not aligned correctly on vertical - fixed
Saving a PDFDocument to Response.OutputStream throws an exception - fixed
Metadata schema is not stored in document information when PDFMetadataSchema.StoreSchemaInDocInfo property was true - fixed
Layers are not created correctly when the PDFDocument is created from a source PDF file - fixed
Some DrawTextBox overloads still use PDFFont parameter type instead of PDFFontBase - fixed
Pages with annotations cannot be loaded when document is loaded in partial mode - fixed
|
|
February 15, 2010 - PDF4NET 4.0.1 release |
|
PDF4NET 4.0.1 has been released. For the complete list of features click here.
The following features are supported in this version (+ new features/enhancements, bug fixes):
+ Added ClipRectangle property and ExtractColorSpaces method to PDFImportedContent class
+ Added support for loading the PDFDocument.SecurityManager property when loading an encrypted PDF file
DeviceN colorspaces without extended attributes cannot be imported - fixed
Pages with resources at an upper level are not extracted correctly - fixed
Custom annotation appearance is not rotated when the annotation is rotated - fixed
Comb attribute on text fields is ignored - fixed
PDF version is not read from the source file - fixed
Calling Dispose twice on the PDF document causes an exception - fixed
Font resource is not labeled correctly when filling form fields that have a default appearance - fixed
Font name is not read correctly when creating a TrueTypeFont from a system.Drawing.Font - fixed
Acro fields are not synchronized with their XFA counter part fields when filling a XFA form through the AcroForm API - fixed
Horizontal and vertical line annotations are not displayed - fixed
CCITT images are not extracted correctly on Win7 and XP, they are correct on one but reversed on the other - fixed
Multiline text in form fields display the \r characters as blocks - fixed
Digital signatures are invalidated when saving a signed PDF file - fixed
Path objects are not drawn correctly in some situations - fixed
Extracted text runs from a rotated page have incorrect PDF and display bounds - fixed
StemV and ItalicAngle keys are not set for TrueType fonts - fixed
Size and position of extracted glyphs is not correct when the font does not specify the ascent or capHeight - fixed
InteriorColor for rectangle and ellipse annotations is not stored correctly - fixed
Vertical bars are not drawn in comb fields created with Adobe Designer - fixed
Field name is duplicated when a page is extracted from a form - fixed
When subsetting a TrueType font created from a System.Drawing.Font, the subset data is not complete - fixed
|
|
January 15, 2010 - PDF4NET 4.0 release |
|
New features
The following new features have been added in PDF4NET 4.0:
+ Partial document load
+ Partial document save, save document page by page, or page fragment by page fragment
+ Incremental updates
+ Text extraction
+ Text search
+ Custom appearance for annotations
+ Flatten annotations
+ Enhanced AcroForms object model
+ JPEG 2000 and JBIG2 support in image extraction
+ Public API for access to low level COS objects
|
Breaking changes
PDF4NET 4.0 introduces several breaking changes relative to PDF4NET 3.3. Why did we choose this solution?
After 6 years of development on this product, and other PDF related products, we gained deep knowledge on PDF and
the existing architecture of PDF4NET could no longer face the challenges. We had to redesign the internal architecture,
to make it more extensible, to easily support new features. We kept the public API the same like in previous versions
in most scenarios but in several situations we had to change it, to make it easier to understand. Although several classes
and enums have been removed because, based on our experience they were not used by customers, the corresponding functionality
is still available in PDF4NET. For example the classes in O2S.Components.PDF4NET.Graphics.Shapes namespace have been removed
because it is more natural to draw a line using page.Canvas.DrawLine() method then to create a PDFLine object and add it to
the canvas.
PDF4NET 3.3 also did not support PDF files with custom information. Loading and saving such a PDF file with PDF4NET 3.3 caused
all the custom information to be discarded. The generic PDF engine in PDF4NET 4.0 no longer does this and it also supports
adding custom information to PDF objects.
If you upgrade your PDF4NET 3.3 code to PDF4NET 4.0 and you encounter any problems, send us an email
and we'll assist you. Also support for PDF4NET 3.3 (bug fixes but no new features) will be available till 31 December 2010.
The breaking changes in PDF4NET 4.0 are listed below:
Removed classes/enums
- O2S.Components.PDF4NET.Annotations.MarkupStyle
- O2S.Components.PDF4NET.Annotations.Movie
- O2S.Components.PDF4NET.Forms.FieldRemoveOptions
- O2S.Components.PDF4NET.Forms.FieldRenameOptions
- O2S.Components.PDF4NET.Forms.IconLayoutMode
- O2S.Components.PDF4NET.Forms.PDFCheckBoxAppearance
- O2S.Components.PDF4NET.Forms.PDFFieldActions
- O2S.Components.PDF4NET.Forms.PDFFieldAppearance
- O2S.Components.PDF4NET.Forms.PDFFieldBorder
- O2S.Components.PDF4NET.Forms.PDFFieldInfo
- O2S.Components.PDF4NET.Forms.PDFPushbuttonAppearance
- O2S.Components.PDF4NET.Forms.PDFRadioButtonAppearance
- O2S.Components.PDF4NET.Forms.PDFRadioButtonItemCollection
- O2S.Components.PDF4NET.Forms.PDFSignatureAppearance
- O2S.Components.PDF4NET.Forms.PDFWidgetActions
- O2S.Components.PDF4NET.Graphics.ColorSpaces.PDFExtendedColor
- O2S.Components.PDF4NET.Graphics.ColorSpaces.PDFImportedSeparationColorSpace
- O2S.Components.PDF4NET.Graphics.ColorSpaces.PDFSeparationColorSpaceCollection
- O2S.Components.PDF4NET.Graphics.PDFBaseColor
- O2S.Components.PDF4NET.Graphics.PDFCustomBrush
- O2S.Components.PDF4NET.Graphics.PDFGradientBrush
- O2S.Components.PDF4NET.Graphics.PDFGraphic
- O2S.Components.PDF4NET.Graphics.Shapes.PDFArc
- O2S.Components.PDF4NET.Graphics.Shapes.PDFAreaDocLink
- O2S.Components.PDF4NET.Graphics.Shapes.PDFAreaFileLink
- O2S.Components.PDF4NET.Graphics.Shapes.PDFAreaRemoteDocLink
- O2S.Components.PDF4NET.Graphics.Shapes.PDFAreaWebLink
- O2S.Components.PDF4NET.Graphics.Shapes.PDFBezier
- O2S.Components.PDF4NET.Graphics.Shapes.PDFChord
- O2S.Components.PDF4NET.Graphics.Shapes.PDFClippingRegion
- O2S.Components.PDF4NET.Graphics.Shapes.PDFEllipse
- O2S.Components.PDF4NET.Graphics.Shapes.PDFHTMLText
- O2S.Components.PDF4NET.Graphics.Shapes.PDFHTMLTextBox
- O2S.Components.PDF4NET.Graphics.Shapes.PDFLine
- O2S.Components.PDF4NET.Graphics.Shapes.PDFLines
- O2S.Components.PDF4NET.Graphics.Shapes.PDFLink
- O2S.Components.PDF4NET.Graphics.Shapes.PDFPie
- O2S.Components.PDF4NET.Graphics.Shapes.PDFPolyBezier
- O2S.Components.PDF4NET.Graphics.Shapes.PDFPolygon
- O2S.Components.PDF4NET.Graphics.Shapes.PDFPolyPolygon
- O2S.Components.PDF4NET.Graphics.Shapes.PDFRect
- O2S.Components.PDF4NET.Graphics.Shapes.PDFRectangularObject
- O2S.Components.PDF4NET.Graphics.Shapes.PDFRoundRectangle
- O2S.Components.PDF4NET.Graphics.Shapes.PDFText
- O2S.Components.PDF4NET.Graphics.Shapes.PDFTextBox
- O2S.Components.PDF4NET.Graphics.Shapes.PDFTextDocLink
- O2S.Components.PDF4NET.Graphics.Shapes.PDFTextFileLink
- O2S.Components.PDF4NET.Graphics.Shapes.PDFTextRemoteDocLink
- O2S.Components.PDF4NET.Graphics.Shapes.PDFTextWebLink
- O2S.Components.PDF4NET.PageTransitionEffect
- O2S.Components.PDF4NET.PDFBaseObject
- O2S.Components.PDF4NET.PDFFile.PDFImportedObject
- O2S.Components.PDF4NET.PDFFile.Resources.PDFImportedColorSpacesCollection
- O2S.Components.PDF4NET.PDFFile.Resources.PDFResourceManager
- O2S.Components.PDF4NET.PDFPageTemplate
- O2S.Components.PDF4NET.PDFPageTransition
- O2S.Components.PDF4NET.PDFParserException
- O2S.Components.PDF4NET.SaveProgressEventArgs
- O2S.Components.PDF4NET.TransitionAngleDirection
- O2S.Components.PDF4NET.TransitionDimension
- O2S.Components.PDF4NET.TransitionMotionDirection
Renamed classes/enums
- AnnotationFlags has been renamed to PDFAnnotationFlags.
- BlendMode has been renamed to PDFBlendMode and has been moved from namespace O2S.Components.PDF4NET.Graphics.Shapes to namespace O2S.Components.PDF4NET.Graphics.
- BorderStyle has been renamed to PDFBorderStyle.
- ClipText has been renamed to PDFClipText.
- ColorSpace has been renamed to PDFColorSpace and has been moved from namespace O2S.Components.PDF4NET to namespace O2S.Components.PDF4NET.Graphics.ColorSpaces.
- ContentMirroring has been renamed to PDFContentMirroring and has been moved from namespace O2S.Components.PDF4NET.PDFFile to namespace O2S.Components.PDF4NET.Graphics.
- DashStyle has been renamed to PDFDashStyle.
- DataFormat has been renamed to PDFFormDataFormat.
- DisplayMode has been renamed to PDFDisplayMode.
- ExportDataOptions has been renamed to PDFExportDataOptions.
- FieldBorderStyle has been renamed to PDFBorderStyle.
- FieldVisibilityStatus has been renamed to PDFFieldWidgetVisibilityStatus.
- FileAttachmentAnnotationIcon has been renamed to PDFFileAttachmentAnnotationIcon.
- FillMode has been renamed to PDFFillMode and has been moved from namespace O2S.Components.PDF4NET.Graphics.Shapes to namespace O2S.Components.PDF4NET.Graphics.
- FontFace has been renamed to PDFFontFace and has been moved from namespace O2S.Components.PDF4NET.Graphics to namespace O2S.Components.PDF4NET.Graphics.Fonts.
- HatchType has been renamed to PDFHatchType.
- HighlightMode has been renamed to PDFPushButtonHighlightMode.
- ImageCompression has been renamed to PDFImageCompression.
- KeepAspectRatio has been renamed to PDFKeepAspectRatio.
- LineCap has been renamed to PDFLineCap.
- LineEndingStyle has been renamed to PDFLineEndingStyle.
- LineJoin has been renamed to PDFLineJoin.
- LinkHighlightMode has been renamed to PDFLinkHighlightMode.
- MagnificationMode has been renamed to PDFMagnificationMode and has been moved from namespace O2S.Components.PDF4NET.Actions to namespace O2S.Components.PDF4NET.
- NumberingStyle has been renamed to PDFNumberingStyle.
- OutlineDisplay has been renamed to PDFBookmarkDisplayStyle.
- PageLayout has been renamed to PDFPageLayout.
- PageNumber has been renamed to PDFPageNumber.
- PageNumberingRange has been renamed to PDFPageNumberingRange.
- PageNumberingRangeCollection has been renamed to PDFPageNumberingRangeCollection.
- PageOrientation has been renamed to PDFPageOrientation.
- PageSize has been renamed to PDFPageSize.
- PDFAnnotations has been renamed to PDFAnnotationCollection.
- PDFCircleAnnotation has been renamed to PDFEllipseAnnotation.
- PDFFields has been renamed to PDFFieldCollection.
- PDFFunctions has been renamed to PDFFunctionCollection.
- PDFJavaScriptBlock has been renamed to PDFJavaScript.
- PDFJPXImage has been renamed to PDFJpeg2000Image.
- PDFLayers has been renamed to PDFLayerCollection.
- PDFMarkupAnnotation has been renamed to PDFTextMarkupAnnotation.
- PDFMetadataSchemas has been renamed to PDFMetadataSchemaCollection.
- PDFOutline has been renamed to PDFBookmark.
- PDFOutlines has been renamed to PDFBookmarkCollection.
- PDFPages has been renamed to PDFPageCollection.
- PDFPushbuttonField has been renamed to PDFPushButtonField
- PDFSquareAnnotation has been renamed to PDFRectangleAnnotation.
- PDFWidgetAnnotation has been renamed to PDFFieldWidget.
- PrintScaling has been renamed to PDFPrintScaling.
- RubberStampAnnotationIcon has been renamed to PDFRubberStampAnnotationIcon.
- SymbolStyle has been renamed to PDFCheckSymbolStyle.
- TextAlign has been renamed to PDFTextAlign and has been moved from namespace O2S.Components.PDF4NET.Graphics.Shapes to namespace O2S.Components.PDF4NET.Graphics.
- TextAnnotationIcon has been renamed to PDFTextAnnotationIcon.
- XAxisDirection has been renamed to PDFXAxisDirection and has been moved from namespace O2S.Components.PDF4NET to namespace O2S.Components.PDF4NET.Graphics.
- YAxisDirection has been renamed to PDFYAxisDirection and has been moved from namespace O2S.Components.PDF4NET to namespace O2S.Components.PDF4NET.Graphics.
Moved classes/enums
- PDFBasicCanvas has been moved from namespace O2S.Components.PDF4NET to namespace O2S.Components.PDF4NET.Graphics.
- PDFCalGrayColor has been moved from namespace O2S.Components.PDF4NET.Graphics.ColorSpaces to namespace O2S.Components.PDF4NET.Graphics.
- PDFCalRgbColor has been moved from namespace O2S.Components.PDF4NET.Graphics.ColorSpaces to namespace O2S.Components.PDF4NET.Graphics.
- PDFCanvas has been moved from namespace O2S.Components.PDF4NET to namespace O2S.Components.PDF4NET.Graphics.
- PDFCMLogicalUnit has been moved from namespace O2S.Components.PDF4NET to namespace O2S.Components.PDF4NET.Graphics.
- PDFCmykColor has been moved from namespace O2S.Components.PDF4NET.Graphics.ColorSpaces to namespace O2S.Components.PDF4NET.Graphics.
- PDFDeviceNColor has been moved from namespace O2S.Components.PDF4NET.Graphics.ColorSpaces to namespace O2S.Components.PDF4NET.Graphics.
- PDFFont has been moved from namespace O2S.Components.PDF4NET.Graphics to namespace O2S.Components.PDF4NET.Graphics.Fonts.
- PDFGrayColor has been moved from namespace O2S.Components.PDF4NET.Graphics.ColorSpaces to namespace O2S.Components.PDF4NET.Graphics.
- PDFICCColor has been moved from namespace O2S.Components.PDF4NET.Graphics.ColorSpaces to namespace O2S.Components.PDF4NET.Graphics.
- PDFInchLogicalUnit has been moved from namespace O2S.Components.PDF4NET to namespace O2S.Components.PDF4NET.Graphics.
- PDFIndexedColor has been moved from namespace O2S.Components.PDF4NET.Graphics.ColorSpaces to namespace O2S.Components.PDF4NET.Graphics.
- PDFLabColor has been moved from namespace O2S.Components.PDF4NET.Graphics.ColorSpaces to namespace O2S.Components.PDF4NET.Graphics.
- PDFLogicalUnitBase has been moved from namespace O2S.Components.PDF4NET to namespace O2S.Components.PDF4NET.Graphics.
- PDFMMLogicalUnit has been moved from namespace O2S.Components.PDF4NET to namespace O2S.Components.PDF4NET.Graphics.
- PDFObject has been moved from namespace O2S.Components.PDF4NET to namespace O2S.Components.PDF4NET.Cos.
- PDFPoint has been moved from namespace O2S.Components.PDF4NET.Graphics to namespace O2S.Components.PDF4NET.
- PDFPointLogicalUnit has been moved from namespace O2S.Components.PDF4NET to namespace O2S.Components.PDF4NET.Graphics.
- PDFRectangle has been moved from namespace O2S.Components.PDF4NET.Graphics.Shapes to namespace O2S.Components.PDF4NET.
- PDFRgbColor has been moved from namespace O2S.Components.PDF4NET.Graphics.ColorSpaces to namespace O2S.Components.PDF4NET.Graphics.
- PDFSeparationColor has been moved from namespace O2S.Components.PDF4NET.Graphics.ColorSpaces to namespace O2S.Components.PDF4NET.Graphics.
|
|
|
© 2003 - 2010 O2 solutions. All rights reserved
|
|
|
|
|