[펌+]
http://www.swissdelphicenter.ch/torry/showcode.php?id=2329
이미지 반전은?
뭐 그냥 색상정보값을
0xFF --> 0x00 ; 0xF0 -- > 0x0F 0x0F --> 0xF0 ...
뭐 이런식으로 바꾸는것이다.
이미지 위치가 바뀌는것이 아니라 색상이 반전되는것이다
void __fastcall TForm1::InvertImage()//색상뒤집기 ..
{
//원본이미지 Image1 , 반전이미지 뿌리는곳 Image5
Image5->Width=Image1->Picture->Bitmap->Width;
Image5->Height=Image1->Picture->Bitmap->Height;
Image5->Picture->Bitmap->Assign(Image1->Picture->Bitmap);
unsigned char *pt1=(unsigned char *)Image5->Picture->Bitmap->ScanLine[Image5->Height-1];
unsigned char *pt2=(unsigned char *)Image5->Picture->Bitmap->ScanLine[Image5->Height-2];
int pt_wid=pt2-pt1; // 한 라인의 Byte수를 계산
int roof = pt_wid * Image5->Picture->Bitmap->Height ; // 전체 Data Size 계산
for(int i=0;i
아랫쪽에 Image처리 글들은 PixelFormat 을 모두 pf32bit 로 바꿔서 처리했다.( 편하게 하려구)
하지만 이번에는 PixelFormat 을 바꾸지 않고
Graphics::TBitmap 에서 처리할수 있는 모든 PixelFormat 에 대해서 처리 가능하게 했다.
테스트는 좀 했는데, 충분했는지 모르겠네요
좋은 아이디어와 조언 부탁드립니다.
그럼
|