freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

圖像處理綜合系統(tǒng)-全文預(yù)覽

2025-07-17 12:36 上一頁面

下一頁面
  

【正文】 re Function OpenClipboard Lib user32 (ByVal hWnd As Long) As Long(22)CloseClipboard函數(shù)關(guān)閉剪貼板 Private Declare Function CloseClipboard Lib user32 () As Long(23)SetClipboardData函數(shù)設(shè)定剪貼板的數(shù)據(jù)Private Declare Function SetClipboardData Lib user32 (ByVal wFormat As Long, ByVal hMem As Long) As Long(24)EmptyClipboard函數(shù)清空剪貼板 Private Declare Function EmptyClipboard Lib user32 () As Long(25)DeleteObject函數(shù)刪除GDI對象,比如畫筆、刷子、字體、位圖、區(qū)域以及調(diào)色板等等。Private Declare Function StretchBlt Lib gdi32 (ByVal hDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal nSrcWidth As Long, ByVal nSrcHeight As Long, ByVal dwRop As Long) As Long(11)SetStretchBltMode函數(shù)指定StretchBlt 和 StretchDIBits函數(shù)的伸縮模式。Private Declare Function BitBlt Lib gdi32 (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long(10)StretchBlt函數(shù)將一幅位圖從一個設(shè)備場景復(fù)制到另一個。Private Declare Function SelectObject Lib gdi32 (ByVal hDC As Long, ByVal hObject As Long) As Long(8)DeleteObject函數(shù)刪除GDI對象,比如畫筆、刷子、字體、位圖、區(qū)域以及調(diào)色板等等。其中包括位圖、刷子、字體、畫筆以及區(qū)域等等。Private Declare Function DeleteDC Lib gdi32 (ByVal hDC As Long) As Long(5)GetObject函數(shù)取得對指定對象進行說明的一個結(jié)構(gòu)。為了加快速度,本系統(tǒng)中了很多的API函數(shù),下面解釋一些本系統(tǒng)中比較重要的API函數(shù)。省略代碼End Function因此如果在其他工程中引用了該控件,則可以同使用其他控件一樣使用這些定義的屬性和方法,如下所示:ucInfo. TextFile=hellomyText= ucInfo. TextFile(LoadResPicture(BITMAP_TBQUICK, vbResBitmap), amp。39。編者手記如果已經(jīng)創(chuàng)建了一個工程,需要在該工程中添加控件,則可以通過菜單【工程】224。 (1)創(chuàng)建或者添加自定義控件工程 如果是創(chuàng)建一個單獨的控件,則需要創(chuàng)建一個自定義控件工程,如果已經(jīng)創(chuàng)建了一個工程,則可以添加自定義控件,下面介紹如何開發(fā)一個自定義控件工程。 本節(jié)介紹的系統(tǒng)將提供以下功能:(1)能夠顯示各種文件類型的圖片;(2)能夠保存成多種文件格式的圖片;(3)能夠?qū)崿F(xiàn)圖像漫游, 瀏覽大圖片的時候,可以通過鼠標(biāo)拖動圖片或者通過鍵盤方向鍵來移動大圖片;(4)能夠選取圖像;(5)能夠進行圖像的復(fù)制粘貼;(6)能夠放大、縮小圖像、查看原始圖像大小、以及自適應(yīng)顯示圖像即隨著窗體的大小將圖像全部顯示在窗體中;(7)能夠撤銷或者重復(fù)上一步的操作;(8)當(dāng)前編輯圖像的狀態(tài)顯示;(9)能夠進行多種顏色之間的轉(zhuǎn)化,如黑白圖、16色灰度圖、256色灰度圖等;(10)能夠改變圖像的大小;(11)能夠旋轉(zhuǎn)圖像;(12)能夠鏡像圖像;(13)常用的圖像參數(shù)調(diào)整,如飽和度調(diào)整、亮度調(diào)整、 對比度調(diào)整;(14)能夠選取圖像中任一像素的顏色值;(14)常用的各種圖像處理技術(shù),如Greys、Negative、Sepia、Colorize、Replace HS、Replace L、Shift、Blur、Soften、Sharpen、Diffuse、Pixelaze、Despeckle、Contour、Emboss、Outline、Relieve、Noise、Scanlines、Dilate、Erode、Texturize等;(15)各種常見的圖像特效效果,如百葉窗效果、馬賽克效果、翻頁效果等;(16)快速查看放大圖像的局部位置; 編程原理本系統(tǒng)文件很多,設(shè)計了很多的編程技術(shù)和原理,下面就重點介紹其中的一些比較重要的編程技術(shù)和原理。其代碼請查看光盤,路徑: chap16\ex_01。 圖163 將圖片載入程序 圖164 瀏覽放大后的圖像 圖165 瀏覽縮小后的圖像 圖166 向左旋轉(zhuǎn)圖片 圖167 向右旋轉(zhuǎn)圖片 圖168 圖片變暗如果在圖片上使用了畫圖工具或者將圖片變暗后,當(dāng)單擊“編輯”欄中的“恢復(fù)”命令按鈕后,“操作區(qū)域”就會恢復(fù)到圖163時的載入狀態(tài)。在前面的多媒體學(xué)習(xí)中我們已經(jīng)學(xué)習(xí)了圖片的旋轉(zhuǎn),和這里的圖片旋轉(zhuǎn)完全相同。圖像綜合處理中的畫圖如圖162所示。 實例演示運行該程序可看到如圖161所示的圖像處理綜合系統(tǒng)界面。對圖像的旋轉(zhuǎn)我們采用的是逐點計算法。 實例原理應(yīng)用通用對話框控制文件的打開,選取預(yù)設(shè)格式的圖片加載到圖片框中進行瀏覽。此系統(tǒng)能夠?qū)崿F(xiàn)圖片的瀏覽、放大和縮小、旋轉(zhuǎn)、灰暗化,以及在圖片上畫出能夠設(shè)置顏色和線條寬度的線。參數(shù)opcode是操作碼,其含義可以參考Windows API中關(guān)于BitBlt和StretchBlt函數(shù)的介紹。在圖片上畫圖應(yīng)用了鼠標(biāo)的MouseDown,MouseUp和MouseMove事件,通過邏輯變量來控制畫筆和橡皮是否可用,使用PictureBox控件的Line方法用鼠標(biāo)點擊相應(yīng)的圖標(biāo)即可設(shè)置線條寬度DrawWidth屬性。在“工具”欄中選擇畫筆工具,然后在“顏色”框中選擇畫筆顏色,接著在“線寬”欄中選擇畫筆的線寬,當(dāng)在“操作區(qū)域”按下鼠標(biāo)左鍵并移動鼠標(biāo)時就可以實現(xiàn)畫圖功能了,橡皮工具可以把需要擦除的區(qū)域設(shè)置成背景色,以實現(xiàn)擦除的效果。載入圖像后就可以對圖片進行相應(yīng)的操作,點擊“編輯”欄中的“放大”命令按鈕,“操作區(qū)域”中的圖片行對于“對比區(qū)域”將被放大,你可以拉動水平或垂直滾動條來瀏覽放大后的圖像(如圖164所示)和縮小后的圖像(如圖165所示)。除了對調(diào)整圖像大小和旋轉(zhuǎn)圖像,本程序還提供了畫面變暗的效果,單擊“編輯”欄中的“變暗”命令按鈕,“操作區(qū)域”中的圖片將會變暗,與“對比區(qū)域”形成鮮明的對比,如圖168所示。由于篇幅有限,本案例代碼被省略39。但是很多時候,只需要使用到部分圖像處理功能,或者對圖像處理速度要求不是很高的時候,通過Visual Basic本身也能夠進行各種數(shù)字圖像的處理。開發(fā)自定義控件,很多語言都可以實現(xiàn),如Visual C ++、Visual Basic、Delphi等,在Visual Basic中開發(fā)控件,非常簡單方便,下面簡單介紹自定義開發(fā)組件的過程。 圖169 創(chuàng)建AcitiveX控件 圖1610 控件界面從圖1610中可以看到,自定義控件的開發(fā)界面同普通的Visual Basic應(yīng)用程序窗體開發(fā)一樣,因此大部分的Visual Basic自帶的控件,都可以被加入到控件容器中。在控件中添加屬性主要是通過“Public Property Let”和“Public Property Get”兩個方法來實現(xiàn),下面來看看控件“ucInfo”的“TextFile”屬性定義過程。該函數(shù)用于獲得屬性TextFile的值Public Property Get TextFile() As String TextFile = m_TextFile End Property而在控件中定義方法則比較簡單,直接通過關(guān)鍵詞“Public”定義一個函數(shù)或者過程即可,如在“ucToolbar”控件中定義的“BuildToolbar”方法如下:Public Function BuildToolbar(Image As StdPicture, ByVal MaskColor As OLE_COLOR, ByVal IconSize As Integer, Optional ByVal FormatMask As String) As Boolean39。2.API的應(yīng)用由于本系統(tǒng)是進行圖像處理,眾所周知,數(shù)字圖像一般都比較大,如果使用Visual Basic自帶的一些圖像控件來進行各種圖像處理,則會極大的影響速度。Private Declare Function CreateDIBSection Lib gdi32 (ByVal hDC As Long, lpBitsInfo As BITMAPINFOHEADER, ByVal wUsage As Long, lpBits As Long, ByVal handle As Long, ByVal dw As Long) As Long(2)CreateCompatibleDC函數(shù)創(chuàng)建一個與特定設(shè)備場景一致的內(nèi)存設(shè)備場景Private Declare Function CreateCompatibleDC Lib gdi32 (ByVal hDC As Long) As Long(3)CreateCompatibleBitmap函數(shù)創(chuàng)建一幅與設(shè)備有關(guān)位圖,它與指定的設(shè)備場景兼容Private Declare Function CreateCompatibleBitmap Lib gdi32 (ByVal hDC As Long, ByVal nWidth As Long, ByVal nHeight As Long) As Long(4)DeleteDC函數(shù)刪除專用設(shè)備場景或信息場景,釋放所有相關(guān)窗口資源。每個設(shè)備場景都可能有選入其中的圖形對象。例如,當(dāng)前選定的畫筆決定了在設(shè)備場景中描繪的線段顏色及樣式。源和目標(biāo)DC相互間必須兼容。源矩形會根據(jù)需要進行伸縮,以便與目標(biāo)矩形的大小相符。Private Declare Function SetStretchBltMode Lib gdi32 (ByVal hDC As Long, ByVal nStretchMode As Long) As Long(12)GetDIBColorTable函數(shù)選入設(shè)備場景的DIBSection中取得顏色表信息Private Declare Function GetDIBColorTable Lib gdi32 (ByVal hDC As Long, ByVal un1 As Long, ByVal un2 As Long, lpRGBQuad As Any) As Long(13)GetDIBits函數(shù)將來自一幅位圖的二進制位復(fù)制到一幅與設(shè)備無關(guān)的位圖里Private Declare Function GetDIBits Lib gdi32 (ByVal aHDC As Long, ByVal hBitmap As Long, ByVal nStartScan As Long, ByVal nNumScans As Long, lpBits As Any, lpbi As Any, ByVal wUsage As Long) As Long(14)SetRect函數(shù)設(shè)置指定矩形的內(nèi)容Private Declare Function SetRect Lib user32 (lpRect As RECT2, ByVal x1 As Long, ByVal y1 As Long, ByVal x2 As Long, ByVal y2 As Long) As Long(15)FillRect函數(shù)用指定的刷子填充一個矩形Private Declare Function FillRect Lib user32 (ByVal hDC As Long, lpRect As RECT2, ByVal hBrush As Long) As Long(16)CreateSolidBrush函數(shù)用純色創(chuàng)建一個刷子Private Declare Function CreateSolidBrush Lib gdi32 (ByVal crColor As Long) As Long(17)CreatePalette函數(shù)創(chuàng)建調(diào)色板 Private Declare Function CreatePalette Lib gdi32 (lpLogPalette As Any) As Long(
點擊復(fù)制文檔內(nèi)容
職業(yè)教育相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1