全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1392
推到 Plurk!
推到 Facebook!

有關影像分塊並讀取座標

 
boalover
一般會員


發表:2
回覆:0
積分:0
註冊:2006-10-01

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-10-01 20:15:29 IP:220.138.xxx.xxx 訂閱

拜託幫幫忙囉


我真的很急


就是讀入一張影像檔


然後要把影像檔分成四塊


1 2


3 4


向上面這種格式


並且要讀出每個區塊左上級右下角的座標


拜託大家教教我~~~


我已經會讀入檔案了


所以只剩下要怎麼分塊呀???

Teresa_Chang
一般會員


發表:41
回覆:42
積分:16
註冊:2004-05-04

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-01-04 02:08:58 IP:218.160.xxx.xxx 訂閱
   Graphics::TBitmap *bmpSrc=new Graphics::TBitmap;
Graphics::TBitmap *bmpDst=new Graphics::TBitmap;
bmpSrc->LoadFromFile("原圖.bmp");
bmpDst->Width=80; //切割後小區塊的大小
bmpDst->Height=60;

SetStretchBltMode(bmpDst->Canvas->Handle, STRETCH_HALFTONE);
bmpDst->Canvas->CopyMode=cmSrcCopy;
bmpDst->Canvas->CopyMode=cmSrcCopy;

bmpDst->Canvas->CopyRect(Rect(0, 0, 80, 60), bmpSrc->Canvas,Rect(0, 0, 80, 60)); //設定左上圖大小為80X60,是將原圖中切割出x軸0到80,y軸0到60
bmpDst->SaveToFile("左上.bmp");

bmpDst->Canvas->CopyRect(Rect(0, 0, 80, 60), bmpSrc->Canvas,Rect(80, 0, 160, 60)); //設定右上圖大小為80X60,是將原圖中切割出x軸80到160,y軸0到60
bmpDst->SaveToFile("右上.bmp");
bmpDst->Canvas->CopyRect(Rect(0, 0, 80, 60), bmpSrc->Canvas,Rect(0, 60, 80, 120)); //設定左下圖大小為80X60,是將原圖中切割出x軸0到80,y軸60到120
bmpDst->SaveToFile("左下.bmp");
bmpDst->Canvas->CopyRect(Rect(0, 0, 80, 60), bmpSrc->Canvas,Rect(80, 60, 160, 120)); //設定右上圖大小為80X60,是將原圖中切割出x軸80到160,y軸60到120
bmpDst->SaveToFile("右下.bmp");

delete bmpDst;
delete bmpSrc;
Image2->Picture->LoadFromFile("左上.bmp");
Image3->Picture->LoadFromFile("右上.bmp");
Image4->Picture->LoadFromFile("左下.bmp");
Image5->Picture->LoadFromFile("右下.bmp");
這個段程式有個限制就是每一個切割後的小區塊是同等大小的哦~
系統時間:2024-04-29 5:39:25
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!