2015-01-28 6 views
0

내 보고서에 PDF 파일 (이미지 필드로 DB에 저장 됨)을 표시하려고합니다. 이미지 객체에 표시하면 이미지 객체가 비어있는 것처럼 보입니다.FastReport - 보고서에 PDF 표시

내가 잘못했거나 다른 방법으로 FastReport 보고서에 PDF를 표시 할 수 있습니까?

저는 Delphi Embarcadero XE6과 FastReport V5.1을 사용하고 있습니다.

+0

TfrxOleView를 사용할 수 있습니다. – bummi

+0

그런 다음 스트리밍 형식이 올바르지 않다는 오류 메시지가 나타납니다. –

+0

이 이미지는 어떤 형식으로 저장됩니까? TfrxPictureView는 bmp, jpg, png, ico, wmf 및 emf 만 허용합니다. – kabstergo

답변

0

사용 TfrxPictureView 당신은 이미 JPEG 모든 PDF 파일을 변환 한 다음 DB에 JPEG 파일로 저장 한 경우 데이터베이스 필드

0

에 할당 한 다음 TfrxOleView는이를 표시 할 수 있습니다.

그렇지 않은 경우 TfrxReportComponent에서 파생 된 사용자 지정 보고서 구성 요소를 만들고 해당 Draw 이벤트를 처리해야합니다. Draw 이벤트는 PDF BLOB을 가져 와서 메타 파일/비트 맵으로 변환 한 다음 메타 파일/비트 맵을 사용자 지정 컨트롤의 캔버스에 그립니다. 이 사용자 지정 구성 요소는 TfrxPictureView 컨트롤 대신 보고서에서 사용해야합니다. 자세한 내용은 FastReport 개발자 설명서를 참조하십시오.

PDF를 메타 파일/비트 맵으로 변환하려면 PDF 라이브러리가 필요합니다. (내 회사 제품인 PDFtoolkit을 권장합니다.)

PDF로 변환하는 데 시간이 오래 걸리고 보고서가 느려질 수 있습니다. 따라서 먼저 DB에서 변환을 실행하고 다른 열에 이미지를 저장하는 것이 좋습니다. 그렇게하면 사용자 지정 보고서 구성 요소를 작성할 필요가 없습니다. 이미지 열/필드를 참조하기 만하면됩니다.