[jira] [Commented] (BATIK-1191) Batik changed the overflow default for drawings

"Bjoern Voigt (JIRA)" <[email protected]> Wed, 31 Oct 2018 13:53:00 +0000 (UTC)
Newsgroups gmane.text.xml.batik.devel
Message-ID <[email protected]>
    [ https://issues.apache.org/jira/browse/BATIK-1191?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16670129#comment-16670129 ] 

Bjoern Voigt commented on BATIK-1191:
-------------------------------------

Users who want to keep their applications compatible with older Batik releases (with "overflow: visible" default) have some options.
 # Edit all existing SVG drawings
 # Modify the library batik-all-<version>.jar
 # Modify the application, so that loaded SVG images are updated on the fly

I describe all options in detail.

Unfortunately I did not found a solution to change the CSS user agent stylesheet in the application. This would probably be the solution.

> Batik changed the overflow default for drawings
> -----------------------------------------------
>
>                 Key: BATIK-1191
>                 URL: https://issues.apache.org/jira/browse/BATIK-1191
>             Project: Batik
>          Issue Type: Bug
>          Components: SVG Viewer
>    Affects Versions: 1.9
>            Reporter: Bjoern Voigt
>            Priority: Major
>         Attachments: initial-view-left18_right19.png, sample.svg, wider-window-view-left18_right19.png
>
>
> If an SVG image contains objects partially or completely outside the viewbox, then these objects are completely or partially hidden, even if the view is changed manually with zoom & pan.
> This bug is introduced in revision r1784917:
> {code:java}
> $ svn log -c r1784917
> ------------------------------------------------------------------------
> r1784917 | ssteiner | 2017-03-01 12:44:53 +0100 (Wed, 01 Mar 2017) | 1 line
> BATIK-1179: Clip wrongly applied
> ------------------------------------------------------------------------
> {code}
> The revision r1784917 introduced a global CSS stylesheet:
> {code:java}
> $ svn diff -c r1784917
> Index: batik-svg-dom/src/main/resources/org/apache/batik/dom/svg/resources/UserAgentStyleSheet.css
> ===================================================================
> --- batik-svg-dom/src/main/resources/org/apache/batik/dom/svg/resources/UserAgentStyleSheet.css    (revision 1784916)
> +++ batik-svg-dom/src/main/resources/org/apache/batik/dom/svg/resources/UserAgentStyleSheet.css    (nonexistent)
> @@ -1,6 +0,0 @@
> -/*
> - * The default SVG style sheet.
> - */
> -svg, symbol, image, marker, pattern, foreignObject { overflow: hidden }
> -
> -/* svg { width:attr(width); height:attr(height) } */
> Index: batik-anim/src/main/resources/org/apache/batik/anim/dom/resources/UserAgentStyleSheet.css
> ===================================================================
> --- batik-anim/src/main/resources/org/apache/batik/anim/dom/resources/UserAgentStyleSheet.css    (nonexistent)
> +++ batik-anim/src/main/resources/org/apache/batik/anim/dom/resources/UserAgentStyleSheet.css    (revision 1784917)
> @@ -0,0 +1,6 @@
> +/*
> + * The default SVG style sheet.
> + */
> +svg, symbol, image, marker, pattern, foreignObject { overflow: hidden }
> +
> +/* svg { width:attr(width); height:attr(height) } */{code}
> The issue can be easily shown with the attached sample.svg and Squiggle (part of the Batik SVG distribution). It is not a bug of Squiggle. Sample programs with JSVGCanvas show the same behavior.
> java -jar batik-squiggle-1.8.jar sample.svg
>  java -jar batik-squiggle-1.9.jar sample.svg
> Initially both Squiggle windows look similar. But if you make the Squiggle windows wider, then the version 1.8 variant of Squiggle shows the complete red rectangle, which is partially outside the viewbox. The version 1.9 variant keeps the red rectangle cut off on the viewbox.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)