Image::GetPropertyItemSize-Methode (gdiplusheaders.h)

Die Image::GetPropertyItemSize-Methode ruft die Größe eines angegebenen Eigenschaftselements dieses Image-Objekts in Bytes ab.

Syntax

UINT GetPropertyItemSize(
  [in] PROPID propId
);

Parameter

[in] propId

Typ: PROPID

Ganze Zahl, die das Eigenschaftselement identifiziert.

Rückgabewert

Typ: UINT

Diese Methode gibt die Größe eines angegebenen Eigenschaftselements dieses Image-Objekts in Bytes zurück.

Hinweise

Die Image::GetPropertyItem-Methode gibt ein PropertyItem-Objekt zurück. Bevor Sie Image::GetPropertyItem aufrufen, müssen Sie einen Puffer zuordnen, der groß genug ist, um dieses Objekt zu empfangen. Die Größe variiert je nach Datentyp und Wert des Eigenschaftselements. Sie können die Image::GetPropertyItemSize-Methode eines Image-Objekts aufrufen, um die Größe des erforderlichen Puffers in Bytes abzurufen.

Beispiele

Im folgenden Beispiel wird ein Image-Objekt basierend auf einer JPEG-Datei erstellt. Der Code ruft die Image::GetPropertyItemSize-Methode des Image-Objekts auf, um die Größe des Eigenschaftselements abzurufen, das die Kamera enthält, die zum Erfassen des Bilds verwendet wird. Anschließend ruft der Code die Image::GetPropertyItem-Methode auf, um dieses Eigenschaftselement abzurufen.

#include <windows.h>
#include <gdiplus.h>
#include <stdio.h>
using namespace Gdiplus;

INT main()
{
   GdiplusStartupInput gdiplusStartupInput;
   ULONG_PTR gdiplusToken;
   GdiplusStartup(&gdiplusToken, &gdiplusStartupInput, NULL);

   UINT size = 0;
   PropertyItem* propertyItem = NULL;
   Image* image = new Image(L"FakePhoto.jpg");

   // Assume that the image has a property item of type PropertyItemEquipMake.
   // Get the size of that property item.
   size = image->GetPropertyItemSize(PropertyTagEquipMake);

   // Allocate a buffer to receive the property item.
   propertyItem = (PropertyItem*)malloc(size);

   // Get the property item.
   image->GetPropertyItem(PropertyTagEquipMake, size, propertyItem);

   // Display the members of the retrieved PropertyItem object.
   printf("The length of the property item is %u.\n", propertyItem->length);
   printf("The data type of the property item is %u.\n", propertyItem->type);

   if(propertyItem->type == PropertyTagTypeASCII)
      printf("The value of the property item is %s.\n", propertyItem->value);

   free(propertyItem);
   delete image;
   GdiplusShutdown(gdiplusToken);
   return 0;
}

Der vorangehende Code hat zusammen mit einer bestimmten Datei FakePhoto.jpg die folgende Ausgabe erzeugt. Beachten Sie, dass der Datentyp 2 ist. Dies ist der Wert der PropertyTagTypeASCII-Konstante, die in Gdiplusimaging.h definiert ist.

The length of the property item is 17.
The data type of the property item is 2.
The value of the property item is Northwind Traders.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP, Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile gdiplusheaders.h (include Gdiplus.h)
Bibliothek Gdiplus.lib
DLL Gdiplus.dll

Weitere Informationen

Bild

Image::GetAllPropertyItems

Image::GetPropertyCount

Image::GetPropertyIdList

Image::GetPropertyItem

Image::GetPropertySize

Image::RemovePropertyItem

Image::SetPropertyItem

PropertyItem

Lesen und Schreiben von Metadaten