Win32 API 日本語リファレンス
ホームGraphics.Direct2D › D2D1_STROKE_TRANSFORM_TYPE

D2D1_STROKE_TRANSFORM_TYPE

列挙型
基底型i4

メンバー 3

名前10進16進説明
D2D1_STROKE_TRANSFORM_TYPE_NORMAL00x0ストロークは、現在設定されているワールド変換、dpi、およびストローク幅に従います。
D2D1_STROKE_TRANSFORM_TYPE_FIXED10x1ストロークはワールド変換には従いませんが、dpi とストローク幅には従います。
D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE20x2ストロークは幅 1 ピクセル (デバイス空間) に固定され、ワールド変換、dpi、ストローク幅のいずれにも従いません。

公式ドキュメント

ワールド変換、dpi (dots per inch)、およびストローク幅が、プリミティブのストロークに使用されるペンの形状にどのように影響するかを定義します。

解説(Remarks)

D2D1_STROKE_TRANSFORM_TYPE_FIXED を指定すると、ストロークはワールド変換の影響を受けません。

D2D1_STROKE_TRANSFORM_TYPE_FIXED を指定した場合、アプリケーションは Windows 7 以降で同じ動作になります。

D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE を指定すると、ストロークは常に幅 1 ピクセルになります。

ストローク自体を除き、transformType が fixed または hairline の場合、ストローク幅から導出される値は影響を受けません。これにはマイターや線端 (line cap) などが含まれます。

ストロークされるジオメトリと、ストローク用ペンの形状とを区別することが重要です。D2D1_STROKE_TRANSFORM_TYPE_FIXED または D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE を指定した場合でも、ジオメトリは変換と dpi に従いますが、そのジオメトリをなぞるペンは従いません。

次の図は、破線と、傾斜および伸張の変換を適用したストロークを示しています。

破線と、傾斜および伸張の変換を適用したストロークの図。 次の図は、変換の影響を受けない固定幅のストロークを示しています。 変換の影響を受けない固定幅のストロークの図。
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum D2D1_STROKE_TRANSFORM_TYPE : int {
    D2D1_STROKE_TRANSFORM_TYPE_NORMAL = 0,
    D2D1_STROKE_TRANSFORM_TYPE_FIXED = 1,
    D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE = 2
} D2D1_STROKE_TRANSFORM_TYPE;
public enum D2D1_STROKE_TRANSFORM_TYPE : int
{
    D2D1_STROKE_TRANSFORM_TYPE_NORMAL = 0,
    D2D1_STROKE_TRANSFORM_TYPE_FIXED = 1,
    D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE = 2,
}
Public Enum D2D1_STROKE_TRANSFORM_TYPE As Integer
    D2D1_STROKE_TRANSFORM_TYPE_NORMAL = 0
    D2D1_STROKE_TRANSFORM_TYPE_FIXED = 1
    D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE = 2
End Enum
import enum

class D2D1_STROKE_TRANSFORM_TYPE(enum.IntEnum):
    D2D1_STROKE_TRANSFORM_TYPE_NORMAL = 0
    D2D1_STROKE_TRANSFORM_TYPE_FIXED = 1
    D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE = 2
// D2D1_STROKE_TRANSFORM_TYPE
pub const D2D1_STROKE_TRANSFORM_TYPE_NORMAL: i32 = 0;
pub const D2D1_STROKE_TRANSFORM_TYPE_FIXED: i32 = 1;
pub const D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE: i32 = 2;
// D2D1_STROKE_TRANSFORM_TYPE
const (
	D2D1_STROKE_TRANSFORM_TYPE_NORMAL int32 = 0
	D2D1_STROKE_TRANSFORM_TYPE_FIXED int32 = 1
	D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE int32 = 2
)
const
  D2D1_STROKE_TRANSFORM_TYPE_NORMAL = 0;
  D2D1_STROKE_TRANSFORM_TYPE_FIXED = 1;
  D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE = 2;
// D2D1_STROKE_TRANSFORM_TYPE
pub const D2D1_STROKE_TRANSFORM_TYPE_NORMAL: i32 = 0;
pub const D2D1_STROKE_TRANSFORM_TYPE_FIXED: i32 = 1;
pub const D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE: i32 = 2;
const
  D2D1_STROKE_TRANSFORM_TYPE_NORMAL* = 0
  D2D1_STROKE_TRANSFORM_TYPE_FIXED* = 1
  D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE* = 2
enum D2D1_STROKE_TRANSFORM_TYPE : int {
    D2D1_STROKE_TRANSFORM_TYPE_NORMAL = 0,
    D2D1_STROKE_TRANSFORM_TYPE_FIXED = 1,
    D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE = 2,
}
#define global D2D1_STROKE_TRANSFORM_TYPE_NORMAL   0x0
#define global D2D1_STROKE_TRANSFORM_TYPE_FIXED    0x1
#define global D2D1_STROKE_TRANSFORM_TYPE_HAIRLINE 0x2