Loading ...
Sorry, an error occurred while loading the content.

RE: [XSL-FO] How can i include SVG document in a PDF file?

Expand Messages
  • Max Dunn
    There s a simple example of SVG in FO at: http://www.ibiblio.org/xml/books/bible2/chapters/ch18.html HTH, Max http://www.siliconpublishing.org ... From:
    Message 1 of 4 , Dec 3, 2001
    • 0 Attachment
      There's a simple example of SVG in FO at:
      http://www.ibiblio.org/xml/books/bible2/chapters/ch18.html

      HTH,

      Max
      http://www.siliconpublishing.org

      -----Original Message-----
      From: ysenez@... [mailto:ysenez@...]
      Sent: Monday, December 03, 2001 2:56 AM
      To: XSL-FO@yahoogroups.com
      Subject: [XSL-FO] How can i include SVG document in a PDF file?


      I'm using FOP to generate some PDF files and now, i want to include a
      SVG document.
      I know i can generate a pdf from a svg file with command line:
      java org.apache.batik.apps.rasterizer.Main -m application/pdf
      document.svg
      but that i want is include the document.svg while i generate a PDF
      from a XML / XSL files (from a link to this document).

      Regards.




      To unsubscribe from this group, send an email to:
      XSL-FO-unsubscribe@egroups.com



      Your use of Yahoo! Groups is subject to
      http://docs.yahoo.com/info/terms/
    • Eric Smith
      ... --
      Message 2 of 4 , Dec 4, 2001
      • 0 Attachment
        According to ysenez@... on Mon, Dec 03, 2001 at 10:55:56AM -0000:
        > I'm using FOP to generate some PDF files and now, i want to include a
        > SVG document.
        > I know i can generate a pdf from a svg file with command line:
        > java org.apache.batik.apps.rasterizer.Main -m application/pdf
        > document.svg
        > but that i want is include the document.svg while i generate a PDF
        > from a XML / XSL files (from a link to this document).
        >
        > Regards.
        >
        >
        >
        >
        > To unsubscribe from this group, send an email to:
        > XSL-FO-unsubscribe@egroups.com
        >
        >
        >
        > Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
        >

        --
      • Eric Smith
        ... Do something like this in your xml: and something like this in your xsl:
        Message 3 of 4 , Dec 4, 2001
        • 0 Attachment
          According to ysenez@... on Mon, Dec 03, 2001 at 10:55:56AM -0000:
          > I'm using FOP to generate some PDF files and now, i want to include a
          > SVG document.
          > I know i can generate a pdf from a svg file with command line:
          > java org.apache.batik.apps.rasterizer.Main -m application/pdf
          > document.svg
          > but that i want is include the document.svg while i generate a PDF
          > from a XML / XSL files (from a link to this document).
          >

          Do something like this in your xml:

          <graphic url="/home/eric/somesvg.svg">

          and something like this in your xsl:

          <xsl:template match="graphic">
          <fo:block>
          <!-- content-height="auto" content-width="auto" -->
          <fo:external-graphic src="{@url}"/>
          </fo:block>
          </xsl:if>
          </xsl:template>

          You can also use instream-foreign-object in your fo but then you
          need to explicitly declare the svg: namespace in each of your svg statements.

          It cost me a few hours to get the above to work with FOP - it came down to
          the namespace declaration headers and the image size -( and getting rid of my
          viewport declaration) - I had to scale all the dimensions in my svg file
          to get it all to work, even anyone wants a quick perl command to scale all the
          dimensions, font sizes etc - let me know.
          hopefully this will get you off to a quick start - (quicker than I had anyway
          the developers of fop are pretty cruel when it comes to debugging info):

          somesvg.svg:

          <?xml version="1" standalone="no"?>
          <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20000802//EN"
          "http://www.w3.org/TR/2000/CR-SVG-20000802/DTD/svg-20000802.dtd">

          <svg width="2000" height="1800" xml:space="preserve">
          <!-- four first rectangles -->
          <rect x="69" y="18" width="84" height="32"
          style="fill:rgb(197,207,169);stroke:rgb(0,0,128);stroke-width:0"/>
          <rect x="176" y="18" width="84" height="32"
          style="fill:rgb(197,207,169);stroke:rgb(0,0,128);stroke-width:0"/>
          <rect x="276" y="18" width="84" height="32"
          style="fill:rgb(197,207,169);stroke:rgb(0,0,128);stroke-width:0"/>
          <rect x="373" y="18" width="84" height="32"
          style="fill:rgb(197,207,169);stroke:rgb(0,0,128);stroke-width:0"/>
          <text x="294" y="40" style="fill:rgb(0,0,0);font-size:10;font-family:Arial">Bank</text>
          </svg>

          Also see the faq on the fop site for what svg features are
          supported.

          good luck.

          BTW my rendered fonts for the above example look awful - I tried a few things but gave up
          - anyone have any clues?
          --
          Eric Smith - currently using xalan and xsltproc - what a difference speed makes - and fop on linux
        Your message has been successfully submitted and would be delivered to recipients shortly.