線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:3355
推到 Plurk!
推到 Facebook!

將bitmap縮放後顯示於TImage中的問題

尚未結案
garylinmail
一般會員


發表:2
回覆:3
積分:1
註冊:2009-03-03

發送簡訊給我
#1 引用回覆 回覆 發表時間:2009-03-10 18:24:12 IP:219.81.xxx.xxx 訂閱
請問
假如我將AVI檔案取出每個FRAME後
我要改變該FRAME的大小再顯示到IMAGE的物件上時
我要在哪個地方做RESIZE的動作
下面是我從cmf大大提供的CODE中的一段 是將每個bitmap顯示到TImage中

[code cpp]
bool HBITMAP2TImage(HBITMAP hBitmap,TImage *Image1)
{
BITMAP bitmap;
Graphics::TBitmap *Bitmap1=new Graphics::TBitmap();
Bitmap1->Handle=hBitmap;

// 取得 Bmp 的 Width & Height
GetObject(hBitmap,sizeof(BITMAP),&bitmap);
Image1->Width=bitmap.bmWidth 50; //我在這兩高和寬各加50可是只有外框加大 實際的圖卻沒變
Image1->Height=bitmap.bmHeight 50;

// 把 Bitmap 畫在 Image1上
Image1->Canvas->Draw(0,0,Bitmap1);
delete Bitmap1;
DeleteObject(hBitmap);
//Image1->Visible=true;
Image1->Repaint();
return true;
}

[/code]


謝謝
taishyang
站務副站長


發表:377
回覆:5490
積分:4563
註冊:2002-10-08

發送簡訊給我
#2 引用回覆 回覆 發表時間:2009-03-10 19:55:20 IP:118.169.xxx.xxx 訂閱
假如只是要用Image顯示時放大的話(Bitmap實際上沒有放大)
只要將Image的Stretch屬性設為true就行

若是連Bitmap都要放大的話
1.用CopyRect
2.自己內插
上面兩種方式站上都有範例可以參考
garylinmail
一般會員


發表:2
回覆:3
積分:1
註冊:2009-03-03

發送簡訊給我
#3 引用回覆 回覆 發表時間:2009-03-11 16:40:06 IP:219.81.xxx.xxx 訂閱
謝謝副站長的提示
我使用了
CopyRect的方式

想再請問一下 我將調整後的影像用一張一張在TImage物件上顯示的方式播放
可是我想要像影片一樣播放 因為我作縮放的這些圖片是從影片擷取出來的
所以作好處理後我要像影片一樣再播放出來
請問要用什麼方式做 還是有範例可以參考
我之前是有搜尋的一篇是將很多張圖片轉成一個影片檔
可是我擷取的方式好像沒有產生圖片耶

感謝


===================引 用 taishyang 文 章===================
假如只是要用Image顯示時放大的話(Bitmap實際上沒有放大)
只要將Image的Stretch屬性設為true就行

若是連Bitmap都要放大的話
1.用CopyRect
2.自己內插
上面兩種方式站上都有範例可以參考
garylinmail
一般會員


發表:2
回覆:3
積分:1
註冊:2009-03-03

發送簡訊給我
#4 引用回覆 回覆 發表時間:2009-03-11 19:21:04 IP:219.81.xxx.xxx 訂閱
請問 我是使用cmf大大的方式將影片取出frame到videostream中
可是我上面是對Image作縮放 而不是更改stream中原始的資料
那我將stream播放出來 並沒有更做到縮放


另外有辦法將videostream中的串流資料再轉成影片來播放嗎

請問我用這個方式做是正確的嗎 因為我有看到DS這個東西
可是不太清楚DS所以才沒用

謝謝

系統時間:2024-03-29 15:44:50
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!