次の方法で共有


領域関数 (GDI+)

Windows GDI+ は、約 600 個の関数で構成されるフラット API を公開します。これは、Gdiplus.dllに実装され、Gdiplusflat.h で宣言されています。 GDI+ フラット API の関数は、約 40 個の C++ クラスのコレクションによってラップされます。 フラット API で関数を直接呼び出さないでください。 GDI+ を呼び出す場合は常に、C++ ラッパーによって提供されるメソッドと関数を呼び出します。 Microsoft 製品サポート サービスでは、フラット API を直接呼び出すコードのサポートは提供されません。 これらのラッパー メソッドの使用方法の詳細については、「 GDI+ Flat API」を参照してください。

次のフラット API 関数は、 Region C++ クラスによってラップされます。

リージョン関数と対応するラッパー メソッド

フラット関数 ラッパー メソッド 注釈
GpStatus WINGDIPAPI GdipCreateRegion(GpRegion **region)
Region::Region()
無限の領域を作成します。 これは既定のコンストラクターです。
GpStatus WINGDIPAPI GdipCreateRegionRect(GDIPCONST GpRectF *rect, GpRegion **region)
Region::Region(IN const RectF& rect)
四角形によって定義される領域を作成します。
GpStatus WINGDIPAPI GdipCreateRegionRectI(GDIPCONST GpRect *rect, GpRegion **region)
Region::Region(IN const Rect rect& )
四角形によって定義される領域を作成します。
GpStatus WINGDIPAPI GdipCreateRegionPath(GpPath *path, GpRegion **region)
Region::Region(IN const GraphicsPath* path)
GraphicsPath オブジェクトによって定義され、 GraphicsPath オブジェクトに含まれる塗りつぶしモードを持つ領域を作成します。
GpStatus WINGDIPAPI GdipCreateRegionRgnData(GDIPCONST BYTE *regionData, INT size, GpRegion **region)
Region::Region(IN const BYTE* regionData, INT size)
別のリージョンから取得したデータによって定義されるリージョンを作成します。
GpStatus WINGDIPAPI GdipCreateRegionHrgn(HRGN hRgn, GpRegion **region)
Region::Region(IN HRGN hRgn)
GDI 領域へのハンドルによって指定された領域と同じ領域を作成します。
GpStatus WINGDIPAPI GdipCloneRegion(GpRegion *region, GpRegion **cloneRegion)
Region* Region::Clone() const
この Region オブジェクトのコピーを作成し、新しい Region オブジェクトのアドレスを返します。
GpStatus WINGDIPAPI GdipDeleteRegion(GpRegion *region)
Region::~Region()
Region オブジェクトによって使用されるリソースを解放します。
GpStatus WINGDIPAPI GdipSetInfinite(GpRegion *region)
Status Region::MakeInfinite()
このリージョンを無限領域に更新します。
GpStatus WINGDIPAPI GdipSetEmpty(GpRegion *region)
Status Region::MakeEmpty()
このリージョンを空のリージョンに更新します。 つまり、領域は、ディスプレイ デバイス上の領域を占有しません。
GpStatus WINGDIPAPI GdipCombineRegionRect(GpRegion *region, GDIPCONST GpRectF *rect, CombineMode combineMode)
Status Region::Intersect(IN const RectF& rect)
この領域を、指定した四角形の内部と交差する部分に更新します。
フラット関数の combineMode パラメーターは、領域と四角形の結合方法を指定する CombineMode 列挙体のメンバーです。
GpStatus WINGDIPAPI GdipCombineRegionRectI(GpRegion *region, GDIPCONST GpRect *rect, CombineMode combineMode)
状態領域::Intersect(IN const Rect rect& )
この領域を、指定した四角形の内部と交差する部分に更新します。
フラット関数の combineMode パラメーターは、領域と四角形の結合方法を指定する CombineMode 列挙体のメンバーです。
GpStatus WINGDIPAPI GdipCombineRegionPath(GpRegion *region, GpPath *path, CombineMode combineMode)
Status Region::Intersect(IN const GraphicsPath* path)
この領域を、指定したパスの内部と交差する部分に更新します。
フラット関数の combineMode パラメーターは、領域とパスの結合方法を指定する CombineMode 列挙のメンバーです。
GpStatus WINGDIPAPI GdipCombineRegionRegion(GpRegion *region, GpRegion *region2, CombineMode combineMode)
Region::Intersect(IN const Region* region)
この領域を、別の領域と交差する部分に更新します。
フラット関数の combineMode パラメーターは、領域の結合方法を指定する CombineMode 列挙のメンバーです。
GpStatus WINGDIPAPI GdipTranslateRegion(GpRegion *region, REAL dx, REAL dy)
Region::Translate(IN REAL dx, IN REAL dy)
水平方向と垂直方向に指定した量だけこの領域をオフセットします。
GpStatus WINGDIPAPI GdipTranslateRegionI(GpRegion *region, INT dx, INT dy)
Status Region::Translate(IN INT dx, INT dy)
水平方向と垂直方向に指定した量だけこの領域をオフセットします。
GpStatus WINGDIPAPI GdipTransformRegion(GpRegion *region, GpMatrix *matrix)
Region::Transform(IN const Matrix* matrix)
各データ ポイントに指定した行列を乗算して、この領域を変換します。
GpStatus WINGDIPAPI GdipGetRegionBounds(GpRegion *region, GpGraphics *graphics, GpRectF *rect)
状態領域::GetBounds(OUT RectF* rect, IN const Graphics* g) const
この領域を囲む四角形を取得します。
GpStatus WINGDIPAPI GdipGetRegionBoundsI(GpRegion *region, GpGraphics *graphics, GpRect *rect)
状態領域::GetBounds(OUT Rect* rect, IN const Graphics* g) const
この領域を囲む四角形を取得します。
GpStatus WINGDIPAPI GdipGetRegionHRgn(GpRegion *region, GpGraphics *graphics, HRGN *hRgn)
HRGN Region::GetHRGN(IN const Graphics* g) const
この領域から GDI 領域を作成します。
GpStatus WINGDIPAPI GdipIsEmptyRegion(GpRegion *region, GpGraphics *graphics, BOOL *result)
BOOL Region::IsEmpty(IN const Graphics *g)const
このリージョンが空かどうかを判断します。
GpStatus WINGDIPAPI GdipIsInfiniteRegion(GpRegion *region, GpGraphics *graphics, BOOL *result)
BOOL Region::IsInfinite(IN const Graphics *g)const
この領域が無限であるかどうかを判断します。
GpStatus WINGDIPAPI GdipIsEqualRegion(GpRegion *region, GpRegion *region2, GpGraphics *graphics, BOOL *result)
BOOL Region::Equals(IN const Region* region, IN const Graphics* g) const
このリージョンが指定したリージョンと等しいかどうかを判断します。
GpStatus WINGDIPAPI GdipGetRegionDataSize(GpRegion *region, UINT * bufferSize)
UINT Region::GetDataSize() const
この領域を記述するデータのバイト数を取得します。
GpStatus WINGDIPAPI GdipGetRegionData(GpRegion *region, BYTE * buffer, UINT bufferSize, UINT * sizeFilled)
Status Region::GetData(OUT BYTE* buffer, IN UINT bufferSize, OUT UINT* sizeFilled) const
このリージョンを記述するデータを取得します。
GpStatus WINGDIPAPI GdipIsVisibleRegionPoint(GpRegion *region, REAL x, REAL y, GpGraphics *graphics, BOOL *result)
BOOL Region::IsVisible(IN const PointF& point, IN const Graphics* g) const
ポイントがこの領域内にあるかどうかを判断します。
フラット関数の x パラメーターと y パラメーターは、ラッパー メソッドの point パラメーターに対応する ポイント の x 座標と y 座標を指定します。
GpStatus WINGDIPAPI GdipIsVisibleRegionPointI(GpRegion *region, INT x, INT y, GpGraphics *graphics, BOOL *result)
BOOL Region::IsVisible(IN const Point& , IN const Graphics* g) const
ポイントがこの領域内にあるかどうかを判断します。
フラット関数の x パラメーターと y パラメーターは、ラッパー メソッドの point パラメーターに対応する ポイント の x 座標と y 座標を指定します。
GpStatus WINGDIPAPI GdipIsVisibleRegionRect(GpRegion *region, REAL x, REAL y, REAL width, REAL height, GpGraphics *graphics, BOOL *result)
BOOL Region::IsVisible(IN const RectF& rect, IN const Graphics* g) const
四角形がこの領域と交差するかどうかを指定します。
フラット関数の xywidthheight パラメーターは、ラッパー メソッドの rect パラメーターに対応する四角形を指定します。
GpStatus WINGDIPAPI GdipIsVisibleRegionRectI(GpRegion *region, INT x, INT y, INT width, INT height, GpGraphics *graphics, BOOL *result)
BOOL Region::IsVisible(IN const Rect rect& , IN const Graphics* g) const
四角形がこの領域と交差するかどうかを指定します。
フラット関数の xywidthheight パラメーターは、ラッパー メソッドの rect パラメーターに対応する四角形を指定します。
GpStatus WINGDIPAPI GdipGetRegionScansCount(GpRegion *region, UINT* count, GpMatrix* matrix)
UINT Region::GetRegionScansCount(IN const Matrix* matrix) const
この領域に近似する四角形の数を取得します。 領域は、四角形が計算される前に、指定された行列によって変換されます。
GpStatus WINGDIPAPI GdipGetRegionScans(GpRegion *region, GpRectF* rects, INT* count, GpMatrix* matrix)
Status Region::GetRegionScans( IN const Matrix* matrix, OUT RectF* rects, IN OUT INT* count) const
この領域に近似する四角形の配列を取得します。 領域は、四角形が計算される前に、指定された行列によって変換されます。
GpStatus WINGDIPAPI GdipGetRegionScansI(GpRegion *region, GpRect* rects, INT* count, GpMatrix* matrix)
Status Region::GetRegionScans( IN const Matrix* matrix, OUT Rect* rects, IN OUT INT* count) const
この領域に近似する四角形の配列を取得します。 領域は、四角形が計算される前に、指定された行列によって変換されます。