IWICBitmapFrameEncode::WriteSource 方法 (wincodec.h)

編碼點陣圖來源。

語法

HRESULT WriteSource(
  [in] IWICBitmapSource *pIBitmapSource,
  [in] WICRect          *prc
);

參數

[in] pIBitmapSource

類型: IWICBitmapSource*

要編碼的點陣圖來源。

[in] prc

類型: WICRect*

點陣圖來源的大小矩形。

傳回值

類型: HRESULT

如果此方法成功,則會傳回 S_OK。 否則,它會傳回 HRESULT 錯誤碼。

備註

如果在呼叫WriteSource之前未呼叫SetSize,則如果不是Null,則會使用中國提供的大小。 否則,會使用pIBitmapSource中指定的IWICBitmapSource大小。

如果在呼叫WriteSource之前未呼叫SetPixelFormat,則會使用pIBitmapSource中提供的IWICBitmapSource像素格式。

如果在呼叫WriteSource之前未呼叫SetResolution,則會使用pIBitmapSource的像素格式。

如果在呼叫WriteSource之前未呼叫SetPalette,則會編制目標像素格式的索引,而pIBitmapSource的像素格式符合編碼器框架的像素格式,則會使用pIBitmapSource像素格式。

編碼 GIF 影像時,如果已設定全域調色盤,而且畫面層級調色盤不是由使用者直接設定,或是由自訂獨立軟體廠商 (ISV) GIF 編解碼器, 則 WriteSource 會使用全域調色盤來編碼框架,即使 pIBitmapSource 有畫面層級調色盤也一樣。

從 Windows Vista 開始,只要累積的來源高度總計與透過 SetSize設定相同,就可以進行重複的 WriteSource呼叫。

從Windows 8.1開始,來源 rect 至少必須是透過SetSize設定的維度。 如果來源直方寬度超過 SetSize 寬度,則會忽略右側的額外圖元。 如果來源 Rect 高度超過剩余未填滿的高度,則會忽略底部的額外掃描行。

規格需求

   
最低支援的用戶端 Windows XP 搭配 SP2、Windows Vista [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2008 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 wincodec.h
程式庫 Windowscodecs.lib
Dll Windowscodecs.dll

另請參閱

概念

如何撰寫 WIC-Enabled CODEC

IWICBitmapFrameEncode

Windows 映像元件概觀