<?xml version="1.0" encoding="UTF-8" ?>
<status>

  <developers>
  <!-- in strict alphabetical order -->
  <person name="Bertrand Delacretaz" email="bdelacretaz@apache.org" id="BD"/>
  <person name="Christian Geisert" email="chrisg@apache.org" id="CG"/>
  <person name="Karen Lease" email="klease@apache.org" id="KL"/>
  <person name="Keiron Liddle" email="keiron@apache.org" id="KLL"/>
  <person name="Jeremias Maerki" email="jeremias@apache.org" id="JM"/>
  <person name="Victor Mote" email="vmote@apache.org" id="VM"/>
  <person name="Joerg Pietschmann" email="pietsch@apache.org" id="JP"/>
  <person name="Arved Sandstrom" email="arved@apache.org" id="AS"/>
  <person name="Oleg Tkachenko" email="olegt@apache.org" id="OT"/>
  <person name="Peter B. West" email="pbwest@apache.org" id="PBW"/>

<!--
inactive??
  <person name="Kelly Campbell" email="kellyc@apache.org" id="KC"/>
  <person name="Steven Coffman" email="gears@apache.org" id="SC"/>
  <person name="Tore Engvig" email="tore@apache.org" id=""/>
  <person name="Stanislav Gorkhover" email="stanislav@apache.org" id=""/>
  <person name="Fotis Jannidis" email="fotis@apache.org" id=""/>
  <person name="Jordan Naftolin" email="jordan@apache.org" id=""/>
  <person name="Eric Schaeffer" email="eschaeffer@apache.org" id=""/>
  <person name="Art Welch" email="artw@apache.org" id=""/>
-->
    <person name="Volunteer needed"   email="fop-dev@xml.apache.org" id="open"/>
  </developers>

  <todo>
   <actions priority="high">
    <action context="code" dev="open">
      From branch: char encoding for pdf output.
    </action>
    <action context="code" dev="open">
      From branch: delete output file if error occured.
    </action>
    <action context="code" dev="open">
      From branch: add CCITT TIFF file support for embedding in pdf.
    </action>

    <action context="code" dev="open">
      Implement spacing between blocks and the adjustment to
      actual height when adding areas.
    </action>
    <action context="code" dev="open">
      Implement force page breaks.
    </action>
    <action context="code" dev="open">
      Implement page columns.
      Each column will need to layout until the page is complete.
      Need to improve the way that breaks are stored.
    </action>
    <action context="code" dev="open">
      Implement footnote.
      A footnote creates an inline parent and a block that is put into
      the footnote area.
    </action>
    <action context="code" dev="open">
      Implement floats.
      A float adds an anchor inline or block area to the parent
      and a block is added to the nearest reference area. The
      reference area layout manager needs to check it fits and
      adjust ipd available to line areas.
    </action>
    <action context="code" dev="open">
      Sort out writing directions and stacking.
      All blocks and line areas can be stack in different directions
      depending on writing mode and orientation.
      Need to ensure that all areas can be stacked properly in the
      correct direction.
    </action>

   </actions>

   <actions priority="medium">
    <action context="design" dev="open">
     Design FOP API interfaces.
    </action>
    <action context="design" dev="open">
     Integrate with Jakarta Avalon: logging, configuration, URI resolver,
     component management, image caching etc.
    </action>
    <action context="code" dev="open">
      Make it possible to redo static regions by determining which
      areas need a new layout for new page.
    </action>
   </actions>

   <actions priority="low">
    <action context="design" dev="open">
      Investigate using form XObject for repeated areas
      such as static and table header/footer only when the
      area does not change.
    </action>
    <action context="code" dev="open">
      Investigate using form XObject for svg images
      this can make the svg cacheable in the pdf doc
    </action>
   </actions>

  </todo>

  <changes>
   <release version="2004" date="2004">
    <action context="code" dev="FB" type="update">
      Rolled property datatypes classes into the property classes and
      un-nested the Property.Maker inner-class.
    </action>
    <action context="code" dev="FB" type="update">
      Abandoned code-generated property maker classes.
    </action>
   </release>
   <release version="2003" date="2003">
    <action context="code" dev="JM" type="fix" due-to="CTB/McGraw-Hill">
      Fix for bad font encodings in the PS renderer (Fonts get reencoded as
      WinAnsiEncoding, Symbol and ZapfDingbats show correctly now)
    </action>
    <action context="code" dev="JM" type="fix">
      Fix for bug #20239: Failure while generating XML metrics files from TT
      collections when names are in Unicode (JM)
    </action>
    <action context="code" dev="JM" type="fix"
          due-to="Matthias Germann" due-to-email="germannm@post.ch">
      Fixed bug: PFBParser reports "Could not load the whole segment" (#19764).
    </action>
    <action context="code" dev="JM" type="add">
      PS renderer got a configurable setting to do auto-landscape rotation.
    </action>
    <action context="code" dev="JM" type="fix">
      Fixed TrueType embedding. Width array now reflects the subset again.
    </action>
    <action context="code" dev="JM" type="fix">
      Fixed font registration for PDF renderer. "normal" and "bold" get
      accepted as font-weight again. Fixed font-weight normalization.
    </action>
    <action context="code" dev="KLL" type="update">
      Added markers to page when areas added.
      When an area is added that is created by an FO that contains markers
      then the markers can also be added. There are four types of positions
      for markers.
    </action>
    <action context="code" dev="KLL" type="update">
      Retrieved markers from page.
      When doing the static areas the markers will need to be available for
      retrieving. Layout currently has some issues.
    </action>
   	<action context="code" dev="JM" type="update">
   		PDF and PS transcoders now have a common base class. It also
   		optionally supports Avalon Logging and Configuration. Support for
   		plugging in an EntityResolver into Batik is now included.
   	</action>
   	<action context="code" dev="JM" type="update">
   		Implemented on-the-fly stream output (less buffering leads to
   		decreased memory usage and increased speed).
   	</action>
   	<action context="code" dev="JM" type="update">
   		General refactoring of the PDF library to centralize certain
   		behaviour and reduce redundancy. Some memory allocation
   		optimizations.
   	</action>
    <action context="code" dev="JM" type="update">
      Enhanced PDF encryption support so it is optional depending on the 
      availability of JCE and/or cryptographic algorithms.
    </action>
   	<action context="code" dev="JM" type="add"
            due-to="Patrick C. Lankswert" due-to-email="PLankswert@InsightBB.COM">
      Added PDF encryption support (40bit RC4, PDF 1.3 level).
    </action>
    <action context="code" dev="JM" type="update">
      Moved all sources from src/org/** to src/java/org/**.
    </action>
    <action context="code" dev="JM" type="update"
            due-to="Zhong Yi" due-to-email="yidaomao@yahoo.com">
      Port of the PDF TextPainter to PostScript. Support for SEG_QUADTO (curves).
      Some support for viewport traits (background and borders).
    </action>
    <action context="code" dev="JM" type="update">
      Brought back the PostScript renderer. Compared to the branch it
      has a cleaner separation of PostScript generation code from
      renderer-specific code.
    </action>
    <action context="code" dev="JM" type="fix">
      Fixed bug #16257: Get ascender/descender from OS/2 table if the ones in
      hhea are zero (TrueType fonts).
    </action>
    <action context="code" dev="JM" type="fix">
      Fixed bug #15877: ArrayIndexOutOfBoundException with certain TrueType
      fonts. Reserved name indexes were not ignored.
    </action>
    <action context="code" dev="JM" type="update">
      Moved general font classes away from the PDF-dependent places to
      org.apache.fop.fonts. Various detail improvements to make the code
      easier to understand. No semantical changes.
    </action>
    <action context="code" dev="JM" type="update">
      Moved all TrueType font related classes to
      org.apache.fop.fonts.truetype.
    </action>
   </release>
   <release version="2002" date="2002">
    <action context="code" dev="JM" type="update">
      Moved all Adobe Type 1 font related classes to 
      org.apache.fop.fonts.type1. Added a PFB parser for proper decoding of
      PFB files.
    </action>
    <action context="build" dev="JM" type="update">
      Updated to Xerces 2.2.1 and Xalan 2.4.1. Updated all the related files
      and made sure all contrib builds work again. Removed necessity for a
      buildtools.jar.
    </action>
    <action context="code" dev="KL" type="fix" fixes-bug="14290">
      Correct ordering of loca table in embedded true type fonts.
      Fix taken over from maintenance branch.
    </action>
    <action context="docs" dev="KLL" type="update"
            due-to="Victor Mote" due-to-email="vic@outfitr.com">
      New dev fonts.xml file to store some useful links and information
      about font work
    </action>
    <action context="docs" dev="KLL" type="update"
            due-to="Victor Mote" due-to-email="vic@outfitr.com">
      Added links to the Eyebrowse mail list archives.
      Added help and unsubscribe email addresses for the fop-user
      &amp; fop-dev lists.
      Rewrote/rearranged some of the verbiage for better structure.
    </action>
    <action context="docs" dev="KLL" type="update"
            due-to="Victor Mote" due-to-email="vic@outfitr.com">
      Valid URIs for all xdoc DTD declarations.
      Some minor changes for xdoc documents that were discovered to be invalid
      after the DTD declarations were fixed.
      Changed tabs.xml so that the 2nd tab on our site will now read "Redesign"
      instead of "dev".
    </action>
    <action context="docs" dev="KLL" type="update"
            due-to="Victor Mote" due-to-email="vic@outfitr.com">
      Better links to Bugzilla.
      Reorganized content into a checklist.
    </action>
    <action context="code" dev="KLL" type="update">
      Added support for markers in fo tree. Markers added when valid
      to proper fo objects.
    </action>
    <action context="docs" dev="KLL" type="update"
            due-to="Victor Mote" due-to-email="vic@outfitr.com">
      Added compliance document showing table of fop compliance.
    </action>
    <action context="code" dev="KLL" type="update"
            due-to="Stephan Neuhaus" due-to-email="stephan.neuhaus@myview.de">
      From branch: fixed jpeg icc profile error with acrobat 5.
    </action>
    <action context="code" dev="KLL" type="update"
            due-to="Oleg Tkachenko" due-to-email="olegt@multiconn.com">
      Awt viewer improvements - uses java PropertyResourceBundle
      for locale strings, cleaned up code and removed old classes
      and other small improvements
    </action>
    <action context="code" dev="KLL" type="update">
      Started list layout implementation.
    </action>
    <action context="code" dev="KLL" type="update">
      Improved pagination and page number for page sequences.
    </action>
    <action context="code" dev="KLL" type="update">
      Implemented border and background for many areas.
    </action>
    <action context="code" dev="KLL" type="update">
      Started table layout implementation.
    </action>
    <action context="docs" dev="KLL" type="update"
            due-to="Victor Mote" due-to-email="vic@outfitr.com">
      Added link for patch queue.
    </action>
    <action context="code" dev="KLL" type="update"
            due-to="Rainer Garus" due-to-email="rainer.garus@arcor.de">
      Fixed npe when a page has several forward links.
      Use HashSet to store unresolved references (pages) in area tree
      to prevent duplication.
    </action>
    <action context="code" dev="KLL" type="update">
      Implemented example caching mechanism to store pages.
      When a page contains a forward reference that has not been
      resolved then it can save the page contents to
      disk to save memory.
    </action>
    <action dev="CG" type="add" context="code"
            due-to="Bernd Brandstetter" due-to-email="bbrand@freenet.de">
      Linking to a specific page and a named destinations of an
      external PDF file.
      (see www.adobe.com/products/acrobat/pdfs/c01acrotip.pdf)
    </action>
    <action context="code" dev="KLL" type="update">
      Started table layout managers.
    </action>
    <action context="code" dev="KLL" type="update">
      Implemented render pages model.
    </action>
    <action context="code" dev="KLL" type="update">
      Implemented link part of basic link. Internal destination
      is resolved. The link is a trait on the inline parent.
    </action>
    <action context="code" dev="KLL" type="update">
      Got bookmark extension working.
      Make sure the extension id references are resolved. Once the data is
      fully resolved then implement a way for the pdf renderer to add the
      bookmarks. See branch for code how to add bookmarks.
    </action>
    <action context="code" dev="KLL" type="update">
      add the pdf side part of bookmark extension
    </action>
    <action context="code" dev="KLL" type="update">
      complete resolving id areas
    </action>
    <action context="code" dev="KLL" type="update">
      Add id areas to page when area added.
      When the layout managers add an area to the page it can also add the id
      information.
    </action>
    <action context="code" dev="KLL" type="update">
      Resolve id references on other pages, extensions.
      When an id is added to a page this will allow id references to be
      resolved.
    </action>
    <action context="code" dev="KLL" type="update">
      Fixed a bug in the TTFReader where it tried to read
      values for the end character. Handles unsupported
      non-unicode cmap better. Added logging.
    </action>
    <action context="code" dev="JP" type="update">
      Add static areas to page
      The static areas will need to be handled in a similar way to the flow
      except the bpd is unlimited and it will need to reset and repeat for
      each page.
    </action>
    <action context="code" dev="KLL" type="update">
      Implemented leader, get leader working and sort out
      how inline objects adjust to the ipd
    </action>
    <action dev="KLL" type="update" context="code">
      Calculate line height.
      The line height is calculated while finding breaks.
      Improved alignment to use the breaks and context.
    </action>
    <action dev="KLL" type="update" context="code">
      Updated batik with change to TextPainter interface and UserAgent.
      Improved PDFTextPainter to handle more types of text.
    </action>
    <action dev="JM" type="update" context="code"
            due-to="Stephen Wolke" due-to-email="smwolke@geistig.com">
      Added a RunLengthEncode filter for the PostScript renderer.
    </action>
    <action dev="JM" type="update" context="code">
      Replaced the PostScript filters with the refactored ones from the maintenance
      branch.
    </action>
    <action dev="JM" type="update" context="code">
      First batch of changes in preparation for adoption of Avalon patterns.
      Only changes on logging for now. Mostly usage of LogEnabled contract interface.
    </action>
    <action dev="JM" type="update" context="build">
      Improve build process for more flexibility when external jars change.
      Changed to use -projecthelp option from Ant 1.5 instead of "usage" target.
    </action>
    <action dev="JM" type="update" context="build">
      Updated Avalon Framework JAR (with Log4J support, Bug 11274)
    </action>
    <action dev="KLL" type="update" context="docs"
            due-to="Victor Mote" due-to-email="vic@outfitr.com">
      Copies across overview for javadocs build.
      chmod antRun in build.sh.
    </action>
    <action dev="KLL" type="update" context="code"
            due-to="Kevin O'Neill" due-to-email="kevin@rocketred.com.au">
      Minor patch for the TTFReader to remove an unreachable statement
      compiler warning
    </action>
    <action dev="KLL" type="update" context="code"
            due-to="Torsten Erler" due-to-email="erlto@net-linx.de">
      workaround for eps files that have invalid float bounding box values
      float values are rounded off according to the spec the
      %%HiResBoundingBox should be used instead for floating position
      values
    </action>
    <action dev="JP" type="update" context="code">
      Simplified ASCII85Filter computation, thereby hopefully
      working around JVM bugs
    </action>
    <action dev="KLL" type="add" context="docs"
            due-to="Cyril Rognon" due-to-email="crognon@objectiva.fr">
      added understanding layout manager document
    </action>
    <action dev="KLL" type="update" context="docs"
            due-to="Peter Kullmann" due-to-email="p.kullmann@arenae.ch">
      fixed master-name and a test setup problem
    </action>
    <action dev="KLL" type="update" context="code">
      moved embed font info into the render.pdf package
      reduced dependancy on Configuration
    </action>
    <action dev="KLL" type="update" context="code"
            due-to="Kevin O'Neill" due-to-email="kevin@rocketred.com.au">
      separated the specific PDFRender functionality from the CTM class
      and created a small utility class for the renderer to use
    </action>
    <action dev="KLL" type="update" context="code">
      FontState only used for calculations,
      stores font name and size on area tree
    </action>
    <action dev="KLL" type="update" context="code">
      Improved PDFTextPainter to handle different text better
    </action>
    <action dev="KLL" type="update" context="code">
      Applied root element viewBox transform for svg to pdf transcoder
    </action>
    <action dev="KLL" type="update" context="code">
      image test for formats, viewport and scaling
    </action>
    <action dev="KLL" type="add" context="code">
      added various SVG to PDF tests for trancoder
      and including in fo
    </action>
    <action dev="KLL" type="update" context="code">
      Implemented viewport and scaling for images
    </action>
    <action dev="KLL" type="update" context="code">
      Implemented viewport and scaling for instream svg
    </action>
    <action dev="KLL" type="update" context="code">
      Removed old area tree
    </action>
    <action dev="KLL" type="update" context="code">
      Optimised gstate usage in pdf files to minimize file size
    </action>
    <action dev="KLL" type="update" context="code">
      Optimised function usage, reuses old functions in pdf files
      to minimize file size
    </action>
    <action dev="KLL" type="add" context="code">
      Added transparancy to pdf
    </action>
    <action dev="KLL" type="update" context="code">
      Outputs images immediately to the stream, also drops
      reference to image data
    </action>
    <action dev="KLL" type="add" context="code">
      Added resource context for pattern resources
    </action>
    <action dev="KLL" type="update" context="build">
      Added pdf transcoder build target
    </action>
    <action dev="KLL" type="update" context="code">
      Made PDF streams externally configured
    </action>
    <action dev="KLL" type="update" context="code">
      Fixed svg linking in pdf, works with viewbox and url
    </action>
    <action dev="KLL" type="add" context="code">
      Start to mif implementation with new structure handlers
    </action>
    <action dev="KLL" type="add" context="code">
      New structure handler for structure type documents, rtf, mif
      and for better layout processing.
    </action>
    <action dev="KLL" type="update" context="code">
      Changed extensions to allow for external xml
    </action>
    <action dev="KLL" type="add" context="code">
      Can have a default element mapping for extensions
    </action>
    <action dev="KLL" type="add" context="code">
      New area tree model
    </action>
    <action dev="KLL" type="add" context="code">
      New renderer model
    </action>
    <action dev="KLL" type="update" context="code">
      Added handlers for xml in renderer
    </action>
    <action dev="KLL" type="update" context="code">
      svg now in an xml handler, FOP can be used without batik
    </action>
    <action dev="KLL" type="update" context="build">
      Removed old xerces and xalan
    </action>
    <action dev="" type="update" context="code">
      Updated to use Jaxp
    </action>
    <action dev="" type="update" context="code">
        Updated to use new avalon framework logger
    </action>
    <action dev="KLL" type="update" context="code">
      Redid image handling so it can use a cache and synchronizes properly
      only on the current image while loading
    </action>
    <action dev="KLL" type="update" context="code">
      Changed bookmark extension, now requires a wrapping element bookmark
    </action>
    <action dev="KL" type="add" context="code">
      New layout system using layout managers
    </action>
    <action dev="KL" type="add" context="code">
      Implemented handlers for whitespace handling that collapse whitespace
      better in various places
    </action>
    <action dev="KLL" type="update" context="code">
     Changed area tree xml format to match the area tree hierarchy
    </action>

   </release>
  </changes>

</status>
