Я пытаюсь преобразовать HTMLl-файл в PDF. Для этого я использую iText. Если HTML имеет какое-то изображение в своем теле, iText не может поместить это изображение в PDF-файл, и это вызывает следующее исключение.Преобразование HTML в PDF с использованием iText
ExceptionConverter: java.io.FileNotFoundException: D:\cid:[email protected] (The system cannot find the file specified).
Если HTML имеет некоторый образ в его теле, можно прочитать, что изображение и сделать его в качестве приложения к этому PDF файл? Вот мой исходный код (Truncate.java):
import java.io.BufferedReader;
import java.io.DataInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Element;
import com.lowagie.text.Paragraph;
import com.lowagie.text.html.simpleparser.HTMLWorker;
import com.lowagie.text.pdf.PdfWriter;
public class Truncate {
public static void main(String[] args) throws DocumentException {
// TODO Auto-generated method stub
FileReader fr = null;
Document document = new Document();
document.open();
PdfWriter writer = null;
try {
String file_name = "C:\\Documentum\\Viewed\\911.htm";
fr = new FileReader(file_name);
PdfWriter.getInstance(document, System.out);
writer = PdfWriter.getInstance(document, new FileOutputStream(
"C:\\Documentum\\Viewed\\RH\\RH.pdf"));
document.add(new Paragraph("RH Mail"));
ArrayList htmlContentList = HTMLWorker.parseToList(fr, null);
//fetch the html content line by line
for (int htmlDataCntr = 0; htmlDataCntr < htmlContentList.size(); htmlDataCntr++) {
Element htmlDataElement = (Element) htmlContentList
.get(htmlDataCntr);
document.add(htmlDataElement);
}
fr.close();
document.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
catch(Exception e){
System.out.println(e);
}
}
}
Да. Вы абсолютно правы. Мы предоставили поставщику API (Documentum), который преобразует электронное письмо в документ HTML. Затем мы анализируем/конвертируем этот HTML-документ в PDF-документ с помощью iText. Хотя мы пытаемся проанализировать этот HTML-документ, мы получаем исключение. – balaji
Как я уже сказал, проблема ложится вверх по течению. В моем ответе я объясню еще несколько объяснений. –