字型函數 -- GetDeviceCaps

來源:互聯網
上載者:User

標籤:des   style   color   io   使用   ar   檔案   sp   cti   

函數功能:該函數檢索指定裝置的裝置指定資訊。
  
函數原型:int GetDeviceCaps(HDC hdc, int nlndex);
  
參數:
  1、hdc:裝置上下文環境的控制代碼。
  2、nIndex:指定返回項,該參數取下列一值。(C++)
  DRIVERVERSION:裝置驅動程式版本。
  TECHNOLOGY:裝置技術,它可以是下列一值:
  DT_PLOTTER:向量繪圖器;DT_RASDISPLAY:光柵顯示器;
  DT_RASPRINTER:光柵印表機;DT_RASCAMERA:光柵照相機;
  DT_CHARSTREAM:字元流;DT_METAFILE:圖元檔案;
  DT_DISPFILE:顯示器檔案。
  如果hdc參數指定圖元檔案的裝置上下文環境,則裝置技術就是給CreateEnhMetaFile函
數的引用裝置,使用GetObjectType函數可以確定它是否是一增強元檔案裝置上下文環境。
  HORZSIZE:物理螢幕的寬度(毫米);VERTSIZE:物理螢幕的高度(毫米);HORZRES:螢幕的寬度(像素);
  VERTRES:螢幕的高度(光柵線);
  LOGPIXELSX:沿螢幕寬度每邏輯英寸的像素數,在多顯示器系統中,該值對所顯示器相同;
  LOGPIXELSY:沿螢幕高度每邏輯英寸的像素數,在多顯示器系統中,該值對所顯示器相同;
  BITSPIXEL:像素相連顏色位元;PLANES:顏色位面數;NUMBRUSHES:裝置指定同畫筆數;
  NUMPENS:裝置指定筆數;NUMFONTS:裝置指定字型數;
  NUMCOLORS:裝置顏色表的入口數,如果裝置的色深不超過8位像素。對於超過色深的裝置返回-1;
  ASPECTX:用於畫線的裝置像素的相對寬度;ASPECTY:用於畫線的裝置像素的相對高度;
  ASPECTXY:用於畫線的裝置像素的對角線寬度;PDEVLCESIZE:保留;
  CLIDCAPS:顯示裝置支援剪下效能的標誌。如果裝置可剪下為一個長方形,則為1,否則為0;
  SIZEPALETTE:系統調色盤中的入口數目,只有在裝置磁碟機在RASTERCAPS索引中設定RC PALETFE位時該索引值才是有效。
且該索引值只能用於16位Windows的磁碟機;
  NUMRESERVED:系統調色盤中保留的入口數目,只有在裝置磁碟機在RASTERLAP索引中設定RC PALETFE位時,該索引值才是有
效的且該索引值只有能於16位的Windows磁碟機;
  COLORRES:實際位像的實際裝置顏色,只有裝置磁碟機在RASTERLAP索引中設定RCPALETFE位時,該索引值才是有效且該索
引值只能用於16位的Windows磁碟機;
  PHYSICALWIDTH:對於列印裝置,為以裝置單位的物理頁面寬度。例如一個在8.5*11紙上設定為600dpi的印表機的裝置物理單
位寬度值為5100,注意物理頁面總是大於可列印的頁面面積,且從不小於;
  PHPSICALHEIGHT:為以裝置單位的物理頁面寬度。例如一個在8.5*11紙上設定為600dpi的印表機的裝置物理單位高度值為6600;
  PHYSICALOFFSETX:對於列印裝置,從物理頁面左邊到列印頁面右邊的距離,例如,一個在8.5*11紙上設定為600dpi的印表機,
不能在超出左邊0.25處列印,且有一個150備單位的水平物理位移;
  PHYSICALOFFSETY;對於列印裝置。從物理頁面上面到列印頁面上邊的距離。例如一個在8.5*11列印紙上設定為的印表機,不能
在超出上邊的地方打處,且有一個裝置單位的物理位移;
  VREFRESH:Windows NT:對於顯示裝置。裝置的當前垂直重新整理率以每秒中的迴圈次數為單位0或1重新整理率代表顯示硬體的預設重新整理率,
此預設重新整理率通常通過設定顯卡或主板的跳線來改變,或通過一個不使用Win32顯示函數比如ChangeDisplay Setting的一個配置程式來設定;
  DESKTOPHORZRES:Windows NT:可視案頭的以像素為單位的寬度。如果裝置支援一個可視案頭或雙重顯示則此值可能大於VERTRES;
  SCALINGFACTORX:印表機x軸的比例係數;SCALINGFACTORY:印表機y軸的比例係數。
  BLTALIGNMENT:在Windows NT中作為像素倍數的水平繪圖調整,對於最好的繪圖操作,視窗繪圖應該是水平調整到此值的倍數。
0顯示裝置為加速的,且可用任何調整。
  SHADEBLENDCAPS:在Windows 98、Windows NT 5.0和以後版本中此值顯示裝置的陰影和混合特性。
  SB_CONST_ALPHA:處理BLENDFUNCTION結構中的Source constantAlpha元素,並通過AlphaBlend數中的blendFunction參數來指定;
  SB_GRAD_RECT:進行Gradientfill矩形填充的能力。SB_GRAD_TRI;進行Gradientfill三角形填充的能力;
  SB_NONE:裝置不支援這些特性中的任何一個。SB_PIXEL_ALPHA:處理AlphaBlond中每一個像素Alphx;
  SB_PREMULT_ALPHA:在Alphablend中對alpha進行預乘;
  RASTERCAPS:裝置所支援的光柵效能,可以是下列值的某種組合;
  RC_BANDING:需要聯合支援。RC_BITBLT:支援傳送位元影像。
  RC_BITMAP64:支援大於64K的位元影像。RC_DI_BITMAP:支援SetDIBits和GetDIBits函數。
  RC_DIBTODEV:支援SetDIBits To Device函數;RC_FLOODFILL:支援連續填充
  RC_GDI20_OUTPUT:支援16位Windows 2.0特徵;RC_PALETTE:指定一個基於調色盤的裝置。
  RC_SCALING:支援縮放;RC_STRETCHBLT:支援StretchBlt函數。
  RC_STRETCHDIB:stretchDIBits函數。
  CURVECAPS:顯示裝置所支援的曲線效能,可以是下列值的某種組合。
  CC_NONE:不支援繪製曲線;CC_CHORD:支援繪製弦;CC_CIRCLES:支援繪製圓。
  CC_ELLIPSES:支援繪製橢圓;CC_INTERIORS:支援內部填充;CC_PIE:支援繪製扇形圖。
  CC_ROUNDRECT:支援繪製圓角矩形;CC_STYLED:支援繪製帶風格的邊界。
  CC_WIDE:支援繪製寬的邊界;CC_WIDESTYLED:支援繪製寬的、帶風格的邊界。
  LINECAPS裝置所支援的畫線效能,可以是下列值的某種組合:
  LC_NONE:不支援繪製線段;LC_INTERIORS:支援內部填充;LC_MARKER:支援繪製標記符。
  LC_POLYLINE:支援折線;LC_POLYMARKER:支援多種標記符;LC_STYLED:帶風格的線段。
  LC_WIDE:支援畫寬線;LC_WIDESTYLED:支援寬的帶風格的線段。
  POLYGONALCAPS設有所支援的多邊形效能。可以是下列值的某種組合。
  PC_NONE:不支援繪製多邊形;PC_INTERIORS:支援內部填充;PC_POLYGON:支援繪製間隔式填充多邊形。
  PC_RECTANGLE:支援繪製矩形;PC_SCANLINE:支援繪製掃描線;PC_STYLED:支援繪製帶風格的邊界。
  PC_WIDE:支援繪製寬邊界;PC_WIDESTYLED:支援繪製寬的帶風格的邊界。
  PC_WINDPOLYGON:支援繪製折線式填充多邊形。
  TEXTCAPS裝置所支援的文字效能,可以是下列值的某種組合:
  TC_OP_CHARACTER:支援字元輸出精度;TC_OP_STROKE:支援筆畫輸出精度。
  TC_CP_STROKE:支援筆畫剪下精度;TC_CR_90:支援字元作90度旋轉;
  TC_CR_ANY:支援字元作任意角度旋轉;TC_SF_X_YINDEP:支援x和y方向的獨立縮放。
  TC_SA_DOUBLE:支援把字元放大一倍;TC_SA_INTEGER:支援整數倍縮放。
  TC_SA_CONTIN:支援以任何倍數的嚴格縮放;TC_EA_DOUBLE:支援字元加重。
  TC_IA_ABLE:支援斜字型;TC_UA_ABLE:支援底線;TC_SO_ABLE:支援刪除線。
  TC_RA_ABLE:支援點陣字型;TC_VA_ABLE:支援向量字型;TC_RESERVED:保留、必須為零。
  TC_SCROLLBLT:不支援用位快傳遞來滾動,注意這可能事與願違。
  以上為C++部分參數,下面提供在C#中部分參數的具體值
  所有類型均聲明為Int或者INT32即可
  DRIVERVERSION = 0
  TECHNOLOGY = 2
  HORZSIZE = 4
  VERTSIZE = 6
  HORZRES = 8
  VERTRES = 10
  BITSPIXEL = 12
  PLANES = 14
  NUMBRUSHES = 16
  NUMPENS = 18
  NUMMARKERS = 20
  NUMFONTS = 22
  NUMCOLORS = 24
  PDEVICESIZE = 26
  CURVECAPS = 28
  LINECAPS = 30
  POLYGONALCAPS = 32
  TEXTCAPS = 34
  CLIPCAPS = 36
  RASTERCAPS = 38
  ASPECTX = 40
  ASPECTY = 42
  ASPECTXY = 44
  SHADEBLENDCAPS = 45
  LOGPIXELSX = 88
  LOGPIXELSY = 90
  SIZEPALETTE = 104
  NUMRESERVED = 106
  COLORRES = 108
  PHYSICALWIDTH = 110
  PHYSICALHEIGHT = 111
  PHYSICALOFFSETX = 112
  PHYSICALOFFSETY = 113
  SCALINGFACTORX = 114
  SCALINGFACTORY = 115
  VREFRESH = 116
  DESKTOPVERTRES = 117
  DESKTOPHORZRES = 118
  BLTALIGNMENT = 119
  傳回值:傳回值指定所需項目的值。
  注釋:GetDeviceCaps提供下列六個索引以代替印表機消失。
  PHYSICALWIDTH GETPHYSPAGESIZE; PHYSICALHEIGHT GETPHYSPAGESIZE
  PHYSICALOFFSETX GETPRINTINGOFFSET;
  PHYSICALOFFSETY GETPHYSICALOFFSET;
  SCALINGFACTORX GETSCALINGFACTOR;
  SCALINGFACTORY GETSCALINGFACTOR;
  Windows CE:Windows CE不支援nIndex參數取下列值:
  VREFRESH; DESKTOPHORZRES; DESKTOPVERTRES;BLTALIGNMENT
  Windows CE 1.0不支援nIndex參數取下列值:
  PHYSICALWIDTH; PHYSICALHEIGHT; PHYSICALOFFSETX; PHYSICALOFFSETY
  速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;標頭檔:wingdi.h;庫檔案:gdi32.lib。
  補充:
  GetDeviceCaps(HORZSIZE)
  HORZSIZE 以毫米為單位的顯示寬度
  VERTSIZE 以毫米為單位的顯示高度
  HORZRES 以像素為單位的顯示寬度 0~65535
  VERTRES 以像素為單位的顯示高度 0~65535
  LOGPIXELSX 像素/邏輯英寸(水平)
  LOGPIXELSY 像素/邏輯英寸(垂直)

字型函數 -- GetDeviceCaps

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.