System.Drawing.Drawing2D 名前空間
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
高度な 2 次元およびベクター グラフィックス機能を提供します。
クラス
| 名前 | 説明 |
|---|---|
| AdjustableArrowCap |
調整可能な矢印の形をした線のキャップを表します。 このクラスは継承できません。 |
| Blend |
LinearGradientBrush オブジェクトのブレンド パターンを定義します。 このクラスは継承できません。 |
| ColorBlend |
多色グラデーションでのカラー ブレンドの補間に使用される色と位置の配列を定義します。 このクラスは継承できません。 |
| CustomLineCap |
カスタム ユーザー定義の行キャップをカプセル化します。 |
| GraphicsContainer |
グラフィックス コンテナーの内部データを表します。 このクラスは、BeginContainer()メソッドとEndContainer(GraphicsContainer)メソッドを使用してGraphics オブジェクトの状態を保存するときに使用されます。 このクラスは継承できません。 |
| GraphicsPath |
接続された一連の線と曲線を表します。 このクラスは継承できません。 |
| GraphicsPathIterator |
GraphicsPath内のサブパスを反復処理し、各サブパスに含まれる図形の種類をテストする機能を提供します。 このクラスは継承できません。 |
| GraphicsState |
Graphics オブジェクトの状態を表します。 このオブジェクトは、 Save() メソッドの呼び出しによって返されます。 このクラスは継承できません。 |
| HatchBrush |
ハッチ スタイル、前景色、背景色を持つ四角形のブラシを定義します。 このクラスは継承できません。 |
| LinearGradientBrush |
線形グラデーションを使用して Brush をカプセル化します。 このクラスは継承できません。 |
| Matrix |
幾何学的な変換を表す 3 x 3 のアフィン 行列をカプセル化します。 このクラスは継承できません。 |
| PathData |
GraphicsPath オブジェクトを構成するグラフィカル データを格納します。 このクラスは継承できません。 |
| PathGradientBrush |
Brush オブジェクトの内部をグラデーションで塗りつぶすGraphicsPath オブジェクトをカプセル化します。 このクラスは継承できません。 |
| RegionData |
Region オブジェクトを構成するデータをカプセル化します。 このクラスは継承できません。 |
列挙型
| 名前 | 説明 |
|---|---|
| CombineMode |
さまざまなクリッピング領域を組み合わせる方法を指定します。 |
| CompositingMode |
ソースの色を背景色と組み合わせる方法を指定します。 |
| CompositingQuality |
合成中に使用する品質レベルを指定します。 |
| CoordinateSpace |
座標を評価するときに使用するシステムを指定します。 |
| DashCap |
破線の各ダッシュの両端で使用するグラフィック図形の種類を指定します。 |
| DashStyle |
Pen オブジェクトで描画される破線のスタイルを指定します。 |
| FillMode |
閉じたパスの内部を塗りつぶす方法を指定します。 |
| FlushIntention |
グラフィックス スタック内のコマンドを直ちに終了 (フラッシュ) するか、できるだけ早く実行するかを指定します。 |
| HatchStyle |
HatchBrush オブジェクトで使用できるさまざまなパターンを指定します。 |
| InterpolationMode |
InterpolationMode 列挙体は、イメージを拡大縮小または回転するときに使用されるアルゴリズムを指定します。 |
| LinearGradientMode |
線形グラデーションの方向を指定します。 |
| LineCap |
Pen オブジェクトが線を終了できる使用可能なキャップ スタイルを指定します。 |
| LineJoin |
GraphicsPath オブジェクトに含まれる図形 (サブパス) 内の連続する線分または曲線セグメントを結合する方法を指定します。 |
| MatrixOrder |
行列変換操作の順序を指定します。 |
| PathPointType |
GraphicsPath オブジェクト内のポイントの種類を指定します。 |
| PenAlignment |
理論上の 0 幅の線に対する Pen オブジェクトの配置を指定します。 |
| PenType |
Pen オブジェクトが線を塗りつぶすために使用する塗りつぶしの種類を指定します。 |
| PixelOffsetMode |
レンダリング中にピクセルをオフセットする方法を指定します。 |
| QualityMode |
GDI+ オブジェクトをレンダリングするときの全体的な品質を指定します。 |
| SmoothingMode |
スムージング (アンチエイリアシング) をラインとカーブ、塗りつぶし領域のエッジに適用するかどうかを指定します。 |
| WarpMode |
Warp メソッドに適用される反り変換の種類を指定します。 |
| WrapMode |
テクスチャまたはグラデーションが塗りつぶされている領域よりも小さい場合にタイル化する方法を指定します。 |
注釈
Caution
System.Drawing名前空間には、特定のオペレーティング システムとアプリケーションの種類に関するいくつかの制限があります。
Windowsでは、
System.Drawingは、OS の一部として出荷される GDI+ ネイティブ ライブラリに依存します。 Windows Server Core や Windows Nano など、一部のWindows SKU には、OS の一部としてこのネイティブ ライブラリが含まれていません。 この名前空間を使用し、ライブラリを読み込めなかった場合は、実行時に例外がスローされます。System.Drawing名前空間の一部の型は、GDI+ に依存します。これは、Windows サービスおよび ASP.NET Coreおよび ASP.NET アプリではサポートされていません。 これらの型は System.Drawing.Common NuGet パッケージにあり、 System.Drawing.Bitmap と System.Drawing.Fontが含まれます。 ただし、名前空間内のプリミティブ型 ( System.Drawing.Color、 System.Drawing.Size、 System.Drawing.Point、 System.Drawing.Rectangleなど) は、任意のアプリケーションで使用できます。.NET 5 以前のバージョンでは、System.Drawing.Common NuGet パッケージは、Windows、Linux、および macOS で動作します。 ただし、プラットフォームの違いがいくつかあります。 Linux および macOS では、GDI+ 機能は libgdiplus) ライブラリによって実装されます。 このライブラリは、ほとんどの Linux ディストリビューションでは既定ではインストールされず、Windowsおよび macOS 上の GDI+ のすべての機能をサポートしているわけではありません。 libgdiplus がまったく利用できないプラットフォームもあります。 Linux および macOS で System.Drawing.Common パッケージの型を使用するには、libgdiplus を個別にインストールする必要があります。 詳細については、「Install .NET on Linux または Install .NET on macOS を参照してください。
.NET 6 以降のバージョンでは、System.Drawing.Common NuGet パッケージは、Windows オペレーティング システムでのみサポートされます。 詳細については、「System.Drawing.Common が Windows でしかサポートされない」を参照してください。
アプリケーションで System.Drawing を使用できない場合は、 推奨される代替手段としては、ImageSharp、SkiaSharp、Windowsイメージング コンポーネント、および Microsoft があります。Maui.Graphics.
次の表に、 System.Drawing.Drawing2D 名前空間の重要なクラスと列挙の一部をカテゴリにグループ化して示します。
| クラス カテゴリ | 詳細情報 |
|---|---|
| - グラフィックスとグラフィックスのパス |
GraphicsStateクラスとGraphicsContainer クラスは、現在のGraphics オブジェクトに関する情報を報告します。
GraphicsPath クラスは、一連の線と曲線を表します。
GraphicsPathIteratorクラスとPathData クラスは、GraphicsPath オブジェクトの内容に関する詳細情報を提供します。 |
| - マトリックスと変換に関連する型 | Matrix クラスは、ジオメトリック変換の行列を表します。 MatrixOrder列挙体は、行列変換の順序を指定します。 |
| - Brush クラス | PathGradientBrushクラスとHatchBrush クラスを使用すると、それぞれグラデーションパターンまたはハッチング パターンで図形を塗りつぶします。 |
| - 行に関連する列挙 | LineCap列挙体とCustomLineCap列挙体を使用すると、線のキャップ スタイルを指定できます。 LineJoin列挙型を使用すると、パスで 2 行を結合する方法を指定できます。 PenAlignment列挙を使用すると、線を描画するときに、描画ヒントの配置を指定できます。 PenType列挙体は、行を塗りつぶすパターンを指定します。 |
| - 図形とパスの塗りつぶしに関連する列挙体 | HatchStyle列挙体は、HatchBrushの塗りつぶしスタイルを指定します。 Blend クラスは、LinearGradientBrushのブレンド パターンを指定します。 FillMode列挙体は、GraphicsPathの塗りつぶしのスタイルを指定します。 |
Caution
System.Drawing.Drawing2D 名前空間のクラスは、Windowsまたは ASP.NET サービスでの使用はサポートされていません。 これらのアプリケーションの種類のいずれかでこれらのクラスを使用しようとすると、サービスパフォーマンスの低下や実行時の例外など、予期しない問題が発生する可能性があります。