Uploaded image for project: 'Batik'
  1. Batik
  2. BATIK-1034

SVG rasterizing issue with TiledImage

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: 1.7
    • Fix Version/s: None
    • Component/s: SVG Rasterizer
    • Labels:
      None
    • Environment:
      Ubuntu 12.10 64 bit, Sun JDK 1.7.0_09

      Description

      when trying to rasterize an SVG document
      into a TiledImage. The same document when rendered into a BufferedImage
      works fine. I wonder what I might be doing wrong.

      The source code to demonstrate the problem is here:
      http://pastebin.com/gqzi8mu5
      please find the SVG file I'm trying to render attached

      in the sample source, if one created a BufferedImage object, the SVG is
      rendered properly. if a TiledImage is created, it does not appear in the
      image.

      rendering fails at the following point: in AbstractGraphicsNode.paint(), at line 491:

      boolean paintNeeded = true;
      Shape g2dClip = curClip; //g2d.getClip();
      if (g2dClip != null)

      { Rectangle2D cb = g2dClip.getBounds2D(); if(!bounds.intersects(cb.getX(), cb.getY(), cb.getWidth(), cb.getHeight())) paintNeeded = false; }

      I looked at the data, and it seems that this fails because the bounds used in this intersection test do not have the transformation from the Graphics2D object applied to them. thus, it is not the final (rendering) bounds that is compared to the clip area, but the 'original' bounds of the graphics node.

        Attachments

        1. batik.patch
          0.8 kB
          Akos Maroy
        2. navaid_designated.svg
          3 kB
          Akos Maroy

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              darkeye@tyrell.hu Akos Maroy
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: