source

HTML 파일을 PDF로 변환

goodcode 2022. 9. 8. 21:52
반응형

HTML 파일을 PDF로 변환

기존(X)에서 PDF 파일을 자동으로 생성해야 합니다.HTML 문서입력 파일(리포트)은 다소 단순한 테이블 기반 레이아웃을 사용하기 때문에 매우 화려한 JavaScript/CSS에 대한 지원은 필요하지 않습니다.

자바에서 작업하는 것이 익숙하기 때문에 자바 프로젝트에서 사용하기 쉬운 솔루션이 좋습니다.다만, Windows 시스템에서만 동작하면 됩니다.

실현 가능하지만 (최소한 즉시 사용 가능한) 고품질의 출력을 얻을 수 없는 방법 중 하나는 CSS2XSLFO와 Apache FOP를 사용하여 PDF 파일을 작성하는 것입니다.CSS Attribute가 올바르게 변환되어 있는 동안 테이블 셀에서 텍스트가 흘러나오는 등 테이블 레이아웃이 엉망이라는 문제가 있었습니다.

Gecko 렌더링 엔진을 사용하기 위한 Java-API Jrex도 간단히 살펴보았습니다.

Internet Explorer 렌더링 엔진에서 렌더링된 페이지를 가져와 PDF-Printer 툴로 자동으로 전송하는 방법이 있습니까?윈도우에서 OLE 프로그래밍을 해본 경험이 없기 때문에 무엇이 가능하고 무엇이 불가능한지 전혀 알 수 없습니다.

좋은 생각 있어요?

Flying Saucer XHTML 렌더러 프로젝트는 XHTML을 PDF로 출력하는 것을 지원합니다.여기 를 보세요.

WKHTMLTOPDF 먹어봤어?

이것은 단순한 셸 유틸리티이며 WebKit의 오픈 소스 구현입니다.둘 다 무료입니다.

여기에 작은 튜토리얼을 설정했습니다.

편집(2017):

만약 오늘 무언가를 짓기 위해서라면, 나는 더 이상 그 길을 가지 않을 것이다.
대신 http://pdfkit.org/을 사용합니다.
브라우저에서 실행하기 위해 모든 nodejs 종속성을 제거합니다.

iText를 보세요.HTML로부터의 데이터 읽기를 지원하는 순수 Java PDF 툴킷입니다.최근 CMS에서 콘텐츠를 가져와 PDF 파일로 내보내야 할 때 프로젝트에서 사용했는데, 모든 것이 비교적 간단했습니다.CSS 및 스타일 태그의 지원은 매우 제한적이지만 문제없이 테이블을 렌더링할 수 있습니다(단, 컬럼 너비를 설정할 수 없었습니다).

HTML 에서 PDF 를 작성하는 순서는 다음과 같습니다.

Document doc = new Document(PageSize.A4);
PdfWriter.getInstance(doc, out);
doc.open();
HTMLWorker hw = new HTMLWorker(doc);
hw.parse(new StringReader(html));
doc.close();

만약 당신이 자금을 가지고 있다면, 이 비디오가 보여주는 처럼 Prince XML을 능가하는 것은 없다.

Internet Explorer 렌더링 엔진에서 렌더링된 페이지를 가져와 PDF-Printer 툴로 자동으로 전송하는 방법이 있습니까?

ActivePDF는 이렇게 동작합니다.이것은 무엇을 얻을 수 있는지 알고 있다는 것을 의미하며, 실제로 합리적인 스타일링을 지원합니다.

또한 실제로 다양한 페이지 나누기 CSS 명령을 지원하는 몇 안 되는 패키지 중 하나입니다(몇 년 전으로 거슬러 올라가 보면).


안타깝게도 ActivePDF 소프트웨어는 변환을 위해 백그라운드에서 IE 브라우저를 실행해야 하기 때문에 속도가 느릴 수 있고 특별히 안정적이지도 않습니다.

현재 베타판에는 더 좋을 것 같은 새로운 버전이 있습니다만, 실제로 사용해 본 적이 없기 때문에, 얼마나 개선되고 있는지는 모릅니다.

확장과 함께 헤드리스 Firefox를 사용할 수 있습니다.달리는 것은 꽤 귀찮지만 좋은 결과를 낳는다.

자세한 내용은 이 답변을 참조하십시오.

질문의 사이드바를 보시면 관련된 질문들이 많이 있습니다.

이 경우, PDFCreator 와 같은 PDF 인쇄 드라이버를 인스톨 해, 이 출력에 페이지를 인쇄하는 것이 보다 간단한 방법이 됩니다.

Amyuni WebkitPDF는 Windows 전용 솔루션에 JNI와 함께 사용할 수 있습니다.이 라이브러리는 HTML에서 PDF/XAML로 변환하는 라이브러리로, 상업용 및 비상업용으로 무료로 사용할 수 있습니다.

출력 파일이 즉시 필요하지 않은 경우 확장성을 높이기 위해 큐와 몇 가지 백그라운드 프로세스를 통해 항목을 가져와 변환한 후 데이터베이스 또는 파일 시스템에 저장하는 것이 좋습니다.

통상의 면책 조항이 적용됩니다.

언급URL : https://stackoverflow.com/questions/633780/converting-html-files-to-pdf

반응형