1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351
|
Release Notes CSSToXSLFO 1.6.2
23 August 2010
1. Requirements
You need JRE 1.5 or a higher version to run the application.
If you run css2xep.jar you also have to specify another XSLT processor, because
XEP uses Saxon 6.5.x, with which it doesn't work. You can either prepend
another XSLT processor to the boot classpath or you can simply copy saxon8.jar
in the XEP lib directory.
2. Installation
You can place the jar file where you want and launch the application as
follows:
> java -jar css2xslfo.jar options
Consult the manual for details about running the application.
3. Changes
3.1 Changes Since Version 1.6.1
3051512: Recompile for FOP 1.0
Bug fixes
3.2 Changes Since Version 1.6
Bug fixes
2571787: Bug in ProjectorFilter
2588555: The value "transparent" is not recognized as a color
2758546: Relative URLs are always resolved to absolute URLs
3.3 Changes Since Version 1.5.2
Bug fixes
1722531: hard coded urls in css file are all set to lowercase
1911693: xml:lang or lang on document element is ignored
1984171: The XHTML catalog is no longer included
1997883: table element with a region property causes program to die
New features
- Add FOP command-line parsing for fopnew (feature request 1989920). With the
new "-fop" option any FOP command-line option can be used. Note that the
complete command-line syntax is not compatible with the previous version. The
"-fc" has been removed, because there now is the FOP equivalent.
- Add the "-config" command-line option to the Xinc variant.
- Add the "-config" command-line option to the XSLFormatter variant.
3.4 Changes Since Version 1.5.1
Bug fixes
1807366: Floating point values are locale dependent
1811419: The text-align-last property is not treated as inherited
1824076: Splitting shorthand properties four ways uses a wrong order
1843554: Setting float to "none" still generates an fo:float
3.5 Changes Since Version 1.5
Bug fixes
1802080: A named page sequence with only tables is considered empty
3.6 Changes Since Version 1.4.2
Bug fixes
1716939: Regression because of invalid property bug (1691044)
1722531: hard coded urls in css file are all set to lowercase
1722541: underscores in class name
1723310: Relative URLs in a style sheet are not resolved
1731447: Inline properties are not applied to "graphic" and "leader"
1733555: The width and height properties are not applied to "graphic"
1737664: Floating point values shouldn't use exponential notation
1767912: Using as filter without calling parse or setParent fails
1768297: The text-align property is no longer applied to table cells
1770690: The page-break properties are no longer applied to table-row
1778499: The fopnew option -fc is broken
New features
- Support last pages, analogous to first pages (feature request 1720073).
- Implement the "list-style-image" property (feature request 1721782).
- Implement the background, border and padding page properties that are defined
in CSS3 (feature request 1724392). This deviates from that specification in
that the properties are applied to the region-body, because in XSL-FO they are
not defined at the page master level.
3.7 Changes Since Version 1.4.1
Bug fixes
1701428: The border-width shorthand property is not split
1715203: Regression because of font-family bug (1679537)
3.8 Changes Since Version 1.4
Bug fixes
1679537: Font family names not quoted when they contain spaces
1681734: Only block-container should have absolute positioning
1684177: ID attribute on body is duplicated
1691044: Unexpected CSS attributes come out as bogus FO attributes
1691392: Named strings fail when contents is fragmented
3.9 Changes Since Version 1.3.3
Bug fixes
1594025: Css2FopNew user configuration file
1626094: Testing a style sheet URL is too slow
New features
- New Ant tasks (feature request 1554682).
- New options "-config" and "-q" for css2xep.jar.
3.10 Changes Since Version 1.3.2
Bug fixes
1496388: Rules with document element don't work when in open document
1496389: xml:base treatment is not scoped
1553292: BASE element and xml:base not taken into account for links
New features
Use version 0.92beta instead of 0.91beta for the package for the new FOP branch.
3.11 Changes Since Version 1.3.1
Bug fixes
1359835: When display is "none" on regions, they are no longer shown
1462265: Regions which are not specific are not inherited
1482296: Overriding anonymous page context properties doesn't work
1482644: Drop width conversion for % values when parent has no width
3.12 Changes Since Version 1.3
Bug fixes
1455266: Regression with XSLTC because of prefix mapping events
3.13 Changes Since Version 1.2
Bug fixes
1356430: list-style and its singles are not treated correctly
1359835: When display is "none" on regions, they are no longer shown
1361765: No default for page counter reset
1425336: Invalid flow-name references
New features
- CSS3 namespaces.
- Implement the "list-style-position" property.
- Implement the ":first-letter" pseudo element.
- Add the "wrapper" display type, which prevents an element from contributing
formatting objects, but for which property inheritance works.
- Add DeltaXML (http://www.deltaxml.com) to the User Agent style sheet. It
takes care of the difference mark-up in the DeltaXML namespace. Note that the
style sheet uses change bars, which work only for XEP4
(http://www.renderx.com) at the moment.
- Add XLink to the User Agent style sheet. This merely consists of supporting
the global XLink "href" attribute.
- Relax the constraint that there should be no whitespace between a footnote
reference and a footnote body. Whitespace between them is now gobbled.
- Add the possibility for a footnote body to have a ":before" pseudo element
with the display type "footnote-reference" instead of an explicit footnote
reference element. The generated contents will go in the flow as well as in
the footnote body.
- Add support for xml:id.
- Add the "foreign" display type. Elements having it end up in an
fo:instream-foreign-object element.
3.14 Changes Since Version 1.1
Bug fixes
1348367: Fix table normalisation when display type is "none".
1348374: Fix link processing.
1348383: A CSS style sheet is not treated as case-insensitive.
1349014: Correct manual section about running with FOP.
New features
- The special Unicode spaces U+2000 through U+200A are post-processed using
fo:leader elements (reminiscent of Jirka Kosek's DocBook style sheet).
3.15 Changes Since Version 1.0
Bug fixes
1281230: The presence of the anonymous @page rule is assumed.
1285991: Move fo:marker to the next allowed place in the XSL-FO tree.
1286078: Turn off hyphenation by default for User Agent page set-up.
1291094: A marker pseudo element shouldn't imply the other is one too.
1315758: Don't generate empty page sequences.
New features
- Add the "colspan" and "rowspan" properties for table cells.
- Add the unit "pcw" (proportional column width) for table column widths.
- Add the "table-omit-footer-at-break" and "table-omit-header-at-break"
properties for tables.
3.16 Changes Since Version 1.0rc2
Incompatible changes
- The "footnote" property no longer exists. It is replaced by the new display
types "footnote-reference" and "footnote-body". This provides control over
contents and style of both the footnote reference and body. The list style
type "footnote" has also been added. It generates symbols such as the
asterix, dagger, etc.
- Regions have an incompatible restriction. They must now be the first children
of the body region element. For XHTML the latter is the body element.
- Move "counter-reset" for the "page" counter from the static regions to the
@page rule.
- Hyphenation is turned off by default instead of on. This puts it in line
with XSL-FO.
Enhancements
- Add the "precedence" property for the top and bottom regions.
- Implement the change bar extension. This works only with XEP at the moment.
- Add the link extension, which covers internal and external links.
- Make it work with Saxon 8.3 and later.
- Make it work with JDK 1.5 without having to prepend an XSLT processor in the
boot class path.
- Remove the CSS rules for the XHTML elements "sup" and "sub" from the User
Agent style sheet. Set the "line-height-shift-adjustment" property to
"disregard-shifts" to compensate this.
- Show a stack trace only in the main functions when -Dbe.re.stack is on.
- Generalize the named pages feature. It is no longer bound to a sibling list
below the XHTML "body" element or the document element for another XML
vocabulary.
- Enhance performance and reduce memory usage.
- Add a Xinc package.
- Add the XSL-FO "force-page-count" property.
- Implement markers with the limitation that the value "auto" is not supported
for the the "width" property. Check out section 12.6 of the CSS2
specification to learn how you can have much more control over lists through
markers.
- Implement the "column-span" property for multicolumn pages.
- Introduce the display type "graphic".
- Add the pseudo page "blank".
Bug fixes
- Fix the "string-set" property bug. It didn't cascade properly and it didn't
work when placed in the XHTML "style" attribute.
- Fix the CSSToXSLFOFilter constructor. It didn't check the absence of the
user agent parameters.
- Fix the absence of the "any" simple-page-master when there were @page rules
without an anonymous @page rule.
- Fix a page rule cascade bug. The page rules weren't split before sorting them.
- Do the inheritance of text-align and vertical-align in tables only for XHTML
tables and take into account the specificity of UA rules and universal
selectors.
- Fix the bug where properties on pseudo elements were also applied to the
elements themselves.
- Change the processing instruction xml:stylesheet into xml-stylesheet. The
XML namespaces specification doesn't allow colons in PI targets. The new
target follows the CSS2.1 convention.
- Fix the combination of pseudo classes and pseudo elements. The specification
":first-child:before" didn't work.
- Fix the application of the "content" property. It didn't cascade, but
combined all matched property values.
- Fix the specificity calculation in the case where several conditions are
combined.
- Set the "font-selection-strategy" property to "character-by-character", which
corresponds to CSS.
- Implement centering of blocks and tables when "margin-left" and
"margin-right" are set to "auto".
- Report missing command-line options in css2fop.jar.
- Produce a descent error message when an URL is invalid when trying to parse
a CSS style sheet.
- The value "contents" for the "string-set" property also included the
generated content for the element it was set on.
- Fix the bug where the "userAgentParameters" argument to the constructor can't
be "null".
- Fix the treatment of the "clear" property.
3.17 Changes Since Version 1.0rc1
- Install an error handler on the filter chain for the validating mode,
otherwise there are no error messages when Xalan 2.6.0 or higher are used.
This is because Xalan's TraXFilter now correctly propagates error handler
events instead of throwing an exception.
- Also add the default unit "px" to the "width" and "height" of the XHTML "img"
element if there is no specified unit.
- Honor the "media" attribute of the XHTML "style" and "link" elements.
- Fix a selector bug in the case unnamed element selectors are used elsewhere
than at the final position.
- Fix a named pages regression when using a more recent Xalan version.
- Implement the multicolumn extension.
3.18 Changes Since Version 1.0b3
- Implement positioned elements (position, top, bottom, left and right
properties).
- Implement layered presentation (z-index property).
- Use a block-container instead of a plain block when one of the following
properties is specified on a block-level element: clip, height, min-height,
min-width, overflow, width. This bug disabled those properties.
- Add a FOP package variant with a FOP filter that removes some of the
non-supported XSL-FO properties.
- Implement the additional CSS3 List Module glyphs for the list-style-type
property.
3.19 Changes Since Version 1.0b2
- Change the common -p option to accept a comma-separated list of URLs or
filenames instead of just one.
- The anonymous page block elements following a named page block element are
now part of the same name page type of the latter.
- Give lower precedence to the UA style sheet.
- Fix a bug in the translation of XHTML attributes into CSS properties.
- Fix a bug in the static region mapping onto pages.
- Fix a bug in the load of the embedded XHTML catalog.
- Document the footnote extension.
- Document the orientation extension.
- Complete the "Compliance With CSS2" section of the manual.
3.20 Changes Since Version 1.0b1
- Drop XSLTC because it produces wrong results.
- Add the option "-v" to turn on XML validation explicitly. By default no
validation is done.
- Replace the deprecated XEP interface with the new interface.
4. Known Problems
- The built-in XSLT-processors in JDK1.5.0 and JDK1.6.0 don't treat the
"ancestor-or-self" axis as a reverse axis. This causes the "list-style-type"
detection to fail for nested lists with different style types. As a
workaround you should prepend Saxon or Xalan 2.7.0 to the boot classpath.
5. Contact Information
Comments and bug reports can be sent to support@pincette.biz. Information about
the application is available at http://www.re.be/css2xslfo/.
|