You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@forrest.apache.org by is...@cocoondev.org on 2005/03/10 01:21:19 UTC

[JIRA] Updated: (FOR-413) PDF: rendering fails when graphics too big - workaround inside

The following issue has been updated:

    Updater: Dave Brondsema (mailto:brondsem@apache.org)
       Date: Wed, 9 Mar 2005 6:21 PM
    Changes:
             Component changed to Plugin: pdf-output
             Component changed from Core operations
    ---------------------------------------------------------------------
For a full history of the issue, see:

  http://issues.cocoondev.org//browse/FOR-413?page=history

---------------------------------------------------------------------
View the issue:
  http://issues.cocoondev.org//browse/FOR-413

Here is an overview of the issue:
---------------------------------------------------------------------
        Key: FOR-413
    Summary: PDF: rendering fails when graphics too big - workaround inside
       Type: Bug

     Status: Unassigned
   Priority: Major

    Project: Forrest
 Components: 
             Plugin: pdf-output
   Versions:
             0.6

   Assignee: 
   Reporter: Olivier Jacques

    Created: Fri, 10 Dec 2004 4:27 AM
    Updated: Wed, 9 Mar 2005 6:21 PM

Description:
When "forresting" a document that has embedded images, the PDF rendering sometimes stops with this error message:

BROKEN: org.apache.fop.apps.FOPException: No meaningful layout in block after many attempts.  Infinite loop is assumed.  Processing halted.

I've found that this is caused by images that are too big to fit in the PDF page (took me some times :) )
I temporary "solved" it by modifying the document2fo.xsl. When I specify the "width" or "height" attribute to the img, then the value is taken and divided by 2. WARNING: the value has to be an integer and a "px" (pixels) size.

We should find a way to reduce the size automatically.

$ diff -bruN document2fo.xsl~ document2fo.xsl
--- document2fo.xsl~    2004-12-09 17:51:42.486185200 +0100
+++ document2fo.xsl     2004-12-09 22:03:32.465852800 +0100
@@ -755,10 +755,14 @@
       </xsl:variable>
       <fo:external-graphic src="{$imgpath}">
         <xsl:if test="@height">
-          <xsl:attribute name="height"><xsl:value-of select="@height"/></xsl:attribute>
+          <xsl:variable name="reducedheight"
+                        select="number(@height)" />
+          <xsl:attribute name="height"><xsl:value-of select="concat(number($reducedheight) div 2,'px')"/></xsl:attribute>
         </xsl:if>
         <xsl:if test="@width">
-          <xsl:attribute name="width"><xsl:value-of select="@width"/></xsl:attribute>
+          <xsl:variable name="reducedwidth"
+                        select="number(@width)" />
+          <xsl:attribute name="width"><xsl:value-of select="concat(number($reducedwidth) div 2,'px')"/></xsl:attribute>
         </xsl:if>
       </fo:external-graphic>
       <!-- alt text -->



---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.

If you think it was sent incorrectly contact one of the administrators:
   http://issues.cocoondev.org//secure/Administrators.jspa

If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira