MFC CDC 类 公共方法:CDC::GetOutlineTextMetrics
CDC::GetOutlineTextMetrics 是 MFC(Microsoft Foundation Classes)中 CDC(Device Context)类的一个公共方法。这个方法用于获取字体的轮廓文本度量信息。以下是一个简单的示例代码,演示如何使用 GetOutlineTextMetrics 方法:// 假设 pDC 是你的 CDC 对象OUTLINETEXTMETRIC otm;int result = pDC->GetOutlineTextMetrics(sizeof(OUTLINETEXTMETRIC), &otm);if (result != 0) { // 使用获取的轮廓文本度量信息进行其他操作}在这个例子中,OUTLINETEXTMETRIC 结构用于保存轮廓文本度量信息。通过调用 GetOutlineTextMetrics 方法,可以获取当前字体的轮廓文本度量信息。轮廓文本度量信息包括有关字体的各种度量,如字符宽度、字符高度、基线等。这对于进行精确的文本布局和渲染非常有用。请注意,GetOutlineTextMetrics 方法返回一个整...
MFC CDC 类 公共方法:CDC::GetNearestColor
CDC::GetNearestColor 是 MFC(Microsoft Foundation Classes)中 CDC(Device Context)类的一个公共方法。这个方法用于获取指定颜色在设备上下文中最接近的颜色。以下是一个简单的示例代码,演示如何使用 GetNearestColor 方法:// 假设 pDC 是你的 CDC 对象COLORREF originalColor = RGB(255, 0, 0); // 指定原始颜色COLORREF nearestColor = pDC->GetNearestColor(originalColor);// 使用获取的最接近颜色进行其他操作在这个例子中,originalColor 是你指定的原始颜色,然后通过 GetNearestColor 方法获取在当前设备上下文中最接近的颜色。nearestColor 将保存这个最接近的颜色。这个方法通常用于在设备上下文的颜色表中查找最接近的颜色,因为不同的输出设备可能不支持所有可能的颜色。
MFC CDC 类 公共方法:CDC::GetMiterLimit
CDC::GetMiterLimit 是 MFC(Microsoft Foundation Classes)中 CDC(Device Context)类的一个公共方法。这个方法用于获取当前设备上下文的线接合限制。以下是一个简单的示例代码,演示如何使用 GetMiterLimit 方法:// 假设 pDC 是你的 CDC 对象float miterLimit;int result = pDC->GetMiterLimit(&miterLimit);if (result != 0) { // 使用获取的线接合限制进行其他操作}在这个例子中,miterLimit 将保存当前设备上下文的线接合限制。线接合限制控制两条相交线段的接合方式,当线段的交点之间的距离超过限制值时,将采用斜接(miter)接合。这有助于防止尖角在接合处产生过长的尖角。请注意,GetMiterLimit 方法返回一个整数值,如果操作成功,返回非零值,否则返回零。因此,我们在示例代码中使用 result 来检查是否成功获取线接合限制。
MFC CDC 类 公共方法:CDC::GetMapMode
CDC::GetMapMode 是 MFC(Microsoft Foundation Classes)中 CDC(Device Context)类的一个公共方法。这个方法用于获取当前设备上下文的映射模式(Mapping Mode)。以下是一个简单的示例代码,演示如何使用 GetMapMode 方法:// 假设 pDC 是你的 CDC 对象int mapMode = pDC->GetMapMode();// 使用获取的映射模式进行其他操作在这个例子中,mapMode 将保存当前设备上下文的映射模式。映射模式定义了设备上下文中逻辑单位与设备单位之间的转换关系,例如,映射模式可以是逻辑单位为每英寸点数(MM_LOENGLISH)或每厘米点数(MM_LOMETRIC)等。你可以使用返回的映射模式进行条件判断或其他操作,以适应不同的绘图需求。
MFC CDC 类 公共方法:CDC::GetKerningPairs
CDC::GetKerningPairs 是 MFC(Microsoft Foundation Classes)中 CDC(Device Context)类的一个公共方法。这个方法用于获取设备上下文(Device Context)中当前字体的字距对(kerning pairs)信息。以下是一个简单的示例代码,演示如何使用 GetKerningPairs 方法:// 假设 pDC 是你的 CDC 对象int nPairs = pDC->GetKerningPairs(0, NULL); // 获取字距对的数量if (nPairs > 0) { KERNINGPAIR* pKerningPairs = new KERNINGPAIR[nPairs]; int result = pDC->GetKerningPairs(nPairs, pKerningPairs); if (result != 0) { // 使用获取的字距对信息进行其他操作 } delete[] pKerningPairs; // 记得释放内存}在这个例子中...
MFC CDC 类 公共方法:CDC::GetGraphicsMode
CDC::GetGraphicsMode 是 MFC(Microsoft Foundation Classes)中 CDC(Device Context)类的一个公共方法。这个方法用于获取设备上下文(Device Context)的图形模式。以下是一个简单的示例代码,演示如何使用 GetGraphicsMode 方法:// 假设 pDC 是你的 CDC 对象int graphicsMode = pDC->GetGraphicsMode();// 使用获取的图形模式进行其他操作在这个例子中,graphicsMode 将保存当前设备上下文的图形模式。图形模式表示设备上下文是使用了 GM_COMPATIBLE、GM_ADVANCED 等图形模式。你可以使用返回的值进行条件判断或其他操作,根据不同的图形模式采取相应的绘图策略。
MFC CDC 类 公共方法:CDC::GetGlyphOutline
CDC::GetGlyphOutline 是 MFC(Microsoft Foundation Classes)中 CDC(Device Context)类的一个公共方法。这个方法用于获取指定字形的轮廓信息。以下是一个简单的示例代码,演示如何使用 GetGlyphOutline 方法:// 假设 pDC 是你的 CDC 对象WCHAR ch = L'A'; // 指定要获取轮廓的字符UINT nFormat = GGO_METRICS; // 指定获取轮廓的格式GLYPHMETRICS gm; // 用于存储字形的度量信息DWORD dwSize = pDC->GetGlyphOutline(ch, nFormat, &gm, 0, NULL, NULL, 0); // 获取轮廓数据的大小if (dwSize != GDI_ERROR) { LPVOID pBuffer = new BYTE[dwSize]; DWORD result = pDC->GetGlyphOutline(ch, nFormat, &gm, dwS...
MFC CDC 类 公共方法:CDC::GetFontData
CDC::GetFontData 是 MFC(Microsoft Foundation Classes)中 CDC(Device Context)类的一个公共方法。这个方法用于检索与当前字体相关的字体数据。以下是一个简单的示例代码,演示如何使用 GetFontData 方法:// 假设 pDC 是你的 CDC 对象LOGFONT lf;CFont* pFont = pDC->GetCurrentFont(); // 获取当前字体pFont->GetLogFont(&lf); // 获取字体的 LOGFONT 结构DWORD dwSize = pDC->GetFontData(0, 0, NULL, 0); // 获取字体数据的大小BYTE* pBuffer = new BYTE[dwSize];pDC->GetFontData(0, 0, pBuffer, dwSize); // 获取字体数据到缓冲区// 使用获取的字体数据进行其他操作delete[] pBuffer; // 记得释放内存在这个例子中,首先使用 GetCurrentFont 方...
MFC CDC 类 公共方法:CDC::GetDeviceCaps
CDC::GetDeviceCaps 是 MFC(Microsoft Foundation Classes)中 CDC(Device Context)类的一个公共方法。这个方法用于获取设备上下文(Device Context)的一些能力(capabilities)信息。它提供了有关设备的各种参数,比如分辨率、物理尺寸、颜色深度等等。以下是一个简单的示例代码,演示如何使用 GetDeviceCaps 方法:// 假设 pDC 是你的 CDC 对象int horizontalDPI = pDC->GetDeviceCaps(LOGPIXELSX); // 获取水平方向的每英寸像素数int verticalDPI = pDC->GetDeviceCaps(LOGPIXELSY); // 获取垂直方向的每英寸像素数// 使用获取的信息进行其他操作在这个例子中,LOGPIXELSX 和 LOGPIXELSY 是两个常量,它们分别代表水平和垂直方向的每英寸像素数。通过调用 GetDeviceCaps 方法,你可以获取这些信息,然后根据需要进行其他操作。除了像素数之外,GetDe...
MFC CDC 类 公共方法:CDC::GetDCPenColor
CDC::GetDCPenColor 是 MFC(Microsoft Foundation Classes)中 CDC(Device Context)类的一个公共方法。这个方法用于获取设备上下文(Device Context)中当前的画笔颜色。在 MFC 编程中,CDC 类用于封装设备上下文的操作,包括绘图、字体、画刷和画笔等。GetDCPenColor 方法用于检索当前画笔的颜色。以下是一个简单的示例代码,演示如何使用 GetDCPenColor 方法:// 假设 pDC 是你的 CDC 对象COLORREF penColor = pDC->GetDCPenColor();// 使用 penColor 进行其他操作在这个例子中,penColor 将保存当前画笔的颜色,你可以根据需要使用这个颜色进行其他操作,比如在相同的颜色下绘制其他图形。请注意,GetDCPenColor 返回的是一个 COLORREF 类型的颜色值,你可以使用 RGB 宏来提取红、绿和蓝分量:BYTE red = GetRValue(penColor);BYTE green = GetGValue(penCo...
MFC CDC 类 公共方法:CDC::GetCurrentPosition
在 MFC(Microsoft Foundation Classes)中,CDC::GetCurrentPosition 是一个公共方法,用于获取当前设备上下文(Device Context,CDC)中的当前位置(当前点)。以下是 CDC::GetCurrentPosition 方法的声明:CPoint GetCurrentPosition() const;这个方法返回一个 CPoint 对象,表示当前设备上下文中的当前位置。CPoint 对象包含 x 和 y 两个成员,分别表示横坐标和纵坐标。示例代码如下:CPoint currentPos = myCDC.GetCurrentPosition();int x = currentPos.x;int y = currentPos.y;// 处理当前位置信息这个方法通常在进行绘图操作后使用,以获取当前位置的坐标信息。例如,在使用 MoveTo 方法绘制路径时,你可以使用 GetCurrentPosition 获取路径的结束点,以便后续的绘图操作。
MFC CDC 类 公共方法:CDC::GetCurrentPen
在 MFC(Microsoft Foundation Classes)中,CDC::GetCurrentPen 是一个公共方法,用于获取当前设备上下文(Device Context,CDC)中所选择的画笔(pen)的指针。以下是 CDC::GetCurrentPen 方法的声明:CPen* GetCurrentPen() const;这个方法返回一个指向 CPen 对象的指针,表示当前设备上下文中所选择的画笔。示例代码如下:CPen* pPen = myCDC.GetCurrentPen();if (pPen != nullptr) { // 处理当前画笔对象 // ...}这个方法通常在需要获取当前设备上下文中所使用的画笔对象时使用。注意,这里返回的是 CPen 对象的指针,你可以通过这个指针进一步操作或查询画笔的属性。如果当前设备上下文没有选择画笔,返回的指针将为 nullptr。
MFC CDC 类 公共方法:CDC::GetCurrentPalette
在 MFC(Microsoft Foundation Classes)中,CDC::GetCurrentPalette 是一个公共方法,用于获取当前设备上下文(Device Context,CDC)中所选择的调色板(palette)的句柄。以下是 CDC::GetCurrentPalette 方法的声明:CPalette* GetCurrentPalette() const;这个方法返回一个指向 CPalette 对象的指针,表示当前设备上下文中所选择的调色板。示例代码如下:CPalette* pPalette = myCDC.GetCurrentPalette();if (pPalette != nullptr) { // 处理当前调色板对象 // ...}这个方法通常在需要获取当前设备上下文中所使用的调色板对象时使用。注意,这里返回的是 CPalette 对象的指针,你可以通过这个指针进一步操作或查询调色板的属性。如果当前设备上下文没有选择调色板,返回的指针将为 nullptr。
MFC CDC 类 公共方法:CDC::GetCurrentFont
在 MFC(Microsoft Foundation Classes)中,CDC::GetCurrentFont 是一个公共方法,用于获取当前设备上下文(Device Context,CDC)中所选择的字体的指针。以下是 CDC::GetCurrentFont 方法的声明:CFont* GetCurrentFont() const;这个方法返回一个指向 CFont 对象的指针,表示当前设备上下文中所选择的字体。示例代码如下:CFont* pFont = myCDC.GetCurrentFont();if (pFont != nullptr) { // 处理当前字体对象 // ...}这个方法通常在需要获取当前设备上下文中所使用的字体对象时使用。注意,这里返回的是 CFont 对象的指针,你可以通过这个指针进一步操作或查询字体的属性。如果当前设备上下文没有选择字体,返回的指针将为 nullptr。
MFC CDC 类 公共方法:CDC::GetCurrentBrush
在 MFC(Microsoft Foundation Classes)中,CDC::GetCurrentBrush 是一个公共方法,用于获取当前设备上下文(Device Context,CDC)中所选择的画刷(brush)的指针。以下是 CDC::GetCurrentBrush 方法的声明:CBrush* GetCurrentBrush() const;这个方法返回一个指向 CBrush 对象的指针,表示当前设备上下文中所选择的画刷。示例代码如下:CBrush* pBrush = myCDC.GetCurrentBrush();if (pBrush != nullptr) { // 处理当前画刷对象 // ...}这个方法通常在需要获取当前设备上下文中所使用的画刷对象时使用。注意,这里返回的是 CBrush 对象的指针,你可以通过这个指针进一步操作或查询画刷的属性。如果当前设备上下文没有选择画刷,返回的指针将为 nullptr。
MFC CDC 类 公共方法:CDC::GetCurrentBitmap
在 MFC(Microsoft Foundation Classes)中,CDC::GetCurrentBitmap 是一个公共方法,用于获取当前设备上下文(Device Context,CDC)中所选择的位图(bitmap)的句柄。以下是 CDC::GetCurrentBitmap 方法的声明:CBitmap* GetCurrentBitmap() const;这个方法返回一个指向 CBitmap 对象的指针,表示当前设备上下文中所选择的位图。示例代码如下:CBitmap* pBitmap = myCDC.GetCurrentBitmap();if (pBitmap != nullptr) { // 处理当前位图对象 // ...}这个方法通常在需要获取当前设备上下文中所使用的位图对象时使用。注意,这里返回的是 CBitmap 对象的指针,你可以通过这个指针进一步操作或查询位图的属性。如果当前设备上下文没有选择位图,返回的指针将为 nullptr。
MFC CDC 类 公共方法:CDC::GetColorAdjustment
在 MFC(Microsoft Foundation Classes)中,CDC::GetColorAdjustment 是一个公共方法,用于获取设备上下文(Device Context,CDC)的颜色调整信息。以下是 CDC::GetColorAdjustment 方法的声明:BOOL GetColorAdjustment(LPCOLORADJUSTMENT lpColorAdjust) const; lpColorAdjust:指向 COLORADJUSTMENT 结构的指针,用于接收颜色调整的信息。COLORADJUSTMENT 结构包含了颜色调整的详细信息:typedef struct tagCOLORADJUSTMENT { WORD caSize; WORD caFlags; WORD caIlluminantIndex; WORD caRedGamma; WORD caGreenGamma; WORD caBlueGamma; WORD caReferenceBlack; WORD caReferenceWh...
MFC CDC 类 公共方法:CDC::GetClipBox
在 MFC(Microsoft Foundation Classes)中,CDC::GetClipBox 是一个公共方法,用于获取当前设备上下文(Device Context,CDC)的剪辑框(clip box)。剪辑框是指设备上下文中当前设置的剪辑区域的边界框。以下是 CDC::GetClipBox 方法的声明:int GetClipBox(LPRECT lpRect) const; lpRect:指向 RECT 结构的指针,用于接收剪辑框的坐标信息。这个方法返回一个整数值,表示剪辑框的类型。可能的返回值包括: NULLREGION:剪辑框为空。 SIMPLEREGION:剪辑框是一个简单的矩形。 COMPLEXREGION:剪辑框是一个复杂的区域。示例代码如下:RECT clipBox;int clipType = myCDC.GetClipBox(&clipBox);if (clipType != NULLREGION) { // clipBox 现在包含了剪辑框的坐标信息 int left = clipBox.left; int top = clipB...
MFC CDC 类 公共方法:CDC::GetCharWidthI
在 MFC(Microsoft Foundation Classes)中,CDC::GetCharWidthI 是一个公共方法,用于获取指定字体的字符的宽度,但它使用了索引而不是字符代码。以下是 CDC::GetCharWidthI 方法的声明:BOOL GetCharWidthI(UINT nFirstChar, UINT nLastChar, LPINT lpBuffer) const; nFirstChar:要获取宽度信息的第一个字符的索引。 nLastChar:要获取宽度信息的最后一个字符的索引。 lpBuffer:指向 int 数组的指针,用于接收字符宽度的信息。这个方法返回一个布尔值,表示操作是否成功。示例代码如下:int widthArray[256]; // 假设获取字符范围是 0 到 255BOOL success = myCDC.GetCharWidthI(0, 255, widthArray);if (success) { // widthArray 现在包含了字符宽度的信息 for (UINT i = 0; i < 256; ++i) { ...
MFC CDC 类 公共方法:CDC::GetCharWidth
在 MFC(Microsoft Foundation Classes)中,CDC::GetCharWidth 是一个公共方法,用于获取指定字体的字符的宽度。以下是 CDC::GetCharWidth 方法的声明:BOOL GetCharWidth(UINT nFirstChar, UINT nLastChar, float* lpFloatBuffer) const; nFirstChar:要获取宽度信息的第一个字符的 ASCII 值。 nLastChar:要获取宽度信息的最后一个字符的 ASCII 值。 lpFloatBuffer:指向 float 数组的指针,用于接收字符宽度的信息。这个方法返回一个布尔值,表示操作是否成功。示例代码如下:float widthArray[256]; // 假设获取字符范围是 0 到 255BOOL success = myCDC.GetCharWidth(0, 255, widthArray);if (success) { // widthArray 现在包含了字符宽度的信息 for (UINT i = 0; i < 256; ...