Hello,
 
I try to generate a PDF/A-1b file. For this, i use the example code
ExampleXML2PDF.java, and i obtain this code :
 
 /*
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
  * this work for additional information regarding copyright ownership.
  * The ASF licenses this file to You under the Apache License, Version 2.0
  * (the "License"); you may not use this file except in compliance with
  * the License.  You may obtain a copy of the License at
  *
  *      http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 
 /* $Id: ExampleXML2PDF.java 426576 2006-07-28 15:44:37Z jeremias $ */
 
 //Java
 import java.io.File;
 import java.io.OutputStream;
 
 //JAXP
 import javax.xml.transform.Transformer;
 import javax.xml.transform.TransformerFactory;
 import javax.xml.transform.Source;
 import javax.xml.transform.Result;
 import javax.xml.transform.stream.StreamSource;
 import javax.xml.transform.sax.SAXResult;
 
 //FOP
 import org.apache.fop.apps.FOUserAgent;
 import org.apache.fop.apps.Fop;
 import org.apache.fop.apps.FopFactory;
 import org.apache.fop.apps.MimeConstants;
 import org.apache.fop.fo.FOElementMapping;
 import org.apache.fop.fo.extensions.ExtensionElementMapping;
 import org.apache.fop.fo.extensions.svg.BatikExtensionElementMapping;
 import org.apache.fop.fo.extensions.svg.SVGElementMapping;
 import org.apache.fop.fo.extensions.xmp.RDFElementMapping;
 import org.apache.fop.fo.extensions.xmp.XMPElementMapping;
 import org.apache.fop.render.ps.extensions.PSExtensionElementMapping;
 
 /**
  * This class demonstrates the conversion of an XML file to PDF using
  * JAXP (XSLT) and FOP (XSL-FO).
  */
 public class ExampleXML2PDF {
 
     /**
      * Main method.
      * @param args command-line arguments
      */
     public static void main(String[] args) {
         try {
             System.out.println("FOP ExampleXML2PDF\n");
             System.out.println("Preparing...");
 
             // Setup directories
             File baseDir = new File("files");
             File outDir = new File(baseDir, "pdf");
             outDir.mkdirs();
 
             // Setup input and output files           
             File xmlfile = new File(baseDir, "xml/projectteam.xml");
             File xsltfile = new File(baseDir, "xslt/projectteam2fo.xsl");
             File pdffile = new File(outDir, "ResultXML2PDF.pdf");
 
             System.out.println("Input: XML (" + xmlfile + ")");
             System.out.println("Stylesheet: " + xsltfile);
             System.out.println("Output: PDF (" + pdffile + ")");
             System.out.println();
             System.out.println("Transforming...");
            
             // configure fopFactory as desired
             FopFactory fopFactory = FopFactory.newInstance();
 
             File configFile = new File("files/fop.xconf");
             fopFactory.setUserConfig(configFile);
      
             FOUserAgent foUserAgent = fopFactory.newFOUserAgent();
             foUserAgent.getRendererOptions().put("pdf-a-mode", "PDF/A-1b");
             // configure foUserAgent as desired
     PDFRenderer pdfrenderer = new PDFRenderer();
     pdfrenderer.setUserAgent(foUserAgent);
 
     foUserAgent.setRendererOverride(pdfrenderer);
 
             // Setup output
             OutputStream out = new java.io.FileOutputStream(pdffile);
             out = new java.io.BufferedOutputStream(out);
            
             try {
                 // Construct fop with desired output format
                 Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, foUserAgent, out);
                            
                 // Setup XSLT
                 TransformerFactory factory = TransformerFactory.newInstance();
                 Transformer transformer = factory.newTransformer(new StreamSource(xsltfile));
                
                 // Set the value of a param in the stylesheet
                 transformer.setParameter("versionParam", "2.0");
            
                 // Setup input for XSLT transformation
                 Source src = "" StreamSource(xmlfile);
            
                 // Resulting SAX events (the generated FO) must be piped through to FOP
                 Result res = new SAXResult(fop.getDefaultHandler());
    
                 // Start XSLT transformation and FOP processing
                 transformer.transform(src, res);
             } finally {
                 out.close();
             }
            
             System.out.println("Success!");
         } catch (Exception e) {
             e.printStackTrace(System.err);
             System.exit(-1);
         }
     }
 }
 
 
 
 The content of the file fop.xconf is :
 
 
 <?xml version="1.0"?>
<fop version="1.0">
<!-- Strict user configuration -->
  <strict-configuration>true</strict-configuration>
  <!-- Strict FO validation -->
  <strict-validation>true</strict-validation>
 
  <!-- Base URL for resolving relative URLs -->
  <base>./</base>
 
  <!-- Font Base URL for resolving relative font URLs -->
  <font-base>./</font-base>
 
  <!-- Source resolution in dpi (dots/pixels per inch) for determining the size of pixels in SVG and bitmap images, default: 72dpi -->
  <source-resolution>72</source-resolution>
  <!-- Target resolution in dpi (dots/pixels per inch) for specifying the target resolution for generated bitmaps, default: 72dpi -->
  <target-resolution>300</target-resolution>
 
  <!-- Default page-height and page-width, in case
       value is specified as auto -->
  <default-page-settings height="29.7cm" width="21cm"/>
 
  <!-- Information for specific renderers -->
  <!-- Uses renderer mime type for renderers -->
  <renderers>
    <renderer mime="application/pdf">
      <fonts>
        <font metrics-url="" kerning="yes" embed-url="">
          <font-triplet name="Arial" style="normal" weight="normal"/>
        </font>
      </fonts>
    </renderer>
  </renderers>
</fop>
 
 
 The files arial.ttf.xml and arial.ttf are in the same directory that the file
fop.xconf
 
 I have this error :
 
 19 oct. 2007 15:42:41 org.apache.fop.fonts.FontInfo notifyFontReplacement
ATTENTION: Font 'Arial,normal,700' not found. Substituting with 'any,normal,700'.
19 oct. 2007 15:42:41 org.apache.fop.fonts.FontInfo notifyFontReplacement
ATTENTION: Font 'Arial,normal,400' not found. Substituting with 'any,normal,400'.
19 oct. 2007 15:42:41 org.apache.fop.fo.FOTreeBuilder fatalError
GRAVE: org.apache.fop.pdf.PDFConformanceException: For PDF/A-1b, all fonts, even the base 14 fonts, have to be embedded! Offending font: Times-Roman
(Emplacement inconnu de l'erreur)org.apache.fop.pdf.PDFConformanceException: For PDF/A-1b, all fonts, even the base 14 fonts, have to be embedded! Offending font: Times-Roman
 
 Please help me!
 
 Thanks.


MSN Hotmail sur i-mode™ : envoyez et recevez des e-mails depuis votre téléphone portable ! --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to