次の方法で共有


新機能

以降のセクションでは、Windows GDI+ のいくつかの新機能について説明します。

グラデーション ブラシ

GDI+ は、図形、パス、および領域を塗りつぶす線形グラデーションブラシとパス グラデーション ブラシを提供することで、Windows グラフィックス デバイス インターフェイス (GDI) を拡張します。 グラデーション ブラシを使用して、線、曲線、パスを描画することもできます。 線形グラデーション ブラシで図形を塗りつぶすと、図形間を移動すると色が徐々に変化します。 たとえば、図形の左端に青、右端に緑を指定して、水平グラデーション ブラシを作成するとします。 水平方向のグラデーション ブラシでその図形を塗りつぶすと、左端から右端に移動すると、徐々に青から緑に変わります。 同様に、垂直方向のグラデーション ブラシで塗りつぶされた図形は、上から下に移動すると色が変わります。 次の図は、水平グラデーション ブラシで塗りつぶされた楕円と、斜めのグラデーション ブラシで塗りつぶされた領域を示しています。

水平方向のグラデーションで塗りつぶされた図形と、斜めのグラデーション図

パス グラデーション ブラシで図形を塗りつぶす場合、図形の一部から別の部分に移動するときに色がどのように変化するかを指定するためのさまざまなオプションがあります。 1 つのオプションは、図形の中央から外側の端に向かって移動するときに、ピクセルが徐々に 1 つの色から他方の色に変化するように、中心の色と境界の色を持つことです。 次の図は、パス グラデーション ブラシで塗りつぶされたパス (ベジエ スプラインのペアから作成) を示しています。

無限大記号に似た図形の図で、半分が青で塗りつぶされ、端が水色に塗りつぶ

カーディナル スプライン

GDI+ では、GDI ではサポートされていないカーディナル スプラインがサポートされています。 カーディナル スプラインは、より大きな曲線を形成するために結合された個々の曲線のシーケンスです。 スプラインはポイントの配列で指定され、その配列内の各ポイントを通過します。 カーディナル スプラインは、配列内の各ポイントを滑らかに (鋭い角なし) 通過するため、直線を接続して作成されたパスよりも洗練されます。 次の図は、直線を接続して作成されたパスとカーディナル スプラインとして作成されたパスの 2 つを示しています。

同じ 5 つの点を 2 回示す 図:カーディナル スプラインで接続されると、もう一方は線分で接続

独立したパス オブジェクト

GDI では、パスはデバイス コンテキストに属し、パスは描画時に破棄されます。 GDI+ では、描画は Graphics オブジェクトによって実行され、Graphics オブジェクトとは別の GraphicsPath オブジェクトを作成および維持できます。 GraphicsPath オブジェクトは描画アクションによって破棄されないため、同じ GraphicsPath オブジェクトを使用してパスを複数回描画できます。

変換と Matrix オブジェクト

GDI+ は、変換 (回転、平行移動など) を簡単かつ柔軟にする強力なツールである、Matrix オブジェクトを提供します。 行列オブジェクトは、変換されるオブジェクトと組み合わせて動作します。 たとえば、GraphicsPath オブジェクトには、引数として Matrix オブジェクトのアドレスを受け取る GraphicsPath::Transform メソッドがあります。 1 つの 3×3 マトリックスは、1 つの変換または一連の変換を格納できます。 次の図は、2 つの変換 (最初のスケール、次に回転) のシーケンスの前後のパスを示しています。

図形 アウトラインを示す図で、同じ輪郭が狭く回転

スケーラブルなリージョン

GDI+ は、地域のサポートにより GDI を大幅に拡張します。 GDI では、領域はデバイス座標に格納され、領域に適用できる唯一の変換は翻訳です。 GDI+ は、領域をワールド座標に格納し、変換マトリックスに格納できる任意の変換 (スケーリングなど) を受けることができます。 次の図は、スケール、回転、平行移動という 3 つの変換のシーケンスの前後の領域を示しています。

座標軸を中心にした図形を示す図。次に、同じ図形が大きく、回転され、右に移動

アルファ ブレンド

前の図では、変換された領域 (ハッチング ブラシで塗りつぶされた) を通して、変換されていない領域 (赤で塗りつぶされた) を確認できることに注意してください。 これは、GDI+ でサポートされているアルファ ブレンドによって可能になります。 アルファ ブレンドでは、塗りつぶしの色の透明度を指定できます。 透明な色は背景色とブレンドされます。塗りつぶしの色を透明にすると、背景の表示が多くなります。 次の図は、異なる透明度レベルで同じ色 (赤) で塗りつぶされた 4 つの楕円を示しています。

半透明の四角形 を重ね合わせたさまざまな透明度の 4 つの楕円を示す図

複数のイメージ形式のサポート

GDI+ には、ImageBitmapMetafile クラスが用意されており、さまざまな形式でイメージを読み込み、保存、操作できます。 次の形式がサポートされています。

  • BMP
  • グラフィックスインターチェンジ形式 (GIF)
  • JPEG
  • Exif
  • PNG
  • TIFF
  • アイコン
  • WMF
  • EMF