2017-01-20 7 views
1

一括htmlファイルをpdfに変換中に、変換に失敗しました。同じhtmlファイルの場合、時には動作します。主に、より多くのファイルがある場合は、1つまたは2つが失敗します。PDFTron - HTML2PDF - 操作ファイルの検索に失敗しました

PdfTronバージョン:2016年9月、 環境:Linuxでは、この記事で続いたJava 8

https://www.pdftron.com/pdfnet/samplecode/HTML2PDFTest.java.html

String inputHtml = "/myfolder/output.html"; 
String outputPdf = "/myfolder/output.pdf"; 
PDFNet.initialize(); 
PDFDoc doc = new PDFDoc(); 
HTML2PDF converter = new HTML2PDF(); 
converter.setLandscape(false); 
converter.setPaperSize(9); 
converter.insertFromHtmlString(new String(Files.readAllBytes(Paths.get(inputHtml)))); 
if (converter.convert(doc)) { 
    doc.initSecurityHandler(); 
    doc.save(outputPdf, SDFDoc.e_linearized, null); 
} else { 
    log.error("Conversion failed. HTTP Code: " + converter.getHTTPErrorCode() + "\n" + converter.getLog()); 
} 

出力

Conversion failed. HTTP Code: 0 
Loading pages (1/6) 
[>               ] 0% 
[======>              ] 10% 
[=================>           ] 29% 
[===================>          ] 33% 
[=====================>          ] 36% 
[============================================================] 100% 
Counting pages (2/6)            
[============================================================] Object 1 of 1 
Resolving links (4/6)              
[============================================================] Object 1 of 1 
Loading headers and footers (5/6)           
Printing pages (6/6) 
[>               ] Preparing 
[==============================>        ] Page 1 of 2 
[============================================================] Page 2 of 2 
Done                  
Post Process Error: Operation file seek failed 
StdFile.cpp:478 
DataWrite 
+0

パス '\ myfolder \ output.pdf'にファイルを書き換えていますか? –

+0

@FahadSiddiqui、いいえ私は/myfolder/output.pdfだけではありません。毎回一意のIDを持つ新しいファイル名を使用しています。 – Sheel

答えて

1

ほとんどの場合、使用されている一時フォルダには読み取り/書き込みのアクセス許可の問題があります。

以下を試してください。

PDFNet.setTempPath(folder_that_you_know_your_process_can_read_write); 
PDFNet.initialize(); 
0

Javaで使用することはできませんパスを表す文字列の単純なバックスラッシュ。文字列"\myfolder\output.pdf""myfolderoutput.pdf"に等しい。

+0

申し訳ありませんが、バックスラッシュ(つまり、誤植)は完全に無視されます。更新された質問。 – Sheel

関連する問題