Aracılığıyla paylaş


BitmapMetadata.SetQuery(String, Object) Yöntem

Tanım

Bit eşlem görüntü dosyasına meta veri yazabilen bir meta veri sorgu yazıcısına erişim sağlar.

public:
 void SetQuery(System::String ^ query, System::Object ^ value);
[System.Security.SecurityCritical]
public void SetQuery (string query, object value);
public void SetQuery (string query, object value);
[<System.Security.SecurityCritical>]
member this.SetQuery : string * obj -> unit
member this.SetQuery : string * obj -> unit
Public Sub SetQuery (query As String, value As Object)

Parametreler

query
String

Yazılacak meta verilerin konumunu tanımlar.

value
Object

Yazılacak meta verilerin değeri.

Öznitelikler

Örnekler

Aşağıdaki kod örneği, bir Taşınabilir Ağ Grafikleri (PNG) dosyasına meta veri yazmak için yönteminin nasıl kullanılacağını SetQuery gösterir.

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()

Meta veriler yazıldıktan sonra, GetQuery bu verileri okumak ve bir metin dizesi olarak yaymak için yöntemi kullanılır.


// Add the metadata of the bitmap image to the text block.
TextBlock^ myTextBlock = gcnew TextBlock();
myTextBlock->Text = "The Description metadata of this image is: " + pngInplace->GetQuery("/Text/Description")->ToString();

// Add the metadata of the bitmap image to the text block.
TextBlock myTextBlock = new TextBlock();
myTextBlock.Text = "The Description metadata of this image is: " + pngInplace.GetQuery("/Text/Description").ToString();
' Add the metadata of the bitmap image to the text block.
Dim myTextBlock As New TextBlock()
myTextBlock.Text = "The Description metadata of this image is: " + pngInplace.GetQuery("/Text/Description").ToString()

Açıklamalar

Bir görüntüyle ilişkili meta veriler, görüntüyü açıklayan ancak görüntünün görüntülenmesi için gerekli olmayan verilerdir. Desteklenen her bit eşlem görüntüsü biçimi meta verileri farklı işler, ancak meta verileri okuma ve yazma özelliği aynıdır.

Windows Presentation Foundation (WPF) şu görüntü meta veri şemalarını destekler: Exchangeable image file (Exif), tEXt (PNG Textual Data), image file directory (IFD), International Press Telecommunications Council (IPTC) ve Genişletilebilir Meta Veri Platformu (XMP).

Şunlara uygulanır

Ayrıca bkz.