import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.OutputStream;
import org.apache.poi.hwpf.HWPFDocument;
import org.apache.poi.hwpf.extractor.WordExtractor;
import org.apache.poi.hwpf.usermodel.Paragraph;
import org.apache.poi.hwpf.usermodel.Range;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;
import com.lowagie.text.Document;
import com.lowagie.text.pdf.PdfWriter;
public class PDFmake {
// doc파일 pdf 변환
// 참조 - https://pythonq.com/so/java/289023
public static void main(String[] args) {
POIFSFileSystem pfs = null;
Document doc = new Document();
try {
pfs = new POIFSFileSystem(new FileInputStream("D:\\TEST\\test.doc"));// doc파일 경로
HWPFDocument hd = new HWPFDocument(pfs);
WordExtractor we = new WordExtractor(hd);
OutputStream os = new FileOutputStream(new File("D:\\TEST\\test.pdf"));// pdf 경로
PdfWriter writer = PdfWriter.getInstance(doc, os);
Range range = hd.getRange();
doc.open();
writer.setPageEmpty(true);
doc.newPage();
writer.setPageEmpty(true);
String[] paragraph = we.getParagraphText();
for(int i=0; i<paragraph.length; i++){
Paragraph pre = range.getParagraph(i);
paragraph[i] = paragraph[i].replaceAll("\\cM?\r?\n", "");
doc.add(new com.lowagie.text.Paragraph(paragraph[i]));
}
System.out.println("pdf 생성완료");
} catch (Exception e) {
e.printStackTrace();
}finally {
doc.close();
}
}
}
자바로 워드문서를 PDF로 변환할 수 있나 해서 해봤는데 글자는 되는데 표는 안 되는거 같네요....
다른 분들 보니깐 되는거 같긴한데 잘 모르겠네요... 혹시 보시고 아시는 분들은 댓글 남겨주시면 감사하겠습니다~
'java' 카테고리의 다른 글
| [Java] zip파일 내부 목록확인 (0) | 2021.12.31 |
|---|---|
| [Java]JDBC DELETE하기 (0) | 2021.10.30 |
| [Java]JDBC UPDATE하기 (0) | 2021.10.30 |
| [Java] JDBC INSERT하기 (0) | 2021.10.30 |
| [Java] JDBC로 오라클 연결 (0) | 2021.10.27 |

댓글