BitmapDecoder 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
代表點陣圖框架的容器。 每個點陣圖框架都是 BitmapSource。 這個抽象類別提供所有衍生解碼器物件的一組基本功能。
public ref class BitmapDecoder abstract : System::Windows::Threading::DispatcherObject
public abstract class BitmapDecoder : System.Windows.Threading.DispatcherObject
type BitmapDecoder = class
inherit DispatcherObject
Public MustInherit Class BitmapDecoder
Inherits DispatcherObject
- 繼承
- 衍生
範例
下列範例示範如何使用 Create(Uri, BitmapCreateOptions, BitmapCacheOption) 方法來建立指定影像的解碼器。 影像的第一個 BitmapFrame 是做為控制項的來源 Image 。
BitmapDecoder uriBitmap = BitmapDecoder.Create(
new Uri("sampleImages/waterlilies.jpg", UriKind.Relative),
BitmapCreateOptions.None,
BitmapCacheOption.Default);
// Create an image element;
Image uriImage = new Image();
uriImage.Width = 200;
// Set image source.
uriImage.Source = uriBitmap.Frames[0];
Dim uriBitmap As BitmapDecoder = BitmapDecoder.Create(New Uri("sampleImages/waterlilies.jpg", UriKind.Relative), BitmapCreateOptions.None, BitmapCacheOption.Default)
' Create an image element;
Dim uriImage As New Image()
uriImage.Width = 200
' Set image source.
uriImage.Source = uriBitmap.Frames(0)
下列程式碼範例示範如何使用內 TiffBitmapDecoder 建開啟和解碼標記影像檔案格式, (TIFF) 點陣圖。 產生的 BitmapSource 會做為 Source Image 專案的 。
// Open a Stream and decode a TIFF image
Stream imageStreamSource = new FileStream("tulipfarm.tif", FileMode.Open, FileAccess.Read, FileShare.Read);
TiffBitmapDecoder decoder = new TiffBitmapDecoder(imageStreamSource, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.Default);
BitmapSource bitmapSource = decoder.Frames[0];
// Draw the Image
Image myImage1 = new Image();
myImage1.Source = bitmapSource;
myImage1.Stretch = Stretch.None;
myImage1.Margin = new Thickness(20);
' Open a Stream and decode a TIFF image
Dim imageStreamSource As New FileStream("tulipfarm.tif", FileMode.Open, FileAccess.Read, FileShare.Read)
Dim decoder As New TiffBitmapDecoder(imageStreamSource, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.Default)
Dim bitmapSource As BitmapSource = decoder.Frames(0)
' Draw the Image
Dim myImage1 As New Image()
myImage1.Source = bitmapSource
myImage1.Stretch = Stretch.None
myImage1.Margin = New Thickness(20)
備註
BitmapDecoder 不是 BitmapFrame 本身,而是物件的 BitmapFrame 容器。 BitmapFrame容器中的每個可能有不同的屬性,包括不同的大小、解析度或調色盤。
除非選取特定的編解碼器,否則Windows Presentation Foundation (WPF) 會使用自動執行時間探索來識別影像的格式,並將它與適當的編解碼器相符。 此探索程式可讓獨立軟體廠商所開發的編解碼器, (ISV) 系統會自動探索。 若要選取特定的編解碼器,應該使用 衍生 BitmapDecoder 或 BitmapEncoder ,例如 TiffBitmapDecoder 類別。
標記的影像檔案格式 (TIFF) 和圖形交換格式 (GIF) 是唯一支援多個畫面格的實作影像格式。
建構函式
BitmapDecoder() |
初始化 BitmapDecoder 的新執行個體。 |
屬性
CodecInfo |
取得描述此轉碼器的資訊。 |
ColorContexts |
取得值,表示與點陣圖相關聯的色彩設定檔 (如果有定義的話)。 |
Dispatcher |
取得與這個 Dispatcher 關聯的 DispatcherObject。 (繼承來源 DispatcherObject) |
Frames |
取得點陣圖內個別畫面格的內容。 |
IsDownloading |
取得值,這個值表示解碼器目前是否正在下載內容。 |
Metadata |
取得 BitmapMetadata 的執行個體,代表與這個點陣圖相關聯的全域中繼資料 (如果有定義中繼資料的話)。 |
Palette |
取得與這個解碼器相關聯的 BitmapPalette。 |
Preview |
如果有定義預覽,取得代表這個點陣圖全域預覽的 BitmapSource。 |
Thumbnail |
如果未定義,則取得表示點陣圖縮圖的 BitmapSource。 |
方法
CheckAccess() |
判斷呼叫的執行是否可以存取這個 DispatcherObject。 (繼承來源 DispatcherObject) |
Create(Stream, BitmapCreateOptions, BitmapCacheOption) |
使用指定的 BitmapDecoder 和 Stream,從 BitmapCreateOptions 建立 BitmapCacheOption。 |
Create(Uri, BitmapCreateOptions, BitmapCacheOption) |
使用指定的 BitmapDecoder 和 Uri,從 BitmapCreateOptions 建立 BitmapCacheOption。 |
Create(Uri, BitmapCreateOptions, BitmapCacheOption, RequestCachePolicy) |
使用指定的 BitmapDecoder、Uri 和 BitmapCreateOptions,從 BitmapCacheOption 建立 RequestCachePolicy。 |
CreateInPlaceBitmapMetadataWriter() |
建立 InPlaceBitmapMetadataWriter 的執行個體,這個執行個體可用來更新點陣圖的中繼資料。 |
Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
Finalize() |
釋出資源並執行其他清除作業後,記憶體回收才能重新回收 BitmapDecoder。 |
GetHashCode() |
做為預設雜湊函式。 (繼承來源 Object) |
GetType() |
取得目前執行個體的 Type。 (繼承來源 Object) |
MemberwiseClone() |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
ToString() |
將 BitmapDecoder 的目前值轉換成 String。 |
VerifyAccess() |
請強制執行可以存取這個 DispatcherObject 的呼叫執行緒。 (繼承來源 DispatcherObject) |
事件
DownloadCompleted |
在 BitmapDecoder 完成下載點陣圖內容時發生。 |
DownloadFailed |
無法下載點陣圖內容時發生。 |
DownloadProgress |
BitmapDecoder 開始下載點陣圖內容時發生。 |