語言

PngBitmapDecoder 建構函式

定義

初始化 PngBitmapDecoder 的新執行個體。

多載

名稱 Description
PngBitmapDecoder(Stream, BitmapCreateOptions, BitmapCacheOption)

從指定的檔案串流中初始化一個 PngBitmapDecoder 新的實例,並具有指定的 createOptions 和 cacheOption。

PngBitmapDecoder(Uri, BitmapCreateOptions, BitmapCacheOption)

從指定PngBitmapDecoder中初始化一個新的 實Uri例,並指定為 createOptionscacheOption和 。

PngBitmapDecoder(Stream, BitmapCreateOptions, BitmapCacheOption)

從指定的檔案串流中初始化一個 PngBitmapDecoder 新的實例,並具有指定的 createOptions 和 cacheOption。

public:
 PngBitmapDecoder(System::IO::Stream ^ bitmapStream, System::Windows::Media::Imaging::BitmapCreateOptions createOptions, System::Windows::Media::Imaging::BitmapCacheOption cacheOption);
[System.Security.SecurityCritical]
public PngBitmapDecoder(System.IO.Stream bitmapStream, System.Windows.Media.Imaging.BitmapCreateOptions createOptions, System.Windows.Media.Imaging.BitmapCacheOption cacheOption);
public PngBitmapDecoder(System.IO.Stream bitmapStream, System.Windows.Media.Imaging.BitmapCreateOptions createOptions, System.Windows.Media.Imaging.BitmapCacheOption cacheOption);
[<System.Security.SecurityCritical>]
new System.Windows.Media.Imaging.PngBitmapDecoder : System.IO.Stream * System.Windows.Media.Imaging.BitmapCreateOptions * System.Windows.Media.Imaging.BitmapCacheOption -> System.Windows.Media.Imaging.PngBitmapDecoder
new System.Windows.Media.Imaging.PngBitmapDecoder : System.IO.Stream * System.Windows.Media.Imaging.BitmapCreateOptions * System.Windows.Media.Imaging.BitmapCacheOption -> System.Windows.Media.Imaging.PngBitmapDecoder
Public Sub New (bitmapStream As Stream, createOptions As BitmapCreateOptions, cacheOption As BitmapCacheOption)

參數

bitmapStream
Stream

要解碼的點陣圖串流。

createOptions
BitmapCreateOptions

點陣圖影像的初始化選項。

cacheOption
BitmapCacheOption

用於點陣圖影像的快取方法。

屬性

例外狀況

bitmapStream 值是 null。

這 bitmapStream 不是可攜式網路圖形(PNG)編碼的影像。

範例

以下程式碼範例示範如何從檔案串流建立並使用 a PngBitmapDecoder 實例。 解碼後的影像作為控制的來源 Image 。


// Open a Stream and decode a PNG image
Stream^ imageStreamSource = gcnew FileStream("smiley.png", FileMode::Open, FileAccess::Read, FileShare::Read);
PngBitmapDecoder^ decoder = gcnew PngBitmapDecoder(imageStreamSource, BitmapCreateOptions::PreservePixelFormat, BitmapCacheOption::Default);
BitmapSource^ bitmapSource = decoder->Frames[0];

// Draw the Image
Image^ myImage = gcnew Image();
myImage->Source = bitmapSource;
myImage->Stretch = Stretch::None;
myImage->Margin = System::Windows::Thickness(20);

// Open a Stream and decode a PNG image
Stream imageStreamSource = new FileStream("smiley.png", FileMode.Open, FileAccess.Read, FileShare.Read);
PngBitmapDecoder decoder = new PngBitmapDecoder(imageStreamSource, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.Default);
BitmapSource bitmapSource = decoder.Frames[0];

// Draw the Image
Image myImage = new Image();
myImage.Source = bitmapSource;
myImage.Stretch = Stretch.None;
myImage.Margin = new Thickness(20);
' Open a Stream and decode a PNG image
Dim imageStreamSource As New FileStream("smiley.png", FileMode.Open, FileAccess.Read, FileShare.Read)
Dim decoder As New PngBitmapDecoder(imageStreamSource, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.Default)
Dim bitmapSource As BitmapSource = decoder.Frames(0)

' Draw the Image
Dim myImage As New Image()
myImage.Source = bitmapSource
myImage.Stretch = Stretch.None
myImage.Margin = New Thickness(20)

備註

如果你想在解碼器建立後關閉快OnLoad取,可以使用bitmapStream快取選項。 預設 OnDemand 快取選項保留對串流的存取權,直到需要位圖,且垃圾回收器負責清理。

適用於

PngBitmapDecoder(Uri, BitmapCreateOptions, BitmapCacheOption)

從指定PngBitmapDecoder中初始化一個新的 實Uri例,並指定為 createOptionscacheOption和 。

public:
 PngBitmapDecoder(Uri ^ bitmapUri, System::Windows::Media::Imaging::BitmapCreateOptions createOptions, System::Windows::Media::Imaging::BitmapCacheOption cacheOption);
[System.Security.SecurityCritical]
public PngBitmapDecoder(Uri bitmapUri, System.Windows.Media.Imaging.BitmapCreateOptions createOptions, System.Windows.Media.Imaging.BitmapCacheOption cacheOption);
public PngBitmapDecoder(Uri bitmapUri, System.Windows.Media.Imaging.BitmapCreateOptions createOptions, System.Windows.Media.Imaging.BitmapCacheOption cacheOption);
[<System.Security.SecurityCritical>]
new System.Windows.Media.Imaging.PngBitmapDecoder : Uri * System.Windows.Media.Imaging.BitmapCreateOptions * System.Windows.Media.Imaging.BitmapCacheOption -> System.Windows.Media.Imaging.PngBitmapDecoder
new System.Windows.Media.Imaging.PngBitmapDecoder : Uri * System.Windows.Media.Imaging.BitmapCreateOptions * System.Windows.Media.Imaging.BitmapCacheOption -> System.Windows.Media.Imaging.PngBitmapDecoder
Public Sub New (bitmapUri As Uri, createOptions As BitmapCreateOptions, cacheOption As BitmapCacheOption)

參數

bitmapUri
Uri

那 Uri 個用來識別要解碼的位圖。

createOptions
BitmapCreateOptions

點陣圖影像的初始化選項。

cacheOption
BitmapCacheOption

用於點陣圖影像的快取方法。

屬性

例外狀況

bitmapUri 值是 null。

這 bitmapUri 不是可攜式網路圖形(PNG)編碼的影像。

範例

以下程式碼範例示範如何從 中建立 的實例並使用 a PngBitmapDecoderUri。 解碼後的影像作為控制的來源 Image 。


// Open a Uri and decode a PNG image
System::Uri^ myUri = gcnew System::Uri("smiley.png", UriKind::RelativeOrAbsolute);
PngBitmapDecoder^ decoder2 = gcnew PngBitmapDecoder(myUri, BitmapCreateOptions::PreservePixelFormat, BitmapCacheOption::Default);
BitmapSource^ bitmapSource2 = decoder2->Frames[0];

// Draw the Image
Image^ myImage2 = gcnew Image();
myImage2->Source = bitmapSource2;
myImage2->Stretch = Stretch::None;
myImage2->Margin = System::Windows::Thickness(20);

// Open a Uri and decode a PNG image
Uri myUri = new Uri("smiley.png", UriKind.RelativeOrAbsolute);
PngBitmapDecoder decoder2 = new PngBitmapDecoder(myUri, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.Default);
BitmapSource bitmapSource2 = decoder2.Frames[0];

// Draw the Image
Image myImage2 = new Image();
myImage2.Source = bitmapSource2;
myImage2.Stretch = Stretch.None;
myImage2.Margin = new Thickness(20);
' Open a Uri and decode a PNG image
Dim myUri As New Uri("smiley.png", UriKind.RelativeOrAbsolute)
Dim decoder2 As New PngBitmapDecoder(myUri, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.Default)
Dim bitmapSource2 As BitmapSource = decoder2.Frames(0)

' Draw the Image
Dim myImage2 As New Image()
myImage2.Source = bitmapSource2
myImage2.Stretch = Stretch.None
myImage2.Margin = New Thickness(20)

適用於