

import org.w3c.dom.*;
import org.xml.sax.*; 

import javax.xml.parsers.*; 
import javax.xml.transform.*; 
import javax.xml.transform.dom.*; 
import javax.xml.transform.sax.*; 
import javax.xml.transform.stream.*; 

import org.apache.fop.apps.*;

import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;

public class Menu2Pdf {
       
    public static void main(String[] args) {
    
		    String fichIn = args[0]; // la source XML
		    String fichFst = args[1]; // la "feuille de style" XSLT
		    String fichOut = args[2]; // le fichier de sortie en PDF 
		    
		    Driver driver = new Driver();
		    driver.setRenderer(Driver.RENDER_PDF);
		    
		    try {
		    	OutputStream out = new FileOutputStream(fichOut);
		    	driver.setOutputStream(out);
		    	Result res = new SAXResult(driver.getContentHandler());
							
				DocumentBuilder parseur = 
			       		DocumentBuilderFactory.newInstance().newDocumentBuilder();
	    		Document doc = parseur.parse(fichIn);
	    		DOMSource don = new DOMSource(doc);
	    		
	    		StreamSource fst = new StreamSource(new File(fichFst));
	    		Transformer tf = TransformerFactory.newInstance().newTransformer(fst);
	    		
		    	tf.transform(don, res);
				out.close();
				
			} catch (Exception e) {
	    		System.out.println("Erreur "+ e.getMessage());
            }
    } // main
}//Menu2Pdf

