Preloader image
DDD

리눅스

오픈소스) 동적으로 HTML 웹 문서를 PDF, DOCX, PNG로 변환 및 생성

작성자 관리자 (admin)
조회수 121
입력일 2026-08-22 08:54:34

웹 서비스(백엔드/서버) 환경에서 동적으로 HTML 웹 문서를 PDF, DOCX, PNG로 변환 및 생성할 수 있는 대표적인 오픈소스/무료 백엔드 라이브러리 및 솔루션입니다.

구분 추천 서버 솔루션 지원 포맷 주요 특징 및 백엔드 연동 방식
Node.js 엔진 Puppeteer / Playwright PDF, PNG 동적 웹페이지(React/Vue 등) 변환 최강자. 서버 단에서 Chromium을 제어하여 복잡한 JS/CSS 레이아웃을 그대로 캡처 및 PDF/PNG 저장.
다목적 변환 엔진 Gotenberg PDF, PNG, DOCX Docker 컨테이너 기반 API 서버. Chromium, LibreOffice, PDFtk를 래핑한 REST API를 제공하여 어떤 언어(Java, Python, Go 등)에서든 HTTP 요청으로 파일 변환.
문서 포맷 변환 Pandoc / LibreOffice (CLI) DOCX, PDF, HTML 서버에 데몬/CLI로 설치하여 HTML 코드를 DOCX나 PDF 등 오피스 문서로 직접 상호 변환. Python, Java 등의 백엔드에서 subprocess로 실행.
언어별 전용 라이브러리 wkhtmltopdf PDF, PNG WebKit 엔진 기반. Node.js(html-pdf), Python(pdfkit), Java 등 다양한 언어별 래퍼(Wrapper) 제공. (단, 최신 CSS Flex/Grid 제약이 일부 있음)
HTML -> PDF 전용 Weasyprint / Dompdf PDF Weasyprint(Python), Dompdf(PHP) 등 언어별 경량 엔진. 브라우저 설치 없이 정적 HTML/CSS를 깔끔한 PDF로 렌더링.

Sheets로 내보내기

서버 아키텍처별 추천 구성

  • REST API 형태의 독립 변환 마이크로서비스 구축: Gotenberg를 Docker로 띄우고, 백엔드 서버에서 HTTP POST 요청으로 HTML을 전송해 PDF/DOCX/PNG를 응답받는 방식이 가장 깔끔합니다.

  • JS/CSS가 복잡한 SPA(React 등) 캡처: Node.js 서버 환경에서 Puppeteer를 이용해 headless 브라우저를 백그라운드에서 실행하는 구성이 최선의 결과를 제공합니다.

  • HTML을 수정 가능한 Word(DOCX) 파일로 변환: Pandoc 라이브러리나 LibreOffice CLI 모드를 서버 환경에 구축하여 바인딩하는 것이 가장 안정적입니다.