|
제가 잘못 올린부분이 있네요..
Height가 아닌 변수선언한 iHeight를 사용해야하는데
의도했던 것보다는 약간 더 시간이 걸렸을 겁니다.
for(int i=0; i<iWidth; i++) {
for(int j=0; j<Height; j++) { //이 부분...
투명처리는 잘 모르겠구요...
이 방법으로 하면 125~150배 정도 빠르네요.
참고하세욧.
TRect RectSize;
for(int j=0; j<iHeight; j++) {
if(Image1->Canvas->Pixels[0][j]== 0xff00ff) {
RectSize= Rect(0, j, iWidth, j+1);
Image1->Canvas->CopyRect(RectSize, Image2->Canvas, RectSize);
}
}
공부하는이 님이 쓰신 글 :
: 감사 합니다 잘 되네요 ^^
: 염치없지만 투명효과로 될 수는 없나요?
: 원래 텍스트에 효과 이미지를 붙이는데 분홍색만 투명처리 되면
: 보다 빨리 이미지가 보여질꺼 같은 그 방법은 안되나요?
: 그럼 즐프 ^^
: 쩡이 님이 쓰신 글 :
: : 질문 내용을 한참 만에 이해했네요^^;
: : 그림들이 읽어지면서 분홍색이 스크롤대면서 보여주는데
: : 그때 분홍색 부분에 Text1 이미지인 "이미지 테스트 중입니다"를 보여주고 싶다는 뜻이죠??
: : 덕분에 공부 좀 했습니당~
: :
: : Image1에서 분홍색(0xFF00FF)을 검색해서 있으면
: : 해당 픽셀에 Image2의 동일한 위치의 픽셀 색상을 넣습니다.
: : 이외에는 좋은 방법을 몰라서...
: : 자~들어갑니당.
: :
: : void __fastcall TForm1::Timer1Timer(TObject *Sender)
: : {
: : AnsiString Path = IncludeTrailingPathDelimiter(ExtractFilePath(Application->ExeName));
: : AnsiString FileName = Path + "효과2\\";
: : char SF[4] = "";
: : sprintf(SF, "%03d", Cnt);
: : FileName += AnsiString(SF).TrimRight() + ".bmp";
: : if(FileExists(FileName)) {
: : Image1->Picture->LoadFromFile(FileName);
: :
: : //추가한 내용
: : int iWidth = Image1->Width;
: : int iHeight= Image1->Height;
: :
: : for(int i=0; i<iWidth; i++) {
: : for(int j=0; j<Height; j++) {
: : if(Image1->Canvas->Pixels[i][j]== 0xFF00FF) {
: : Image1->Canvas->Pixels[i][j]= Image2->Canvas->Pixels[i][j];
: : }
: : }
: : }
: :
: : Image1->Refresh();
: : Cnt++;
: : }
: : }
: :
: :
: :
: :
: : 공부하는이 님이 쓰신 글 :
: : : 쩡이 님이 쓰신 글 :
: : : : 이미지 위에 폴더명을 보여주고 싶다는 뜻인가요??
: : : : 라벨 하나 올려놓고 사용하시면 될 듯합니다만..
: : : :
: : : :
: : : : 공부하는이 님이 쓰신 글 :
: : : : : 효과2 폴더에 부홍색 부분에 Text1이미지 글자를 보이고 싶은데
: : : : : 잘 되지 않네요...
: : : : : 소스 보시고 잘 못된 부분을 지적해 주세요
: : : : : 그럼 즐프~~ ^^
: : : 아 그런게 아니고요 효과2폴더에 보시면 이미지들이 있는데
: : : 이미지에 분홍색RGB(255,0,255)색 부분에 Text1이미지 부분을
: : : 보이고 싶은거죠~
|