Graphics::FromImage 方法 (gdiplusgraphics.h)

Graphics::FromImage 方法创建与指定的 Image 对象关联的 Graphics 对象。

语法

Graphics * FromImage(
  [in] Image *image
);

parameters

[in] image

类型: 图像*

指向将与新 Graphics 对象关联的 Image 对象的指针。

返回值

类型: 图形*

此方法返回指向新 Graphics 对象的指针。

注解

如果 Image 对象基于已打开以供读取的图元文件,则此方法失败。 Image::Image (文件名、useEmbeddedColorManagement) Metafile::Metafile (文件名) 构造函数打开用于读取的图元文件。 若要打开用于录制的图元文件,请使用接收设备上下文句柄的 图元文件 构造函数。

如果图像具有以下像素格式之一,此方法也会失败:

  • PixelFormatUndefined
  • PixelFormatDontCare
  • PixelFormat1bppIndexed
  • PixelFormat4bppIndexed
  • PixelFormat8bppIndexed
  • PixelFormat16bppGrayScale
  • PixelFormat16bppARGB1555

示例

以下示例调用 Graphics::FromImage 方法来创建与 Image 对象关联的 Graphics 对象。 调用 Graphics::FillEllipse 不会在显示设备上绘制;相反,它会更改 Image 对象的位图。 调用 Graphics::D rawImage 将显示已更改的位图。

VOID Example_FromImage(HDC hdc)
{
   Graphics graphics(hdc);

   // Create an Image object from a PNG file.
   Image image(L"Mosaic.png");

   // Create a Graphics object that is associated with the image.
   Graphics* imageGraphics = Graphics::FromImage(&image);
   
   // Alter the image.
   SolidBrush brush(Color(255, 0, 0, 255));
   imageGraphics->FillEllipse(&brush, 10, 40, 100, 50);

   // Draw the altered image.
   graphics.DrawImage(&image, 30, 20);
   
   delete imageGraphics;
}

要求

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

另请参阅

编程模型中的更改

FromHDC 方法

显卡

图形构造函数

Graphics::FromHWND

Graphics::GetHDC

使用图像、位图和图元文件