You are viewing a plain text version of this content. The canonical link for it is here.
Posted to doxia-commits@maven.apache.org by lt...@apache.org on 2009/04/08 14:15:01 UTC

svn commit: r763203 - /maven/doxia/doxia-sitetools/trunk/doxia-doc-renderer/src/main/java/org/apache/maven/doxia/docrenderer/pdf/fo/FoPdfRenderer.java

Author: ltheussl
Date: Wed Apr  8 12:15:00 2009
New Revision: 763203

URL: http://svn.apache.org/viewvc?rev=763203&view=rev
Log:
Override default layout properties if a custom config file is found (DOXIA-305)

Modified:
    maven/doxia/doxia-sitetools/trunk/doxia-doc-renderer/src/main/java/org/apache/maven/doxia/docrenderer/pdf/fo/FoPdfRenderer.java

Modified: maven/doxia/doxia-sitetools/trunk/doxia-doc-renderer/src/main/java/org/apache/maven/doxia/docrenderer/pdf/fo/FoPdfRenderer.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-doc-renderer/src/main/java/org/apache/maven/doxia/docrenderer/pdf/fo/FoPdfRenderer.java?rev=763203&r1=763202&r2=763203&view=diff
==============================================================================
--- maven/doxia/doxia-sitetools/trunk/doxia-doc-renderer/src/main/java/org/apache/maven/doxia/docrenderer/pdf/fo/FoPdfRenderer.java (original)
+++ maven/doxia/doxia-sitetools/trunk/doxia-doc-renderer/src/main/java/org/apache/maven/doxia/docrenderer/pdf/fo/FoPdfRenderer.java Wed Apr  8 12:15:00 2009
@@ -93,10 +93,7 @@
 
         if ( outputName == null )
         {
-            if ( getLogger().isInfoEnabled() )
-            {
-                getLogger().info( "No outputName is defined in the document descriptor. Using 'target.pdf'" );
-            }
+            getLogger().info( "No outputName is defined in the document descriptor. Using 'target.pdf'" );
 
             documentModel.setOutputName( "target" );
         }
@@ -121,6 +118,9 @@
             pdfOutputFile.getParentFile().mkdirs();
         }
 
+        // copy resources, images, etc.
+        copyResources( outputDirectory );
+
         Writer writer = null;
         try
         {
@@ -128,6 +128,14 @@
 
             FoAggregateSink sink = new FoAggregateSink( writer );
 
+            File fOConfigFile = new File( outputDirectory, "pdf-config.xml" );
+
+            if ( fOConfigFile.exists() )
+            {
+                sink.load( fOConfigFile );
+                getLogger().debug( "Loaded pdf config file: " + fOConfigFile.getAbsolutePath() );
+            }
+
             sink.setDocumentModel( documentModel  );
 
             sink.beginDocument();
@@ -138,10 +146,7 @@
 
             if ( ( documentModel.getToc() == null ) || ( documentModel.getToc().getItems() == null ) )
             {
-                if ( getLogger().isInfoEnabled() )
-                {
-                    getLogger().info( "No TOC is defined in the document descriptor. Merging all documents." );
-                }
+                getLogger().info( "No TOC is defined in the document descriptor. Merging all documents." );
 
                 for ( Iterator j = filesToProcess.keySet().iterator(); j.hasNext(); )
                 {
@@ -223,9 +228,6 @@
             IOUtil.close( writer );
         }
 
-        // copy resources, images, etc.
-        copyResources( outputDirectory );
-
         generatePdf( outputFOFile, pdfOutputFile );
     }