1

Java を使用して HTML ドキュメントを PDF に変換しようとしていますが、見つけた唯一の解決策は iText (XMLWorkerHelper) を使用することでした。

それは機能しますが、私の問題は、HTMLフォームの値を無視しているように見えるため、最終的なpdfに表示されないことです. たとえば、HTML に「名前: [TextBox に書かれたもの]」がある場合、

<input class="layout" readonly="readonly" name="Name"
                  id="Name" value="ABCD WXYZ" size="83" maxlength="60"
                  type="text" />

「名前:」のみがPDFに含まれます。

この(ばかげた?)問題を解決する方法についてのヒントはありますか?もちろん、さまざまな (オープン ソース) API を使用することもできます。

私のコードが添付されています:

private static void createPDF (){  

    String path = "myTest.pdf";  
    PdfWriter pdfWriter = null;  

    //create a new document  
    Document document = new Document();  

    try {  

     //get Instance of the PDFWriter  
     pdfWriter = PdfWriter.getInstance(document, new FileOutputStream(path));  

     //document header attributes  

     //open document  
     document.open();  
     InputStream is = new FileInputStream("page.html");  

     // create new input stream reader  
     InputStreamReader isr = new InputStreamReader(is);  

     //get the XMLWorkerHelper Instance  
     XMLWorkerHelper worker = XMLWorkerHelper.getInstance();  
     //convert to PDF  
     worker.parseXHtml(pdfWriter, document, isr);  

     //close the document  
     document.close();  
     //close the writer  
     pdfWriter.close();  

    } catch (Exception e) {  
        e.printStackTrace();  
    }  

   }  

ご覧のとおり、コンパイルするものはそれほど多くないので、問題はワーカー自体にあると思います。おそらく、それを機能させるために何かを無視しているのでしょう。任意のオンライン サービスで HTML ページを変換しようとすると、完全に機能します。

ところで、html ソースを iText デモ ( http://demo.itextsupport.com/xmlworker/ ) にアップロードしようとしましたが、まだ問題があります...

4

0 に答える 0