PD4ML Pro 3.6.1b2 Release Notes
Release Date: Oct 18, 2010
New in PD4ML Pro 3.6.1b2
- RTF file format output support
- nth-child(even|odd) CSS
selector support
- JAR obfuscation changed to provide compatibility with
Scala programming language
- Dummy implementations of some HTML5
elements
- enableTableBreaks() API call is renamed to
enableSmartTableBreaks(). Table page break/replication of table headers
code refactored.
- API methods to reuse PD4ML cache
- CSS Parser patched
to potentially support CSS3 features.
- Fixed bugs:
- under particular conditions
table cell background may shadow top cell border.
New in PD4ML Pro 3.6.1b1
-
Generic support of embeddable TIFF files (CCITTFax group 4)
-
A configuration switch to support "print" CSS media type (in addition
to or instead of default "screen" type).
-
Optional image caching in local $TEMP directory.
- Fixed bugs:
-
a possibility of commas and other punctuation to be "line-wrapped"
separately from its leading word.
- under particular conditions
table cell background may shadow top cell border.
New in PD4ML Pro 3.6.0fx1
- Fixed bugs:
-
— entity wrongly interpreted when TTF embedding is switched off
-
not closed <head> results a blank document
-
background-image: none/inherit CSS property causes an undesired resource request
New in PD4ML Pro 3.6.0fx1b6
-
New API method pd4ml.useHttpRequest(HttpServletRequest,
HttpServletResponse) allows PD4ML to load resources via HTTP
RequestDispatcher
-
New API method pd4ml.clearCache() removes all internally cached
resources
-
­ entity support
- Fixed bugs:
-
By multi-document
conversion some documents may loose HTML background
-
"overflow: hidden" does not work for <textarea>
-
Minor refinements
New in PD4ML Pro 3.6.0fx1b1
-
New configuration switch m.put(PD4Constants.PD4ML_ABSOLUTE_ADDRESS_SPACE, "document") to
switch PD4ML into backward compatibility mode of
absolute positioning
- Fixed bugs:
- <b>
tag does not work, however "text-weight: bold" does
(introduced in v360)
-
Default text align in
dir="rtl" mode is "left", instead of "right"
-
Errors by parsing of
particular PNG sub-types.
-
Text style of <legend>
is not overriddable with CSS.
New in PD4ML Pro 3.6.0.0
-
Pd4Cmd command-line HTML-to-PDF converter
- Fixed bugs:
- Invalid text background
inheritance
-
MS-Office-specific 'windowtext'
and 'window' color names ignored
-
No table cell background
if the cell contains <br> tag only.
- Minor text flow
issues
New in PD4ML Pro 3.6.0b3
- Tooltips from TITLE attributes
- New PD4Util class with the first
utility methods: pd4fonts.properties generation API
- Fixed bugs:
-
Minor dynamic font substitution logic issues
-
Some PNG images may
cause resulting document format corruption
-
Bottom and top table breaks borders render refinement
New in PD4ML Pro 3.6.0b2
New in PD4ML Pro 3.6.0b1
- PDF/A< support
(PD4ML Volume DMS Edition)
- <pd4ml:toc> can be inserted at any place of the document now.
- <pd4ml:page.break> allows to control document page numbering and
to insert an extra blank page to guarantee the next page is even or odd
- Fixed bugs:
-
hyperlinks in header or footer
work not always
-
entities in attributes
are not substituted with values if the attribute name is uppercased
-
invalid results of
"font-size: inherit" and "font-family: inherit"
-
single images, tables
and input elements do not position absolutely
-
"TD+TD+TD" CSS
selectors are overridden by "TD+TD"
New in PD4ML Pro 3.5.15.1
- Fixed bugs:
-
few minor issues
New in PD4ML Pro 3.5.1b17
- getLastRenderInfo() API call
- a possibility to automatically open a print dialog
- Fixed bugs:
-
second parameter of useTTF() takes no effect
- "font-size: inherit"
does not work correctly - <noscript>
renders as block element -
watermarks opacity is not controllable (introduced in v351b1)
- page background may overlap page content (introduced in v351b8)
- <br clear="all"> does not clear
- <br> at the end of <li> block does not break line
New in PD4ML Pro 3.5.1b14
- not-well-formed-HTML pre-processing improvements
- PDF version of generated documents is set to "1.5" to fix
incompatibility issues with PDF-processing modern software
- Fixed bugs:
-
System.setProperty("pd4ml.cache.enable","false"); does not work -
conflict of "overflow: hidden" and "vertical-align: middle"
New in PD4ML Pro 3.5.1b8
- Fixed bugs:
-
setHtmlHeader() call may make the main document content invisible in a
case the header defines opaque background -
<th> content is not centered by default -
"border-style: double"
takes no effect for table cells (in some contexts)
New in PD4ML Pro 3.5.1b7
- <col> tag support (only width attribute)
- Proprietary tag <pd4ml:layoutbox> support (scaling of
nested content down, until it fits given dimensions)
- Proprietary tag <pd4ml:include> support
(to include base64-encoded HTML documents)
- simplified "border-style: double"
style support
- Fixed bugs:
- empty class="" attribute
may break CSS selector lookups. -
<center> tag fix
from previous versions rolled back.
New in PD4ML Pro 3.5.1b1
- PNG image alpha layer support
- A possibility to place <style> outside of <head>
- new API method allows to limit a range of of PDF pages to output
- percentage IMG width support
- Fixed bugs:
- "overflow: hidden" not
always correctly interpreted by document height calculation and the "hidden"
content may cause extra blank pages to appear.
- <pd4ml:footnote>
definition after <pd4ml:page.break> makes the footnote to print on a
wrong page
- <pd4ml:footnote> content
overlapped by page background (if any)
- Bullet points of <li> do
not inherit text color
New in PD4ML Pro 3.5.0
- HTML-to-BufferedImage output module
New in PD4ML Pro 3.5.0b6
- Fixed bugs:
-
mixed nesting of
absolutely and relatively positioned elements may result a
broken layout
-
external relative PDF hyperlinks are converted to absolute ones. In some
cases they erroneously point to the local file system.
-
inline header/footer definitions may be impacted by neighbor floats, which
results undesired margins.
-
nesting of ordered and unordered lists issues.
New in PD4ML Pro 3.5.0b4
- Fixed bugs:
-
multiple minor issues
New in PD4ML Pro 3.5.0b1
- limited support of position: absolute and position: relative
block element styles
- <pd4ml:footnote> and
<pd4ml:footnote.caption> tags
- support of plugged custom resource
loaders
- Fixed bugs:
-
empty <a name="identifier"></a> anchors ignored
New in PD4ML Pro 3.2.4
- includes all the recent fixes of v323
- multicolumn page layout
- <fieldset> tag support.
- Fixed bugs:
- padding CSS property is
not applied to
<table>
New in PD4ML Pro 3.2.3fx5
- Fixed bugs:
- the distribution includes
corrupted version of ss_css2.jar
- declaration errors in
pd4ml.tld
- invalid rendering of block
element content if its height is given in percents and
overflow: hidden
style defined
New in PD4ML Pro 3.2.3fx4
- ss_css2.jar is now a part of PD4ML distribution; no extra
downloads needed anymore.
- Some PD4ML "fine-tuning" env switches (pd4ml.sessionid.append,
pd4ml.cache.enable and pd4ml.document.date) can be passed via
setDynamicParams(Map dynamicParams) API call in order to impact only
particular PDF generation process.
- Fixed bugs:
- <pd4ml:page.break> is ignored if
placed between table rows
- PDF documents now shown in MS IE if the documents downloaded by SSL (solved with "Cache-control:
private" HTTP header directive in PD4ML JSP taglib)
- pd4toc="nopagenum"
proprietary attribute of <H1>-<H6> not always correctly
processed by TOC generator
- minor improvements
New in PD4ML Pro 3.2.3fx1
- Fixed bugs:
- Occasional errors by
interpretation of <pd4ml:page.header> and <pd4ml:page.footer>
New in PD4ML Pro 3.2.3
-
HTTP proxy is defined via http.proxyServer and http.proxyPort
environment variables instead of deprecated proxyServer and
proxyPort
- Fixed bugs:
- new line character is not
interpreted as a white space (introduced in v323b8)
New in PD4ML Pro 3.2.3b8
-
minor memory footprint optimization
-
changes in the HTML normalizer module
- Fixed bugs:
- occasional ClassCastException
by rendering of nested tables.
- layouting problem with floats,
whose width is set to 100%
New in PD4ML Pro 3.2.3b4
-
multi-row table headers can be replicated from page to page if the table is
splitted
-
named background image positions (bottom, etc)
-
refined formatting of <pre> sections
-
support of "word-wrap: break-word" CSS property to allow auto line
breaks in preformatted text
-
styles like H6, H5 { pd4ml-bookmark-visibility: hidden } allow to
exclude particular entries from the PDF bookmark list
- Fixed bugs:
- vertical margins of floats if
they defined with 100% of width.
- invalid scale of PDF page
backgrounds
- Default <body> style is
"margin: 8px" now (instead of "padding: 8px")
- occasional invalid scope
attribute interpretation of <pd4ml:page.header>
New in PD4ML Pro 3.2.3b2
-
<textarea> assumes wrap="soft" attribute value by default
-
floats positioning module completely refactored
-
refined "justify" text alignment algorithms
- Fixed bugs:
- <base href="..."> tag is
ignored under particular conditions
- cellpadding of
<table> attribute does not work if table borders are set to collapse
- missing of height or
width attribute can cause image aspect ratio distortion
New in PD4ML Pro 3.2.2
- GUI HTML-to-PDF converting tool (PD4Browser) updated
New in PD4ML Pro 3.2.2b5
- memory footprint optimization
- Fixed bugs:
- small fractional widths like
".5pt" are interpreted as "0"
- table column widths balancing
can fails if there are block elements in the table cells (introduced in
v322b4)
New in PD4ML Pro 3.2.2b4
- pd4fonts.properties can point to remote font directory by
font.dir.location property.
- Fixed bugs:
- line-height absolute
values ignored
- render() ignores
character encoding of InputStreamReader
- ' entity wrong
interpretation
- "display: none" property
can affect neighbor components.
New in PD4ML Pro 3.2.2b2
- skiplast parameter for scope attribute of
<pd4ml:page.header> and <pd4ml:page.footer>.
- Fixed bugs:
- scope attribute value
parsing errors of <pd4ml:page.header> and <pd4ml:page.footer>
- wrong (mirrored) rendering of
headers and footers under special conditions.
- align attrribute of <th>
ignored.
New in PD4ML Pro 3.2.2b1
- Correct cell borders drawing after a table row wrapped to the next page.
- Fixed bugs:
- table-wide cellpadding overrides
cell-specific paddingd if the table has border-collapse: collapse
setting
- invalid table height
calculation if the table combines rows with rowspans and no content.
- multiple minor issues
New in PD4ML Pro 3.2.1
- border-collapse CSS property support
New in PD4ML Pro 3.2.1b4
- CSS property support float: left and float:
right for tables, images and DIVs.
- Fixed bugs:
- Minor text alignment issues
New in PD4ML Pro 3.2.1b2
- CSS property page-break-before: always and page-break-after:
always supported
by the main elements
- Simplified RFC 2397 data source support for <pd4ml:attachment> tag.
- Fixed bugs:
- Invalid interpretation of
complex CSS selectors like "TABLE.style1 > TR:first-child > TD"
New in PD4ML Pro 3.2.1b1
- CSS property word-wrap: break-word supported
- Default vertical block margins calculation refined
- Fixed bugs:
- Invalid percentual font size calculations
- Occasional invalid footer positioning on the first page
- Occasional ignoring of <ol> numbering type properties
- Minor issues
New in PD4ML Pro 3.2.0
- New servlet context resource loader allows to load images by absolute web application paths.
- text-transform CSS property support
- Fixed bugs:
- Occasional table cell background and borders corruption after <pd4ml:page.break pageFormat="..."> tag
- Actual PDF meta data format confuses some third-party PDF tools to count document pages
- Invalid style application to <a> tag
- jsessionid URL suffix is not understandable by some web servers
New in PD4ML Pro 3.2.0b5
- New attribute scope supported by <pd4ml:page.header> and
<pd4ml:page.footer> tags.
- <pd4ml:savefile> JSP custom tag allows to control redirect method
with redirectMethod attribute (as "redirect" or "forward")
New in PD4ML Pro 3.2.0b4
- Supports dynamic placeholders ($[var]) substitution in HTML. pd4ml.setDynamicParams(Map) allows to define the dynamic data.
- Allows to change PDF page format after page break with <pd4ml:page.break pageFormat="rotate">
or <pd4ml:page.break pageFormat="612x792">
- Supports inline overridable page header/footer definitions in HTML: <pd4ml:page.header> ... </pd4ml:page.header> or
<pd4ml:page.footer> ... </pd4ml:page.footer>
- Fixed bugs:
- PD4ML crashes if height attribute specified for HTML table with a single row
- Suppresses a visual appearance of tags start with "<?".
New in PD4ML Pro 3.2.0b2
- Implements Mozilla's table column width balancing algorithm
- Allows to define PDF page background colors and images
- Fixed bugs:
- performance degradation by conversion of huge preformatted blocks of text
New in PD4ML Pro 3.1.0
- Configurable icon types for PDF attachments
New in PD4ML Pro 3.1.0b10
- <meta> tag support.
- Fixed bugs:
- page-break-inside: avoid fails for nested tables
- minor issues
New in PD4ML Pro 3.1.0b7
- Support for rules and frame attributes of <table>
- PDF attachments are supported with new tag <pd4ml:attachment src="" description="">
- Supported local links to block elements by ID. (In previous versions it was possible to address <a name="anchor"> only)
- addStyle() API call allows to add extra stylesheets to be interpreted before or after CSS
defined in <head> section of HTML.
- Fixed bugs:
- Table border / cell border conflict under some circumstances.
- JDK1.6 minor compatibility issues
New in PD4ML Pro 3.1.0b2
- Word wrap in CJK scripts
- Emulation of italic and bold font styles (if missing)
- Fixed bugs:
- ${title} substitution problem in headers and footers.
- Hidden input elements affect page layout.
New in PD4ML Pro 3.0.4 (maintenance release)
- Partial RFC 2397 support
- Fixed bugs:
- Clipping area from one page can be propagated to the subsequent pages under some conditions.
Result: occasional blank regions on the pages.
- Invalid alignments of standalone input elements in table cells.
New in PD4ML Pro 3.0.3
- Fixed bugs:
- Occasional content cut after htmlWidth change
- Two <pd4ml:page.break> tags with no content
in-between corrupt the last PDF page.
New in PD4ML Pro 3.0.3b8
- New API method fitPageVertically() forces PD4ML to put entire HTML content to a single PDF page
- New API method protectPhysicalUnitDimensions() makes PD4ML to output PDF objects respecting dimensions/font sizes given in "in", "pt", "cm" etc. (WARNING: the mode can cause broken layout; see the documentation)
- <pd4ml:page.break> can be conditional with the new attribute "ifSpaceBelowLessThan"
- Fixed bugs:
- JDK1.3: corrupted PDF output if image width or height is
explicitly set to "0"
New in PD4ML Pro 3.0.3b5
- Support for dotted and dashed border styles.
- The default TOC style changed.
- Fixed bugs:
- minor issues
New in PD4ML Pro 3.0.3b2
- New <pd4ml:toc> tag allows to generate table of contents (TOC)
from HTML headings structure (<H1>-<H6>). The tag can be used
in HTML and JSP.
- Support for "page-break-inside: avoid" CSS directive for tables
and table rows.
New in PD4ML Pro 3.0.2
- New API methods:
- adjustHtmlWidth()
- setCookie(name,value)
- setDefaultTTFs(serif,sansserif,monospace)
- Fixed bugs:
- ClassCastException by SSL connections
- minor issues
New in PD4ML Pro 3.0.1
- Fixed bugs:
- NullPointerException after render(InputStreamReader,OutputStream) API call
- minor issues in PNG embedding
New in PD4ML Pro 3.0.0
- Support for JDK 1.3
- Fixed bugs:
- PNG image embedding
- Skip of table cell content if it is shorter as 2 characters (bug of PD4ML Pro 3.0.0b2)
New in PD4ML Pro 3.0.0b2
- Basic right-to-left scripts support added to the new renderer.
- A bug with an ignoring of <pd4ml:page.break> under special conditions is fixed.
- $[var] placeholder format is supported along with ${var}. It is done in order
to avoid notation conflicts with the newest servlet APIs.
- align="justify" accuracy refined.
New in PD4ML Pro 3.0.0b1
- It is a new generation of PD4ML tools based on a custom HTML rendering engine, which is tuned for an efficient and accurate
HTML-to-PDF transformation. See the detailed description
for more info.
New in PD4ML 1.2.8 / Pro 2.1.4
- New tag <pd4ml:savefile> allows to save generated PDFs on the server side. The tag can
optionally forward current HTTP request to another JSP for PDF postprocessing or to the saved PDF file itself
for direct downloads.
- New tag <pd4ml:fix_base_path> allows on-a-fly to replace unsupported absolute resource paths
(ie, "/folder/image.gif") with compatible ones ("../../folder/image.gif" or "http://myserver/folder/image.gif").
The feature solves some of compatibility issues with third-party graphics or chart JSP tag libraries,
that outputs non-customizable image paths.
- New attribute enable of <pd4ml:transform> enables or disables PDF transformation.
The attribute helps to build "dual-purpose" JSPs: to be viewed as HTML or as PDF.
New in PD4ML 1.2.6 / Pro 2.1.2
- Fixed bugs:
- Occasional HTML header/footer output skip. (re)
- Monochrome JPEG embedding problem.
- Minor bugfixing and code optimization.
- Known issues:
- second parameter of useTTF(String pathToFontDirs, boolean embed) has no effect
New in PD4ML 1.2.5 / Pro 2.1.0
- Fixed bugs:
- Occasional ignoring of useAFM attribute value.
- Known issues:
- second parameter of useTTF(String pathToFontDirs, boolean embed) has no effect
New in PD4ML Pro 2.1.0b3
- New utility tag <pd4ml:clean_xhtml> replaces all
occurrences of '/>' with '>'
in order to make JSP output PD4ML-friendly.
- Fixed bugs:
- JDK's fontmanager.dll bug workaround.
- Incorrect cache control for dynamic images.
- Occasional PDF file format corruption if default file.encoding=UTF-8.
- Known issues:
- second parameter of useTTF(String pathToFontDirs, boolean embed) has no effect
New in PD4ML Pro 2.1.0b
- Watermark images support.
- Fixed bugs:
- Occasional header/footer output skip.
- Undesired character encoding conversions in PD4ML taglib.
- Default 3D table borders optically refined.
- Known issues:
- second parameter of useTTF(String pathToFontDirs, boolean embed) has no effect
New in PD4ML Pro 2.0.0
- Page headers and footers can be defined in HTML format (including image references).
- TTF font directories can be addressed by URLs
- A special URL protocol "java:" allows to load TTF fonts from classpath locations (including JARs).
- Scaling of table background images supported.
- Fixed bugs:
- workaround for Adobe Acrobat Reader 7 image transparency interpretation error.
- Known issues:
- second parameter of useTTF(String pathToFontDirs, boolean embed) has no effect
New in PD4ML Pro 2.0.0b
- TTF Font embedding support
- Support for national character sets (with some exceptions)
New in PD4ML 1.2.5b1
- Starting with the version PD4ML Standard, Web and Professional source code branches have been merged.
See release notes for PD4ML Pro 2.1.0b3.
New in PD4ML 1.2.4
- Fixed bugs:
- Default 3D table borders optically refined.
- workaround for Adobe Acrobat Reader 7 image transparency interpretation error.
New in PD4ML 1.2.2
- Optimizes outlines tree structure.
- Fixed bugs:
- Header/footer font definition problem.
- Minor bugfixing and code optimization.
New in PD4ML 1.2.0
- Fixed bugs:
- HTTPS delivery problems to some versions of MS Internet Explorer.
New in PD4ML 1.2.0b2
- Font face and style control for headers and footers.
- Fixed bugs:
- Invalid text alignment in graphical representations of form elements.
- Invalid dash character glyph width in font metrics.
- ServletResponse.resetBuffer() is replaced with ServletResponse.reset() in the taglib
for compatibility with older servlet engines.
New in PD4ML 1.2.0b
- PDF document navigation. PDF outlines (bookmarks) generation mechanism added. Now it is possible to convert to
outlines a list of named anchors (<a name="anchor_id">label</a>) or a headings
structure (<h1>...<h6>).
- Transforming of HTML hyperlinks to PDF hyperlinks (if not explicitely disabled).
Hyperlink jumps within the same document are supported as well.
- Multiline header/footer support.
- Opaque PNG images are embedded to resulting PDFs "as is".
- Debug switch method added to localize image path / document base problems.
- Fixed bugs:
- Image path problems in PD4ML taglib.
New in PD4ML 1.1.0
- JPEG images are embedded to resulting PDFs "as is". In most of cases it reduces the documents size.
- Fixed bugs:
- Incorrect default page fonts if Acrobat Reader's font metrics are used.
- Invalid representation of <LI type=DISC> and <LI type=CIRCLE> in PDF
New in PD4ML 1.1.0b3
- Significant performance improvement for multipage PDF document generation.
- Jrun4 / ColdFusion 6.1 compatibility.
- Fixed bugs:
- Occasional ignoring of header/footer settings.
- Loosing of page content under particular conditions.
New in PD4ML 1.1.0b
- Encryption and permission control added.
- Added rendering possibility using Acrobat Reader's font metrics instead of the ones offered by Java.
That makes PDF rendering more accurate if HTML layout consists of long text strings.
- Struts compatibility workaround implemented.
- New JSP custom tag <pd4ml:permissions> added in order to reflect PD4ML API changes.
- "Umlauts + Russian locale" issue solved.
New in PD4ML 1.0.5
- ${total} placeholder is replaced correctly with total number of pages in page header or footer.
- Header and footer dialog option panels are unlocked in PD4ML Browser / Converter.
- Some minor rendering refinements
New in PD4ML 1.0.5b
- Customizable PDF page header and footer support included.
- PD4ML API allows now to control PDF document properties: document title (allows to override
default value taken from HTML document title), document author.
- interpolate images option is available.
- New JSP custom tags <pd4ml:header> and <pd4ml:footer> added.
- JSP custom tag <pd4ml:transform> reflects to the recent PD4ML API changes.
- Table cell background image bug fixed.
New in PD4ML 1.0.4
PD4ML 1.0.4 is a maintenance release to fix bugs found in release 1.0.2 and 1.0.3
- PD4ML-specific <pd4ml:page.break> tag added (supported in JSP as well as in HTML context)
- JSP Custom tag libraries support added
- Fixes problem with resource sharing in multithread environment
- Other minor bugfixes
Feedback
You can get support by mailing the PD4ML Team directly .
Its easier for us to help you if you include the following information in your
post:
Java Runtime version
PD4ML version
Operating system
Hosting app server (if any)
Source HTML that causes problems
Java Exception stack trace (if any)
Generated PDF file (if can not be shown by PDF Viewer application)
Sales
For PD4ML sales or licensing questions, please email us at:
|