자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다. 
  • 제품설치/등록 오류 문의: 설치/등록 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 17244
공지 유용한 관련 사이트 관리자2 2014.03.20 56133
공지 본 게시판은 개발자 여러분들의 질문과 답변을 공유하는 공간입니다. 관리자 2012.01.10 99565
399 Hook Error 2 원인을 알고 싶습니다. [1] file 소망나라 2020.02.17 159
398 rio update 질문입니다. [1] file 희망나라 2020.02.17 88
397 ActiveX 호환이 안되는 것인지 궁금합니다. KJ 2020.02.17 83
396 마이그레이션 관련 문의 드립니다 [3] 투덜이스머프투 2020.02.18 166
395 10.3.3 samples 프로그램 FlashLight을 돌리면 오류가 납니다. [4] 델파이-앱 2020.02.19 199
394 델파이에서 dll 사용 관련 문의합니다. [1] ozz 2020.02.20 540
393 [질문] 자판을 입력할 수 없네요 [3] 화현 2020.02.20 138
392 안드로이드/iOS앱 with 델파이, 1편 - 기초다지기, 7-1 예제 permission 오류 해결 방안 [5] file 델파이-앱 2020.02.21 163
391 FFMpeg 디코딩된 AVFrame을 최대한 빨리 TImage에 그리는 방법 질문. [4] file 아크나톤 2020.02.22 3207
390 작업 시간 초과 SetTimeouts 질문 드립니다. [1] HOTDOG 2020.02.24 309
389 안녕하세요 다국어 지원 질문드립니다. [2] 김씨 2020.02.24 243
388 디버깅 시 tList<t>.List w.a.t.c.h. 이상 작동 [9] 신재국 2020.02.25 368
387 시애틀 관련 패키지 설치 문의 입니다. [1] 시애틀커피 2020.02.25 528
386 Delphi 10.3 에서 iOS 시뮬레이터 사용 가능한 방법이 없나요? [2] samsmin 2020.02.25 335
385 실행이 너~무 느립니다. [1] 포세가이 2020.02.27 256
384 libsodium 모바일앱에서 사용하기 [2] file 여유와행복 2020.02.27 326
383 파이어몽키에서 TPanel에 Form을 넣을 수는 없는 걸까요? [2] 아크나톤 2020.02.28 149
382 fast report 재설치 문의 [3] sub3 2020.02.28 237
381 TStreamReader 한글깨짐 문제 [6] file IslamsWine 2020.02.29 3020
380 TFDMemTable 필드 추가 후 새로 추가 할 때 추가 안되요. [2] midas 2020.02.29 315