六月婷婷综合激情-六月婷婷综合-六月婷婷在线观看-六月婷婷在线-亚洲黄色在线网站-亚洲黄色在线观看网站

明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

對于DIB的輸出方式

[摘要]DIB,設備無關位圖。既然設備無關了,我們要輸出它就有了一些困難,畢竟在屏幕上能看到的都是設備場景中的圖像。那么要怎樣輸出它呢?1、半隨機顯示——SetDIBitsToDevice是的,該API實現的輸出是半隨機化的。簡單的說,用這個函數輸出的圖片我們能夠看到,但是它是不會被保存的,即使在VB中開...
DIB,設備無關位圖。既然設備無關了,我們要輸出它就有了一些困難,畢竟在屏幕上能看到的都是設備場景中的圖像。那么要怎樣輸出它呢?

1、半隨機顯示——SetDIBitsToDevice

是的,該API實現的輸出是半隨機化的。簡單的說,用這個函數輸出的圖片我們能夠看到,但是它是不會被保存的,即使在VB中開啟了AutoRedraw也一樣。根據我的猜想,這個函數的實際功能非常簡單,將一幅圖片畫到一個設備場景所在的區域,設置不經過這個hDC本身的管理。

那么根據現象以及由現象推出的本質,這個函數對我們來說只有一個優點:性能較高。但實際使用中的現象并非如此,該函數輸出一幅640x480的位圖平均需要6ms左右,如果你使用過Bitblt函數,你會發現,這個操作的效率是如此之低,甚至不如設備場景間的圖片傳遞。這是為什么?原因很簡單,DIB的轉換。的確,SetDIBitsToDevice是直接將圖像畫到hDC中,但是這個過程卻一定要把DIB的數據轉換成hDC兼容的格式(就是hDC的圖片格式本身),然后再繪出。所以要提高SetDIBitsToDevice的執行性能,首先你創建的位圖最好符合你預期要輸出到的hDC的格式。

P.S.我很奇怪這個函數為什么要這樣設計,因為它是不能保存改變的,即使用在打印hDC中也不能使得輸出內容被打印出來。這個,希望有高手來解答了。

2、穩定化輸出:CreateDIBitmap

這個函數簡單得多。你給出一個DIB,他負責把內容copy下來,然后“封裝”為一個hBitmap對象。你可以使用任何你想得到的方法對這個對象進行處理,根據我的實驗,多數都是成功的。

不過千萬不要妄想使用這個hBitmap對象進行原DIB的輸入操作。除非你用它創建了一個兼容的hDC,并且沒有把這個hBitmap選入任何hDC對象。

3、隨機輸出:DirectX

這個很高深。為什么這么說?因為你要手動進行好多轉換,然后以占用至少30MB內存為代價,來實現動態圖像的極連貫的輸出。在這里我不做詳細介紹了,本人水平有限,正在研究這個東東。同樣的,希望來個誰幫幫偶~



Over.

不知道這篇小心得對大家有沒有用,有用的話說一聲,謝了~呵呵~



主站蜘蛛池模板: 亚洲免费在线视频观看 | 欧美一卡二卡3卡4卡无卡六卡七卡科普 | 亚洲国产99在线精品一区二区 | 深夜福利视频导航 | 亚洲国产精品久久久久666 | 日本黄 色 成 年 人免费观看 | 日本色影院 | 中文字幕无码中文字幕有码 | 午夜tv | 亚洲hh| 午夜视频在线观看免费观看在线观看 | 五月婷婷之婷婷 | 天天透天天射 | 青草视频在线免费观看 | 天天射天天怕 | 四虎影院永久免费观看 | 日产精品卡二卡三卡四卡乱码视频 | 日本不卡一区二区三区 | 午夜影院网页 | 天天综合天天射 | 色综合久久天天综合 | 日韩毛片在线影视 | 欧美怡红院免费全视频 | 日本四虎影院 | 日韩一区二区久久久久久 | 婷婷六月久久综合丁香乐透 | 午夜欧美视频 | 小草影院在线观看 | 亚洲一区综合在线播放 | 色天使久久综合给合久久97色 | 中文在线最新版天堂8 | 午夜精品久久久久久久四虎 | 日韩不卡免费视频 | 污污视频在线免费观看 | 亚洲欧美国产精品第1页 | 青青草视频在线免费观看 | 性刺激免费视频观看在线观看 | 日本捆绑调教hd在线观看 | 中文字幕日本不卡 | 日本不卡一区二区三区在线观看 | 亚洲成av人片在线观看无码 |