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

Re: [XSL-FO] suggested xsl-fo processors for floating images and html rendering

Expand Messages
  • G. Ken Holman
    ... Right ... because the XSL-FO specification says nothing about rendering, most such solutions are just transformations from XML to HTML in parallel with XML
    Message 1 of 9 , Jan 20, 2006
    • 0 Attachment
      At 2006-01-20 09:25 -0800, Dan Moore wrote:
      >I haven't found a way to do what we want. What we're looking for:
      >
      > A processor that supports the fo:float tag. Antenna and Render-X,
      > among others, do this.
      >
      > It also needs to render to html. I found a few processors that
      > did this (via this page:
      > http://rkamal.blogspot.com/2004/12/list-of-xsl-fo-processors.html),
      > but most of them used XSLT.

      Right ... because the XSL-FO specification says nothing about
      rendering, most such solutions are just transformations from XML to
      HTML in parallel with XML to XSL-FO. The XSL-FO specification only
      describes the interpretation of XSL-FO constructs into an area tree
      representing the content that belongs on each of a set of pages.

      >What we want is paginated HTML.

      I'm guessing here you want a set of hyperlinked pages, "prev" and
      "next" links back and forth to "pages" that have been parcelled out
      from the interpreted content.

      But what is a "page" in a stream of interpreted XSL-FO that uses A4
      or US letter when you are going to HTML? I don't believe it makes
      sense that a "rendered page" (interpreted formatting of XSL-FO
      semantics into an area tree) be the basis for "prev"/"next" links in
      a set of HTML. Consider that a block of lines (e.g. a paragraph)
      only fits half of its lines on a given page, the orphans, and then
      the widow lines go to the next page ... would it make sense to break
      this block of lines into two HTML+CSS pages?

      >I'd like to leverage XSL-FO's pagination and then render to HTML.

      It is common to serialize the creation of HTML from XSL-FO, but the
      commonly-used module produces a single HTML+CSS file for the entire
      flow ... there is no interpretation of a "page" in the HTML+CSS that
      is produced.

      I'm not convinced that area-tree pagination makes the best basis for
      an HTML rendering.

      >The final item is more of a preference: that the processor run on
      >unix and have java APIs. That's not a hard requirement, though.

      True ... for one customer we go from XSL-FO to HTML+CSS using
      Java-based Saxon. The authoring creates the raw XML, an XSLT/XSL-FO
      stylesheet produces an XSL-FO instance (using Saxon), that instance
      is rendered to PDF using an XSL-FO engine, then the self-same XSL-FO
      instance is transformed to a single HTML+CSS file. We only write
      XSLT/XSL-FO stylesheets for the rendering of many different reports,
      because a single XSLT stylesheet works for all reports ... it just
      translates XSL-FO page sequences into HTML+CSS regardless of how the
      XSL-FO page sequences were created.

      > Does the list have any suggestions?

      I use http://www.renderx.com/tools/fo2html.html to transform an
      XSL-FO instance into a single HTML+CSS file. I've had to tweak it
      and wrap it to get some benefits needed that are not provided for by
      the publicly-available version.

      >Am I wrong to be looking at XSL-FO as a possible solution for this?

      Perhaps ... I don't know of any vendor that takes the "interpreted
      XSL-FO semantics in the area tree" and renders the area tree as HTML.

      >If so, are there any other technologies which might be appropriate?

      In my training material design, the smallest level of granularity
      upon which I write the content is what I call a "pane" ... XSLT
      produces a single HTML page for each pane and hyperlinks every pane
      to its previous one, its next one, the first pane of the current
      frame of panes, the first pane of the first frame of the previous
      lesson of frames, the first frame of the current lesson of frames,
      the first pane of the first frame of the next lesson of frames, the
      first pane of the first frame of the first lesson of the previous
      module of lessons, the first pane of the first lesson of the current
      module of lessons, the first pane of the first lesson of the next
      module of lessons, and the index of all frames and their
      panes. Students of mine might remember the button-box at the top
      right corner of the HTML projection slides, absent in the PDF rendering.

      The governing idea was that "it is easy to aggregate information into
      a set, but very difficult to disaggregate a set into constituent
      components". A common mantra when working with markup. Thus, I use
      XSLT to transform the granular panes into individual hyperlinked HTML
      pages, and then different XSLT to aggregate panes, frames, lessons
      and modules into chapters of PDF using XSL-FO. One set of rendered
      PDF was then published by Prentice Hall into an on-the-shelf
      publication. The same XML source was used both for my electronic
      publications (HTML and another XSL-FO to create different PDF) and
      the paper publications (printed PDF) with a very different look and feel.

      I suggest you do the same, thus getting the control you want for the
      HTML granularity (assuming that's the smallest) and the PDF
      aggregation that makes sense in each medium for the kind of
      information you are working with. Pick an authoring level of
      granularity that gives you the flexibility to do late-binding of
      different levels of aggregation.

      I hope this helps.

      . . . . . . . . . . . . Ken

      --
      Upcoming XSLT/XSL-FO hands-on courses: Denver,CO March 13-17,2006
      World-wide on-site corporate, govt. & user group XML/XSL training.
      G. Ken Holman mailto:gkholman@...
      Crane Softwrights Ltd. http://www.CraneSoftwrights.com/f/
      Box 266, Kars, Ontario CANADA K0A-2E0 +1(613)489-0999 (F:-0995)
      Male Cancer Awareness Aug'05 http://www.CraneSoftwrights.com/f/bc
      Legal business disclaimers: http://www.CraneSoftwrights.com/legal
    • tokukobayashi2002
      Hello! If you need to convert each page to a html page, it will be possible to achieve the objective by converting AreaTree to HTML. AreaTree is a pagenated,
      Message 2 of 9 , Jan 21, 2006
      • 0 Attachment
        Hello!

        If you need to convert each page to a html page, it will be possible
        to achieve the objective by converting AreaTree to HTML.

        AreaTree is a pagenated, intermediate XML from XSL FO instance.
        It is not a standard, processor dependent. Guideline is on XSL FO
        specification.

        As GUI of XSL Formatter can save an AreaTree, you may get the idea
        of AreaTree by using a evaluation copy of XSL Formatter.

        I hope it helps.

        Best regards,

        Tokushige Kobayashi


        -- Antenna House, Inc.
        E-mail koba@...
        WWW http://www.antenna.co.jp/ (Japanese)
        PDF Blog http://blog.antenna.co.jp/PDFTool/ (Japanese)
        WWW http://www.antennahouse.com/ (English)
        TEL +81-3-3234-1361 (direct call)
        FAX +81-3-3221-9975

        --- In XSL-FO@yahoogroups.com, Dan Moore <moore234@y...> wrote:
        >
        > Hi folks,
        >
        > I've been lurking on the XSL-FO list for a month or so now. I'm
        working for a company that has some very specific needs that I think
        XSL-FO might be able to meet. I've done some looking around
        (http://www.dpawson.co.uk/xsl/sect3/foreading.html and the fop
        website) and also some searches on the xsl-fo yahoogroup and the
        xsl-fo w3c group.
        >
        > However, I haven't found a way to do what we want. What we're
        looking for:
        >
        > A processor that supports the fo:float tag. Antenna and Render-X,
        among others, do this.
        >
        > It also needs to render to html. I found a few processors that did
        this (via this page:
        http://rkamal.blogspot.com/2004/12/list-of-xsl-fo-processors.html),
        but most of them used XSLT. What we want is paginated HTML. I'd like
        to leverage XSL-FO's pagination and then render to HTML.
        >
        > The final item is more of a preference: that the processor run on
        unix and have java APIs. That's not a hard requirement, though.
        >
        > Does the list have any suggestions? Am I wrong to be looking at
        XSL-FO as a possible solution for this? If so, are there any other
        technologies which might be appropriate?
        >
        > Thanks for your time.
        > Dan
        >
      • Dan Moore
        Thanks for the suggestion. I ve looked at FOP, and see that it has an area tree output which I could conceivably further process. Unfortunately, it seems that
        Message 3 of 9 , Jan 23, 2006
        • 0 Attachment
          Thanks for the suggestion.

          I've looked at FOP, and see that it has an area tree output which I could conceivably further process. Unfortunately, it seems that neither version of FOP (stable or dev) plans support for fo:float.

          Do you know of any processors (free or commercial), that expose the AreaTree without using the GUI? Does XSLFormatter allow that?

          Dan

          ----- Original Message ----
          From: tokukobayashi2002 <koba@...>
          To: XSL-FO@yahoogroups.com
          Sent: Saturday, January 21, 2006 18:56:30
          Subject: [XSL-FO] Re: suggested xsl-fo processors for floating images and html rendering

          Hello!

          If you need to convert each page to a html page, it will be possible
          to achieve the objective by converting AreaTree to HTML.

          AreaTree is a pagenated, intermediate XML from XSL FO instance.
          It is not a standard, processor dependent. Guideline is on XSL FO
          specification.

          As GUI of XSL Formatter can save an AreaTree, you may get the idea
          of AreaTree by using a evaluation copy of XSL Formatter.

          I hope it helps.

          Best regards,

          Tokushige Kobayashi


          -- Antenna House, Inc.
          E-mail koba@...
          WWW http://www.antenna.co.jp/ (Japanese)
          PDF Blog http://blog.antenna.co.jp/PDFTool/ (Japanese)
          WWW http://www.antennahouse.com/ (English)
          TEL +81-3-3234-1361 (direct call)
          FAX +81-3-3221-9975

          --- In XSL-FO@yahoogroups.com, Dan Moore <moore234@y...> wrote:
          >
          > Hi folks,
          >
          > I've been lurking on the XSL-FO list for a month or so now. I'm
          working for a company that has some very specific needs that I think
          XSL-FO might be able to meet. I've done some looking around
          (http://www.dpawson.co.uk/xsl/sect3/foreading.html and the fop
          website) and also some searches on the xsl-fo yahoogroup and the
          xsl-fo w3c group.
          >
          > However, I haven't found a way to do what we want. What we're
          looking for:
          >
          > A processor that supports the fo:float tag. Antenna and Render-X,
          among others, do this.
          >
          > It also needs to render to html. I found a few processors that did
          this (via this page:
          http://rkamal.blogspot.com/2004/12/list-of-xsl-fo-processors.html),
          but most of them used XSLT. What we want is paginated HTML. I'd like
          to leverage XSL-FO's pagination and then render to HTML.
          >
          > The final item is more of a preference: that the processor run on
          unix and have java APIs. That's not a hard requirement, though.
          >
          > Does the list have any suggestions? Am I wrong to be looking at
          XSL-FO as a possible solution for this? If so, are there any other
          technologies which might be appropriate?
          >
          > Thanks for your time.
          > Dan
          >






          SPONSORED LINKS
          Xml xsl Xsl Xsl fo Xsl tutorial
          YAHOO! GROUPS LINKS

          Visit your group "XSL-FO" on the web.
          To unsubscribe from this group, send an email to:
          XSL-FO-unsubscribe@yahoogroups.com
          Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.






          [Non-text portions of this message have been removed]
        • Dan Moore
          Hi, ... I m sorry I wasn t clear. What we want is to have printed web page break nicely. The document will still be in one pane when viewed, so it won t be
          Message 4 of 9 , Jan 23, 2006
          • 0 Attachment
            Hi,

            > ----- Original Message ----
            > From: G. Ken Holman <gkholman@...>
            > To: xsl-fo@yahoogroups.com
            > Sent: Friday, January 20, 2006 20:32:34
            > Subject: Re: [XSL-FO] suggested xsl-fo processors for floating images and html rendering

            > At 2006-01-20 09:25 -0800, Dan Moore wrote:
            > >I haven't found a way to do what we want. What we're looking for:
            > >
            > > A processor that supports the fo:float tag. Antenna and Render-X,
            > > among others, do this.
            > >
            > > It also needs to render to html. I found a few processors that
            > > did this (via this page:
            > > http://rkamal.blogspot.com/2004/12/list-of-xsl-fo-processors.html),
            > > but most of them used XSLT.
            >
            > Right ... because the XSL-FO specification says nothing about
            > rendering, most such solutions are just transformations from XML to
            > HTML in parallel with XML to XSL-FO. The XSL-FO specification only
            > describes the interpretation of XSL-FO constructs into an area tree
            > representing the content that belongs on each of a set of pages.
            >
            > >What we want is paginated HTML.
            >
            > I'm guessing here you want a set of hyperlinked pages, "prev" and
            > "next" links back and forth to "pages" that have been parcelled out
            > from the interpreted content.

            I'm sorry I wasn't clear. What we want is to have printed web page break nicely. The document will still be in one pane when viewed, so it won't be broken up into hyperlinked pages.

            ... snip ...

            > > Does the list have any suggestions?
            >
            > I use http://www.renderx.com/tools/fo2html.html to transform an
            > XSL-FO instance into a single HTML+CSS file. I've had to tweak it
            > and wrap it to get some benefits needed that are not provided for by
            > the publicly-available version.

            Thanks. I found this nosing around after I had posted. This is great in that it turns the XSL-FO to HTML, but it doesn't preserve pagination. I'm sure that's because pagination is not a property of the XSL-FO stylesheet, but rather an outgrowth of the processor applying the XSL-FO to content.

            > >Am I wrong to be looking at XSL-FO as a possible solution for this?
            >
            > Perhaps ... I don't know of any vendor that takes the "interpreted
            > XSL-FO semantics in the area tree" and renders the area tree as HTML.

            OK. Do you know of any vendors that make that area tree available so that we might be able to translate the area tree to HTML via a plugin or extension? I've looked at FOP, which does provide an XMLRenderer. But, unfortunately, FOP does not support fo:float, which is another requirement.

            > >If so, are there any other technologies which might be appropriate?
            >
            > In my training material design, the smallest level of granularity
            > upon which I write the content is what I call a "pane" ... XSLT
            > produces a single HTML page for each pane and hyperlinks every pane
            > to its previous one, its next one, the first pane of the current
            > frame of panes, the first pane of the first frame of the previous
            > lesson of frames, the first frame of the current lesson of frames,
            > the first pane of the first frame of the next lesson of frames, the
            > first pane of the first frame of the first lesson of the previous
            > module of lessons, the first pane of the first lesson of the current
            > module of lessons, the first pane of the first lesson of the next
            > module of lessons, and the index of all frames and their
            > panes. Students of mine might remember the button-box at the top
            > right corner of the HTML projection slides, absent in the PDF rendering.
            >
            > The governing idea was that "it is easy to aggregate information into
            > a set, but very difficult to disaggregate a set into constituent
            > components". A common mantra when working with markup. Thus, I use
            > XSLT to transform the granular panes into individual hyperlinked HTML
            > pages, and then different XSLT to aggregate panes, frames, lessons
            > and modules into chapters of PDF using XSL-FO. One set of rendered
            > PDF was then published by Prentice Hall into an on-the-shelf
            > publication. The same XML source was used both for my electronic
            > publications (HTML and another XSL-FO to create different PDF) and
            > the paper publications (printed PDF) with a very different look and feel.
            >
            > I suggest you do the same, thus getting the control you want for the
            > HTML granularity (assuming that's the smallest) and the PDF
            > aggregation that makes sense in each medium for the kind of
            > information you are working with. Pick an authoring level of
            > granularity that gives you the flexibility to do late-binding of
            > different levels of aggregation.

            I think I get what you're saying. However, what we want is a 'pane' that corresponds to a printed 8 1/2" by 11" page. And I don't know how to get that without using a tool like XSL-FO (or counting characters + font metrics, a solution I'm trying to shy away from).

            Thanks for your suggestions.
            Dan





            [Non-text portions of this message have been removed]
          • Eliot Kimber
            ... Both XEP and XSL Formatter provide some form of area tree that you can post-process. ... I m still not sure I understand exactly what you re looking for,
            Message 5 of 9 , Jan 23, 2006
            • 0 Attachment
              Dan Moore wrote:
              >> Perhaps ... I don't know of any vendor that takes the "interpreted
              >> XSL-FO semantics in the area tree" and renders the area tree as
              >> HTML.
              >
              > OK. Do you know of any vendors that make that area tree available so
              > that we might be able to translate the area tree to HTML via a plugin
              > or extension? I've looked at FOP, which does provide an XMLRenderer.
              > But, unfortunately, FOP does not support fo:float, which is another
              > requirement.

              Both XEP and XSL Formatter provide some form of area tree that you can
              post-process.

              > I think I get what you're saying. However, what we want is a 'pane'
              > that corresponds to a printed 8 1/2" by 11" page. And I don't know
              > how to get that without using a tool like XSL-FO (or counting
              > characters + font metrics, a solution I'm trying to shy away from).

              I'm still not sure I understand exactly what you're looking for, but
              using the area tree you should be able to at least capture the page
              breaks so that whatever generates your HTML can reflect it in some way.

              Cheers,

              Eliot

              --
              W. Eliot Kimber
              Professional Services
              Innodata Isogen
              9390 Research Blvd, #410
              Austin, TX 78759
              (512) 372-8841

              ekimber@...
              www.innodata-isogen.com
            • tokukobayashi2002
              Hello, ... could conceivably further process. Unfortunately, it seems that neither version of FOP (stable or dev) plans support for fo:float. ... I am not
              Message 6 of 9 , Jan 24, 2006
              • 0 Attachment
                Hello,

                --- In XSL-FO@yahoogroups.com, Dan Moore <moore234@y...> wrote:
                >
                > Thanks for the suggestion.
                >
                > I've looked at FOP, and see that it has an area tree output which I
                could conceivably further process. Unfortunately, it seems that
                neither version of FOP (stable or dev) plans support for fo:float.
                >

                I am not familiar with FOP.

                > Do you know of any processors (free or commercial), that expose the
                AreaTree without using the GUI? Does XSLFormatter allow that?

                In the case of XSL Formatter, it will be possible to generate areatree
                by using @AreaTree instead of @PDF at any interface such as command
                line etc.

                I hope it will be helpful.

                Tokushige Kobayashi
                -- Antenna House, Inc.
                E-mail koba@...
                WWW http://www.antenna.co.jp/ (Japanese)
                PDF Blog http://blog.antenna.co.jp/PDFTool/ (Japanese)
                WWW http://www.antennahouse.com/ (English)
                TEL +81-3-3234-1361 (direct call)
                FAX +81-3-3221-9975
              • Eliot Kimber
                ... It does, as does XEP (which has no GUI, only an API and a command line). Cheers, Eliot -- W. Eliot Kimber Professional Services Innodata Isogen 9390
                Message 7 of 9 , Jan 24, 2006
                • 0 Attachment
                  Dan Moore wrote:

                  > Do you know of any processors (free or commercial), that expose the
                  > AreaTree without using the GUI? Does XSLFormatter allow that?

                  It does, as does XEP (which has no GUI, only an API and a command line).

                  Cheers,

                  Eliot
                  --
                  W. Eliot Kimber
                  Professional Services
                  Innodata Isogen
                  9390 Research Blvd, #410
                  Austin, TX 78759
                  (512) 372-8841

                  ekimber@...
                  www.innodata-isogen.com
                • Dan Moore
                  OK. Looks like there are a couple of viable solutions. I will investigate further. I d like to thank everyone who chimed in for their time and input. Dan ...
                  Message 8 of 9 , Jan 24, 2006
                  • 0 Attachment
                    OK. Looks like there are a couple of viable solutions. I will investigate further.

                    I'd like to thank everyone who chimed in for their time and input.

                    Dan

                    ----- Original Message ----
                    From: Eliot Kimber
                    To: XSL-FO@yahoogroups.com
                    Sent: Tuesday, January 24, 2006 08:06:28
                    Subject: Re: [XSL-FO] Re: suggested xsl-fo processors for floating images and html rendering

                    Dan Moore wrote:

                    > Do you know of any processors (free or commercial), that expose the
                    > AreaTree without using the GUI? Does XSLFormatter allow that?

                    It does, as does XEP (which has no GUI, only an API and a command line).

                    Cheers,

                    Eliot
                    --
                    W. Eliot Kimber
                    Professional Services
                    Innodata Isogen
                    9390 Research Blvd, #410
                    Austin, TX 78759
                    (512) 372-8841

                    ekimber@...
                    www.innodata-isogen.com




                    SPONSORED LINKS
                    Xml xsl Xsl Xsl fo Xsl tutorial
                    YAHOO! GROUPS LINKS

                    Visit your group "XSL-FO" on the web.
                    To unsubscribe from this group, send an email to:
                    XSL-FO-unsubscribe@yahoogroups.com
                    Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
                  Your message has been successfully submitted and would be delivered to recipients shortly.