==============================
PDFlib 7.0.2 (August 08, 2007)
==============================

- 2007-08-08 (bug #1379)
  The "optimize" option in PDF_begin_document() incorrectly created
  compressed XMP metadata output, resulting in non-conforming PDF/A.

- 2007-08-08 (bug #1192)
  Changes the behavior of repeated calls to PDF_load_font() with the same
  font/encoding in a slightly incompatible way: when a font is loaded with
  the embedding option, but already has been loaded earlier without this
  option, the call will fail (instead of silently ignoring the conflict in
  the second call). This is important for filling blocks with embedding=true
  if the same font has already been loaded earlier without embedding. This
  situation usually points to a problem in the application.

- 2007-08-08 (bug #1395)
  PDF_open_pdi_document() with requiredmode=minimum failed for documents with
  unknown encryption; now it succeeds so that minimum information (e.g.
  encryption status) can be queried with pCOS.

- 2007-08-08
  Replaced bind/pdflib/data/reference.pdf with a newer document.

- 2007-08-07 (bug #1339)
  Table formatting: the border of cell matchbox rectangles no longer can be
  overlapped by the fillcolor of an adjacent cell rectangle.

- 2007-08-07 (bug #957)
  Add zlib assembler modules for the Windows build with nmake. This speeds
  up PDF generation in typical situations by ca. 5% (not supported in
  PDFlib Lite).

- 2007-08-07 (bug #1343)
  Fixed a crash which could happen in PDF_delete() after incorrect calls to
  PDF_open_pdi_page() with an invalid document handle.

- 2007-08-07 (bug #1380)
  The "pattern" color space was wrongly rejected by PDF_setcolor() in PDF/A
  mode.

- 2007-08-06 (bug #1381)
  Textflow: if a wrap contour ran outside the fitbox or leftindent > 0 Textflow
  produced undesired output since these cases were not taken into account for
  calculating the intersection between the maximum region for text filling and 
  the fitbox.

- 2007-08-03 (bug #1385)
  Type 3 fonts with encoding=unicode: if the .notdef glyph was not defined
  as the first glyph in the font, Unicode addressing didn't work for the
  character in slot 0.

- 2007-08-03 (bug #1217)
  For vertical text output the 'vert' feature in the GSUB table of TT/OT fonts
  is used (if present) to replace standard glyph forms with the corresponding
  vertical forms. This improves the appearance of vertical CJK text for many
  common CJK fonts.

- 2007-08-02
  Fixed a build problem with the Cygwin environment.

- 2007-08-01 (bug #1384)
  User-supplied logging output was not actually logged for logging class api=0.

- 2007-07-31
  Added the -t option to the pdfimage client which forces treatment as a
  specific image type instead of "auto". This is sometimes useful to force
  JPEG handling for JPEG-compressed TIFF images.

- 2007-07-26 (bug #1377)
  Emit a warning in the log file for invalid (including deprecated)
  resource category names in the UPR file.

- 2007-07-26 (bug #1353)
  Textflow: text could run through a matchbox if the box was close to the
  upper edge of the fitbox.

- 2007-07-26 (bug #1378, bug #1203/continued)
  The return value of PDF_fill_textblock() could be wrong in PHP if
  textflowhandle was >0.

- 2007-07-25 (bug #1374)
  Textflow: the combination of tabs and the "leftindent" option depended on
  the ordering of both; Wrong output could be produced when "leftindent" was
  specified after a tab at the beginning of a line. Now it works for arbitrary
  ordering.

- 2007-07-24 (bug #1289)
  Table cells containing a text flow could remain empty under the following
  conditions:
  - Table: the row height is too small for the Textflow in a cell.
  - Textflow:  multiple fonts with different metrics are used, the font
    with larger metrics values was used after the smaller font, and
    lastlinedist != 0

- 2007-07-24 (bug #1354)
  Improved the table algorithm to increase the column width for Textflow cells
  with orientation west or east.

- 2007-07-24 (bug #1291)
  Textflow: the last line in a fitbox could be missing if the fontsize is
  decreased exactly at the beginning of the second fitbox.

- 2007-07-22
  Enable logging of libjpeg error messages when libjpeg is called from
  libtiff.

- 2007-07-22
  Catch some rare TIFF compression schemes and color spaces (photometric)
  which are definitely not supported (neither in pass-through mode nor libtiff)
  in order to provide a better error message than "Error reading data".

- 2007-07-18 (bug #1363)
  A problem in the font cache could result in excessive memory usage in the
  following situation: the same core font (e.g. Helvetica) was used with
  two different fontstyles which produced the same end result, e.g.
  "fontname=Helvetica fontstyle=Bold" and
  "fontname=Helvetica-Bold, fontstyle=Normal".

- 2007-07-17 (bug #1369)
  Textflow: if adjustmethod=auto or split and the fitbox was so narrow that
  the first letter didn't fit after splitting the first word, a long iteration
  of 64K steps happened. This situation is now detected, and PDF_fit_textflow()
  will break with return code "_boxempty".

- 2007-07-17 (bug #1366)
  Shortened the names of several modules in libs/expat to facilitate cross-
  compiling for MVS.


==============================
PDFlib 7.0.1p7 (July 17, 2007)
==============================

- 2007-07-16 (bug #1362)
  If textformat=ebcdicutf8 was in PDF_create_textflow() and inline options
  were used, the option "textlen" was required. This restriction has been
  removed.

- 2007-07-16 (bug #1325)
  The code from 2007-07-09 for the implementation of the "transparencygroup"
  option didn't fully work due to a typo.


==============================
PDFlib 7.0.1p6 (July 13, 2007)
==============================

- 2007-07-13 (bug #1318)
  pCOS path components can now be encoded in UTF-8 to support non-ASCII
  characters in PDF names. UTF-8 encoding will automatically be done in
  Unicode-aware language wrappers so that plain Unicode strings can be
  used a pCOS paths. This is especially helpful for retrieving properties
  of blocks with non-ASCII characters in their name.

- 2007-07-12 (bug #1303)
  Textflow with adjustmethod other than auto or split and text lines with zero
  length (e.g. with "addfitbox" to create arbitrary shapes): text at the
  beginning could get lost.

- 2007-07-12
  Enhanced the option parser to correctly with boolean options which start with
  "no...". Applying the "no" prefix to such option can result in "nono..."
  situations. Currently there is only a single affected option
  ("normalizefilename" suboption of the "OPI-1.3" and "OPI-2.0" options of
  PDF_load_image()).

- 2007-07-11 (bug #1328)
  Textflow: a situation with alignment!=justify and text line with two words
  was not treated correctly. Textflow treated the two words as one single
  word without any breaking opportunity and applied the specified adjustmethod
  (e.g. shrink, split, nofit).
  The bug fix leads to two situations with different behavior:
  - Lines with two Latin words will be broken now more often than before, and
    won't be shrunken or split.
  - Japanese text, which contains lots of break opportunities (after almost
    each character). With alignment!=justify PDFlib tried to fulfill justify
    although this was not necessary. The lines appear ragged now as they should.

- 2007-07-11 (bug #1346)
  The pCOS pseudo object "pdfa" did not work correctly on EBCDIC platforms.

- 2007-07-10 (bug #1172)
  Whitespace at the end of a Textflow didn't induce a line breaking opportunity.
  As a result the last word in a fitbox could be moved to the next fitbox if
  the word had a trailing space. Now a break opportunity will always be set at
  the end of a Textflow generally to make sure that the last word fits into the
  last line (if enough space is available).
  
- 2007-07-10 (bug #1163)
  The Textflow bounding box as returned by PDF_info_textflow() with the
  keywords x1-x4 and y1-y4 could be larger than it should if wrap boxes were
  present.

- 2007-07-10 (bug #1345)
  When importing pages from AES-encrypted documents (pCOS encryption algorithm
  4), encrypted strings in the input could have trailing garbage characters
  in the generated output. A similar problem could arise for unencrypted
  input with AES-encrypted file attachments.

- 2007-07-10 (bug #1287)
  The "charmapping" option didn't work correctly with ebcdic encoding.

- 2007-07-10 (bug #1330)
  Textflow: with verticalalign=center/bottom/justify the placement of text
  will now be determined iteratively if wrap boxes are present. Before this
  fix wrong text placement could result because wrap boxes influenced the
  formatting of text which had to be pushed downwards.

- 2007-07-10 (bug #1347)
  Multi-part annotations created by Textflow (e.g. automatic links which
  were created for a hyphenated word) did not result in multiple structure
  elements for Tagged PDF. Only the last part was included in the structure
  tree so that Acrobat's accessibility checker complained about an
  "Inaccessible link".

- 2007-07-09 (bug #1325)
  Implemented the "transparencygroup" option for PDF_begin/end_page_ext()
  and PDF_begin_template_ext().

- 2007-07-09 (bug #1319)
  The block filling functions will try to interpret the block name as UTF-8
  if the original path cannot be found. This works around problems where
  users retrieve non-ASCII block names with pCOS and use the returned paths
  for filling blocks without prepending the required UTF-8 BOM (relevant for
  non-Unicode language bindings only).

- 2007-07-09 (bug #1296)
  After some discussion with industry experts the version number check for
  ICC profiles has been relaxed to take only the ICC major version into
  account, but no longer the minor version. This makes life easier for users
  who can no longer produce old ICC version with current software, and
  complies with the spirit of the ICC, PDF/X, and PDF/A standards.

- 2007-07-09 (bug #1340)
  Fonts couldn't be loaded if the "FamilyName" entry was missing in the AFM
  file.

- 2007-07-05 (bug #1322)
  When the leading was changed between two calls to PDF_setfont() which both
  set the same font size, text output could appear on the wrong position on
  the page after the second call to PDF_setfont().

- 2007-07-04 (bug #1335)
  Subsetting didn't reduce the size of embedded fonts if only the "space"
  glyph was used in a font.


==============================
PDFlib 7.0.1p5 (June 22, 2007)
==============================

- 2007-06-22 (bug #1315)
  Loading external XMP with the "metadata" option could result in a crash or
  missing elements in certain situations involving multiple namespaces.

- 2007-06-22 (bug #1312)
  Trailing blanks after character entities could get lost when importing
  XMP with the "metadata" option.

- 2007-06-20 (bug #1307)
  The PDF_RETHROW() macro didn't work as documented.

- 2007-06-20 (bug #1314)
  The searchpath setting was not used when searching for the license file.

- 2007-06-14 (bug #1297)
  When non-ASCII passwords were used in Unicode-capable language bindings (e.g.
  Java) the resulting PDF couldn't be opened in Acrobat with the same password
  since a required encoding conversion was missing.

- 2007-06-14 (bug #1301)
  PDF_shading() didn't check for required options when the option list was
  completely empty or missing.

- 2007-06-12 (bug #939)
  PDF_fit_textline() didn't correctly set the text state if the only API call
  between PDF_begin_page_ext() and PDF_fit_textline() was PDF_fit_image(),
  without any additional text-related function calls.

- 2007-06-12 (bug #1293)
  Fixed an infinite loop in the OpenType subsetting code when encoding=unicode
  was used with certan BQ fonts.

- 2007-06-12 (bug #1290)
  When a CJK font was loaded with keepnative=false and a Unicode CMap it
  wouldn't be found in the font cache when the same font was loaded again.
  As a result multiple subsets of the same font could be produced instead of
  a single font subset. This especially affected PPS since each call to
  PDF_fill_textblock() loads the font again.

- 2007-05-30 (bug #1272)
  The treatment of the backslash character \ in text strings was wrong on
  EBCDIC platforms if the current encoding was different from "ebcdic" (i.e.
  did not contain the backslash on position 0xE0).

- 2007-05-29 (bug #1240/reopened)
  The fix for bug #1240 was incomplete, and did not work in topdown systems.


=============================
PDFlib 7.0.1p4 (May 24, 2007)
=============================

- 2007-05-24 (bug #1268)
  Embedded symbolic TrueType font subsets included a (3,0) cmap. Although
  this works in Acrobat it violates the PDF reference which recommends to
  include the (1,0) cmap. For PDF/A compatibility PDFlib now emits only the
  (1,0) cmap.

- 2007-05-24 (bug #1230)
  Replaced the ctype implementation of the C runtime library with our private
  version for performance and reasons and to make the code independent of the
  locale. Due to the usage pattern functional problems were not possible due
  to the locale, but it could negatively affect performance on some systems.

- 2007-05-24 (bug #1266)
  Fixed a potential problem in the EBCDIC conversion functions.

- 2007-05-23 (bug #1216)
  The table formatter could incorrectly emit the message "Calculated table
  height X is too large" when the table could actually be placed. This could
  happen when the formatter tried to fit a row or whole row join group into
  the fit box, the rows didn't fit, and the last row couldn't be split.

- 2007-05-23 (bug #1090/reopened)
  Write only a single output intent for PDF/A documents to work around
  problems with some validators.

- 2007-05-23
  Updated the PDFlib binding for REALbasic 2006.

- 2007-05-23 (bug #1243)
  Importing a PDF/A file with invalid XMP could raise an exception, instead of
  silently returning -1 and hooking up the error message for later retrieval
  with PDF_get_errmsg().

- 2007-05-22 (bug #1259)
  Table formatting: if the sum of the specified row heights was greater than
  the height of the fitbox, an inappropriate exception
  "Size of inner cell at column 1 and row 1 too small (1.234567  x 0.000000)"
  could occur (analogously for columns).

- 2007-05-22 (bug #1258)
  Table formatting: if the size of columns and/or row hasn't been specified
  and the cell size had to be adjusted to the size of text lines, scaling
  values set outside of the table could wrongly affect table formatting.

- 2007-05-22 (bug #1218)
  Removed all instances of the deprecated Windows function IsBadWritePtr().

- 2007-05-22 (bug #1236)
  Text strings are no longer limited to 32K for compatibility PDF 1.6 and
  above.

- 2007-05-22 (bug #1256)
  Matchboxes which partially overlap the fitbox could lead to wrong Textflow
  formatting.

- 2007-05-22 (bug #1240)
  When a Textflow was created with multiple calls to PDF_add_textflow() and
  the calls contained empty text fragments, the calculation for decoration
  matchboxes could be wrong.

- 2007-05-22 (bug #1245)
  Space characters in custom document info keys are no longer accepted when
  XMP output is created (via the autoxmp or metadata options).

- 2007-05-21 (bug #1255)
  The ToUnicode CMap for TrueType fonts with non-standard Latin encodings
  (except ebcdic) was wrong (contained GID->code mappings instead of 
  GID->Unicode). As a result, text extraction didn't work correctly for text
  in these fonts.

- 2007-05-21 (bug #1241)
  The implementation of the search for character classes like 
  "charclass {close U+XXXX}" was wrong; as a result, Textflow could incorrectly
  split words. Any character higher than XXXX was treated of type close,
  instead of only U+XXXX.

- 2007-05-21 (bug #1213)
  PDFlib didn't detect an error condition if the textlen option in Textflow
  pointed beyond the end of the actual text, and could produce garbage output.

- 2007-05-21 (bug #1250)
  Wrong output would be created for the combination of "topdown" and "height"
  options in PDF_begin_page_ext() (i.e. specifying the page height via an
  option as opposed to a function parameter).

- 2007-05-20
  Rewrote the XMP handling code to allow for more flexibility with future
  XMP merging and other processing, including powerful tree merging. This
  also eliminated a few platform-specific differences in the generated XMP
  output.

- 2007-05-18 (bug #1242)
  Page box rectangles (e.g. MediaBox) were not treated correctly if they
  contained the upper left and lower right box corner coordinates instead of
  the common ordering lower left + upper right. As a result the page size
  was calculated incorrectly, and an exception could be thrown when importing
  such a page.

- 2007-05-18 (bug #1248)
  The namespace URI for the "pdfx" XMP schema was wrong. If a pdfx element was
  found in user-supplied metadata, the XMP was incorrectly rejected as not
  wellformed. When synchronizing document info entries to XMP with
  autoxmp=true wrong XMP output was created.

- 2007-05-15 (bug #1224)
  The Visual Basic project files (*.vbp) contained references to a wrong
  PDFlib version number (but this didn't really hurt).

- 2007-05-11 (bug #1237)
  Using the pCOS pseudo object "pdfa" to check the PDF/A status of a PDF
  could incorrect raise an exception
  "PDF/A extension schema ... for XMP metadata not supported"
  for certain non-standard XMP elements. This was wrong, since the XMP
  should not have been checked according to PDF/A criteria.


=============================
PDFlib 7.0.1p3 (May 10, 2007)
=============================

- 2007-05-10 (bug #1232)
  Changed the license mechanism on zSeries so that a server key covers all
  LPARs on that machine.

- 2007-05-10 (bug #1233)
  Changed the build process to use Python's distutils for creating the PDFlib
  extension for Python. As an immediate advantage this allows us to build
  the Python binding on AIX, which was not supported earlier.

- 2007-05-02 (bug #1227)
  Illegal TIFF images with photometric=min-is-white and a color map led to a
  crash because PDFlib incorrectly tried to take the color map into account.

- 2007-05-02 (bug #1226)
  One of the namespace URIs for XMP extension schemas was wrong. Since these
  are currently only used for validation this bug could not result in invalid
  output.


===============================
PDFlib 7.0.1p2 (April 16, 2007)
===============================

- 2007-04-16 (bug #1209)
  Textflow: wrap boxes created from matchboxes with the "createwrapbox" option
  were not propertly taken into account in blind mode. The results of the
  calculation were different from the actual output (without the "blind"
  option).
  
- 2007-04-13 (bug #1195)
  Textflow: drop caps created with matchboxes and "createwrapbox" could
  wrongly be shifted horizontally when textrise was different from 0 and the
  value of fontsize for the drop cap was greater than the distance to the next
  wrap box above.

- 2007-04-13 (bug #1193)
  Matchboxes in Textflow could appear too small in the output when all of the
  following conditions were true: A matchbox with the "boxwidth" option
  appeared at the beginning of a line, leftindent was > 0 (or an absolute tab
  was used), and there was no underlying text.

- 2007-04-13 (bug #1196)
  The "offsetleft/right" suboptions in the "matchbox" option of Textflow
  functions were wrongly taken into account for intermediate matchbox
  rectangles (instead of only for the first and last matchbox rectangle).
  As a result, text was hidden behind the box.

- 2007-04-12 (bug #1207)
  Textflow: with "verticalalign=justify" the first distance between the
  top border of the fitbox and the first baseline could be scaled. This is
  wrong since this distance should be the same as the distance between the
  last baseline and the bottom border of the fitbox.

- 2007-04-12 (bug #1204)
  The table formatter could fail with an inappropriate exception
  "Calculated table height 40108.7 is too large..."
  due to an initialization problem.

- 2007-04-12 (bug #1203)
  PDF_fill_textblock() with the option "textflowhandle" didn't work correctly
  if the Textflow specified in the handle had been created outside of any
  block.

- 2007-04-12 (bug #1198)
  PDF_info_textflow() with the keyword "firstlinedist" could correctly return
  0 values.

- 2007-04-11 (bug #1199)
  Fixed a Makefile problem with the C++ binding on Solaris.

- 2007-04-06 (bug #656)
  Reworked the wrapper source code and build process for REALbasic to support
  Universal Binaries on the Mac. PDFlib for RB needs at least REALbasic 2006r4.

- 2007-04-03 (bug #1197)
  Fixed a problem with the license keys on zLinux.

- 2007-03-28 (bug #1189)
  The "charmapping" option for Textflow didn't work for Type 1 PostScript fonts,
  "unicode" encoding, and target characters which were unused in the original
  text.


===============================
PDFlib 7.0.1p1 (March 23, 2007)
===============================

- 2007-03-23 (bug #1180)
  Added a few missing function prefixes which are required to avoid
  conflicts with other libraries (only for Linux/x86 builds).

- 2007-03-22 (bug #1181)
  The behavior of the font cache slightly differed between PDFlib 7.0.0 and
  7.0.1. Now the values of embedding, subsetting, and kerning are ignored to
  restore the previous behavior.

- 2007-03-22 (bug #1178)
  Emit an error message when one of the options familyname, stretch, or weight
  was specified in PDF_begin_font() with compatibility < PDF 1.5.

- 2007-03-22 (bug #1176)
  Emit a more useful message for fontsize=0 in Textflow options.

- 2007-03-20
  Final changes for the iSeries and zSeries builds.

- 2007-03-19 (bug #1173)
  Type 1 symbol fonts with encoding=auto were rejected with an exception
  "Font doesn't support encoding", instead of automatically switching to
  encoding=builtin.

- 2007-03-15 (bug #1170)
  The /CIDSet entry for TrueType fonts was missing in PDF/A mode.


=============================
PDFlib 7.0.1 (March 10, 2007)
=============================

- 2007-03-10 (bug #957)
  Improved Linux performance by ca. 10% by switching to assembler code in zlib.

- 2007-03-08 (bug #1161)
  Font descriptors for Type 3 fonts did not include some required entries.
  The font descriptor itself is not required for all PDF versions, but PDFlib
  always emits it to improve usability.

- 2007-03-07 (bug #1139)
  If the XMP stream supplied to the "metadata" option contained XML entities
  these would not be properly output, e.g. XML special characters such as ">"
  were not written as character entities, but plain characters instead.

- 2007-03-04 (bug #1137)
  Changed XMP metadata handling for PDF/A:
  - Custom document info entries will no longer be mirrored in the XMP output.
  - Only predefined XMP schemas are supported for the "metadata" option, plus
    the four schemas required defining extension schemas.

- 2007-03-03 (bug #1157)
  The "optimize" option in PDF_begin_document() with Java on Windows could
  result in the VM terminating with stack overflow because of excessive
  memory consumption in a recursive function.

- 2007-03-01 (bug #1147)
  Modified the behavior of the "noforms" keyword for the "permission" option
  of PDF_begin_document() such that it automatically implies "nomodify".

- 2007-03-01 (bug #906)
  Improved the C++ builds with the native compilers on Mac, FreeBSD, HP-UX,
  and Solaris.


===============================
PDFlib 7.0.0p7 (March 01, 2007)
===============================

- 2007-03-01 (bug #1155)
  Implemented the new suboptions "modeltree" and "toolbar" for the
  "3dactivate" option of PDF_create_annotation().

- 2007-03-01 (bug #1153)
  Fixed a problem with U3D annotations that couldn't activated by adding
  dictionary entries which are supposed to be optional, but apparently
  aren't implemented as such in Acrobat 7 and 8.

- 2007-02-28 (bug #1138)
  Improved the solution files for building PDFlib from source with Visual
  Studio.

- 2007-02-27 (bug #1151)
  Implements strict version checking for ICC profiles according to the
  selected PDF output compatibility.

- 2007-02-27 (bug #1150)
  The "Hide" action is no longer allowed in PDF/A mode. Although this is
  not explicitly forbidden in the PDF/A standard, apparently it should have
  been.

- 2007-02-27 (bug #1135)
  The PHP binding could crash after an exception in get_buffer() and other
  functions.

- 2007-02-26 (bug #1148)
  Updated the CMap package.

- 2007-02-21 (bug #1134)
  Inline images used as image masks (mostly bitmap glyphs for Type 3 fonts)
  were rejected by Acrobat 7 and 8 due to a bug in Acrobat's image parsing
  code. As a workaround PDFlib now emits the /BPC entry which is actually
  optional in this case.

- 2007-02-19 (bug #1133)
  The CMap parser ignored CIDs which map to surrogate pairs.

- 2007-02-19 (bug #1129)
  The sequence "& " would cause an exception "Illegal HTML character entity"
  even if glyphcheck was different from "error".

- 2007-02-17 (bug #1110)
  Added the starter samples for VB.NET, ASP.NET, VB6, and WSH.

- 2007-02-17 (bug #1124)
  In the Ruby binding the following functions returned integer values instead
  of float values: PDF_pcos_get_number(), PDF_get_pdi_value(), PDF_get_value(),
  PDF_info_matchbox(), PDF_info_textflow(), PDF_info_textline(),
  PDF_info_font(), and PDF_stringwidth().

- 2007-02-15 (bug #1114)
  Improved handling of prerotated CJK characters in vertical writing mode
  by implementing special handling for glyphs with vertical variants.

- 2007-02-15 (bug #1112)
  Fixed problems related to linespacing in the wrapping algorithm of Textflow.

- 2007-02-13 (bug #1116)
  By default, fonts which formely were force embedded will still be embedded,
  but embedding can be prevented by setting embedding=false.
  
- 2007-02-12 (bug #1104)
  Since TIFF image data is retrieved in RGBA mode in certain cases, PDFlib
  could run out of memory for images with more than ca. 100 megapixels
  (especially on Windows with COM). As a workaround which helps in many
  situations, passthrough mode is no longer disabled for very large images.

- 2007-02-08 (bug #695)
  PDFlib could crash when an exception occurred and a page with annotations
  had been suspended while no page was open.

- 2007-02-07 (bug #1090)
  Loading an ICC profile as output intent (option usage=outputintent in
  PDF_load_iccprofile()) is now also supported if the output document is
  neither PDF/A nor PDF/X. A hybrid output intent (for both PDF/X and PDF/A)
  will be written in this case.

- 2007-02-02 (bug #1103)
  Added the deprecated show_boxed() method to the object-oriented PHP 5 wrapper.

- 2007-02-01 (bug #1093)
  When merging XMP streams provided to the "metadata" option the "begin" and
  "end" package lines could be duplicated. While Acrobat ignores the duplicated
  lines they were not correct.


=================================
PDFlib 7.0.0p6 (January 31, 2007)
=================================

- 2007-01-29 (bug #1092)
  Improved the contents of error messages on Windows when files were not
  found and the searchpath was involved.

- 2007-01-24 (bug #1011)
  In some cases when corrupt image data was fed to PDF_load_image() the
  function always threw an exception instead of returning -1, even with
  errorpolicy=return.

- 2007-01-23 (bug #1067)
  The text position after PDF_fit_textflow() (i.e. textx/y, textendx/y) no
  longer takes into account empty lines forced by wrapping around shapes.
  Instead, the end position of the last placed character is now reported.

- 2007-01-23 (bug #1084)
  PDFlib could crash when subsetting a TrueType or OpenType font where the
  cmap subtables were not sorted in ascending order.

- 2007-01-22 (bug #779)
  Fixed problems with unresolved externals with PHP 4 on Mac OS X.

- 2007-01-12 (bug #1059)
  Changed all Ruby samples to use "/usr/bin/env ruby" in the shebang statement
  in the first line to make the start of Ruby more portable.

- 2007-01-12 (bug #1039)
  PDF documents with encrypted file attachments have been rejected although
  the pages can be imported.


=================================
PDFlib 7.0.0p5 (January 10, 2007)
=================================

- 2007-01-10
  Preparations and minor changes for zSeries builds.

- 2007-01-10 (bug #1054)
  PDF_fit_textflow() created wrong output for the option 
  "leader={yposition=descender}" 

- 2007-01-10 (bug #1053)
  Extended the "boxheight" option for matchboxes such that float values are
  allowed in addition to the keywords.

- 2007-01-10 (bug #1049)
  The wrap feature of PDF_fit_textflow() did not correctly deal when wrapping
  around a matchbox and fitmethod=auto.

- 2007-01-09 (bug #1049)
  Switched the example for Ruby on Rails to the new PDI functions instead of
  the old (deprecated) ones.

- 2007-01-09 (bug #1050)
  PDF_open_pdi() in the Ruby binding didn't correctly treat file names,
  resulting in a wrong error message "Unicode file names are not supported on
  this platform".

- 2007-01-08 (bug #1051)
  PDFlib now keeps the cmap of TrueType CID font subsets if the ToUnicode CMap
  was disabled by the user.

- 2007-01-08 (bug #1046)
  PDF_add_textflow() and PDF_fit_textline(): specifying a font size
  indirectly via the capheight etc. suboptions could lead to an inappropriate
  error message "Handle parameter or option of type 'font' has bad value".

- 2007-01-05 (bug #1036)
  PDFlib now emits a /FontDescriptor entry for the PDF core fonts as
  mandated by the PDF 1.7 reference (even for older PDF versions).

- 2007-01-05 (bug #1040)
  pCOS reported wrong results for the "objectid" prefix when the object was
  contained in a compressed object stream.

- 2007-01-05 (bug #1044)
  Due to a typo the "fakebold" feature placed one of the emboldening text
  instances far outside of the page. Due to lower floating point accuracy
  in Acrobat 5 this could also lead to wrongly positioned subsequent text (but
  the text was placed correctly, and was displayed at the correct position
  in other viewers than Acrobat 5).

- 2007-01-04 (bug #1045)
  PDFlib created wrong Unicode mappings for TrueType symbol fonts with encoding
  "unicode".

- 2007-01-04 (bug #1042)
  TrueType fonts with the platform=3, encoding=10 (UCS-4) cmaps would result
  in wrong embedded fonts if PDF/A mode was active or subsetting was enabled
  (characters outside the BMP got lost).

- 2007-01-04 (bug #1037)
  Old-style Apple TrueType fonts without Unicode cmap (i.e. where the
  platform=1, encoding=0 cmap was used) couldn't be used with "unicode"
  encoding (glyphs appeared mixed up).

- 2007-01-02 (bug #1035)
  Reject the value 0 for the "xstep" and "ystep" options of PDF_begin_pattern().

- 2007-01-02 (bug #1033)
  Reject recursive use of a pattern handle within the definition of the pattern.

- 2007-01-02 (bug #1029)
  The "script" option of PDF_load_3ddata() was limited to 64K in length
  although PDF allows arbitrarily long JavaScript.

- 2006-12-19 (bug #1023)
  PDFlib didn't detect bad input, and would create invalid PDF output (object
  id -1 for font resources) under the following conditions:
  PDF_add/create_textflow() was used with an option list that didn't contain
  any font specification, and the "font" option with an invalid font handle
  was used in an option list of another function call (e.g. PDF_add_table_cell()
  or PDF_fit_textline()).

- 2006-12-19 (bug #1022)
  The "boxlinecount" keyword of PDF_info_textflow() could return wrong values
  depending on the height of the fitbox.

- 2006-12-18 (feature #55)
  Redesigned and improved the implementation of wrapping shapes ("wrap" option
  of PDF_fit_textflow()):
  Implemented the "addfitbox", "offset", and "polygons".
  Instead of using the distance between adjacent baselines for determining
  intersections with wrap boxes, now the ascender and descender of the text
  are used to create more precise output.

- 2006-12-15 (bug #867)
  The wrap boxes in PDF_fit_textflow() didn't work for orientate=east and west,
  and for topdown coordinates.

- 2006-12-13 (bug #1016)
  A crash could happen if both "boxes" and "usematchboxes" were specified for
  the "wrap" option of PDF_fit_textflow().

- 2006-12-13 (bug #1014)
  A crash could happen when retrieving resources with pCOS (e.g. "fonts[]")
  for documents without any /Contents entry (which is legal).

- 2006-12-13 (bug #1013)
  PDF_open_pdi_document() with "repair=force" could lead to an exception
  "During Xref rebuild: Illegal array index 2 in function pdc__vtr_at" due to
  an uninitialized variable. The problem did not occur with automatic repair
  mode.

- 2006-12-11 (bug #1002)
  PDF_fit_textflow() didn't force the text to fit into the box if maxlines was
  supplied in combination with fitmethod=auto. Instead of force-fitting the
  text the function stopped after placing the number of text lines specified
  in the maxlines option.

- 2006-12-11 (bug #995)
  Wrapping Textflow contents around a box didn't work if the wrap boxes were
  very small relative to the font size (e.g. smaller than the distance between
  adjacent baselines).

- 2006-12-08 (bug #999)
  In very rare cases glyphs from Type 1 fonts could get lost with encoding=
  unicode if the glyph name was contained in PDFlib's internal list of
  "misnamed" glyphs. The /Differences array in the font's encoding no longer
  contained the actual glyph name from the font, but another one with the
  same Unicode value.

- 2006-12-08 (bug #989)
  Subsetted OpenType CFF fonts would trigger the message "/rangecheck in
  --string--" in Ghostscript since GS doesn't correctly implement all aspects
  of CFF parsing. As a workaround, the INDEX and DICT data in the CFF subset
  are now arranged differently.

- 2006-12-08 (bug #996)
  The default of the "infomode" option in PDF_open_pdi_document() was false
  even if requiredmode was different from full. This prevented encrypted
  documents for which the document was not available from being opened for
  pCOS queries.

- 2006-12-06 (bug #994)
  Glyph name references for TrueType fonts in some cases didn't address the
  correct character.

- 2006-12-05 (bug #991)
  The illegal value U+FFFF was written to the ToUnicode CMap if PDFlib
  couldn't map a glyph ID to Unicode.

- 2006-12-05 (bug #990)
  The /Widths array could be incomplete when TrueType fonts with less than 256
  glyphs were used with an 8-bit encoding or "builtin" encoding.

- 2006-12-01 (bug #986)
  For OpenType CID fonts loaded with "noembedding subsetting" the Widths
  array and ToUnicode CMap are now reduced to the glyphs which are actually
  used in the document.


==================================
PDFlib 7.0.0p4 (November 29, 2006)
==================================

- 2006-11-29 (bug #984)
  The pdflib.upr file was not found if it was located in a SearchPath directory
  and the SearchPath was set via the Windows registry.

- 2006-11-29 (bug #958)
  Implemented the following new pCOS pseudo objects which work similar to
  the corresponding PDI parameters:
  pages[...]/blocks[...]/<property> and pages[...]/blocks/<name>/<property>

- 2006-11-27 (bug #980)
  Invalid PDF output ("Font has not been set") could be created by
  PDF_fit_textline(). The problem affected the first font which had been
  set via the "fontname" and "encoding" options.

- 2006-11-27 (bug #979)
  The "fillcolor" suboption of the "leader" option was ignored in
  PDF_fit_textline() and PDF_fit_textflow() when the "fillcolor" option was
  also specified in the main option list.

- 2006-11-27 (bug #974)
  Use proper XML entity or hex representation in the XMP output for document
  info keys which contain characters that are reserved for the XML syntax.

- 2006-11-27 (bug #940)
  PDFlib could crash in PDF_delete() if one of the following functions
  returned -1 because of an out-of-memory situation:
  PDF_open_pdi(), PDF_open_pdi_document(), PDF_open_pdi_callback(),
  PDF_open_pdi_page(), PDF_process_pdi(), PDF_fill_textblock(),
  PDF_fill_imageblock(), PDF_fill_pdfblock().

- 2006-11-27 (bug #978)
  The "ignoreorientation" option of PDF_load_image() did not have any effect.

- 2006-11-24 (bug #974)
  In PDF/A mode all document info keys were synchronized to XMP, while
  only the 8 keys specified in the PDF/A standard must actually be
  synchronized.

- 2006-11-24 (bug #969)
  Textflows with fitmethod=auto were not treated correctly in tables with
  minrowheight; the minimum row height was not honored, but instead the
  cell height was increased when adjusting the Textflow. Now the font size
  will be reduced in order to stay within the limits of minrowheight.

- 2006-11-24 (bug #972)
  Encodings where the space character was not on position 0x20 led to wrong
  output in Textflow.

- 2006-11-24 (bug #973)
  Non-ASCII document info entries were not converted correctly when creating
  XMP output with the "autoxmp" option (e.g. in PDF/A mode).

- 2006-11-23 (bug #967)
  PDF_fit_table() lost the second part of a split row (and issued an error
  message (Calculated table height is too high") under the following
  conditions: "rowminheight" was specified, a Textflow cell had to be
  split, and another Textflow cell which didn't require splitting was created
  after the split cell.

- 2006-11-22 (bug #781/reopened and bug #930)
  Changed the memory allocation strategy for creating PDF output in memory
  in order to reduce the memory requirements for large documents.

- 2006-11-21 (bug #964)
  A sequence of two backslash characters in a SearchPath entry was wrongly
  reduced to a single backslash, which spoiled the use of network drives on
  Windows.

- 2006-11-21 (bug #929)
  The deprecated functions PDF_setgray_stroke() and PDF_setgray_fill() were
  listed in the PDFlib API structure (for dynamic loading) in wrong order.
  The deprecated function PDF_setrgbcolor_stroke() no longer worked.

- 2006-11-20 (bug #963)
  The configure script no longer set the #define for WORDS_BIGENDIAN (bug
  introduced in 7.0.0p3). As a result, Unix builds on big endian platforms
  (except Mac OS X on PowerPC, which is treated differently), had problems
  with endianness (TIFF and Unicode handling).

- 2006-11-20 (bug #961)
  Due to a bug in PHP 4.3.x, PDF_open_pdi_page() didn't work on AMD64 Linux
  ("Handle parameter or option of type 'document' has bad value 0").

- 2006-11-18 (bug #960)
  The Windows hostfont engine did not release device context handles for
  TrueType host fonts. As a result, no more than 5000 such fonts could be
  acquired.

- 2006-11-15 (bug #957)
  Improved general performance for applications with a large number of
  PDFlib function calls by ca. 10%.

- 2006-11-15 (bug #937)
  U3D annotations didn't work due to a typo in the code, and missing
  appearance entries.

- 2006-11-14 (bug #949)
  XMP streams passed to the "metadata" option of various functions was not
  validated so that invalid XMP could spoil the PDF output. XMP streams were
  only validated in PDF_begin/end_document().

- 2006-11-14 (bug #953)
  The "topdown" option of PDF_begin_template_ext() didn't work correctly.

- 2006-11-10 (bug #951)
  The CurVer entry in the resource file of the PDFlib COM binding still
  contained a version 6 entry (instead of 7). Under specific circumstances
  this could lead to problems if both PDFlib 6 and 7 were installed on a
  machine.

- 2006-11-10 (bug #952)
  Use compiler/linker options for thread-safe C runtime environment on
  AIX.

- 2006-11-09 (bug #946)
  Invalid XMP supplied to the "metadata" option of PDF_begin_document(),
  PDF_begin_template_ext(), PDF_load_font(), PDF_load_image(),
  PDF_load_iccprofile(), and PDF_open_pdi_page() always triggered an exception
  (even for errorpolicy=return). These functions now return the error value -1
  if an error is found during XMP parsing.
  PDF_end_document() and PDF_begin_page_ext() still throw an exception for
  invalid XMP since they do not return any value.
  
- 2006-11-06 (bug #938)
  The "textflowhandle" of PDF_fill_textblock() for chaining PDFlib blocks
  didn't work in the PHP binding.

- 2006-11-02 (bug #939)
  The "stamp" option of PDF_fit_textline() didn't work correctly unless
  "fontsize" option was specified (with an arbitrary value), although the
  "fontsize" is not actually required. Now it works without specifying any
  font size.

- 2006-10-31 (bug #936)
  The utf16_to_utf8() and utf8_to_utf16() methods were missing from the
  object-oriented PHP 5 binding. The fix will be included in PECL package
  2.1.1.

- 2006-10-27 (feature #215)
  Implements an optimization for the "checkwordsplitting" option of
  PDF_add_table_cell(): Textflows with "adjustmethod=nofit" will be
  processed much faster in the "checkwordsplitting=true" case.


=================================
PDFlib 7.0.0p3 (October 27, 2006)
=================================

- 2006-10-27 (bug #925)
  Fixed a crash when PDFlib ran out of memory while trying to allocate more
  pages.

- 2006-10-27 (bug #932)
  Flate-compressed TIFF images with MINISWHITE=1 appeared inverted in
  passthrough mode.

- 2006-10-26 (bug #931)
  The error messages "Percentage of width/height of column/row ... not
  specified" are no longer thrown. Instead, the width/height will be
  treated (i.e. calculated automatically) as if they were specified as zero.

- 2006-10-24 (bug #927)
  PDFlib would throw an exception or crash if the UPR resource file was
  specified with PDF_set_parameter().

- 2006-10-19 (bug #917)
  The glyph names defined in the post table of a TrueType font were not
  available in PDF_info_font() and for character references (&.glyphname;).
  This means that glyph name references didn't work for TrueType symbol fonts.

- 2006-10-19 (bug #916)
  PDF_add_table_cell() could crash or produce wrong output (image and
  PDI page swapped in the table) with the "pdipage" option.

- 2006-10-19 (bug #914)
  PDFlib crashed when parsing TrueType fonts which contained reserved
  index values in the range 32768-65535 in the post table.

- 2006-10-18 (bug #911)
  Fixed a platform-specific problem in the JPEG2000 parser which showed up
  on Solaris.

- 2006-10-17 (bug #907)
  Removed a type cast which caused wrong data type handling with the
  Borland compiler when a large number of images with Indexed or ICCBased
  color space was loaded (exception "Unknown color space").

- 2006-10-16 (bug #907)
  Improved the contents of an internal error message for image color spaces.

- 2006-10-13 (bug #908)
  PDI didn't accept input PDFs with an indirect /Count entry in the /Pages
  dictionary (these are rare, but legal).

- 2006-10-02 (bug #894)
  If the value of the "menuitem" option of PDF_create_action() contained
  whitespace the generated PDF would suffer from a syntax error.


=================================
PDFlib 7.0.0p2 (October 17, 2006)
=================================

- 2006-10-16 (bug #909)
  The [hyper]textformat option or parameter will now always be taken into
  account for Unicode CMaps (instead of requiring UTF-16BE).

- 2006-10-16 (bug #910)
  The "margin" option of PDF_fit_textline() didn't work correctly.

- 2006-10-13 (bug #905)
  Fixed a bug with wrong string handling on 64-bit systems.

- 2006-10-12 (bug #902)
  PDF_add_table_cell() could slow down significantly for large numbers of
  table rows (>10000).


=================================
PDFlib 7.0.0p1 (October 11, 2006)
=================================

- 2006-10-10
  Preparations and minor changes for iSeries builds.

- 2006-10-10 (bug #900)
  Contrary to the documentation, the "SearchPath" resource category was
  not implemented with case-insensitive handling of the category name.

- 2006-10-09 (bug #899)
  PDFlib Lite could crash or create invalid PDF output due to a problem
  in preparing the source code packages.

- 2006-10-09 (bug #891)
  Fixed a problem with varargs handling which showed up in some 64-bit builds.


===============================
PDFlib 7.0.0 (October 04, 2006)
===============================

Various bug fixes and new features.


===================================
PDFlib 7.0.0beta1 (August 15, 2006)
===================================

First public beta of PDFlib 7 with a variety of new features and improvements
in existing features.  Please review the documentation for more details.
