다음을 통해 공유


BitmapDecoder.CreateInPlaceBitmapMetadataWriter 메서드

정의

비트맵의 메타데이터를 업데이트하는 데 사용할 수 있는 InPlaceBitmapMetadataWriter의 인스턴스를 만듭니다.

public:
 virtual System::Windows::Media::Imaging::InPlaceBitmapMetadataWriter ^ CreateInPlaceBitmapMetadataWriter();
public virtual System.Windows.Media.Imaging.InPlaceBitmapMetadataWriter CreateInPlaceBitmapMetadataWriter ();
abstract member CreateInPlaceBitmapMetadataWriter : unit -> System.Windows.Media.Imaging.InPlaceBitmapMetadataWriter
override this.CreateInPlaceBitmapMetadataWriter : unit -> System.Windows.Media.Imaging.InPlaceBitmapMetadataWriter
Public Overridable Function CreateInPlaceBitmapMetadataWriter () As InPlaceBitmapMetadataWriter

반환

InPlaceBitmapMetadataWriter

InPlaceBitmapMetadataWriter의 인스턴스입니다.

예외

파일의 원래 이미지 스트림이 읽기 전용인 경우

디코더가 기본 제공 디코더가 아닌 경우

예제

다음 코드 예제에서는 비트맵 이미지와 연결된 메타데이터를 업데이트하기 위해 만드는 InPlaceBitmapMetadataWriter 방법을 보여 줍니다.

Stream^ pngStream = gcnew FileStream("smiley.png", FileMode::Open, FileAccess::ReadWrite, FileShare::ReadWrite);
PngBitmapDecoder^ pngDecoder = gcnew PngBitmapDecoder(pngStream, BitmapCreateOptions::PreservePixelFormat, BitmapCacheOption::Default);
BitmapFrame^ pngFrame = pngDecoder->Frames[0];
InPlaceBitmapMetadataWriter^ pngInplace = pngFrame->CreateInPlaceBitmapMetadataWriter();
if (pngInplace->TrySave() == true)
{
   pngInplace->SetQuery("/Text/Description", "Have a nice day.");
}
pngStream->Close();
Stream pngStream = new System.IO.FileStream("smiley.png", FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite);
PngBitmapDecoder pngDecoder = new PngBitmapDecoder(pngStream, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.Default);
BitmapFrame pngFrame = pngDecoder.Frames[0];
InPlaceBitmapMetadataWriter pngInplace = pngFrame.CreateInPlaceBitmapMetadataWriter();
if (pngInplace.TrySave() == true)
{ pngInplace.SetQuery("/Text/Description", "Have a nice day."); }
pngStream.Close();
Dim pngStream As New System.IO.FileStream("smiley.png", FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite)
Dim pngDecoder As New PngBitmapDecoder(pngStream, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.Default)
Dim pngFrame As BitmapFrame = pngDecoder.Frames(0)
Dim pngInplace As InPlaceBitmapMetadataWriter = pngFrame.CreateInPlaceBitmapMetadataWriter()
If pngInplace.TrySave() = True Then
    pngInplace.SetQuery("/Text/Description", "Have a nice day.")
End If
pngStream.Close()

적용 대상

추가 정보