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 |