GDI+ 為 .NET 時代引入的新一代圖形 API,以 C++ 類別封裝,功能遠超 GDI。VC6.0 需手動部署 SDK 才能使用。本文提供最精簡的五步驟整合流程。
GDIPlus.zip(含 Include、Lib),解壓縮。Include 複製到 VC98\Include,Lib 複製到 VC98\Lib。StdAfx.h):
#include <comdef.h>
#ifndef ULONG_PTR
#define ULONG_PTR unsigned long*
#endif
#include "GdiPlus.h"
using namespace Gdiplus;
GdiplusStartupInput m_gdiplusStartupInput;
ULONG_PTR m_gdiplusToken;
// InitInstance
GdiplusStartup(&m_gdiplusToken, &m_gdiplusStartupInput, NULL);
// ExitInstance
GdiplusShutdown(m_gdiplusToken);
gdiplus.lib。void CMyView::OnDraw(CDC* pDC)
{
Graphics g(pDC->m_hDC);
Pen pen(Color(255, 0, 0, 255), 2);
g.DrawLine(&pen, 0, 0, 200, 200);
FontFamily ff(L"微軟正黑體");
Font font(&ff, 16, FontStyleRegular, UnitPixel);
SolidBrush brush(Color(255, 0, 128, 0));
g.DrawString(L"GDI+ 在 VC6 運作正常!", -1, &font, PointF(10, 10), &brush);
}
ULONG_PTR 重複定義:確保 #define 在 #include "GdiPlus.h" 之前。GdiplusStartup:檢查 gdiplus.lib 路徑與拼寫。GdiplusStartup 失敗:目標機需安裝 GDI+ 可轉散發套件(XP 內建)。FontFamily 指定支援中文字型(如「微軟正黑體」、「新細明體」)。