Image::SetPropertyItem 方法 (gdiplusheaders.h)

Image::SetPropertyItem 方法 (此 Image 对象的元数据) 段设置属性项。 如果该项已存在,则更新其内容;否则,将添加新项。

语法

Status SetPropertyItem(
  [in] const PropertyItem *item
);

参数

[in] item

类型: const PropertyItem*

指向 PropertyItem 对象的指针,该对象指定要设置的属性项。

返回值

类型: 状态

如果该方法成功,则返回 Ok,这是 Status 枚举的元素。

如果方法失败,它将返回 Status 枚举的其他元素之一。

注解

某些图像格式 (例如 ICON 和 EMF) 不支持属性。 如果在不支持属性的图像上调用 Image::SetPropertyItem 方法,它将返回 PropertyNotSupported。

示例

以下控制台应用程序基于 JPEG 文件创建 Image 对象。 代码调用该 Image 对象的 Image::SetPropertyItem 方法来设置图像的标题。 然后,代码检索并显示新标题。

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

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

   // Create an Image object based on a JPEG file.
   Image* image = new Image(L"FakePhoto.jpg");

   // Set the image title.
   PropertyItem* propItem = new PropertyItem;
   CHAR newTitleValue[] = "Fake Photograph 2";

   propItem->id = PropertyTagImageTitle;
   propItem->length = 18;  //  includes null terminator
   propItem->type = PropertyTagTypeASCII;
   propItem->value = newTitleValue;

   image->SetPropertyItem(propItem);

   // Get and display the new image title.
   UINT size = image->GetPropertyItemSize(PropertyTagImageTitle);
   PropertyItem* title = (PropertyItem*)malloc(size);
   image->GetPropertyItem(PropertyTagImageTitle, size, title);
   printf("The image title is %s.\n", title->value);

   free(title);
   delete propItem;
   delete image;
   GdiplusShutdown(gdiplusToken);
   return 0;
}

要求

要求
最低受支持的客户端 Windows XP、Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 gdiplusheaders.h (包括 Gdiplus.h)
Library Gdiplus.lib
DLL Gdiplus.dll

另请参阅

图像

Image::GetPropertyCount

Image::GetPropertyIdList

Image::GetPropertyItem

Image::GetPropertyItemSize

Image::GetPropertySize

Image::RemovePropertyItem

PropertyItem

读取和写入元数据