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

正文內(nèi)容

基于vc的圖像處理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)論文(編輯修改稿)

2025-04-03 10:55 本頁面
 

【文章內(nèi)容簡(jiǎn)介】 t(AfxGetMainWnd()m_hWnd,m_hMenu,i,rc)。 i++ returnwidth。 N Y inti=0 9 (11)向 CCustomMenu 類中添加 SetMenuItemText 方法,繪制菜單項(xiàng)文本。 void CCustomMenu::SetMenuItemText(CDC *pDC, LPSTR strMenuText, CRect Rect) { (20,0)。 pDCDrawText(strMenuText,Rect,DT_SINGLELINE|DT_VCENTER|DT_LEFT)。 } (12)向 CCustomMenu 類中添加 DrawTopMenuBk 方法,繪制頂層菜單的背景顏色。 (13)向 CCustomMenu 類中添加 DrawSepMenu 方法,繪制菜單分隔條。 void CCustomMenu::DrawSepMenu(CDC *pDC, CRect Rect) { pDCDraw3dRect(Rect,RGB(255,0,0),RGB(0,0,255))。 } iMenuCount iMenuCount inWnd()m_hW i++ HRGNMenuRgn=CreateRectRgn(,ottom)。 Rgn(,r intj=0 CombineRgn(MenuClientRgn,MenuClientRgn,pRgn[j],RGN_OR)。 CombineRgn(MenuClientRgn,MenuClientRgn,,以獲取非菜 單項(xiàng)區(qū)域 j++ Side by side jMenuCount N Y N Y inti=0 MENUBARINFOMenuInfo。 10 (14)向 CCustomMenu類中添加 DrawMenuBk方法,繪制菜單項(xiàng)的背景顏色。 void CCustomMenu::DrawMenuBk(CDC *pDC, CRect Rect, COLORREF SrcColor, COLORREF DesColor, BOOL State) { if (State) { pDCRectangle(Rect)。 (1,1)。 int r1,g1,b1。 //讀取漸變起點(diǎn)的顏色值 r1 = GetRValue(SrcColor)。 g1 = GetGValue(SrcColor)。 b1 = GetBValue(SrcColor)。 int r2,g2,b2。 //讀取漸變終點(diǎn)的顏色值 r2 = GetRValue(DesColor)。 g2 = GetGValue(DesColor)。 b2 = GetBValue(DesColor)。 float r3,g3,b3。 //菜單區(qū)域水平方向每個(gè)點(diǎn) RGB 值應(yīng)該變化的度 (范圍 ) r3 = ((float)(r2r1)) / (float)(())。 g3 = (float)(g2g1)/(float)(())。 b3 = (float)(b2b1)/(float)(())。 COLORREF r,g,b。 //菜單區(qū)域水平方向每個(gè)點(diǎn)的顏色值 CPen* pOldPen 。 for (int i=。 i。 i++) { r = r1+(int)r3*()。 g = g1+(int)g3*()。 b = b1+ (int)b3*()。 CPen pen (PS_SOLID,1,RGB(r,g,b))。 pOldPen = pDCSelectObject(amp。pen)。 pDCMoveTo(,i)。 pDCLineTo(,i)。 pDCSelectObject(pOldPen)。 } } else { pDCFillSolidRect(Rect,RGB(0x000000F9, 0x000000F8, 0x000000F7))。 } } 11 (15)改寫菜單類的 MeasureItem 虛方法,根據(jù)菜單項(xiàng)的文本設(shè)置菜單 項(xiàng)的寬度。 lpStructitemWidth = +25。 //設(shè)置菜單項(xiàng)的寬度 (16)改寫菜單類的 DrawItem虛方法,根據(jù)菜單項(xiàng)的不同狀態(tài),繪制不同效果的菜單。 unsigned int m_state = lpStructitemState。 //獲取菜單項(xiàng)的狀態(tài) CDC* pDC = CDC::FromHandle(lpStructhDC)。 //獲取菜單設(shè)備上下文 CString str = ((CMenuItem*)(lpStructitemData))m_MenuText。 //獲取菜單各項(xiàng)的文本 int MenuID = ((CMenuItem*)(lpStructitemData))m_MenuType。 //獲取菜單類型 CRect Rect = lpStructrcItem。 //獲取菜單項(xiàng)區(qū)域 pDCSetBkMode(TRANSPARENT)。 //設(shè)置透明的背景模式 switch(MenuID) //判斷菜單類型 自定義工 具欄 在本系統(tǒng)中為了使程序主界面更加美觀,自定義了一個(gè)工具欄,效果如圖 所示。 圖 自定義工具欄 自定義工具欄最簡(jiǎn)單的方法是處理 NM_CUSTOMDRAW 消息,在其消息處理函數(shù)中根據(jù)工具欄按鈕的不同狀態(tài)繪制不同效果的工具欄按鈕。具體設(shè)計(jì)步驟如下。 12 ? 從 CToolBar 類派生一個(gè)子類,本例為 CCustomBar。 ? 向 CCustomBar 類中添加變量成員。 ? 在 CCustomBar 類的消息映射部分添加 ON_NOTIFY_REFLECT 映射宏,用于處理 NM_CUSTOMRAW 消息。 ? 向 CCustomBar類中添加 OnOwnerDraw 方法,表示 NM_CUSTOMDRAW消息的處理方法,用于繪制工具欄按鈕。 ? 向 CCustomBar 類中添加 DrawButton方法,根據(jù)工具欄按鈕的不同狀態(tài),繪制不同效果的工具欄按鈕。 主要功能模塊的設(shè)計(jì) 系統(tǒng)架構(gòu)設(shè)計(jì) 為了使 讀者能夠?qū)ο到y(tǒng)文件有更清晰的認(rèn)識(shí)并了解其使用方法,在此設(shè)計(jì)了文件架構(gòu)圖 ,如圖 。 CMainFrame(系統(tǒng)主界面 ) 像 圖像顯示 圖像轉(zhuǎn)換 圖像處 理 字符識(shí)別 幫助 圖 主文件架構(gòu)圖 圖像顯示文件架構(gòu)圖和圖像轉(zhuǎn)換文件架構(gòu)如圖 和圖 所示。 圖 圖像顯示文件 架構(gòu)圖 CShowImage 顯示位圖 CShowJPEG 顯示 JPEG CShowGIF 顯示 GIF 圖像顯示 13 圖 圖像轉(zhuǎn)換文件架構(gòu)圖 圖像處理文件架構(gòu)圖和字符識(shí)別文件架構(gòu)圖如圖 所示。幫助文件架構(gòu)圖如圖 。 圖 圖像處理文件架構(gòu)圖 字符識(shí)別 CRecNumber 幫助 CAboutDlg 手寫數(shù)字識(shí)別 關(guān)于 圖 字符識(shí)別文件架構(gòu)圖 圖 幫助文件架構(gòu)圖 CRotationImage 圖像旋轉(zhuǎn) CBmpSharp 圖像銳化處理 CReverseColor 圖像反色處理 圖像處理 CGrayHandle 灰度化處理 CLineArity 線性變換 CBmpToJpeg 位圖轉(zhuǎn)換為 JPEG CJpegToBmp JPEG 轉(zhuǎn)換為位圖 CBmpToGif 位圖轉(zhuǎn)換為 GIF 圖像轉(zhuǎn)換 CGifToBmp GIF 轉(zhuǎn)換為位圖 14 公共模塊設(shè)計(jì) 在設(shè)計(jì) 圖像效果顯示時(shí),有些圖像可能比較大,在窗口中不能完全顯示出來。為了讓用戶能夠?yàn)g覽圖像,可以單獨(dú)設(shè)計(jì)了一個(gè)滾動(dòng)窗口,當(dāng)控件設(shè) 置在窗口中,用戶可以通過滾動(dòng)條來瀏覽控件的各個(gè)部分。滾動(dòng)窗口的設(shè)計(jì)步驟如下。 (1)創(chuàng)建一個(gè)對(duì)話框,類名為“ CImageContainer” ,設(shè)置對(duì)話框的屬性 。 (2)處理對(duì)話框的 WM_HSCROLL 消息,設(shè)置窗口的滾動(dòng)方向和范圍。代碼如下: (3)處理對(duì)話框的 VSCROLL 消息,設(shè)置窗口的滾動(dòng)方向和范圍。代碼如下: case SB_PAGELEFT: //在滾動(dòng)塊的左方空白滾動(dòng)區(qū)域單擊 ,增量為 6 case SB_PAGERIGHT: //在滾動(dòng)塊的右方空白滾動(dòng)區(qū)域單擊 ,增量為 6 (4)處理對(duì)話框的 WM_MOUSEWHEEL 消息,響應(yīng)鼠標(biāo)的滾輪事件。代碼如下: GetScrollInfo(SB_VERT,amp。vinfo)。 //獲取滾動(dòng)條信息 int min,max,thumbwidth。 min = 。 max = 。 thumbwidth = 。 int pos = GetScrollPos(SB_VERT)。 //獲取垂直滾動(dòng)條位置 SetScrollPos(SB_VERT,pos6)。 //設(shè)置垂直滾動(dòng)條的位置 ScrollWindow(0,6)。 //滾動(dòng)窗口 主窗體設(shè)計(jì) 1. 實(shí)現(xiàn)目標(biāo) 圖像處理系統(tǒng)主窗體主要由菜單、工具欄、客戶區(qū)域和狀態(tài)欄 4 部分組成,主要功能是對(duì)圖像處理系統(tǒng)的各個(gè)模塊進(jìn)行調(diào)整。圖像處理系統(tǒng)主窗體的運(yùn)行效果如圖 。 圖像處理系統(tǒng)主窗體的運(yùn)行效果 15 2. 設(shè)計(jì)步驟 ( 1)創(chuàng)建一個(gè)單文檔 /視圖結(jié)構(gòu)的應(yīng)用程序,工程名稱為“ ImageHandle” 。 ( 2)在工作區(qū)的資源視圖窗口中修改 菜單資源 ID 為“ IDR_MAINMENU”,設(shè)置菜單項(xiàng)的效果如圖 。 圖 菜單資源設(shè)計(jì) 菜單資源文件代碼如下: IDR_MAINMENU MENU DISCARDABLE BEGIN POPUP“圖像顯示 ” BEGIN MENUITEM “顯示位圖 ” , ID_MENUSHOWBMP MENUITEM“顯示 JPEG” , ID_MENUSHOWJPG MENUITEM “顯示 GIF” , ID_MENUSHOWGIF END POPUP“圖像轉(zhuǎn)換 ” BEGIN MENUITEM “位圖轉(zhuǎn)換為 JPEG” , ID_MENUBMPTOJPEG MENUITEM “ JPEG 轉(zhuǎn)換為位圖 ” , ID_MENUJPEGTOBMP MENUITEM “位圖轉(zhuǎn)換為 GIF” , ID_MENUBMPTOGIF MENUITEM “ GIF 轉(zhuǎn)換為位圖 ” , ID_MENUGIFTOBMP END POPUP“圖像轉(zhuǎn)換 ” BEGIN MENUITEM “圖像旋轉(zhuǎn) ” , ID_MENUROTATION MENUITEM “圖像銳化處理 ” , ID_MENUBMPSHARP MENUITEM “圖像反色處理 ” , ID_MENUREVERSECOLOR MENUITEM “灰度化處 理 ” , ID_MENUGRAYHANDLE MENUITEM “線性變換 ” , ID_MENULINEARITY END POPUP“圖像轉(zhuǎn)換 ” , BEGIN MENUITEM “手寫數(shù)字識(shí)別 ” , 65535 END POPUP“圖像轉(zhuǎn)換 ” , BEGIN 16 MENUITEM“隨機(jī)顏色 ” , ID_RANDOMCOLOR MENUITEM“固定顏色 ” , ID_FIXCOLOR END POPUP“圖像轉(zhuǎn)換 ” , BEGIN MENUITEM“關(guān)于 ?” , ID_ABOUT END END 3. 代碼分析 (1) 在應(yīng)用程序類的 InitInst
點(diǎn)擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1