.NET Framework Class Library
BitmapFrame..::.CreateInPlaceBitmapMetadataWriter Method

When overridden in a derived class, creates an instance of InPlaceBitmapMetadataWriter, which can be used to associate metadata with a BitmapFrame.

Namespace:  System.Windows.Media.Imaging
Assembly:  PresentationCore (in PresentationCore.dll)
Syntax

Visual Basic (Declaration)
Public MustOverride Function CreateInPlaceBitmapMetadataWriter As InPlaceBitmapMetadataWriter
Visual Basic (Usage)
Dim instance As BitmapFrame
Dim returnValue As InPlaceBitmapMetadataWriter

returnValue = instance.CreateInPlaceBitmapMetadataWriter()
C#
public abstract InPlaceBitmapMetadataWriter CreateInPlaceBitmapMetadataWriter()
Visual C++
public:
virtual InPlaceBitmapMetadataWriter^ CreateInPlaceBitmapMetadataWriter() abstract
JScript
public abstract function CreateInPlaceBitmapMetadataWriter() : InPlaceBitmapMetadataWriter
XAML
You cannot use methods in XAML.
Remarks

Metadata can only be added or edited using the CreateInPlaceBitmapMetadataWriter if the image file contains enough room for the new metadata; otherwise, metadata can be added using the Metadata property.

Examples

The following code example demonstrates how to use the BitmapFrame object to open a Portable Network Graphics (PNG) graphic and write metadata by using the CreateInPlaceBitmapMetadataWriter method.

Visual Basic
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()
C#
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();
Visual C++
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();
Platforms

Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information

.NET Framework

Supported in: 3.5, 3.0
See Also

Reference

Tags :


Page view tracker