자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)

Q, 

기존 출력물(델파이에서 직접 출력)을 PDF파일로 저장하는 기능을 구현하려고 합니다.

혹시 추천해 주실만한 컴포넌트가 있나요?

 

A, 

3가지 방법이 있습니다.

 

1) 써드파티 PDF 컴포넌트를 이용해 PDF 파일을 저장하는 방법

2) 인쇄 기능을 이용해 PDF 파일을 저장하는 방법

3) 레포팅 툴의 PDF 내보내기 기능을 이용해 PDF 파일을 저장하는 방법

 

1) 써드파티 PDF 컴포넌트를 이용해 PDF 파일을 저장하는 방법

저도 직접 사용해 보지 않아 링크 또는 간단한 소개를 작성합니다.

기능 검토 등은 제작사 홈페이지 소개 또는 트라이얼 설치 후 진행하시기 바랍니다.

 

PDFtoolkit VCL

PDF 편집, 파일 병합/분할, 양식필드, 페이지 레이아웃, 페이지 번호 등 자동 작성, PDF 미리보기/인쇄, 암호화 등

유료, 1/5/10 개발자 라이선스 등

https://www.gnostice.com/PDFtoolkit_VCL.asp

 

Quick PDF Library

PDF 편집, 인쇄, 보안/서명, 양식 작성/편집, 텍스트/이미지 추출, 미리보기, 이미지/바코드 추가 등

유료, 개발자 라이선스, 서버 라이선스, 소스코드 라이선스 등

http://www.quickpdflibrary.com/

 

Power PDF

오픈소스 프로젝트로 엠바카데로가 지원하는 TurboPack 중 하나

테스트 결과 한글을 포함한 유니코드를 지원하지 않음

영어 위주의 PDF 생성 시 적합

https://github.com/TurboPack/PowerPDF

 

WPCubed

http://www.wpcubed.com/pdf/

 

2) 인쇄 기능을 이용해 PDF 파일을 저장하는 방법

Adobe Reader 이용

Adobe Reader를 설치 후 이용하는 방법이 있습니다.

 

Adobe Reader의 Active X  컨트롤을 로드해 인쇄에 사용

pdfFile.src := 'filename.pdf'; 
pdfFile.LoadFile('filename.pdf'); 
pdfFile.print;

Adobe Reader 자체로 PDF 인쇄 할 수 있습니다.

ShellExecute(0, 'open', 'acrord32', PChar('/p /h ' + FileName), nil, SW_HIDE);

Ghostview와 Ghostprint 사용

ShellExecute(Handle, 'open', 'gsprint.exe', PChar('"' + filename + '"'), '', SW_HIDE);

 

참고 : https://stackoverflow.com/questions/2055307/delphi-how-to-print-a-pdf-without-showing-it

 

3) 레포팅 툴의 PDF 내보내기 기능을 이용해 PDF 파일을 저장하는 방법

대표적인 레포팅 툴을 이용해 레포트 화면 작성 후 PDF 파일로 내보내기 할 수 있습니다.
 
패스트 레포트(Fast Report)
https://www.fast-report.com/en/product/fast-report-vcl-5/
 
퀵 레포트(Quick Report)
http://quickreport.co.uk/
 
 

 

번호 제목 글쓴이 날짜 조회 수
공지 [프로그래밍 강의] 2021.6~2021.12 관리자 2015.01.22 15766
공지 유용한 관련 사이트 관리자2 2014.03.20 54580
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 97985
3159 델파이 도면편집 컴포넌트 문의 file 오바라미 2021.02.26 216
3158 질문] 코드사이트 중국어 표기 [1] 날개의꿈 2021.02.26 158
3157 linux console에서 webbrowser에러 100jk 2021.02.23 107
3156 Android SDK 관련 문의 [2] file 신우 2021.02.16 252
3155 [문의] C++builder 10.4 에서 Troubleshooting: Cannot Run on an Android Device 오류입니다. [1] file 구석 2021.01.31 215
3154 Xe5 DB 원견 접속 쿼리 실행 오류 문의 합니다. ㅠㅠ [2] 조은놈 2021.02.02 172
3153 ExportGridToXLSX 한글 & 특수 문자 사용시 오류 가나다 2021.02.10 417
3152 10.3 Rio 버젼에서 Code Insight 기능 오류현상 [1] sihwan 2018.12.14 390
3151 RAD Studio 10.3.2 Code Insight의 지속적인 문제 [2] 포비 2019.10.02 395
3150 Xe7 datasnap 안드로이드11 업그레이드후 실행이 안됨 [1] 천년바우 2021.02.08 203
3149 TStreamReader 한글깨짐 문제 [6] file IslamsWine 2020.02.29 2951
3148 초보적인 문의 드립니다. [4] BD 2021.02.04 196
3147 CodeSite 질문입니다. [2] BD 2021.01.27 211
3146 IOS 배포 에러 질문드립니다. [PAClient Error] Error: E0776 [1] syc 2021.01.28 357
3145 CodeSite 질문 입니다. [3] 늦바람 2015.03.27 650
3144 안드로이드11에서 실행이 멈추는 원인 해결 방법 부탁 [1] hms123 2021.01.29 312
3143 모바일에서 이미지 로딩시, 사진 방향이 바뀌는 이유 [3] delphiman 2021.01.26 343
3142 [문의] C++ Builder 10.x.x 로 개발된 프로그램 재배포는 어떻게합니까? [2] file inhi 2021.01.14 278
3141 FireDac 쿼리 실행시 가끔 발생되는 Access Violation을 못잡겠습니다.. [1] 육식육식 2021.01.20 244
3140 VCL어플리케이션 개발 중 GridPanel 질문드립니다! [2] file 육식육식 2020.04.10 513