blob: 5b1edd473183ab6c7ee1f35f2b90989f7dcb95f6 [file] [log] [blame]
<!--
! Licensed to the Apache Software Foundation (ASF) under one or more
! contributor license agreements. See the NOTICE file distributed with
! this work for additional information regarding copyright ownership.
! The ASF licenses this file to You under the Apache License, Version 2.0
! (the "License"); you may not use this file except in compliance with
! the License. You may obtain a copy of the License at
!
! http://www.apache.org/licenses/LICENSE-2.0
!
! Unless required by applicable law or agreed to in writing, software
! distributed under the License is distributed on an "AS IS" BASIS,
! WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
! See the License for the specific language governing permissions and
! limitations under the License.
!-->
<status>
<developers>
<person name="Ben Litchfield" email="ben@benlitchfield.com" id="BJL" />
<!-- Add more people here -->
</developers>
<contexts>
<context id="code" title="Changes to the Code Base"/>
<context id="docs" title="Changes to Documentation"/>
<context id="admin" title="Changes to Project Administration"/>
<context id="design" title="Changes to Design"/>
<context id="build" title="Changes to Build"/>
</contexts>
<!-- Add new releases here -->
<!-- Some action types have associated images. By default, images are
defined for 'add', 'fix', 'remove', 'update' and 'hack'. If you add
src/documentation/resources/images/<foo>.jpg images, these will
automatically be used for entries of type <foo>. -->
<changes>
<release version="0.7.4-dev" date="Planned release:unknown">
<action context="code" dev="BJL" type="fix">[ 1648374 ] Unexpected end of ZLIB input stream</action>
<action context="code" dev="BJL" type="update">[ 1806912 ] Access to stream arrays</action>
<action context="code" dev="BJL" type="fix">[ 1793593 ] PDFStreamEngine doesn't handle rotation of -90.</action>
<action context="code" dev="BJL" type="fix">[ 1792084 ] spot colors' getTintTransform needs quick fix</action>
<action context="code" dev="BJL" type="update">Added dependency on JAI</action>
<action context="code" dev="BJL" type="update">[ 1666960 ] Patch for any kind of tiff based pdf.</action>
<action context="code" dev="BJL" type="fix">Fixed issue with "Could not read all parameters to decode image"</action>
<action context="code" dev="BJL" type="fix">[ 1726446 ] Fixing merge w&amp;w/o acroform</action>
<action context="code" dev="BJL" type="fix">[ 1745133 ] OutOfMemoryError exception during text</action>
<action context="code" dev="BJL" type="update">Upgraded to lucene 2.2.0</action>
<action context="code" dev="BJL" type="update">[ 1672991 ] Specify non default printer in silentPrint mode.</action>
<action context="code" dev="BJL" type="update">[ 1607074 ] Portrait and Landscape PageFormat Fix</action>
<action context="code" dev="BJL" type="update">***API Change:Renamed PDPageContentStream.drawImage to drawXObject***</action>
<action context="code" dev="BJL" type="update">[ 1600672 ] Painting Form XObjects</action>
<action context="code" dev="BJL" type="add">Added integration with JempBox library</action>
<action context="code" dev="BJL" type="fix">Upgraded to IKVM 0.32.0.0</action>
<action context="code" dev="BJL" type="fix">[ 1674903 ] InvalidCastException in write2file for images</action>
<action context="code" dev="BJL" type="fix">[ 1057560 ] Overlay incorrectly orders overlay pages</action>
<action context="code" dev="BJL" type="add">Added ability to get/set document level JavaScript.</action>
<action context="code" dev="BJL" type="fix">Fixed issue with PNG encoding when using LZW/Flate filters</action>
<action context="code" dev="BJL" type="update">[ 1562539 ] Implemented "B" operator for PageDrawer</action>
<action context="code" dev="BJL" type="update">[ 1562539 ] PageDrawer now uses the correct color to display text</action>
<action context="code" dev="BJL" type="update">Upgraded to junit4.3</action>
<action context="code" dev="BJL" type="update">Upgraded to Lucene-2.1.0</action>
</release>
<release version="0.7.3" date="10/12/2006">
<action context="code" dev="BJL" type="update">Upgraded to Checkstyle 4.2</action>
<action context="code" dev="BJL" type="update">Upgraded to IKVM 0.30.0.0</action>
<action context="code" dev="BJL" type="update">[ 1546399 ] Use get/set functions for separators in PDFTextStripper</action>
<action context="code" dev="BJL" type="add">PDDocument.silentPrint() to print without prompting for a printer</action>
<action context="code" dev="BJL" type="fix">[ 1544118 ] Bug in PDFont.getCodeFromArray</action>
<action context="code" dev="BJL" type="update">[ 1529835 ] Add COSFloat.setValue()</action>
<action context="code" dev="BJL" type="fix">[ 1492555 ] PDChoiceField dead loop</action>
<action context="code" dev="BJL" type="fix">[ 1499521 ] NPE PDAppearance.convertToMultiLine</action>
<action context="code" dev="BJL" type="fix">[ 1522007 ] Error converting date</action>
<action context="code" dev="BJL" type="update">Upgraded to Lucene 2.0.0</action>
<action context="code" dev="BJL" type="fix">[ 1451164 ] Problems filling combo and radio form fields</action>
<action context="code" dev="BJL" type="update">Upgraded to lucene 1.9.1</action>
<action context="code" dev="BJL" type="update">[ 1023133 ] Support PDF Functions</action>
<action context="code" dev="BJL" type="update">Added command line org.pdfbox.PDFMerger</action>
<action context="code" dev="BJL" type="update">***API Change*** Promoted AppendDoc from example to util package, renamed to PDFMergerUtility.</action>
<action context="docs" dev="BJL" type="update">Upgraded to Apache Forrest 0.8-dev</action>
<action context="code" dev="BJL" type="update">Upgraded to IKVM-0.24.0.1</action>
<action context="code" dev="BJL" type="fix">[ 1391952 ] Problem extracting embedded attachments</action>
<action context="code" dev="BJL" type="fix">[ 1249607 ] Fixed issue with broken PDFs that contain multiple endobj</action>
<action context="code" dev="BJL" type="add">[ 1153174 ] Added documentation for PDFHighlighter</action>
<action context="code" dev="BJL" type="update">Removed log4j dependency</action>
<action context="code" dev="BJL" type="fix">[ 974661 ] getKids() Null Pointer Exception when parsing pdf</action>
<action context="code" dev="BJL" type="add">Added better support for CJK encoding</action>
<action context="code" dev="BJL" type="update">Changed signature of PDFPageContentStream.drawImage to take float arguments instead of int</action>
<action context="code" dev="BJL" type="fix">Fixed issue where form xobjects where not being drawn in the viewer</action>
<action context="code" dev="BJL" type="update">Changed signature to PDDocumentCatalog.OpenAction to be an PDDestinationOrAction instead of just action.</action>
<action context="code" dev="BJL" type="fix">Added tolerance to text extraction sorting where text on a line was not at the same exact y coordinate but very close</action>
<action context="code" dev="BJL" type="add">[ 1327133 ] Printing with form data</action>
<action context="code" dev="BJL" type="fix">Fixed issue with DateConverter that was trying to parse an empty string</action>
<action context="code" dev="BJL" type="fix">[ 1324846 ] appending text to PDPageContentStream messes up fonts</action>
<action context="code" dev="BJL" type="add">Added new example ReplaceURLs to show how to replace a clickable URL in a PDF</action>
<action context="code" dev="BJL" type="add">Implemented annotation drawing</action>
<action context="code" dev="BJL" type="add">Implemented EndPath and StrokeAndClosePath operators</action>
<action context="code" dev="BJL" type="update">Move text extraction permission checking from PDFTextStripper to ExtractText</action>
<action context="code" dev="BJL" type="add">Added support for more annotations, thanks to a contribution from Paul King</action>
<action context="code" dev="BJL" type="update">Created new FontBox project to hold all font library code</action>
<action context="code" dev="BJL" type="fix">Fixed issue where only the first page was sent to the printer</action>
<action context="code" dev="BJL" type="fix">Now automatically sets the page orientation when printing</action>
</release>
<release version="0.7.2" date="09/11/2005">
<action context="code" dev="BJL" type="update">Upgraded to IKVM-0.20.0.0</action>
<action context="code" dev="BJL" type="add">Added support to get annotations from a page and to create a RubberStamp annotation</action>
<action context="code" dev="BJL" type="add">Added PDDocument.print() to send the PDF to a printer.</action>
<action context="code" dev="BJL" type="fix">[ 1276623 ] NullPointerException in PageDrawer:241 when extractin images</action>
<action context="code" dev="BJL" type="update">Allow creation of PDJpeg from a BufferedImage, thanks to contribution from Paul King</action>
<action context="code" dev="BJL" type="add">Removed PDTiff in favor of PDCcitt</action>
<action context="code" dev="BJL" type="add">PDFBox no longer requires log4j!!</action>
<action context="code" dev="BJL" type="add">New class to allow you to specify 'named' regions where text is to be extracted.</action>
<action context="code" dev="BJL" type="fix">[ 1261555 ] Unexpected end of ZLIB input stream when stream has a zero length</action>
<action context="code" dev="BJL" type="fix">[ 1226665 ] ImportXFDF giving NPE error</action>
<action context="code" dev="BJL" type="update">renamed COSDictionary.setItem( String, boolean ) to COSDictionary.setBoolean( String, boolean )</action>
<action context="code" dev="BJL" type="update">Added sorting parameter to PDFTextStripper</action>
<action context="code" dev="BJL" type="fix">Fixed issues with PDF encryption</action>
<action context="code" dev="BJL" type="update">Better date support, added support for PDFs that use non standard dates, support for time zone offsets</action>
<action context="code" dev="BJL" type="update">FlateFilter-class now supports PNG-Predictors for decoding the imagedata, thanks to a contribution from Marcel Kammer</action>
<action context="code" dev="BJL" type="add">Added support for extracting tiff images, thanks to a contribution from Marcel Kammer</action>
<action context="code" dev="BJL" type="add">Added PDDocument.removePage to remove PDF pages</action>
<action context="code" dev="BJL" type="add">Fixed issue when creating a COSString with a UTF 16 string</action>
<action context="code" dev="BJL" type="add">Committed patch for type 1 PFB font parser(special thanks to Michael Niedermair)</action>
<action context="code" dev="BJL" type="add">Committed patch for PNG predictors (special thanks Erik Martino)</action>
<action context="code" dev="BJL" type="fix">[ 1227428 ] failure of getMediaBox</action>
<action context="code" dev="BJL" type="fix">[ 1227426 ] null pointer in PDFToImage(ColorModel is null)</action>
<action context="code" dev="BJL" type="update">[ 1207113 ] Enhancement: runtime accessible version</action>
<action context="code" dev="BJL" type="fix">[ 1213320 ] setFfFlag() of PDField not working correctly</action>
<action context="code" dev="BJL" type="fix">[ 1215945 ] Error in COSString.writePDF() - fixed escape sequences</action>
<action context="code" dev="BJL" type="fix">[ 1198912 ] COSName with escaped characters not parsed correctly</action>
<action context="code" dev="BJL" type="fix">Fixed issue where resources were not being cleared in PDFStreamEngine</action>
<action context="code" dev="BJL" type="fix">[ 1165686 ] Expected int type parse error</action>
<action context="code" dev="BJL" type="fix">[ 1182825 ] Wrong handling of signed/unsigned byte/int in TTF parsing</action>
<action context="code" dev="BJL" type="remove">[ 1182892 ] PDFHighlight.setHighlightColor was removed because it is not implemented by adobe</action>
</release>
<release version="0.7.1" date="04/10/2005">
<action context="code" dev="BJL" type="fix">[ 1170068 ] text field is not found</action>
<action context="code" dev="BJL" type="fix">fixed NPE issue where an image did not have any applied filters</action>
<action context="code" dev="BJL" type="fix">Fixed issue where extra spaces were being added during text extraction for type3 fonts</action>
<action context="code" dev="BJL" type="update">[ 1119420 ] Extract and Update the Meta-Information as XML</action>
<action context="code" dev="BJL" type="update">[ 1119410 ] Extract text in/between bookmarks</action>
<action context="code" dev="BJL" type="update">[ 1164476 ] XFDFImport should fail with non XFDF document</action>
<action context="code" dev="BJL" type="add">[ 1119408 ] Support named target for Bookmark extraction.</action>
<action context="code" dev="BJL" type="add">Created Resources/PDFBox_External_Fonts.properties to create a mapping for non-embedded fonts</action>
<action context="code" dev="BJL" type="update">**API Change** Renamed PDField.getName() to PDField.getPartialName(), added method getFullyQualifiedName() </action>
<action context="code" dev="BJL" type="update">**API Change** Renamed PDWidget to PDAnnotationWidget for naming consistency</action>
<action context="code" dev="BJL" type="update">Text is now extracted from embedded form xobjects.</action>
<action context="code" dev="BJL" type="update">Deployed site to new <a href="http://www.networkredux.com/">hosting vendor</a>.</action>
<action context="code" dev="BJL" type="update">committed code for PDFHighlighter to highlight words in a PDF document.</action>
<action context="code" dev="BJL" type="update">Added command line application org.pdfbox.PDFToImage</action>
<action context="code" dev="BJL" type="update">Implemented runlength decoding</action>
<action context="code" dev="BJL" type="update">Added patch from Jorge Hernández Sellés to append content streams to existing page.</action>
<action context="code" dev="BJL" type="update">**API Change**renamed package from pdmodel.graphics.image to pdmodel.graphics.xobject</action>
<action context="code" dev="BJL" type="update">**API Change**Removed PDRadioButton, should use PDCheckbox instead</action>
<action context="code" dev="BJL" type="update">**API Change**COSStream now extends COSDictionary instead of containing a dictionary</action>
<action context="code" dev="BJL" type="update">[ 1021241 ] Text extraction should follow PDF article divisions</action>
<action context="code" dev="BJL" type="add">Added implementation for PDF page articles</action>
<action context="code" dev="BJL" type="add">Created TextToPDF command line application</action>
<action context="code" dev="BJL" type="add">Created ImageToPDF example</action>
<action context="code" dev="BJL" type="fix">fixed parsing of header where a trailing % exists</action>
<action context="code" dev="BJL" type="fix">[ 1110029 ] Character ">" not quoted in COSName::writePDF</action>
</release>
<release version="0.7.0" date="1/22/2005">
<action context="code" dev="BJL" type="update">committed [ 1097913 ] Enhance LucenePDFDocument streams(thanks to Olivier Parent)</action>
<action context="code" dev="BJL" type="add">Added implementation for PDF Bookmarks</action>
<action context="code" dev="BJL" type="add">Added implementation for PDF Destinations</action>
<action context="code" dev="BJL" type="update">Updated website for better format for documentation</action>
<action context="code" dev="BJL" type="fix">Now ExportFDF and ExportXFDF will default output files to pdfname.fdf and pdfname.xfdf</action>
<action context="code" dev="BJL" type="fix">[ 1046278 ] ClassCastException when doing FDF/XFDF</action>
<action context="code" dev="BJL" type="fix">ExtractText now allows you to extract text if you decrypt with the owner password</action>
<action context="code" dev="BJL" type="fix">Added PDF 1.5 Object Stream support</action>
<action context="code" dev="BJL" type="fix">Added pdmodel.common.PDStream to represent COSStream</action>
<action context="code" dev="BJL" type="fix">changed PDPage.getContents to use PDStream instead of COSStream</action>
<action context="code" dev="BJL" type="fix">Updated LucenePDFDocument Javadoc to tell which Lucene fields it populates</action>
<action context="code" dev="BJL" type="fix">moved HelloWorld example from persistence to pdmodel and updated to use new PD Model features</action>
<action context="code" dev="BJL" type="fix">Refactored PDFStreamEngine based on contributions from Christophe Huault</action>
<action context="code" dev="BJL" type="fix">This class no longer uses a gigantic if/else statement for all of the operators they are defined as properties when instantiating the class</action>
<action context="code" dev="BJL" type="fix">Updated AFM resources to be ones released on Adobe's site, include AFM license as well</action>
<action context="code" dev="BJL" type="fix">Added ability to embed TTF fonts, only WinAnsiEncoding is supported at this time</action>
<action context="code" dev="BJL" type="fix">Added ability to extract images, thanks to contributions by Brigitte Mathiak</action>
<action context="code" dev="BJL" type="fix">COSWriter now generates the document id if it does not already exist</action>
<action context="code" dev="BJL" type="fix">improved performance for text extraction</action>
<action context="code" dev="BJL" type="fix">[ 1058693 ] TextPosition does not take account of tz operator</action>
<action context="code" dev="BJL" type="fix">upgraded to log4j-1.2.9</action>
<action context="code" dev="BJL" type="fix">include package-list for javadocs</action>
<action context="code" dev="BJL" type="fix">[ 1037145 ] Infinite loop in PDFParser.parseObject</action>
<action context="code" dev="BJL" type="fix">fixed error where spaces before integers was causing parse errors</action>
</release>
<release version="0.6.7" date="10/09/2004">
<action context="code" dev="BJL" type="fix">Revamped the way character spacing and font information is obtained</action>
<action context="code" dev="BJL" type="fix">Improved location information about a character drawn on the screen.</action>
<action context="code" dev="BJL" type="fix">Changed the PDFStreamEngine.showString to showCharacter to support the newly improved location information. This will now only show one character at a time.</action>
<action context="code" dev="BJL" type="fix">Fixed bug in PDDocument.isOwnerPassword and isUserPassword that was using the wrong length for the encryption key</action>
<action context="code" dev="BJL" type="fix">Upgraded to ant 1.6.2</action>
<action context="code" dev="BJL" type="fix">Upgraded to checkstyle-3.4</action>
<action context="code" dev="BJL" type="fix">Upgraded to JUnit-3.8.1</action>
<action context="code" dev="BJL" type="fix">Upgraded to lucene-1.4.2</action>
<action context="code" dev="BJL" type="fix">Integrated patch(1016603) for issue 943319 to fix parsing of open office documents</action>
<action context="code" dev="BJL" type="fix">Patch:985347 No longer throw exception for "No 'ToUnicode' and no 'Encoding' for Font"</action>
<action context="code" dev="BJL" type="fix">Patch:996191 Fixed case statement with missing break</action>
<action context="code" dev="BJL" type="fix">Patch:996781 Fixed null pointer exception in acroform fields</action>
<action context="code" dev="BJL" type="fix">Renamed DecryptDocument to DocumentEncryption to support encryption and decryption</action>
<action context="code" dev="BJL" type="fix">Added load/save/encrypt/decrypt convenience methods on the PDDocument class</action>
<action context="code" dev="BJL" type="fix">COSWriter now attempts to keep object numbers from parsed documents and writes 'free' entries in the xref if necessary</action>
<action context="code" dev="BJL" type="fix">Added the ability to set the word separator on the PDFTextStripper</action>
<action context="code" dev="BJL" type="fix">Fixed issue where PDFBox would throw an IOException if a PDF was incorrectly missing an endobj tag</action>
<action context="code" dev="BJL" type="fix">Fixed 918220 where PDFBox would freeze when parsing certain cmap files</action>
<action context="code" dev="BJL" type="fix">Added initial colorspace support</action>
<action context="code" dev="BJL" type="fix">Fixed issue where AppendDoc was throwing ClassCastException</action>
<action context="code" dev="BJL" type="fix">Fixed 1013163 Can't parse filters that use filter abbreviation</action>
<action context="code" dev="BJL" type="fix">Fixed 1011244 Where encrypting then decrypting was causing a problem</action>
<action context="code" dev="BJL" type="fix">renamed TextPosition.getWidth to TextPosition.getCombinedHorizontalDisplacement to better reflect its actual value</action>
<action context="code" dev="BJL" type="fix">Fixed 919215 PDFBox now support stream replacement</action>
<action context="code" dev="BJL" type="fix">Fixed 955043 Added support for 'ETenms-B5-H' encoding</action>
<action context="code" dev="BJL" type="fix">Fixed 996050 Class Cast exception when importing</action>
<action context="code" dev="BJL" type="fix">Added support for Font descriptors</action>
<action context="code" dev="BJL" type="fix">Fixed spacing issues when doing textfield FDF import</action>
<action context="code" dev="BJL" type="fix">Fixed 1017175 Large number converted when re-written</action>
<action context="code" dev="BJL" type="fix">Fixed 1029873 PDFBox now allows for multiple xref sections</action>
<action context="code" dev="BJL" type="fix">Added support for document Viewer Preferences</action>
<action context="code" dev="BJL" type="fix">Made currentDocument and pdfDocument protected in util.Splitter to allow easier subclassing</action>
<action context="code" dev="BJL" type="fix">Fixed 1034427 After Splitting page orientation is lost</action>
<action context="code" dev="BJL" type="add">Added the following command line applications
<!--<ul>
<li>org.pdfbox.Encrypt</li>
<li>org.pdfbox.Decrypt</li>
<li>org.pdfbox.ImportFDF</li>
<li>org.pdfbox.ImportXFDF</li>
<li>org.pdfbox.ExportFDF</li>
<li>org.pdfbox.ExportXFDF</li>
</ul>-->
</action>
</release>
<release version="0.6.6" date="07/20/2004">
<action context="code" dev="BJL" type="fix">Improved support for setting of checkbox fields(FDF import)</action>
<action context="code" dev="BJL" type="fix">Added the org.pdfbox.PDFSplit utility to split a single document into many documents</action>
<action context="code" dev="BJL" type="fix">PDFBox now ignore the Length field that is associated with a stream, it has been found to be wrong in some documents</action>
<action context="code" dev="BJL" type="fix">Fixed bug when writing out PDF documents and the document contained an non alphabetic character such as ( or )</action>
<action context="code" dev="BJL" type="fix">Fixed bug in PDFont where dictionary encodings where not being processed correctly</action>
<action context="code" dev="BJL" type="fix">Fixed bug in COSDocument.isEncrypted which was comparing COSNull to the wrong object</action>
<action context="code" dev="BJL" type="fix">Integrated patch for supporting multiple lines in the appearance stream</action>
<action context="code" dev="BJL" type="fix">Upgraded to lucene-1.4-final</action>
<action context="code" dev="BJL" type="fix">org.pdfbox.ExtractText now uses the system encoding as the default encoding instead of ISO-8859-1</action>
</release>
<release version="0.6.5" date="03/08/2004">
<action context="code" dev="BJL" type="fix">Fixed bug in revision 3 encryption algorithm</action>
<action context="code" dev="BJL" type="fix">added support for CIDFontType0 glyph widths, which fixed issue with spaces being during text extraction</action>
<action context="code" dev="BJL" type="fix">Fixed infinite loop when parsing a corrupt content stream</action>
<action context="code" dev="BJL" type="fix">Add characterspacing + wordspacing when determining the width of a space character</action>
<action context="code" dev="BJL" type="fix">Added support for more font types</action>
<action context="code" dev="BJL" type="fix">refactored the pdmodel.interactive package, form fields use object delegation instead of inheritance for the widget, see PDField.getWidget and PDField.getKids</action>
<action context="code" dev="BJL" type="fix">Fixed bug where an inheritable cropbox would cause stackoverflow exception</action>
<action context="code" dev="BJL" type="fix">Changed usage of PDField/PDWidget to look like object delegation instead of inheritance by adding a PDField.getWidget instead of extending PDWidget</action>
<action context="code" dev="BJL" type="fix">refactored interactive package, this will break any existing code that uses the PDField/PDAnnotation classes. You will need to adjust your package names!!</action>
<action context="code" dev="BJL" type="fix">Now uses StandardEncoding as the default encoding</action>
<action context="code" dev="BJL" type="fix">Bug in AppendDoc example that did not take into account groups of pages</action>
<action context="code" dev="BJL" type="fix">PDFont now also tries the bootstrap classloader when loading AFM resources</action>
<action context="code" dev="BJL" type="fix">added -startPage and -endPage command line options to org.pdfbox.ExtractText</action>
<action context="code" dev="BJL" type="fix">Added support for corrupt PDFs with garbage before the header</action>
<action context="code" dev="BJL" type="fix">Fixed bug where there was whitespace instead of garbage characters in front of the first object</action>
<action context="code" dev="BJL" type="fix">performance improvements for the Matrix implementation</action>
<action context="code" dev="BJL" type="fix">upgraded to lucene 1.3</action>
<action context="code" dev="BJL" type="fix">fixed bug in cmap parser for cmap files that all ended in &apos;def&apos;</action>
<action context="code" dev="BJL" type="fix">Removed createObject method from COSDocument, COSWriter will handle all object references for you</action>
<action context="code" dev="BJL" type="fix">Updated AppendDoc to use PDDocument instead of COSDocument and a couple bug fixes</action>
<action context="code" dev="BJL" type="fix">PDFParser now closes the document if there were parse errors</action>
<action context="code" dev="BJL" type="fix">TextPosition now has the PDFont that is associated with the piece of text</action>
<action context="code" dev="BJL" type="fix">Added initial version of org.pdfbox.PDFViewer, a GUI application to view the internal structure of a PDF document. This can be used for debugging purposes at this time but may end up being a Adobe Reader like application if there is enough interest</action>
<action context="code" dev="BJL" type="fix">Changed COSNumber/COSInteger/COSFloat interface to have both intValue and longValue</action>
<action context="code" dev="BJL" type="fix">Added methods isUserPassword &amp; isOwnerPassword to PDDocument</action>
<action context="code" dev="BJL" type="fix">Added cmap files for CJK languages, please give me some feedback</action>
</release>
<release version="0.6.4" date="11/02/2003">
<action context="code" dev="BJL" type="fix">Fixed bug which caused infinite loop</action>
<action context="code" dev="BJL" type="fix">Fixed bug in encoding where DictionaryEncoding kept a reference instead of making a copy leading to encoding problems</action>
<action context="code" dev="BJL" type="fix">Added PDFTextStripper.(get|set)PageSeparator, which will allow the user to output a string after every page</action>
<action context="code" dev="BJL" type="fix">refactored text stripping code to separate the logic processing of PDF operators and the logic of extracting text</action>
<action context="code" dev="BJL" type="fix">ran findbugs on source code and fixed a couple minor issues</action>
<action context="code" dev="BJL" type="fix">Refactored font functionality to PDFont, some API methods are no longer available in COSObject</action>
<action context="code" dev="BJL" type="fix">changed name of org.pdfbox.Main to org.pdfbox.ExtractText</action>
<action context="code" dev="BJL" type="fix">added contribution of org.pdfbox.Overlay from Mario Ivankovits</action>
<action context="code" dev="BJL" type="fix">added log.isDebugEnabled checks to log4j calls</action>
<action context="code" dev="BJL" type="fix">added better escaping when writing COSNames</action>
<action context="code" dev="BJL" type="fix">fixed bug where encryption dictionary is sometimes set to COSNull instead of not being present</action>
</release>
<release version="0.6.3" date="09/13/2003">
<action context="code" dev="BJL" type="fix">Now contains the ability to import/set FDF data thanks to a contribution from Stefan Uldum Grinsted</action>
<action context="code" dev="BJL" type="fix">No longer throw an error when stream is not followed by 0A or 0D0A to allow more PDFs to be parsed</action>
<action context="code" dev="BJL" type="fix">Added -encoding argument to org.pdfbox.Main to control the encoding of the output</action>
<action context="code" dev="BJL" type="fix">Remove Prev entry from trailer if it exists because PDFBox automatically clears all old entries, only an issue when modifying/saving an existing PDF document</action>
<action context="code" dev="BJL" type="fix">Fixed bug in master password encryption algorithm for Revision 3 encrypted documents</action>
<action context="code" dev="BJL" type="fix">COSString no longer uses UTF-8 when encoding the byte array</action>
<action context="code" dev="BJL" type="fix">Added PDDocument.getPageCount()</action>
<action context="code" dev="BJL" type="fix">Fixed bug in PDFEncryption where</action>
<action context="code" dev="BJL" type="fix">Now enforces text extraction permissions</action>
</release>
<release version="0.6.2" date="4/18/2003">
<action context="code" dev="BJL" type="fix">Modified build so that build.properties settings are no longer required</action>
<action context="code" dev="BJL" type="add">Added required libraries to CVS</action>
<action context="code" dev="BJL" type="add">Added log4j logging</action>
<action context="code" dev="BJL" type="update">Significant text extraction work</action>
<action context="code" dev="BJL" type="fix">Added automatic handling of files encrypted with the empty password</action>
<action context="code" dev="BJL" type="add">Added automated tests and test data for text extraction</action>
<action context="code" dev="BJL" type="fix">Removed unimplemented decoders from filters test</action>
<action context="code" dev="BJL" type="fix">Fixed several LZW decode bugs introduced after 0.5.6</action>
<action context="code" dev="BJL" type="fix">Fixed bugs relating to processing out of spec PDF's with bad # escaping in the name ("java.io.IOException: Error: expected hex number" bug)</action>
<action context="code" dev="BJL" type="fix">Fixed Lucene UID generation bug</action>
<action context="code" dev="BJL" type="fix">Fixed GetFontWidths null pointer exception bug</action>
</release>
<release version="0.6.1" date="3/9/2003">
<action context="code" dev="BJL" type="fix">Fixed bug in parsing stream objects which led to "Unexpected end of ZLIB input stream"</action>
<action context="code" dev="BJL" type="fix">Changed license from LGPL to BSD to allow pdfbox to be used easily in Apache projects</action>
</release>
<release version="0.6.0" date="3/5/2003">
<action context="code" dev="BJL" type="fix">Massive improvements to memory footprint</action>
<action context="code" dev="BJL" type="fix">Must call close() on the COSDocument(LucenePDFDocument does this for you)</action>
<action context="code" dev="BJL" type="fix">Really fixed the bug where small documents were not being indexed</action>
<action context="code" dev="BJL" type="fix">Fixed bug where no whitespace existed between obj and start of object. Exception in thread "main" java.io.IOException: expected='obj' actual='obj&lt;&lt;/Pro</action>
<action context="code" dev="BJL" type="fix">Fixed issue with spacing where textLineMatrix was not being copied properly</action>
<action context="code" dev="BJL" type="fix">Fixed 'bug' where parsing would fail with some pdfs with double endobj definitions</action>
<action context="code" dev="BJL" type="add">Added PDF document summary fields to the lucene document</action>
</release>
<release version="0.5.6" date="11/28/2002">
<action context="code" dev="BJL" type="add">Fixed bug in LucenePDFDocument where stream was not being closed and small documents were not being indexed </action>
<action context="code" dev="BJL" type="add">Fixed a spacing issue for some PDF documents </action>
<action context="code" dev="BJL" type="add">Fixed error while parsing the version number </action>
<action context="code" dev="BJL" type="add">Fixed NullPointer in persistence example </action>
<action context="code" dev="BJL" type="add">Create example lucene IndexFiles class which models the demo from lucene </action>
<action context="code" dev="BJL" type="add">Fixed bug where garbage at the end of file caused an infinite loop </action>
<action context="code" dev="BJL" type="add">Fixed bug in parsing boolean values with stuff at the end like "true&gt;&gt;" </action>
</release>
<release version="0.5.5" date="10/03/2002">
<action context="code" dev="BJL" type="add">Added example of printing document signature</action>
<action context="code" dev="BJL" type="add">Added example to print out form fields values</action>
<action context="code" dev="BJL" type="fix">Fixed bug when appending documents</action>
<action context="code" dev="BJL" type="fix">Various other bug fixes</action>
</release>
<release version="0.5.4" date="09/17/2002">
<action context="code" dev="BJL" type="fix">Fixed bug in text output where '?' instead of the proper character</action>
<action context="code" dev="BJL" type="fix">Fixed bug where sections of text were not being output at all</action>
</release>
<release version="0.5.3" date="09/13/2002">
<action context="code" dev="BJL" type="fix">Fixed bug in 128 bit encryption</action>
</release>
<release version="0.5.2" date="09/06/2002">
<action context="code" dev="BJL" type="fix">Fixed bug where FDF documents could not be appended to PDF Documents</action>
<action context="code" dev="BJL" type="update">Catch all NumberFormatExceptions and wrap them with IOExceptions</action>
</release>
<release version="0.5.1" date="09/04/2002">
<action context="code" dev="BJL" type="add">Now supports unicode for the document summary</action>
<action context="code" dev="BJL" type="update">Better support for Type0 fonts</action>
<action context="code" dev="BJL" type="fix">Fixed bug with an empty LZW stream</action>
<action context="code" dev="BJL" type="fix">Fixed parsing error for ID operator</action>
</release>
<release version="0.5.0" date="08/31/2002">
<action context="code" dev="BJL" type="add">Now supports unicode for the document summary</action>
<action context="code" dev="BJL" type="update">Better support for Type0 fonts</action>
<action context="code" dev="BJL" type="fix">Fixed bug with an empty LZW stream</action>
<action context="code" dev="BJL" type="fix">Fixed parsing error for ID operator</action>
</release>
<release version="0.4.1" date="07/25/2002">
<action context="code" dev="BJL" type="fix">Fixed bug where .notdef was being output as document text</action>
</release>
<release version="0.4.0" date="07/23/2002">
<action context="code" dev="BJL" type="add">Added extract text ant task</action>
<action context="code" dev="BJL" type="add">Implemented AFM(Adobe Font Metrics) resource loading</action>
<action context="code" dev="BJL" type="fix">Fixed numerous bugs submitted by users</action>
<action context="code" dev="BJL" type="update">Changed project from pdfparser to pdfbox to better reflect future needs</action>
</release>
<release version="0.3.0" date="07/09/2002">
<action context="code" dev="BJL" type="add">Added indexer for the lucene project</action>
<action context="code" dev="BJL" type="fix">Initial implementation of PDF encryption(not working yet)</action>
</release>
<release version="0.2.0" date="06/03/2002">
<action context="code" dev="BJL" type="add">Added support for the various encodings</action>
<action context="code" dev="BJL" type="fix">Improved the accuracy of the text output</action>
</release>
<release version="0.1.0" date="05/25/2002">
<action context="code" dev="BJL" type="add">Initial Version</action>
</release>
</changes>
<todo>
<actions priority="high">
<action context="docs" dev="JB">
Customize this template project with your project's details. This
TODO list is generated from 'status.xml'.
</action>
<action context="docs" dev="JB">
Add lots of content. XML content goes in
<code>src/documentation/content/xdocs</code>, or wherever the
<code>${project.xdocs-dir}</code> property (set in
<code>forrest.properties</code>) points.
</action>
<action context="feedback" dev="JB">
Mail <link
href="mailto:forrest-dev@xml.apache.org">forrest-dev@xml.apache.org</link>
with feedback.
</action>
</actions>
<!-- Add todo items. @context is an arbitrary string. Eg:
<actions priority="high">
<action context="code" context="code" dev="SN">
</action>
</actions>
<actions priority="medium">
<action context="code" context="docs" dev="open">
</action>
</actions>
-->
</todo>
</status>