본문 바로가기

TWICImage를 이용해 다양한 이미지 포맷의 파일을 불러오고 저장하기. TWICImage는 Microsoft Windows Imaging Component를 캡슐화 한 클래스로 다양한 이미지 포맷을 조작할 수 있습니다. 사용법은 아래 샘플코드와 같이 TImage 컨트롤에서 파일을 로드하기 전에 TWICImage로 먼저 로드한 후 TImage에 할당하면 다양한 이미지 포맷을 TWICImage가 처리해 줍니다. (TWICImage는 RAD Studio 2010 부터 지원합니다.) procedure TForm2.btnImageLoadClick(Sender: TObject); var wic: TWICImage; begin if OpenDialog1.Execute then begin wic := TWICImage.Create; try wic.LoadFromFile(OpenDialog.. 더보기
[마이그레이션 사례] 감리교 신학대학교 고객들의 PC환경과 요구사항이 아주 빠르게 발전하고 있습니다. 윈도우10 등의 최신 운영체제를 탑재한 PC환경과 새로운 요구사항에 대응하기 위해서는 RAD 스튜디오(델파이, C++빌더)에서 제공하는 최신 기능을 활용할 수 있도록 마이그레이션이 필요합니다. 저는 여러분들이 직접 마이그레이션을 진행할 수 있는 마이그레이션 관련 자료와 팁을 제공하고, 마이그레이션 컨설팅, 마이그레이션 워크샵 등을 통해 직접적인 도움이 필요한 프로젝트나 기업을 지원하고 있습니다.마이그레이션을 계획하거나 진행하고 계신 분들에게 도움되도록 마이그레이션 프로젝트 과정의 일부를 간단히 정리해 공유합니다. 감리교 신학대학교 - 마이그레이션 컨설팅프로젝트 기간 : 2016년 5월 ~ 7월(3개월)지원방법 : 마이그레이션 방문컨설팅버전 :.. 더보기
퀵레포트(Quick Report)에 사진 출력하기 DBMS의 Blob 컬럼의 이미지 데이터를 퀵레포트 보고서에 출력하는 내용입니다. (추가) 2016.09.02 : 미리보기에서 사진이 나오는데, 실제 인쇄 시 사진이 출력되지 않는 이슈해결 방안을 추가했습니다. 쿽레포트에 사진을 출력하려면 TQRImage, TQRDBImage 2개의 컴포넌트를 이용할 수 있습니다.(TQRDBImage는 비트맵 데이터만 출력할 수 있습니다.) 저는 JPEG, GIF, PNG 등을 지원하기 위해 TQRImage를 이용합니다. 아래 델파이 샘플은 BOOK_THUMB(Blob 컬럼)의 데이터를 읽어 TQRImage에 표시하는 내용입니다.Blob 컬럼을 읽기 위해 TBlobField를 사용하고, TWICImage를 이용해 다양한 포맷을 지원합니다.(BLOB 컬럼에서 (이미지 등의.. 더보기
퀵레포트 보고서 엑셀로 내보내기(저장하기) (Quick Report 5.0.6 버전으로 작성된 내용입니다.)퀵레포트(QuickReport)로 작성한 보고서를 저장해야 하는 경우 퀵레포트 필터를 통해 다양한 포맷을 추가할 수 있습니다. 위 필터 중 TQRXLSXFilter를 통해 엑셀로 보고서를 내보내기(저장)할 수 있습니다. 하지만 엑셀로 내보내기 기능을 제공하려면 XLColumn 속성을 설정해야 합니다.XLColumn 속성은 엑셀에 표시되는 컬럼 순서로, 인쇄가능한 퀵레포트 컴포넌트들(TQRLabel, TQRDBText 등의 TQRPrintable 클래스를 상속받는 컴포넌트 들)은 모두 XLColumn 속성을 갖고 있습니다.(다시 말해 대부분의 컨트롤의 XLColumn 속성을 설정해야 합니다.) XLColumn 속성은 다음 특징을 참고해 신중히.. 더보기
BLOB 컬럼에서 (이미지 등의)데이터 읽고 쓰기 (해당 내용은 모든 데이터셋(TDataSet을 상속받은 컴포넌트) 즉, FireDAC, dbExpress, dbGo(ADO) 등에 적용할 수 있습니다.) 대부분의 DBMS에서 Blob(Binary Large object) 타입의 컬럼을 만들 수 있습니다. 이 컬럼에는 이미지등의 큰 바이너리 데이터를 취급할 수 있습니다. 아래 코드는 Blob 컬럼에서 이미지를 읽고, 쓰는 델파이 예제입니다. Blob 컬럼에 이미지 데이트 쓰기var wic: TWICImage; // Microsoft Windows Imaging Component Stream: TMemoryStream; begin Stream := TMemoryStream.Create; try Image1.Picture.SaveToStream(Stream).. 더보기
구글 통계(Google Analytics)를 써드파티 컴포넌트 없이 구현하는 방법 델파이 개발자인 Rafael Ribas Aguiló의 블로그에서 델파이에서 써드파티 컴포넌트 없이 구글 통계(Google Analytics)와 연동하는 내용이 있어 소개합니다. 해당 내용은 안드로이드 기반으로 작성되었습니다. 안드로이드 앱 개발하시는 분들은 참고하시기 바랍니다. 최근에는 앱을 만드는 작업도 중요하지만, 사용성(Usability)을 높이는 작업이 상당히 중요합니다.여러분들의 고객이 어떤 메뉴나 기능을 얼마나 많이 사용하는지 분석하는 작업에 이용하면 구글 통계를 이용해 더 완성도 높고 사용성 높은 앱을 만들어 보세요. http://thedelphiway.blogspot.kr/2016/07/google-analytics-in-delphi-mobile.html 더보기
[팁] 파라메터 값이 포함된 쿼리 문자열 만들기 SQL 작성 시 아래와 같이 파라메터를 많이 이용합니다. SELECT * FROM EMPLOYEE WHERE EMP_ID = :EMP_ID 하지만, SQL을 로그로 기록할 경우 파라메터 명(:EMP_ID) 대신 파라메터 값이 들어가야 할 경우 아래와 같이 파라메터 값이 적용된 SQL을 만들어 사용할 수 있습니다. procedure TForm1.Button1Click(Sender: TObject); var I: Integer; SQLStr, ParamName, ParamValue: string; begin Query1.Close; Query1.ParamByName('Name').AsString := '홍길동'; Query1.ParamByName('JUNHYEONG').AsString := '2'; Quer.. 더보기