C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[58337] 이미지 리샘플링 질문입니다.
Jooni [] 964 읽음    2009-09-02 15:46
procedure DrawSrcToDst(Src, Dst: TBitmap32);
var
  R: TKernelResampler;  
begin
  R := TKernelResampler.Create(Src);
  R.Kernel := TLanczosKernel.Create;
  Dst.Draw(Dst.BoundsRect, Src.BoundsRect, Src);
end;


void TForm1::fitToImage(TBitmap32* dst, TBitmap32* src) {
    TKernelResampler *kr = new TKernelResampler();
    kr->TableSize = 32;
    kr->Bitmap = new TBitmap32();
    kr->Bitmap->Assign(src);
    kr->Kernel = new TLanczosKernel()
    dst->Draw(dst->BoundsRect(), src->BoundsRect(), src);
}


섬네일과 유사한 효과를 얻기 위해서 정해진 크기로 이미지를 빠르게 축소하는 느낌의 코드를 만들고 싶습니다. fit Size를 주고 거기에 마춰서 폭이 크다면 폭을 기준으로, 길이가 크다면 길이를 기준으로 크기를 계산합니다. 이후에 이미지를 빠르게 축소를 해야하는데, 위 코드는 Graphics32에서 얻은 (또한 설치되어 있는) 이미지 리샘플링 소스 입니다.

그런데 이렇게 하면 작동하지 않고, 실제로 dst의 draw 영역을 SetSize로 잡아주면 자동으로 축소된 그림이 나오지만 그렇게 하면 계단 현상이 너무 심해서 위의 샘플러를 적용하고 싶습니다.

델파이 코드를 잘못 쓴것 같은데 gr32_resampler.pas 파일을 열어봐도, 부모클래스의 생성자를 실행하고, Tabsize만 지정할 뿐 별다른 역활을 하지 않기에 C++ 코드를 저리 썼는데 전혀 샘플러가 작동하지 않습니다.

답변좀 부탁드립니다.

+ -

관련 글 리스트
58337 이미지 리샘플링 질문입니다. Jooni 964 2009/09/02
58339     Re:이미지 리샘플링 질문입니다. 김도완 1074 2009/09/02
58345         Re:Re:이미지 리샘플링 질문입니다. Jooni 1445 2009/09/02
58341         Re:Re:이미지 리샘플링 질문입니다. Jooni 1062 2009/09/02
58343             Re:Re:Re:이미지 리샘플링 질문입니다. 김도완 1091 2009/09/02
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.