BitmapSource クラス

定義

一定のサイズと解像度で、ピクセルの単一の定数セットを表します。

public ref class BitmapSource abstract : System::Windows::Media::ImageSource
[System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)]
public abstract class BitmapSource : System.Windows.Media.ImageSource
[<System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)>]
type BitmapSource = class
    inherit ImageSource
    interface DUCE.IResource
[<System.Windows.Localizability(System.Windows.LocalizationCategory.None, Readability=System.Windows.Readability.Unreadable)>]
type BitmapSource = class
    inherit ImageSource
Public MustInherit Class BitmapSource
Inherits ImageSource
継承
派生
属性

次のコード例では、 を作成 BitmapSource し、それをコントロールのソースとして使用する方法を Image 示します。

// Define parameters used to create the BitmapSource.
PixelFormat pf = PixelFormats.Bgr32;
int width = 200;
int height = 200;
int rawStride = (width * pf.BitsPerPixel + 7) / 8;
byte[] rawImage = new byte[rawStride * height];

// Initialize the image with data.
Random value = new Random();
value.NextBytes(rawImage);

// Create a BitmapSource.
BitmapSource bitmap = BitmapSource.Create(width, height,
    96, 96, pf, null,
    rawImage, rawStride);

// Create an image element;
Image myImage = new Image();
myImage.Width = 200;
// Set image source.
myImage.Source = bitmap;
' Define parameters used to create the BitmapSource.
Dim pf As PixelFormat = PixelFormats.Bgr32
Dim width As Integer = 200
Dim height As Integer = 200
Dim rawStride As Integer = CType((width * pf.BitsPerPixel + 7) / 8, Integer)
Dim rawImage(rawStride * height) As Byte

' Initialize the image with data.
Dim value As New Random()
value.NextBytes(rawImage)

' Create a BitmapSource.
Dim bitmap As BitmapSource = BitmapSource.Create(width, height, 96, 96, pf, Nothing, rawImage, rawStride)

' Create an image element;
Dim myImage As New Image()
myImage.Width = 200
' Set image source.
myImage.Source = bitmap

次のコード例では、BitmapImage派生クラス を使用BitmapSourceしてイメージ ファイルからビットマップを作成し、それをコントロールのImageソースとして使用します。

// Create the image element.
Image simpleImage = new Image();    
simpleImage.Width = 200;
simpleImage.Margin = new Thickness(5);

// Create source.
BitmapImage bi = new BitmapImage();
// BitmapImage.UriSource must be in a BeginInit/EndInit block.
bi.BeginInit();
bi.UriSource = new Uri(@"/sampleImages/cherries_larger.jpg",UriKind.RelativeOrAbsolute);
bi.EndInit();
// Set the image source.
simpleImage.Source = bi;
' Create the image element.
Dim simpleImage As New Image()
simpleImage.Width = 200
simpleImage.Margin = New Thickness(5)

' Create source.
Dim bi As New BitmapImage()
' BitmapImage.UriSource must be in a BeginInit/EndInit block.
bi.BeginInit()
bi.UriSource = New Uri("/sampleImages/cherries_larger.jpg", UriKind.RelativeOrAbsolute)
bi.EndInit()
' Set the image source.
simpleImage.Source = bi

注釈

BitmapSourceは、Windows Presentation Foundation (WPF) イメージング パイプラインの基本的な構成要素であり、概念的には、特定のサイズと解像度のピクセルの 1 つの定数セットを表します。 は BitmapSource 、デコーダーが提供するイメージ ファイル内の 1 つのフレームであるか、独自の で動作 BitmapSource する変換の結果である可能性があります。 BitmapSource は、マルチフレーム イメージまたはアニメーションを表すために使用されません。

Windows Presentation Foundation (WPF) は、ビットマップ (BMP)、グラフィックス交換形式 (GIF)、共同写真エキスパート グループ (JPEG)、ポータブル ネットワーク グラフィックス (PNG)、およびタグ付けされたイメージ ファイル形式 (TIFF) イメージの圧縮と圧縮解除をネイティブにサポートします。

ビットマップ デコードのシナリオでは、 BitmapSource ユーザーのシステムにインストールされているコーデックに基づいて、コーデックの自動検出が使用されます。

画像の最大高さと幅は、チャネルあたり 32 ビット * 4 チャネルで 2^16 ピクセルです。 の BitmapSource 最大サイズは 2^32 バイト (64 ギガバイト) で、最大イメージ サイズは 4 ギガピクセルです。 最小イメージ サイズは 1x1 です。

コンストラクター

BitmapSource()

BitmapSource クラスの新しいインスタンスを初期化します。

プロパティ

CanFreeze

オブジェクトを変更不可能にできるかどうかを示す値を取得します。

(継承元 Freezable)
DependencyObjectType

このインスタンスの DependencyObjectType CLR 型をラップする を取得します。

(継承元 DependencyObject)
Dispatcher

この Dispatcher が関連付けられている DispatcherObject を取得します。

(継承元 DispatcherObject)
DpiX

イメージの水平方向のドット /インチ (dpi) を取得します。

DpiY

イメージの 1 インチあたりの垂直ドット数 (dpi) を取得します。

Format

ビットマップ データのネイティブ PixelFormat を取得します。

HasAnimatedProperties

1 つ以上の AnimationClock オブジェクトが、このオブジェクトの任意の依存関係プロパティに関連付けられているかどうかを示す値を取得または設定します。

(継承元 Animatable)
Height

デバイスに依存しない単位 (単位あたり 1/96 インチ) のソース ビットマップの高さを取得します。

IsDownloading

BitmapSource のコンテンツがダウンロード中かどうかを示す値を取得します。

IsFrozen

オブジェクトが変更可能かどうかを示す値を取得します。

(継承元 Freezable)
IsSealed

このインスタンスが現在シールされている (読み取り専用である) かどうかを示す値を取得します。

(継承元 DependencyObject)
Metadata

このビットマップ イメージに関連付けられているメタデータを取得します。

Palette

ビットマップのカラー パレットを取得します (カラー パレットが指定されている場合)。

PixelHeight

ビットマップの高さ (ピクセル単位) を取得します。

PixelWidth

ビットマップの幅 (ピクセル単位) を取得します。

Width

デバイスに依存しない単位 (単位あたり 1/96 インチ) のビットマップの幅を取得します。

メソッド

ApplyAnimationClock(DependencyProperty, AnimationClock)

AnimationClock を指定した DependencyProperty に適用します。 プロパティが既にアニメーション化されている場合は、SnapshotAndReplace ハンドオフ動作が使用されます。

(継承元 Animatable)
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

AnimationClock を指定した DependencyProperty に適用します。 プロパティが既にアニメーション化されている場合は、指定した HandoffBehavior が使用されます。

(継承元 Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline)

指定された DependencyProperty にアニメーションを適用します。 アニメーションは、次のフレームがレンダリングされるときに開始されます。 指定されたプロパティが既にアニメーション化されている場合は、SnapshotAndReplace ハンドオフ動作が使用されます。

(継承元 Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

指定された DependencyProperty にアニメーションを適用します。 アニメーションは、次のフレームがレンダリングされるときに開始されます。 指定したプロパティが既にアニメーション化されている場合は、指定した HandoffBehavior が使用されます。

(継承元 Animatable)
CheckAccess()

呼び出し元のスレッドがこの DispatcherObject にアクセスできるかどうかを確認します。

(継承元 DispatcherObject)
CheckIfSiteOfOrigin()

ビットマップ ソース コンテンツが既知のサイトからのものかどうかを確認します。 このメソッドを使用して、ピクセルのコピー操作が安全であるか確認します。

ClearValue(DependencyProperty)

プロパティのローカル値をクリアします。 クリアするプロパティは DependencyProperty 識別子で指定されます。

(継承元 DependencyObject)
ClearValue(DependencyPropertyKey)

読み取り専用プロパティのローカル値を消去します。 消去するプロパティは、DependencyPropertyKey で指定します。

(継承元 DependencyObject)
Clone()

この BitmapSource の変更可能な複製を作成し、このオブジェクトの値の詳細コピーを作成します。 このメソッドは、依存関係プロパティをコピーするときにリソース参照とデータ バインディングをコピーしますが (ただし、これらは解決されなくなる場合があります)、アニメーションやその現在の値はコピーしません。

CloneCore(Freezable)

このインスタンスを指定された BitmapSource の詳細なコピーにします。 このメソッドは、依存関係プロパティをコピーするときにリソース参照とデータ バインディングをコピーしますが (ただし、これらは解決されなくなる場合があります)、アニメーションやその現在の値はコピーしません。

CloneCurrentValue()

この BitmapSource オブジェクトの変更可能な複製を作成し、このオブジェクトの現在値の詳細コピーを作成します。 リソース参照、データ バインディング、アニメーションはコピーされませんが、それらの現在値はコピーされます。

CloneCurrentValueCore(Freezable)

現在のプロパティ値を使用して、このインスタンスを、指定した BitmapSource の変更可能な詳細コピーにします。 リソース参照、データ バインディング、アニメーションはコピーされませんが、それらの現在値はコピーされます。

CoerceValue(DependencyProperty)

指定した依存関係プロパティの値を強制します。 これは、呼び出し元の DependencyObject の依存関係プロパティのプロパティ メタデータで指定されている CoerceValueCallback 関数を呼び出すことによって実現されます。

(継承元 DependencyObject)
CopyPixels(Array, Int32, Int32)

指定したオフセットを開始位置として、ビットマップのピクセル データを、指定したストライドを持つピクセル配列にコピーします。

CopyPixels(Int32Rect, Array, Int32, Int32)

指定したオフセットを開始位置として、指定した四角形内にあるビットマップのピクセル データを、指定したストライドを持つピクセル配列にコピーします。

CopyPixels(Int32Rect, IntPtr, Int32, Int32)

指定した四角形内にあるビットマップのピクセル データをコピーします。

Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, Array, Int32)

ピクセル配列から新しい BitmapSource を作成します。

Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, IntPtr, Int32, Int32)

アンマネージ メモリに格納されているピクセル配列から新しい BitmapSource を作成します。

CreateInstance()

Freezable クラスの新しいインスタンスを初期化します。

(継承元 Freezable)
CreateInstanceCore()

派生クラスで実装された場合、Freezable 派生クラスの新しいインスタンスを作成します。

(継承元 Freezable)
Equals(Object)

指定した DependencyObject が現在の DependencyObject と等しいかどうかを判断します。

(継承元 DependencyObject)
Freeze()

現在のオブジェクトを変更不可能にし、その IsFrozen プロパティを true に設定します。

(継承元 Freezable)
FreezeCore(Boolean)

BitmapSource のインスタンスまたは派生クラスを不変にします。

GetAnimationBaseValue(DependencyProperty)

指定した DependencyProperty のアニメーション化されていない値を返します。

(継承元 Animatable)
GetAsFrozen()

基本プロパティ値 (アニメーション化されていない値) を使用して、Freezable の 固定されたコピーを作成します。 コピーが固定されているため、参照によって任意の固定されたサブオブジェクトがコピーされます。

(継承元 Freezable)
GetAsFrozenCore(Freezable)

このインスタンスを、指定した BitmapSource オブジェクトの複製にします。

GetCurrentValueAsFrozen()

現在のプロパティ値を使用して、Freezable の固定されたコピーを作成します。 コピーが固定されているため、参照によって任意の固定されたサブオブジェクトがコピーされます。

(継承元 Freezable)
GetCurrentValueAsFrozenCore(Freezable)

このインスタンスを、指定された BitmapSource の凍結された複製にします。 リソース参照、データ バインディング、アニメーションはコピーされませんが、それらの現在値はコピーされます。

GetHashCode()

この DependencyObject のハッシュ コードを取得します。

(継承元 DependencyObject)
GetLocalValueEnumerator()

どの依存関係プロパティがこの DependencyObject 上にローカルに設定された値を持つかを確認するための、専用の列挙子を作成します。

(継承元 DependencyObject)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
GetValue(DependencyProperty)

DependencyObject のこのインスタンスにある依存関係プロパティの現在の有効値を返します。

(継承元 DependencyObject)
InvalidateProperty(DependencyProperty)

指定した依存関係プロパティの有効値を再評価します。

(継承元 DependencyObject)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
OnChanged()

現在の Freezable オブジェクトの変更時に呼び出されます。

(継承元 Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject)

設定されたばかりの DependencyObjectType データ メンバーに対して、適切なコンテキスト ポインターが確立されていることを確認します。

(継承元 Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

このメンバーは、Windows Presentation Foundation (WPF) インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

(継承元 Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs)

OnPropertyChanged(DependencyPropertyChangedEventArgs)DependencyObject 実装をオーバーライドして、さらに型 Freezable の変化する依存関係プロパティへの応答として任意の Changed ハンドラーも呼び出します。

(継承元 Freezable)
ReadLocalValue(DependencyProperty)

ローカルの依存関係プロパティの値を返します (存在する場合)。

(継承元 DependencyObject)
ReadPreamble()

Freezable が有効なスレッドからアクセスされていることを確認します。 Freezable の継承側は、依存関係プロパティでないデータ メンバーを読み取る任意の API の開始時に、このメソッドを呼び出す必要があります。

(継承元 Freezable)
SetCurrentValue(DependencyProperty, Object)

依存関係プロパティ値のソースを変更せずにその値を設定します。

(継承元 DependencyObject)
SetValue(DependencyProperty, Object)

依存関係プロパティ識別子を指定して、該当する依存関係プロパティのローカル値を設定します。

(継承元 DependencyObject)
SetValue(DependencyPropertyKey, Object)

依存関係プロパティの DependencyPropertyKey 識別子で指定した読み取り専用の依存関係プロパティのローカル値を設定します。

(継承元 DependencyObject)
ShouldSerializeProperty(DependencyProperty)

シリアル化プロセスが、指定された依存関係プロパティの値をシリアル化する必要があるかどうかを示す値を返します。

(継承元 DependencyObject)
ToString()

現在のカルチャに基づいて、このオブジェクトの文字列形式を作成します。

(継承元 ImageSource)
ToString(IFormatProvider)

渡された IFormatProvider に基づいて、このオブジェクトの文字列形式を作成します。 プロバイダーが null の場合は、CurrentCulture が使用されます。

(継承元 ImageSource)
VerifyAccess()

呼び出し元のスレッドがこの DispatcherObject にアクセスできるように強制します。

(継承元 DispatcherObject)
WritePostscript()

FreezableChanged イベントを発生させ、その OnChanged() メソッドを呼び出します。 Freezable から派生するクラスは、依存関係プロパティとして格納されていないクラス メンバーを変更するすべての API の終了時に、このメソッドを呼び出す必要があります。

(継承元 Freezable)
WritePreamble()

Freezable が固定されておらず、有効なスレッド コンテキストからアクセスされていることを確認します。 Freezable の継承側は、依存関係プロパティでないデータ メンバーに書き込む任意の API の開始時に、このメソッドを呼び出す必要があります。

(継承元 Freezable)

イベント

Changed

Freezable、またはこれに含まれているオブジェクトが変更されると発生します。

(継承元 Freezable)
DecodeFailed

イメージ ヘッダーの破損が原因で、イメージの読み込みが失敗したときに発生します。

DownloadCompleted

ビットマップ コンテンツのダウンロードが完了したときに発生します。

DownloadFailed

ビットマップ コンテンツのダウンロードが失敗したときに発生します。

DownloadProgress

ビットマップ コンテンツのダウンロード状況が変化したときに発生します。

明示的なインターフェイスの実装

IFormattable.ToString(String, IFormatProvider)

指定された書式を使用して現在のインスタンスの値を書式設定します。

(継承元 ImageSource)

適用対象

こちらもご覧ください