[ 
https://issues.apache.org/jira/browse/BATIK-1207?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Pascual Lorente closed BATIK-1207.
----------------------------------
    Resolution: Not A Problem

I just added style="color-interpolation-filters:sRGB" to the filter

> NPE with different PNGTranscoder.KEY_WIDTH, PNGTranscoder.KEY_HEIGHT
> --------------------------------------------------------------------
>
>                 Key: BATIK-1207
>                 URL: https://issues.apache.org/jira/browse/BATIK-1207
>             Project: Batik
>          Issue Type: Bug
>          Components: SVG Rasterizer
>    Affects Versions: 1.9
>         Environment: Debian 9
> SDK 1.8.0_151
>            Reporter: Pascual Lorente
>            Priority: Critical
>              Labels: KEY_HEIGHT, KEY_WIDTH, PNGTranscoder
>         Attachments: ehld.svg
>
>
> I'm having a tough time with PNGTranscoder. I am rendering an SVG document 
> into a PNG image of different sizes. For that, I use a factor.
> {code:java}
> final float factor = 1.0f;
> // Load document
> final SAXSVGDocumentFactory DOCUMENT_FACTORY = new 
> SAXSVGDocumentFactory(XMLResourceDescriptor.getXMLParserClassName());
> SVGDocument document = DOCUMENT_FACTORY.createSVGDocument("ehld.svg");
> // Extract original height and width
> final SVGSVGElement root = document.getRootElement();
> final String viewBox = 
> root.getAttributes().getNamedItem("viewBox").getNodeValue();
> final Scanner scanner = new Scanner(viewBox);
> scanner.useLocale(Locale.UK);
> float x = scanner.nextFloat();
> float y = scanner.nextFloat();
> float width = scanner.nextFloat();
> float height = scanner.nextFloat();
> // Set png width and height
> final float w = width * factor;
> final float h = height * factor;
> final ImageTranscoder transcoder = new PNGTranscoder();
> transcoder.addTranscodingHint(PNGTranscoder.KEY_WIDTH, w);
> transcoder.addTranscodingHint(PNGTranscoder.KEY_HEIGHT, h);
> // Export
> final TranscoderInput input = new TranscoderInput(document);
> final File file = new File("output.png");
> final TranscoderOutput output = new TranscoderOutput(new 
> FileOutputStream(file));
> transcoder.transcode(input, output);
> {code}
> For some factors, it works nicely, but there are some of them that crash with:
> Enclosed Exception:
> Unable to transform src image
>       at 
> org.apache.batik.transcoder.image.ImageTranscoder.transcode(ImageTranscoder.java:132)
>       at 
> org.apache.batik.transcoder.XMLAbstractTranscoder.transcode(XMLAbstractTranscoder.java:142)
>       at 
> org.apache.batik.transcoder.SVGAbstractTranscoder.transcode(SVGAbstractTranscoder.java:156)
>       at visual.VisualTesting.test(VisualTesting.java:298)
>       at visual.VisualTesting.main(VisualTesting.java:64)
> From 0.1 to 2.0 (step 0.1) it does NOT work with 0.7, 1.3, 1.4, 1.5, 1.7.
> When I remove the filter in the SVG document 
> (*style="filter:url(#selection-filter)"*, line 1188) problems dissapear.
> Not sure if a bug or a misusage. Thanks



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: batik-dev-unsubscr...@xmlgraphics.apache.org
For additional commands, e-mail: batik-dev-h...@xmlgraphics.apache.org

Reply via email to