Image::GetPropertyItem-Methode (gdiplusheaders.h)
Die Image::GetPropertyItem-Methode ruft ein angegebenes Eigenschaftselement (Metadatenelement) aus diesem Image-Objekt ab.
Syntax
Status GetPropertyItem(
[in] PROPID propId,
[in] UINT propSize,
[out] PropertyItem *buffer
);
Parameter
[in] propId
Typ: PROPID
Ganze Zahl, die das abzurufende Eigenschaftselement angibt.
[in] propSize
Typ: UINT
Eine ganze Zahl, die die Größe des abzurufenden Eigenschaftselements in Byte angibt. Rufen Sie die Image::GetPropertyItemSize-Methode auf, um die Größe zu bestimmen.
[out] buffer
Typ: PropertyItem*
Zeiger auf ein PropertyItem-Objekt , das das Eigenschaftselement empfängt.
Rückgabewert
Typ: Status
Wenn die Methode erfolgreich ist, gibt sie OK zurück, ein Element der Status-Enumeration .
Wenn die Methode fehlschlägt, wird eines der anderen Elemente der Status-Enumeration zurückgegeben.
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 den Make der Kamera ab, die das Bild aufgenommen hat, indem die PropertyTagEquipMake-Konstante an die Image::GetPropertyItem-Methode des Image-Objekts übergeben wird.
#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, 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
Anforderung | Wert |
---|---|
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 |