Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-29842

Rendering a SVG file back to an SVG or another vector format using QSvgGenerator or QPrinter adds strokes around paths and rects

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Open
    • Priority: P3: Somewhat important
    • Resolution: Unresolved
    • Affects Version/s: 4.8.4, 5.0.1
    • Fix Version/s: None
    • Labels:
      None
    • Environment:
      Mac OS X 10.6.8 Snow Leopard, Mac OS X 10.8.2 Mountain Lion, Windows XP
    • Platform/s:
      macOS

      Description

      Compile the small app below. It loads a simple SVG file to a QPicture (to hold vector data). This 1st SVG file has a text and a text that is converted to a path. Rendering to pixels (QWidget, QImage) works fine. Rendering to SVG or PDF (Qt print engine) adds a stroke around the paths (see the out.***).

      This behaviour becomes clear if you change the line
      QSvgRenderer svgRenderer(dirPath + "in1.svg");
      to
      QSvgRenderer svgRenderer(dirPath + "in2.svg");
      In this 2nd example SVG file is just a line and a rect, both with 1 pt thickness. After qt's conversion the line is fine but a stroke seems to be added to the the rect.

      It seems like someone forgot to clear the pen with QPainter::setPen(Qt::NoPen)?

        Attachments

        1. in1.svg
          4 kB
        2. in2.svg
          0.6 kB
        3. main.cpp
          2 kB
        4. qprinterbug.pro
          0.3 kB

          Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            Activity

              People

              Assignee:
              Unassigned Unassigned
              Reporter:
              floba Florian Bauer
              Votes:
              0 Vote for this issue
              Watchers:
              5 Start watching this issue

                Dates

                Created:
                Updated:

                  Gerrit Reviews

                  There are no open Gerrit changes