Home > Products > upCast > Support > Release Notes
|
Release Notes
A little bit of history.
|
Known Issues
- An undefined color index in the colortable (e.g. the entry at index 0, yielding the "default color"), must return white for background and black for foreground colors. Currently, it always returns black to the upCast engine.
- Custom export filter implementations are slow when filtering/processing on the CSS style attribute. This will be adressed in a future performance update release.
- The RTF language code to xml:lang value translation table does not include detailed language specifications like en-US or de-AT.
- The 'clear' CSS property is not supported. We're looking into possibilities to support it via some specific heuristics, though feasability cannot be promised.
- Work on XML Schema grammar support has been put on hold.
upCast 5.5.3 (Build 868)
Release Date: 2008-12-14
- Improvements & Changes
- Improve performance of formatting fractional numbers in CSS properties
- Work around a problem with invalid RTF code (using out-of-range control word values) as written e.g. by Adobe Acrobat Exchange-Pro 9.0.0
- Bugfixes
- Update MRJAdapter to fix a problem on Mac OS X with newer Java VM numbering strings
upCast 5.5.2 (Build 865)
Release Date: 2008-10-08
- Improvements & Changes
- @font-search-list in stdfonts.config now picked up correctly for user overrides
upCast 5.5.1 (Build 852)
Release Date: 2008-04-05
- New Features
- New export filter: XHTML (1.0) Transitional, which also records the
start
attribute on ordered lists
- Improvements & Changes
- Updated expiration date of application and bundled evaluation license to December 14, 2008.
- Bugfixes
upCast 5.5.0 (Build 848)
Release Date: 2007-11-15
- New Features
- Improvements & Changes
- Updated expiration date of application and bundled evaluation license to April 9, 2008.
- Bugfixes
upCast 5.5.0 (Build 847)
Release Date: 2007-10-05
- New Features
- Improvements & Changes
- Updated Saxon8-B library
- Now requires Java 1.4.2.
- Bugfixes
- fix bug in list processing where a heading following a list immediately would not be recognized as a heading when it didn't also use the native Word heading styles
- fix bug in list processing where in some specific constellations a "RTFListHelper.syncListLevels(): anchor2 isn't a
LISTITEM" error was issued
upCast 5.4.8 (Build 843)
Release Date: 2007-08-14
- New Features
- Improvements & Changes
- Updated expiration date of application and bundled evaluation license to November 14, 2007.
- Bugfixes
upCast 5.4.7 (Build 842)
Release Date: 2007-07-04
- New Features
- Improvements & Changes
- Updated expiration date of application and bundled evaluation license to September 15, 2007.
- Bugfixes
- support for Hyperlinks with https: protocol URLs
upCast 5.4.6 (Build 829)
Release Date: 2007-04-04
- New Features
- Improvements & Changes
- Updated expiration date of application and bundled evaluation license to August 15, 2007.
- Bugfixes
- fix handling of (sort-of corrupt) font table entries without a font name specified
upCast 5.4.5 (Build 826)
Release Date: 2007-01-03
- New Features
- Improvements & Changes
- Updated expiration date of application and bundled evaluation license to April 1, 2007.
- Bugfixes
upCast 5.4.4 (Build 821)
Release Date: 2006-09-28
- New Features
- [commandline interface] New parameter
abortfilter
. This parameter lets you control which error/warning conditions (as listed here) lead to a failure of the conversion process. The parameter is a string, which describes the conditions. The string is evaluated from left to right, with each action (separated by a space from the next) working on the then current set of conditions. Initially, the set of conditions is empty. If the parameter is not used, it is set to "+fatal +error +warn" by default. The command only works on the current level, i.e. each included commands file must set it explicitly if desired. The following conditions can be set:
- +fatal : Add all "FATAL" codes as failure condition
- +error : Add all "ERROR" codes as failure condition
- +warn : Add all "WARN" codes as failure condition
- -fatal : Remove alls "FATAL" codes from acting as failure condition
- -error : Remove all "ERROR" codes from acting as failure condition
- -warn : Remove all "WARN" codes from acting as failure condition
- +number : Add code number as failure condition
- -number : Remove code number from acting as failure condition
Examples:
-abortfilter "+error -1 -2 -42"
means: abort at all ERROR codes, except for codes 1, 2 and 42.
-abortfilter "+error +58 +96"
means: abort at all ERROR codes, as well as at (warning) codes 58 and 96.
- Improvements & Changes
- When running in API mode, Exceptions are now also thrown on method invocations if they produce warnings. This allows you to handle warnings also. Please make sure to check your code on this, wrap each call into a try{}/catch(){} block and perform appropriate error handling as laid out in the user's manual.
- Updated Windows installers to work also on Windows 2003.
- Bugfixes
- [DocBook] If the last <par> did not have a class attribute, it was dropped completely from the result.
- Lists generated using the \listsimple RTF flag now handled properly with correct numbering
- Undo RTF parsing code change from build 774 to work around bug in MS Word RTF code generation with respect to CR/LF handling. Mind that the scenario described in build 774 will fail again, but we haven't been able to create the described code sequence in any of the versions of Word at our disposal.
- Fix handling of \; RTF code sequence
upCast 5.4.3 (Build 807)
Release Date: 2006-05-29
- New Features
- Added new option "Repeat class CSS properties on inline element" to XML Raw export filter. Needed for
easier XSL-FO generation. Default is off to remain compatible with existing stylesheets.
- Improvements & Changes
- Show DLL version (if installed) even when WordLink is not active
- Change license file handling and binary distribution as follows:
1. Every jar contains an evaluation license for each product bundled, named "downcast-eval.license"
resp. "upcast-eval.license". This is a standard evaluation license with random character replacements. It
is reasonably time-bombed, i.e. has an expiration date by which there definitely will be a new release.
2. On startup, the license manager looks for external licenses. If it finds at least one, it does not offer
the internal evaluation license as choice. (It does, however, offer a jar-bundled "upcast.license" or
"downcast.license", if a user packaged it there!).
3. All evaluation licenses show the character replacement warning dialog on startup.
To use these licenses from the API, use:
downCast:
DowncastEngine.setLicense( "jar:file:!/de/infinityloop/downcast/resources/licenses/downcast-
eval.license" );
upCast:
UpcastEngine.setLicense( "jar:file:!/de/infinityloop/upcast/resources/licenses/upcast-eval.license" );
- Update saxon to version 8.7.
- Do not try to load MSVB5 DLL, but rely on CreateProcess failing. We may not be able to load the library
in an application server environment, but still be able to use it.
- Bugfixes
- <part>/@page margin values are not written when they are <=0, so in these cases the Word defaults
are used, which is wrong as the margins are then way too far inset.
- mailto:-URLs not handled correctly when generating xlink:href attribute content: mailto: is stripped, @
is quoted (though the latter is harmless). We now support all URL protocols the JRE supports.
- HTML namespace not available correctly for XSLT in XML Raw export filter.
- XHTML: cells containing only an image are considered empty from the point of view of the "Allow empty
cells" parameter.
- XHTML export filter: the filler for empty cells, " ", when "Allow empty cells" is false, is not passed
through Unicode Translation map in effect.
- XHTML: some attribute values (e.g. ins, del) not quoted correctly in all cases.
upCast 5.4.2 (Build 774)
Release Date: 2006-01-25
- New Features
- Improvements & Changes
- Bugfixes
- Carriage returns were not handled correctly in all situations. Code like "\xfe<cr>12" was not treated as "\xfe12", but as "\xfe 12", which is wrong.
- The stdfonts.config table has no effect in certain situations. Determining the encoding for a character run often reverted to the document's default encoding
instead of the font's specified encoding.
- Nested lists restarting numbering by default were not exported correctly, but the item numbering was
explicitly continued at the next nested list of same level within one complete list group.
- Fixed issue where some subsequent list would continue numbering from previous list.
- We did not handle all possible list format override values.
-
Relative URLs with fragment identifier or parameter part get quoted incorrectly when converting them
to an URL.
Any absolute URL with fragment identifier and/or parameter section loses these parts when being
passed through DiskFile, i.e. all absolute links in documents lose these components on their way
through upCast.
upCast 5.4.1 (Build 764)
Release Date: 2005-12-22
- New Features
- **EXPERMIENTAL** Implement a flag based, selective debugging system to restrict debugging output to the minimal info
required for debugging a certain issue. Implemented as follows:
1. "de.infinityloop.debug" turns on/off debugging as usual.
2. "de.infinityloop.debug.mask" sets a bitmask for selecting output log messages. The meaning of the
contained bits are described in de.infinityloop.common.Constants (near the end).
3. You must set the value of the "de.infinityloop.debug.mask" property at startup to the ORed bitmask
of all the flags you are interested in. A debug message is only output if all of its flags are also set in the
mask.
Examples:
(1) To enable all debug messages, use: -Dde.infinityloop.debug.mask=FFFFFFFF
(2) To only see file related debugging, use: -Dde.infinityloop.debug.mask=20
(3) To see all system, file and startup messages along with tracing information, use (40+20+800+8): -Dde.infinityloop.debug.mask=868
A suitable setting for watching upCast times over a document without the really big fuzz, use: -Dde.infinityloop.debug.mask=48EB
The default mask when not set is FFFFFFFF, i.e. the full debugging info is output (behaviour like earlier versions). There is no way to set the mask programmatically from within an application, and it can only be set at startup time using the specified system property. It remains in effect for the whole session. This is a core implementation, so it is usable from both, upCast and downCast.
- add a benchmarking feature to test speed of machine we're running on (for infinity-loop product support incidents). Added as: de.infinityloop.util.Utility.benchmark( int repetitions )
You can invoke benchmarking by:
java -jar upcast.jar benchmarkN
java -jar downcast.jar benchmarkN
where N is a decimal number indicating how often the benchmark loop should be executed.
Added also # of processors, free, total and max memory figures to System Info window and benchmark
output.
- Support added for ZERO-WIDTH NO-JOINER and ZERO-WIDTH JOINER, as used e.g. in Farsi (Persian).
- Improvements & Changes
- Added also # of processors, free, total and max memory figures to System Info window and benchmark output.
- Improve error message when license without API feature is used.
- Pre-setting debug mode with value of de.infinityloop.debug property, if specified, when instantiating an
UpcastEngine (or DowncastEngine) object.
- Setting de.infinityloop.application.log4j.configuration to an absolute path to a log4j.properties file lets
you override the default configuration file embedded in upcast.jar (downcast.jar).
- Implement workaround for Log4j bug with file:-URLs on Windows. File URLs of the form "file:///C:/..."
are interpreted incorrectly as native paths.
- Bugfixes
- When there is no license supplied an error is raised when installing the VBA components since no valid
value for the license location can be written into the windows registry.
- The property "de.infinityloop.debug" is not recognized when passed in from external. It had been inadvertently named "de.infinityloop.application.debug" internally in the last release this has been fixed.
- NPE possible when running in Xerces1 compatibility mode.
- UpcastEngine.exportStream() throws a NPE.
- XSLT export filter: log always says "scrambled XSLT", though it in fact is not scrambled.
- The <pagebreak/> element was created at invalid document positions in some very rare situations (like
two invisible forced pagebreaks at the very beginning of the first cell of a table)
- Certain symbol sequences expressing index targets made upCast repeat the index term in plain text at
the target's location.
upCast 5.4.0 (GM - Build 731)
Release Date: 2005-11-24
- New Features
-
Implemented on sections (i.e. upCast DTD parts) these new CSS properties:
-ilx-page-numbering-start
: <integer>; /* default == 1 */
-ilx-page-numbering-mode
: continue | restart
-ilx-page-numbering-style
: decimal | lower-alpha | upper-alpha | lower-roman | upper-roman
(Also added support code to downCast for roundtripping.)
- New class:
de.infinityloop.util.PathConverter
: convert to and from URLs and local file paths via commandline.
-
Add a method to the API which lets you determine licensing status, product version, WordLink status
etc. programmatically during runtime: getEnvironmentValue().
- Added possibility to be able to set the log file explicitly using "de.infinityloop.application.logfile"
property. log4j.properties has been changed accordingly, de.infinityloop.application.logdir.log4j is no longer
supported.
- Add static logging convenience methods to class de.infinityloop.common.Global
- Improvements & Changes
-
We changed the conversion and handling of UNC paths with respect to their encoding in URLs. A UNC
path of
\\SERVER\SHARE\FILE
will be encoded in URL format as file:////SERVER/SHARE/FILE
.
- UpcastEngine: wrong parameter name in sample code, should be "OrigNumbering".
- Remove description of @writesymbolfield (Manual) since it is not actually supported.
- Add application name indication to "APPLICATION LAUNCH" log message.
-
Expose PathConverter.convertFilename() to the public API.
- Added support for Borders and Shading for parts. Implemented as part of @page-rules.
- Export -ilx-text-visibility property to CSS (for hidden text in Word when defined as part of the style)
- The "value" attribute defined on the <inline> element is actually never used in upCast nor
downCast and was therefore removed from the upCast DTD.
- Update upCast DTD to include the <literal /> element used by downCast
- Update Xalan to 2.7.0 and Xerces to 2.7.1
- Decoding incorrect URLs that have hi-ASCII characters improved
- Update Saxon to version 8.6.1
-
Though you can create different loggers with a LoggerDelegateConsole, this class does not hold and
implement a logger hierarchy as Log4j delegates do. Therefore, setting the logging level on this class is now global to all loggers outputting to LoggerDelegateConsole (existing and newly created).
- XSLT processing functions in de.infinityloop.util.markup.XMLTools did not support input/output from/to Reader/Writer classes, but only streams or system IDs. This has been added.
-
Created two new XSLT extension functions:
ilext:localToURL( String )
, ilext:URLToLocal( String )
to
convert to and from URL <-> local paths.
Package+class: de.infinityloop.util.xslt.ExtensionFunctions
- Bugfixes
- An RTF SYMBOL field not specifying a font name throws a NPE at import. Now, we use the current font if
none has been specified, or the default font, if there is no current font, of "Times" if that doesn't exist,
either.
- Specifying a fractional font width (e.g. "\s 10.5") in an RTF SYMBOL field throws a number format
exception.
- List heuristics did not work for lists following immediately another list with greater indent.
- UpcastCmdline.doIt() can only be called once onthe same instance of an UpcastCmdline object.
Subsequent calls fail with parameter errors.
-
A character border setting of \brdrnone incorrectly results in black solid border properties to be
output.
- When exporting tables in CALS format, in some specific table configurations the rowsep/colsep values
are not correct
- When an image is included and linked using INCLUDEPICTURE, i.e. the image is to be found in the field
result, two image elements were created, one linking, one referencing the exported embedded image. Now, only the link is written (observing the embed-over-link preference)
- link elements that have an empty URL cause a NPE at export
- A SYMBOL field in a document specifying a font that is not in the document's font table may lead to a
CSS parser error during document export.
- UpcastCmdlineWithConfig issues "initialize Log4J system properly..." error.
- The handling of some more complex field constructs (nested fields in a table cell) was broken. We also do only write the field result value of fields part of
an outer field result.
- Turning "Remove empty inlines" in the RTF import configuration off breaks the minimization of inline
runs.
- The 'left' property is not exported when a textbox is placed absolutely on a page (with page as
reference frame).
- Rendering WMF text sometimes logs a warning about unknown encoding/codepgae -1 and
that it defaults to CP 1252.
- The 'left' property is not exported when an image is placed absolutely on a page (with page as
reference frame).
- Some images are no longer exported that have a construction of {\*\shppict{\pict{\*\picprop ... } ... } }.
- upCast created an invalid HTML table by creating an empty table row in
the output in some rare situations
- On part elements, the proprietary CSS properties for controlling footnote and endnote positioning
overrides are not exported when using the XML (upCast DTD) export filter.
- REF fields' targets that are enclosed in quotes should get unquoted if they do not contain whitespace.
This prevents unnecessary name mangling when putting them as ID type values into the xlink:href
attributes of <reference> elements.
- INCLUDEPICTURE images, i.e. linked-only images, have no size specified in the RTF document. Because
the size of a previous image with size (e.g. an embedded image) was not cleared when entering an
INCLUDEPICTURE field, that picture inherited the size of the previous image.
- Decoding URLs that incorrectly have hi-ASCII characters will replace them with a U+FFFD character
(invalid character) in the decoded String. This is undesirable since Word produces incorrect URLs e.g. in
INCLUDEPICTURE fields when the path contains umlauts.
- Some http:// URLs were not handled correctly when running upCast on Windows systems
- Setting the logfile explicitly using
de.infinityloop.application.logfile
did not work when running in GUI mode
- Text rendering sometimes logs a warning about unknown encoding -1
-
Some images were not exported
- Incorrect table handling - creates table row with no cell
- Need to quote '>' again in content to prevent "]]> in text" case
- The 'rawtarget' attributes in XML (Raw) export filter should not be processed for ID-compatibility, since
this might mean that some invalid characters get replaced by '-'. This defeats this attribute's usefulness
in XSLT, e.g. for comparisons.
- XSLT output is written in platform encoding (instead of UTF-8) when using Reader/Writer.
upCast 5.3.2 (Build 617)
Release Date: 2005-07-04
- New Features
- Support writing the
-ilx-style-update
property based on the \linkstyles symbol found in the document
- Improvements & Changes
- Completely rewritten and re-designed handling of encodings, fonts and Unicode translations
- The value resolution for font size has been increased from 1pt to 0.5pt, matching RTF's (i.e. Word's) internal resolution.
- Bugfixes
- Literal pass-through-styles would only work at the first respective occurrence
- Tables that do not have a flush left margin (which is possible to create with some effort in Word, but does not fit any supported output table model of upCast) may lose content/columns without warning.
- Borders around a paragraph immediately preceding a table might be wrong and take on the table's first row and/or cell settings.
upCast 5.3.1 (Build 591)
Release Date: 2005-05-23
- New Features
- Improvements & Changes
- Bugfixes
- Non-ASCII character escaping in CSS strings did not include a separation space for escape sequences shorter than 6 characters
- The way how upCast internally kept track of list item counters was not correct for all list constructs.
- WordLink did not automatically convert .doc files on Czech (and possibly other) systems using certain Java default text encodings for text files.
upCast 5.3.0 (GM - Build 578)
Release Date: 2005-05-15
- New Features
- Default log output now also includes thread/object identifier, so when running two instances in different threads that merge their log output, you should be able to tell which thread created which log entry. For this to work as expected you should pass a unique instanceIDUser String to the UpcastEngine creator.
- On importing, upCast detects whether the table was created with automatic sizing ('auto') or fixed column widths, cropping contents if necessary ('fixed') and exports this info using CSS' table-layout property.
- All API calls now throw a single type of Exception, a ILException. This exception has several accessor methods, which lets you navigate through a list of errors and/or warnings that occurred during the API function call. You can then decide based on the error codes and severity of the entries whether you need to stop further processing and reject the document, or the problems are not significant enough for completely cancelling processing and you want to try processding further. Please see API docs and the de.infinityloop.msg.Msg class for descriptions of the possible error codes and their severity.
- Added inline Unicode Translation Map support to the XML Raw export filter. Note that this implementation has the following technical limitations: A single replacement can either be a single character, a sechence of non-markup CDATA, or a well-formed Document fragment. You cannot spread opening/closing tags over two different characters, since the translator needs to immediately modify the internal DOM tree (on which a subsequent XSLT operates) for each character it sees - ans *as* its sees it.
- Improvements & Changes
- Improved handling of forced page breaks by introducing a new option "Use CSS page-break-before property": When active, page breaks are put on the respective paragraph by way of a "page-break-before: alyways" property. When inactive, we now always move the element before the following paragraph (until now, it was the first element within the paragraph). Page breaks that occur not at the beginning of a paragraph are converted to inline elements by default, but you may override this behaviour by providing an appropriate Unicode translation map mapping for the 0x0C character.
- The VMs on Linux and Windows do not render a hairline (line with width=0) at all, whereas Apple's JVM implementation on Mac OS X (1.4.x) does render it correctly. We now use a minimum width > 0 for any hairlines in WMFs that have a specified width of 0.
- Custom Export filters need to be able to handle a pagebreak element in their callbacks. Until now, this was automatically created/handled by any Unicode Translation Map that was in effect in the characters() callback.
- Support has improved for positioned paragraphs; we write the height with a min-height CSS property, if necessary, and also emit top and left CSS properties on the floating paragraphs. For CSS compatible systems, these do not have any effect; for downCast, it specifies a displacement of the floating box from the specified floating position (left, right).
- Tab characters now serialized as numerical entity "	" also in #PCDATA content
- We now set the endnote marker style to the default lower-roman setting.
- The behaviour of the "Apply list heuristics" switch has been changed. Whereas until now, this had only
an effect on paragraphs that had a marker (but the heuristics for subsequent non-markered paragraphs
for in/exclusion into the same list item were still applied), this is now no longer the case. Any non-markered paragraph will end any open list without exception.
- Setting 'mm' unit precision from 1 to 2 for CSS to prevent loss of significant digits, which shows when
converting the value to twips. This lead to annoying style overrides because the respective value was off
by 1 or 2 twips and was therefore considered an overriding style change. Changed
cssunits.map
accordingly.
- Bugfixes
- Manual overrides (i.e., switching off or setting to 0) of style properties defined in a named style in some local text paragraph were not rendered to CSS. Properties include padding and border styling/color/width.
- A pagebreak before e.g. a heading is now pulled up before the section that heading introduces to put the pagebreak at the logically correct place.
- Progress bar stayed open when unrecoverable error during RTF import occurred.
- The -ilx-footnote-marker CSS property was not set to "suppress" on CSS export for endnote elements, therefore showing double-numbering endnote elements when the document was converted back to RTF using downCast.
- The element was sometimes output at a wrong position in the document, if there was exactly one paragraph between it and a preceding
.
- OLE data was copied to the document as base64-encoded data in the XHTML export filter.
- A heading was sometimes not recognized as such in a rare occasion where a closing bookmark followed immediately the opening of a section.
- Hoisting did not work for properties whose serialization depended on their style type.
- After the closing of a textbox element, a superfluous linefeed was written, resulting in a whitespace character when read later by an XML parser.
- In some situations, "remove empty inlines" on the RTF 1.6 import filter removes inlines that are not empty.
- Complex nested lists in tables were not translated correctly into fully fledged nested list structures.
- Embedded objects could lead to wrong results in the following document structure.
- In some cases, document header/footer blocks were not closed at the desired position, eventually containing the complete document content.
- When a heading receives numbering style overrides compared to its style definitions, these do not get output in XML (upCast DTD)+Layout setting.
- Manual text outline level information overrides were not detected by the sectioner. Now, we use the level information from the current style.
- Custom document properties of type 'date' were not recognized due to a bug in the RTF specification. They were written as having type "undefined".
- Explicitly defeating the raising or lowering of text in text run not working: no defeating element was written (vertical-align: baseline).
- Hidden text defined in a character style not rendered as element
- Table rows got a "height" of '0mm' when no height was explicitly set
- Documents that had inline shapes by using {\pict {\picprop ... } } only caused upCast to throw an error message. It seems that such code cannot be created manually via Word's UI, at least we weren't able to have Word 2000 produce new code that has this special construct. Since upCast does not support any kind of drawing objects or shapes other than images, we now skip shapeTypes different than 75, 'image'. In these cases, a warning is written into the log file.
- Adding a catalog via the API does not check if it already is registered. This leads to a constantly
growing list of registered catalogs if not manually cleared. Since manually clearing the static list is not
an option when running concurrent conversions, addCatalog() now checks whether the catalog is
already registered and only adds it, if it is not.
- The value of -ilx-list-group property sometimes was incorrect, mangling lists.
- To be able to discriminate literal { } braces in field statements from braces indicating field nesting, at
export we escape literal braces. Implement counterpart in downCast to resolve this properly.
- List markers do not get correct font/font at all
-
"current license file" in "System Information" not displayed correctly if license is read from jar file (or read
from a stream).
- Fix some rounding errors in image size calculations.
-
To recreate a document correctly with downCast, it is essential that the stylesheet's styles carry the
language they use.
To recreate a document correctly with downCast, it is essential that the stylesheet's styles carry the
language they use.
- A TOC's first entry takes on the previous <par>'s class when only separated by a \par symbol.
Additionally, the first paragraph after a TOC field takes on the last TOC <par>'s class.
This is only with downCast generated files.
-
\ul0 does not reliably turn underlining off when used in an underline-run defined by a surrounding
character style.
upCast 5.2.4 (Build 509)
Release Date: 2005-02-20
- New Features
- Improvements & Changes
- [DocBook] Add heuristical calculation of an <entry>'s
align
attribute from the element's contents.
- Bugfixes
- A floating textbox' logical position yould be incorrect in some situations (e.g. when anchored to an empty paragraph after a table: it would be moved before the table).
- Regardless of the setting in the RTF Import filter configuration for "Include original numbering info", the info was not present in the resulting document.
upCast 5.2.3 (Build 503)
Release Date: 2005-01-05
- New Features
- Support for inline CSS stylesheets in upCast DTD conforming XML source files. See the upCast DTD for the element location.
- Improvements & Changes
- [DocBook] Add alternative text representation of images as <textobject> within a <mediaobject>.
- Embedded objects are now serialized to XML in a different fashion. There is no longer a choice between either base64-embedding the binary data or writing the result as image, but the various representations are wrapped by the new <object> element, which can contain both, an <ole> object with the binary data in base64 format and an <image> element. To enable one representation or the other or both, you check the appropriate boxes in the RTF Import Filter's new Object tab.
The API parameter name is ObjectHandling
of type java.lang.String
, with any of the following values (separated by whitespace, if both are specified): embed
, image
.
Important: If you are using OLE objects and are post-processing them using XSLT, you need to adapt existing processing sheets appropriately. To access the binary base64 data, you must select the "object/ole
" object (formerly: "object
"). See the upCast DTD for the updated document content model.
- Bugfixes
- [XHTML]
<indextarget>
results are delayed too long: They need to be written immediately when already in an inline and may not be delayed until the next explicit inline.
- Infinite loop (no pun intended...) when reading an RTF style definition that specifies that it is
\basedon
itself.
- Properties from a textbox were "back-inherited" to the previous image object.
- "Remove empty elements" wrongly removes list item elements from lists that have an empty paragraph as content.
- InputProxy.getCharacterStream() required an underlying byte stream, which does not exist when you instantiate an InputProxy with a character stream already.
- Background color for inlines is not calculated correctly when shading and pattern values are involved.
- The size of the checkbox is not preserved on the element.
- On <formdropdown> elements, the hasListbox flag was not created.
- Starting a bookmark in a field description drops the bookmark and therefore the <target> tag. However, Word sometimes writes the end of the bookmark outside the field destination, so upCast generates an <endtarget> element. Since the id attribute of that element is of type IDREF, but there is no element with the corresponding ID attribute, document validation fails.
- Some table properties (e.g. cell padding) were inherited from a previous table if not set explicitly on a new one.
- Block-level local overrides (e.g. margin, line-height, padding...) are not preserved in the style attribute on the block level element (only inline-level attributes get hoisted). Add support for block-level attribute delta-ing.
- attributes in XML export that had a tab character in them (like often
numberingtext
does) had both, the correct tab quote 	
and the tab character itself in the output, with the latter being converted to one whitespace character during read.
upCast 5.2.1 (Build 377)
Release Date: 2004-08-19
- New Features
- Support the \o option in the HYPERLINK field to include also a link's title attribute (QuickInfo).
- [CSS] Support writing the next applied style after hitting return in Word using custom property "-ilx-following-style: <name-of-style>;" to match downCast support.
- Support \t option for index entries (\xe) via an <indextarget> child element named "see". Styling is supported.
- Improvements & Changes
- Bugfixes
- Some {\stylesheet ... } RTF constructions generated by other RTF writers than Word were not handled correctly. We now also differentiate between Paragraph and Character styles having the same internal number.
- Spurious border property keywords were attributed to the left border. Now, they are (correctly) ignored, resolving an issue with a "border-left-style: none" override CSS property showing on downCast generated RTF files.
- [XML Raw] <linebreak>, <columnbreak> and <pagebreak> elements did not have a namespace prefix when namespacing of upCast DTD elements was turned on.
- URL specified sources for the XSLT processor get their parameter-indicating '?' quoted. This should not happen.
upCast 5.2.0 (Build 284)
Release Date: 2004-07-29
- New Features
- New WordLink feature "Update linked images", which lets you retrieve any scalings done on the original, linked image within Word (only available for .doc files).
- New Post-processing filter: "Unicode Translator". This lets you change the document encoding of arbitrary XML documents (equivalent of XSLT's xsl:output/@encoding attribute) and map any incoming text/attribute character to an arbitrary, literal string by way of upCast's Unicode Translation Maps (similar to XSLT2's Character Maps functionality).
- Saxon 8 support (XSLT2 draft) added on JVMs 1.4 or later. You can now choose between Xalan and Saxon in XSLT (Raw) and XSLT Processor export filters.
- Improvements & Changes
- [**IMPORTANT CHANGE**] Completely reworked variable resolution system - see manual. Configurations written with earlier versions need to be checked for occurrences of %x shortcuts and need to be replaced by the corresponding upCast dynamic variables expressions ${il:xxx}.
This should make quoting easier as now, the same parameter values are used in BCF files and the GUI.
- EULA now only available in English.
- Show random characters in text content warning also when first loading the license and in the About dialog.
- After installing VBA components at first launch, a result information dialog is displayed.
- INCLUDEPICTURE fields may contain both, URLs and local paths. Detection of which form is present has been significantly improved.
- [DocBook] By setting the XSLT parameter omitDefaultRole="true", you can suppress the role attribute for paragraphs with class "Normal" and inline elements with class "Default Paragraph Font". By default, this is false for compatibility reasons.
- Work around a cell background color issue with Word XP not saving standard cell background properties, but only table style cell background properties under some circumstances.
- Add user filter name to log messages for export filters.
- [XML Raw] Fixed linebreaks are again output as <linebreak /> elements, since it is relatively easy to replace them by 0xa character where needed, but impossible to guess where to re-generate a linebreak element in some later step.
- Bugfixes
- WordLink configuration tab was shown also on non-Windows systems.
- (Hopefully) worked around a problem with WordLink on some specific installations. After upgrading, make sure you execute Extras > Install WordLink... once if you intend to use WordLink.
- Native look and feel set too late in startup sequence.
- Second and later filters in the export filters list did not have a value for the width and height attribute of images.
- The "DefaultFontSize" parameter did not have any effect.
- [XML Raw] The rawtarget attribute for <link> elements in the XML (Raw) export filter was encoded as an ID even when it was an external URL. Now, we only change it into a valid string of type ID when it is a document-internal link so you can match it against the target node's ID attribute using string comparison functions.
- [XML Raw] The source attribute on <reference> and <image> did contain URL quoting of the path. Now, only the xlink:href attribute contains the path in URL notation, source contains the original format (e.g. native).
- Removed superfluous warning "For input string: "..." in isHeadingStyle(...)" in the log file.
- Old-style Macintosh relative paths were not handled correctly (moving out one directory level too much).
- Remove a superfluous instance of the list-style-type attribute for a plain paragraph when the RTF document uses a \pnlvlcont construction.
- Fixed a cause for the error message "Severe programming logic error..." in handling tables.
- [Mac OS X] When using import filter setting "None", the source file selector dialog would not allow to choose any other files than .xml .
- Fixed several bugs with regard to absolute/relative file paths and URL handling.
upCast 5.1.0 (Build 187)
Release Date: 2004-06-24
- New Features
- Add support for endnotes via the <endnote> element.
- WordLink functionality now customizable via RTF import filter's config dialog
- Improvements & Changes
- [API] Add debug log entry for discardCatalogs().
- [API] Add methods to add catalog files to the system programmatically.
- Fixed several bugs and made some improvements in the DocBook 4.2 export filter.
- Improved workaround for invalid RTF code for character style application in document text written by OpenOffice (at least in some versions).
- Bugfixes
- Some specific FORMTEXT field definitions aborted conversion process.
- Custom Encodings not found/loaded on Windows and Linux platforms.
- Installing VBA components did not query for Windows' system resp. DLL directory.
- Left and right margin values on table cells were set to default values of 1.2mm if no values are specified in RTF, which - however - means 0mm.
- \shpinst-included, i.e. linked (solely!) images do not show up in the result.
- For images, the -ilx-image-source property was not emitted, so you could not determine if an image was embedded in the original document or just linked in.
- [API] When exporting to stream, the CustomStylesheetPI parameter had no effect when CSSRef was not set.
- GridBase.remove() would not remove the desired item, screwing up some places in upCast like table calculation for very weirdly constructed RTF tables.
- Fixed bug in table calculation for tables that contain zero-width columns (generated by Word XP, e.g.).
- When "Include Visual" is off, the width and height attributes of images contain an inch value, though no dimension is specified.
- Due to an <endtarget> (i.e., \bkmkend) AFTER the ending \par in a list item, a list was broken up into two and the first following list item is not recognized as such.
- Hyperlinks with https:// protocol are incorrectly quoted in the resulting XML file.
- Fragment identifier identification character '#' in URLs of <link> elements was quoted where it should have not been.
- Sometimes, the section nesting structure was not correctly recognized.
- Fixed a crasher that happened in documents with this exact combination: A list followed immediately by a table whose first cell contents starts with a list and where directly after the table follows a section break.
- [XML (Raw)] Specifying an XSLT in the export filter would issue a "Stream closed" error.
- When updating an installation of upCast, any specified custom catalog file was reset to the updated upCast DTD's default catalog.
- Error reporting for an unsuccessful WordLink operation did not work in both, GUI and API.
- In a quite obscure case, it would be possible that a list item's paragraph would be split into two at insertion of an object (e.g. image, index entry etc.). Note that upCast now only recognizes the {\pntext ... } destination to build a numbered paragraph (i.e. a list item) start, but no longer handles the {\pn ... } destination as such.
- Outdented tables (=negative margin-left) had a negative cell width for the first cell in a row.
upCast 5.0.0 (Build 10)
Release Date: 2004-03-30
- New Features
- Improvements & Changes
- Bugfixes
- Black underlined text might generate "property 'color' not found" error message in some instances.
upCast 5.0.0 GM (Build 9)
Release Date: 2004-03-30
- New Features
- Add command to only update the DTD files, but not any (possibly user-edited) installed catalog file.
- Support column information within <part>s using (custom-prefixed) CSS3 draft properties column-xxx.
- Include support for letter-spacing property.
- Add support for Word's \highlight symbol as follows: <highlight color="#ABCDEF">...</highlight>.
- New DocBook 4.2 export filter
- New XML (Raw) export filter to easily process documents with XSLT (CSS properties resolved into easily accessible attributes on elements
- Vastly improved and rewritten handling of images: WMF, PNG, JPEG images with/without specified sizes, rewriting images to include dpi information to have reliably display sizes in later processing steps
- Support for embedded binary objects by embedding the data as base64-encoded content in the XML (converts back e.g. using downCast)
- Custom Font Encodings
- new <endtarget> element to identify also non-properly nesting regions in exported documents
- Custom export filter API: Many previously internal utility fucntions now documented and freely accessible from external Java code
- Add support for additional 'text-decoration' values: ilx-shadow, ilx-emboss, ilx-engrave, ilx-outline.
- Add 'description' (XHTML export: 'alt') attribute support to <image> (Word 2003 generated RTF only).
- Improvements & Changes
- In progress bar window, show local file path (not: file:// URL).
- Add attributes width and height to the image element, and use an absolute length for width and height properties in the CSS style attribute.
- Process any <pagebreak> element that is the first "character" of a paragraph-level element in a way that it is removed from its location, but added a "page-break-before: always" property on the corresponding paragraph-level element.
- "Remove empty elements" no longer removes an empty heading element if it has a parent <section> element and it is the latter's first child.
- Changed calculations in WMF Renderer from float to double precision.
- Move local DTD into subfolder of app support folder.
- Use relative paths in default catalog file so the folder is moveable easily.
- Changed behaviour for empty headings: When there is an empty heading, we generate section nesting if the preceding paragraph is NOT a heading of the same level with content. This means that essentially every first heading of a heading sequence of the same level in document order will generate section nesting, even if it is empty.
Introducing "GroupEmptyHeadings" parameter: When this is set to true, EVERY heading (empty or not) will create the appropiate section nesting, specifically subsequent empty headings will each generate section nesting.
- Added workaround code to also cope with Xerces 1.x libraries present in the classpath.
- upCast icon on main window looks bad.
- Make "Close" the default button in the error notification dialog after performing a conversion.
- improved GUI and dialog layout, especially import filter parameters
- many previously "hidden" parameters now available via GUI
- Open/Save file paths are now remembered for the various locations, even across application sessions.
- Bugfixes
- Sometimes, border definitions on images were not picked up by the CSS styles.
- Wrong search location was added for support files, yielding entry "adding nullupCast DTD V4.1 to search directories" in log file.
- XML (Raw) export filter: output file not closed explicitly, therefore holding a lock on it until next garbage collection unnecessarily.
- Crash when reading document with buggy list information (pre-Word 97 list formatting or invalid ls-index)
- Suppress debug output "Cannot find CatalogManager.properties".
- The URL to the stylesheet in the XML <?xml-stylesheet ...?> link is not correctly encoded (e.g. spaces should get %20 etc.); similar case in XHTML export filter.
- Font properties for fonts "Symbol", "Wingdings" and "Zapf Dingbats" could not be overridden by stdfonts.config entries.
- Marker positioning and marker follow properties were wrong for "compact" lists, i.e. lists where the marker is not outdented to the left.
- IDs in DocBook elements could have invalid characters for values of type ID.
- numberingtext attribute contents on <item> element was wrong sometimes.
- Several bugs in recognizing and outputting of complex list formatting.
- Wrong RTF block nesting calculation when encountering an (illegal) nested index entry definition.
- <endtarget> shows before corresponding <target>, when immediately following in RTF code.
- Collecting meta-info text did not work in several destinations (e.g. bookmark names) when it was written using Unicode + replacement construction.
- Margins of facing pages not recognized/converted correctly.
- 'text-indent' was limited to a minimum of 0 when using a hanging indent that goes left beyond the document's basic left margin (why??). It should be negative, so the limiting code was removed.
- \upr destination (Unicode alternate representation) not handled correctly in several places
- Decoding of URLs with two subsequent hex-replacement-quotings returned garbage.
- On inline optimization, children of inline elements were accidentally reversed in their order when constructing the optimized tree.
- An empty paragraph at the beginning of a document or section sometimes gets discarded.
- After a closing </pageheader> or </pagefooter>, we may not write pretty-printing indentation because theose elements may show up in mixed-content model elements.
- For some documents, the XHTML export filter reports a nesting mismatch.
- Inline-style processing task sometimes prematurely cancelled.
- Collected bookmarks before footnotes were placed into the <gentext> element for the automatically generated footnote number. They need to be delayed until later into the footnote.
- Help file path for built-in help file was not correctly calculated -> Help did not work.
- Shading values in backgrounds are not interpreted correctly in some situations.
- 'vertical-align' may never be hoisted from inlines to <par> element. (See CSS2.1 spec.)
- A \lang1024 setting was interpreted wrong: It does not set a new language, but inhibits spell-checking. We now discard this keyword and only record \langnp (if present).
- Support output resolution for images in export filter settings.
- Add support for {\*\docvar } destination.
- Map list group IDs from high numbers to small ones so that rounding in downCast's CSS parser does not invalidate their ID-like nature due to rounding errors when converting long > float > long.
- A non-spanning bookmark at the start of a heading breaks heading detection (and therefore nesting structure detection).
- <gentext> elements that encompass a whole paragraph or start a paragraph get dropped from the output, when their {\fldresult } destination is empty.
- The default page size was not respected correctly as described in the RTF spec.
- \up and \dn are not treated correctly when no explicit value is specified. Now, we use the documented default of 6 half-points.
- \dn and \up incorrectly interpreted the shift value specified as twips. Now, it's half-points.
- A list in a footnote creates a processing error.
- Some documents throw exception at the very end.
- upCast DTD ambiguous and faulty; showed e.g. in Near&Far designer
- CALS tables: "colsep" attribute wrong for some specific border settings.
- 'text-underline-color' not written correctly when not explictly specified, but dependent on the text color.
- Two-byte font names were not correctly escaped in the 'font-family' property name.
- Table cells with no explicitly specified background color got an opaque white background instead of leaving out the property for the default value of transparent.
- Several underline styles (thick variant and wavy) were not detected and output correctly.
- When an index entry definition does not specify a non-zero-length index entry text, and <indexentry> with no entryLevelx attribute is generated, which in turn makes the XHTML export filter fail.
upCast 4.0.2 (Build 7)
Release Date: 2003-11-24
- Bugfixes
- [API] Some documents did not import in the API version that did in the GUI.
- [XSLT] Applied Patch to internal XSLT processor Xalan.
upCast 4.0.2 GM (Build 6)
Release Date: 2003-11-11
- New Features
- New RTF import filter property "RemoveEmptyInlines", defaulting to false (was true always in earlier versions). This facilitates to retain formatting info in e.g. empty paragraphs/table cells.
- Add support for the table row height symbol \trrh.
- Add support for absolute, fixed line heights.
- Add possibility to set XML Catalog file to be used via the GUI, anytime, and save it to Preferences.
- New function to manually install a default catalog environment to validate XML (upCast DTD) files without internet access.
- Improvements & Changes
- [XHTML] Add support for form elements either as HTML form elements, plain rendered text or to be discarded completely.
- Write CSS2 property for underlined text in addition to CSS3, more detailed properties for compatibility reasons.
- Instantiate Xerces/Xalan not via JAXP, but directly by its fully qualified class.
- Change wording in log message "WordLink is available", and check at the same time if Word itself is available and display corresponding message.
- WordLink installation routine should issue a warning if no installed copy of Word is found on the system.
- Exchange arbortext catalog resolver classes for the com.sun.resolver.* implementation to support XML Catalogs (along with the old format). Allow specification of custom catalog file during catalog system installation.
- Update DTD to include <html:colgroup> and <html:col>.
- Re-structure logging architecture to behave nicely when being included as lib in other applications/frameworks.
- When an evaluation license expires, there is no way to choose a different license as upCast quits right away. We now delete the license file automatically before quitting.
- Added internal patch to Xalan to improve performance when working on networked Windows shares.
- Updated Xalan to version 2.5.1, thereby resolving an earlier bug with serializing tabs in attributes.
- Update documentation for upCast 4.0.2 new features.
- The upCast DTD has been changed to include the XHTML Table module with appropriate cell content model modification. This change does not affect any existing XML (upCast 4.0 DTD) documents.
- The log output for Batch conversions is now merged into the main upCast log and no separate file is created any longer.
- When an HTML table's row does not contain _any_ cell due to all of the cells in a previous row rowspanning its (virtual) cells, remove the row entirely and just adjust the previous row's height attribute accordingly, as otherwise the generated HTML does not validate (empty <tr />s are illegal).
- Change proprietary <gentext> type attribute values from prefix "upcast:" to "upcast-" to be an allowed IDENT value in the CSS21 grammar.
- Bugfixes
- \caps0 (turning capitals explicitly off) not written correctly as CSS property to local 'style' attribute on XML element. (Leads to CSS parse exception in downCast.)
- [COMMANDLINE] A commandline consisting of a single string/command does not work.
- BCF example in manual not working due to Windows path and newly introduced quoting with backslash character. Added info on support of file:-URLs in manual.
- Crash on revision marks that do not have a timestamp marker in all filters using the Custom Filter API (XHTML, DocBook, Raw Tree Dumper).
- The "Literal styles" feature does not work at all.
- [XHTML] Quotes in a CSS 'style' attribute value string are not XML-quoted, producing invalid XML.
- exportStream() could lead to NPE when used with an export filter that did parameter expansion (%S, %O etc.)
- Paths to image href's had the file separator character incorrectly quoted when running on Windows.
- "Buy upCast" points to wrong web address, dialog display garbled on Mac OS X.
- Exception during parsing document: findMatchingLeftIndentIndex(): no matching index was found!" reported for some RTF files during conversion.
- When using non-ASCII names in font-family property (e.g. for two-byte font names), a CSS Parser generated an error since name characters were not quoted correctly.
- Fixed possible crash on style minimization when "IncludeCharStyleInlines" was false (which is its default value...).
- text-indent was not always correctly reset to 0 when seeing a \pard in RTF symbol stream.
- Line height was not determined correctly.
- \plain keyword not handled correctly in some very rare RTF symbol code sequences.
- Inline optimization sometimes wrong when manually formatting over a character style run and thereby setting a property defined in that character style to a different value for the complete character style run (or more).
- Commandline filter execution would block when executed command writes more than some minimal text to stdout and/or stderr. This output is now redirected to the upCast log file as info/error message, respectively, line by line.
- Turning off double strikethrough in a character run turned off strikethrough completely instead of only switching to single strikethrough.
- Explicitly set 'page-break-after' to 'auto' property on \pard to not interfere with downCast's default style sheet for <heading> elements.
- When writing a <list> element that originally did not have a list group assigned, the created CSS style attribute contains an invalid semicolon at the end.
upCast 4.0.1 (Build 6)
Release Date: 2003-09-24
- Bugfixes
- [XHTML] href attribute in references to IDs in the document include an additional fragment identifier (introduced in 4.0.1b5).
upCast 4.0.1 (Build 5)
Release Date: 2003-09-21
- Bugfixes
- The local CSS tab vector property is not minimized with respect to its stylesheet class on respective elements.
- Tab vector positions wrong in external CSS stylesheet string as they did not take into account the margin-left property value.
- [DocBook] <xref>'s linkend attribute includes a URL-quoted fragment identifier. No FI is needed here.
- [DocBook] Inlines in <heading> elements stop further DocBook export filter output
- The namespaced DTD specifies the namespace without trailing '/' and thus provokes a validation error.
- The "pagenumber" reference type always gets "docvariable" appended.
- [XML (upCast DTD)] The xlink:href attribute held a wrong value and was missing the fragment identifier.
- [XML (upCast DTD)] When "UseNamespace" is on, elements from the default Unicode output map (xml.map) did not get the namespace prefix.
- If inline validation for an export filter fails, the resulting, written XML file is incomplete.
upCast 4.0.1 GM (Build 4)
Release Date: 2003-09-16
- Bugfixes
- When source document is specified in URL notation, clicking "Browse" takes you to the wrong directory in the File Chooser.
- [API] when not setting the CSS file reference explicitly using CSSRef, documents could contain "%F.css" as stylesheet reference.
- XML Validator: input file extension trucation did not work with files that have more than one '.' in their name
- [BCF] When not specifying all of the supported path attributes on the <source> element explicitly, an exception was thrown
- XSLT Processor did not work with non-URL file specifications
- With Include Layout Information set to off,
<html:table>
, <html:tr>
and <html:td>
still carry a style attribute.
- Sometimes, a superfluous font-family property was added to a <par>-level object
- Lists with \listsimple flag did not receive correct numbering type (Bug introduced in 4.0.0b115)
- XML (upCast DTD): "Include <toc>" did not have any effect.
- Loading a configuration file set wrong import filter type
- In some situations, inlines with boolean behaviour (on/off, e.g. italic) were not created correctly
- Suppress "During resolving list style reference, an error occurred: Invalid index '2047' into Override Table (using 1 instead)" error message as this isn't actually an error.
- \ulnone not respected when used in an underlined span and no corresponding inline was created
- Inline images are written as having "
position: absolute;
" instead of none or "position: static;
".
- Improvements & Changes
- Support file:// URLs for specifying input files.
- [API] Created new UpcastEngine method: convertDocumentWithConfiguration( String file, String configFile ).
- Place a <gentext> element at those places where in the document a generated footnotenumber would be placed (\chftn). Similar behaviour for: \chdate, \chdpl, \chdpa, \chtime, \chpgn, \sectnum, \chatn. The corresponding
<gentext>
types are:
upcast:FOOTNOTENUMBER
, upcast:ANNOTATIONNUMBER
and upcast:HEADINGNUMBER
(was "headingnumberstring" in earlier versions).
- [API] We now allow file:// URLs in calls to setLicense( String )
- Font in filter setting summary area is too small on some platforms, increased from 9pt to 10pt. Note: We need to show most info without having to scroll, so we cannot make it too big...
- [BCF] File paths in BCFs may not use local Windows paths anymore, as that interferes with variable expansion. Use file://-URLs instead:
file:///C:/folder/file.txt
for local path C:\folder\file.txt
and
file://hostname/share/folder/file.txt
for UNC path \\hostname\share\folder\file.txt
- When "Remove empty elements" is on, we now also remove empty sections that would have been normally created by an inadvertently empty paragraph formatted with one of Word's heading styles.
- Move proprietary page style/layout properties -ilx-header-offset, -ilx-footer-offset from local
<part>
style attribute to the @page
rule definition.
- New Features
- C API + support and sample code
- VisualBasic API + sample code for opening and saving XML documents from within Word
- [EXPERIMENTAL] DocBook 4.2 export filter, see: <http://www.infinity-loop.de/products/upcast/docbook.html>
upCast 4.0.0 (Build 115)
Release Date: 2003-08-24
- Bugfixes
- In System Information window file export, license features are not separated by correct newline character on Windows platform. [#1736]
- When a destination file in ExportFilter3 cannot be written to (e.g. locked volume), the error message in the log does not indicate the cause of the error generating exception (i.e. e.getMessage() seems to be null) [#1730]
- Possible NPE fixed in processing listtable from documents created with Word versions older than Word 2000. [#1726]
- UpcastEngine implementation contained a left-over debug output statement to the console. Removed.
- Improvements
- Make it possible to set the "DeleteTemporaryFile" hidden preference through the API call setGlobalParameter(). This way, this setting is now separate per converter object (i.e. UpcastEngine instance).
- Log exceptions to the log file in API mode that occur in the API functions, in addition to reporting them to the caller.
- Log text for XML filter export improved when using the UpcastEngine.exportStream() method.
- New Features
- Add option to Unicode output map to specify default behaviour for ranges of Unicode characters, e.g. to have them written as actual characters or numerical entities (decimal, hex). [#1732]
Syntax:
@option-default-mapping
from to (decimalNumericalEntities
| hexadecimalNumericalEntities
)
where from and to are decimal integers specifying a Unicode codepoint range for which the respective entity mapping should be created.
upCast 4.0.0 (Build 112)
Release Date: 2003-08-12
- Bugfixes
- 0x9 (tab), 0xa, 0xd characters in attributes need to be quoted on serializing (when significant!), as otherwise the re-read XML file is not the same anymore due to attribute normalization rules. See <http://www.w3.org/TR/REC-xml#AVNormalize>.
- "XML (upCast DTD)" export for empty paragraphs with "Combine style + class attributes"==OFF produces invalid XML documents like:
<par class="prelimprefaceend"<inline style="border-top-width: 3.0pt; border-top-style: solid; border-top-color: #008080; " /> />
[#1709]
- il-gw.exe was buggy for some Word .doc files.
- Improvements
- Include static setLicense( String fileName ) method in UpcastEngine for better handling in C interface.
- Include the name of the Word template a document is relying on in the default document properties, property name: 'DocumentTemplateRef'. [#1706]
upCast 4.0.0 (Build 109)
Release Date: 2003-07-30
- Bugfixes
- The -ilx-facing-pages property was not written on the <document> element, so downCast would not generate facing pages settings.
- Part page styles are not written correctly to the external CSS stylesheet, thus specifying different left/right page settings are not working correctly.
- in @page rule calculation, the calculation for right page left margin was missing the gutter component.
- Initial value of "Combine CLASS + STYLE attributes" in XML (upCast DTD) export filter does not match display in configuration dialog.
- Did not write the proprietary properties -ilx-header-offset and -ilx-footer-offset.
- CSSPropertyFilter() did not take type parameter with the result that "kIncludeListed" did not work at all (only important for custom export filter developers)
- Improvements
- We write full generator version and build in document header comment, along with document creation time in RFC format
upCast 4.0.0 (Build 108)
Release Date: 2003-07-20
- Bugfixes
- The XHTML 1.0 export filter was not accessible by the "XHTML" name in BCF files, only by its class name "ExportFilter5".
- The parameter 'CombineWithLogicalStyle' did not work on the <par> element.
- API: Several image-related parameters were not working in API mode, e.g. setting export format.
- API: exportStream() was always throwing a NPE
- BCF: The selector for the XML Validator post processing filter is now "XMLValidator" as documented. (It was "Validator.)
- When a BCF consisted of more than one <file>, <source> or <conversion> element, pressing Cancel in the progress bar only aborted execution of the current element, not the whole BCF.
- A paragraph with the same left indent as a list item predecessor should NOT go into that list item by heuristics if it is separated from previous list item content by an empty paragraph. (#1676)
- Underline styles were not written according to CSS3 (draft).
- In the DTD upcastNS.dtd, the "uc" namespace prefix had a wrong fixed value.
- No user input was accepted during a progress bar display on Mac OS X, since the UI thread never got processing time.
- Improvements
- BCF: You can use URIs in sourcepath/destpath attributes
- BCF: You can now set variables in BCFs. Use the new element
<setvar name="varname" value="varvalue" />
anywhere within a BCF element. The variable is then set from that point on further down (glibal variables, no scope consideration). You may use previously defined variables in any BCF element attribute values by using the syntax ${varname}.
This is useful for making BCFs more portable with regards to paths; you may define a root path for a BCF in a <setvar> element at the very beginning and address subdirs using that variable, which is easily changed once after porting the BCF from one machine to another.
- The link to the VB5RUNTIME installer download was broken (possibly presented to the user during Instyll WordLink).
upCast 4.0.0 (Build 92)
Release Date: 2003-06-19
- Bugfixes
- Subscripts by distance do not get a negative vertical-align value, thus actually superscripting them.
- A <reference> element did not include the xlink:type attribute with value "simple".
- License files containing umlauts or accented characters did not work
upCast 4.0.0 GM (Build 85)
Release Date: 2003-06-01
No changes.
upCast 4.0.0 (Build 71)
Release Date: 2003-05-06
- New Features
- Added a proprietary CSS property containing tab-position information (incl type and leader-kind):
-ilx-tab-stops: ([left|center|right|decimal|bar] [blank|dotted|middle-dotted|lined|thick-lined|dashed|double-dashed] <lengthpos>tw )+
- Improved online documentation on infinity-loop's website
- "Check for Updates" command lets you check online for new versions of the software
- Added a dedicated XML Validation export filter for validating arbitrary files.
- Added possibility to choose which selector syntax to use in external stylesheet (css1 class shorthand or css2; hidden parameter!)
- "No-op" filter implemented to use upCast for validation/processing purposes only. Useful in batch files (see documentation)
- Improvements
- When importing a license file using the Registration dialog, the license is copied into the Licenses folder and can be chosen in a dialog on startup (from all the licenses in that folder)
- default export format for PNG graphics is now "unchanged" (instead of "JPEG")
- Made "Execute Batch" the default button (Enterprise).
- After a Batch has finished, change "Execute" to "Close" for closing the window.
- Bugfixes (from upCast 4.0.0 Beta)
- General
- Several dialogs appeared cropped at the bottom on Windows XP.
- positioning properties for lists and list items had incorrect values in certain situations
- import filter settings were automatically reset to default values at upCast launch (though being saved correctly in the preferences file)
- -ilx-reference-presentation-type, -ilx-image-source CSS property names were not correctly quoted when exporting to XML (upCast DTD).
- Textbox default border parameters were not considered
- Several properties for the "Normal" style were not recorded in the base stylesheet, leading to excessive style-override information on elements in the XML export.
- When no export filter was registered in single mode, starting a batch conversion failed saying that no export filter is defined.
- Paragraph background pattern was not reliably output.
- Batch
- The step counter in multi-<conversion> BCF files now shows correct number
- XML (upCast DTD) export filter
- <gentext> elements sometimes showed up twice
- The first part always had set "page-break-before: always", which is incorrect. We should strip the page-break-before property on the first part.
- XHTML
- Added default border on <body> element in XHTML export filter as suggested by the default CSS2 stylesheet for HTML (W3C)
- XSLT Processor
- When running the XSLT filter, a file "basename" (without extension) was created in the output directory and kept in locked state.
- Files created by the XSLT export filter did not get closed after processing.
- XSLT processor: Parse errors in one of the input files were not reported including their line numbers.
- In BCF files, the resolution of %O took the value from the GUI component, not the source element's destpath attribute.
- When XSLT export filter was configured wrongly, e.g. no stylesheet specified, no failure notice was issued.
- Commandline filter
- The Commandline filter did not retain any settings changes made in the configuration dialog.
- Java API
- file name endings of absolutely specified output files were truncated
Release Notes for upCast 4.0.0 (beta)
- New Features
- An XML based license key system eases license handling. The same license file is used whether you run in GUI mode or bundle the license with a distributable Jar file.
- Key directory locations are now settable by Java system properties at startup.
- Introduced a Java API to add a custom class for grouping inline elements below paragraphs, delete inlines, or change inlines. This can be done by subclassing de.infinityloop.upcast.treeprocess.InlineProcessorBase.
- Added possibility to add custom class for determining section breaks and pick heading styles. This is now available by means of subclassing the de.infinityloop.upcast.treeprocess.SectionProcessorBase class.
- You can specify a custom CSS property unit table that maps each property name to a default unit in which the value will be written. A default table comes packaged with the application.
- Added a "First launch" procedure to automatically set-up WordLink (if not yet available) and the Catalog system (extracting DTDs to local disk and setting up a corresponding catalog file automatically).
- Added a SAX-like API for programming your own export filters in Java (including UI). This lets you integrate highly customized processing into upCast for simple deployment, which was not easily possible before using XSLT alone.
- XHTML export filter is back as a demo of the custom export filter API mentioned above. Source code is provided for tweaking.
- Improvements
- The Preferences file format has been restructured hierarchically in XML and will be documented in the final release. This allows custom export filters to store any preference value in the key-based preferences pool.
- The Unicode output map to use can now be selected per export filter (preference setting). Default tables for XHTML (including Latin-1 named character entities) and for XML (making elements for formfeed and linebreak) are included.
- It is now possible to set a custom DOCTYPE declaration for generated XML documents (e.g. to name a custom SYSTEM identifier).
- RTF stylesheet was not correctly parsed when it was buggy. Added some workaround code to be more forgiving.
- Include 'float' CSS property on respective images when exporting.
- add positioning parameters on textbox elements when exporting, like offsets, borders and floating
- When a non-existant list override was referenced in a corrupt RTF document, conversionhalted. Added workaround to try to proceed as far as possible.
- We now allow specifying parameters for stylesheets in the XSLT processor export filter. The parameters honor the common upCast parameter variables (%I, %F, %O, %G, ...)
- Bugfixes (from upCast 3.2.1 Preview)
- General
- When there were more than 1000 steps in a conversion (e.g. a large Batch run), the progress bar did not move.
- Some varieties of table background color specifications were not handled correctly
- output directory and image directory were not saved correctly to preferences, resulting in a possible crash when converting images
- collected @page rules were not flushed before converting a new document and therefore accumulating
- Bug in URL decoding fixed.
- The application could only be launched when there was an active connection to the internet.
- XSLT processor did not honor XML catalog system, if one was available.
- Starting a batch conversion gave two progress bars simultaneously.
- An RTF document that had no stylesheet destination at all crashed upCast
- Crasher fixed for certain combinations of section formatting properties
- Certain RTF table constructions with horizontal colspans did not convert correctly (\clmrg).
- Crash possible when handling very short file names (< 5 characters)
- The RTF font table was not correctly parsed for some non-Word RTF documents
- Left indents were not always honored in RTF input
- CSS
- Table horizontal alignment is preserved
- left margin value of tables within list items could be wrong
- Section breaks behaviour was not recorded properly in the output ('page-break-before' property on <part>s)
- On tables, CSS border style written was 'none' when it should have been 'hidden'.
- XML (upCast DTD) export filter
- The 'frame' attribute sometimes got wrong values set when exporting with OASIS XML Exchange Table Model (CALS compatible)
- The author attribute for <inserted> and <deleted> contents was always empty.
- Lists that have been indented two levels at once in Word had a wrong -ilx-marker-format property value in the Generic DTD export filter on export. Both lists refer to the innermost list numbering, though when at the intermediate list, that isn't defined
- Validation against the upCast DTD failed for some documents failed due to a wrong content model in the DTD. This has been fixed.
- "valign" attribute value on CALS table <entry>s is now "middle", not "center"
- Support for specifying the output encoding of the resulting file.
- Java API
- file name endings of absolutely specified output files were truncated
- Changes
- Custom property prefix changed (again...) from "ilx-" to "-ilx-", which when quoted for CSS2 parser compatibility must be written "\-ilx-".
- We do no longer write a startup.log file, but use log4j all over the place.
- upCast now REQUIRES Java 2 (JDK 1.2.x or later). It will no longer run on Mac OS 9 (=JDK 1.1.8)
© 2003-2007 infinity-loop GmbH Send mail to Webmaster Anbieterkennzeichnung §6 TDG