(GDI+) 图元文件 |
您所在的位置:网站首页 › 怎么打开wmf文件 › (GDI+) 图元文件 |
(GDI+) 图元文件
项目
06/13/2023
Windows GDI+ 提供 图元文件 类,以便你可以记录和显示图元文件。 图元文件,也称为矢量图像,是存储为一系列绘图命令和设置的图像。 在图元文件对象中记录的命令和设置可以存储在内存中,也可以保存到文件或流中。 GDI+ 可以显示以下列格式存储的图元文件: Windows 图元文件格式 (WMF) 增强型图元文件 (EMF) EMF+GDI+ 能够以 EMF 和 EMF+ 格式记录图元文件,但不能以 WMF 格式记录。 EMF+ 是 EMF 的扩展,允许存储 GDI+ 记录。 EMF+ 格式有两种变体:EMF+ Only 和 EMF+ Dual。 EMF+ Only 图元文件仅包含 GDI+ 记录。 此类图元文件可由 GDI+ 显示,但不能由 Windows 图形设备接口 (GDI) 显示。 EMF+ Dual 图元文件包含 GDI+ 和 GDI 记录。 EMF+ Dual 图元文件中的每个 GDI+ 记录都与备用 GDI 记录配对。 此类图元文件可以通过 GDI+ 显示,也可以通过 GDI 显示。 以下示例在磁盘文件中记录一个设置和一个绘图命令。 请注意,该示例创建一个 Graphics 对象,并且 Graphics 对象的构造函数接收 Metafile 对象的地址作为参数。 myMetafile = new Metafile(L"MyDiskFile.emf", hdc); myGraphics = new Graphics(myMetafile); myPen = new Pen(Color(255, 0, 0, 200)); myGraphics->SetSmoothingMode(SmoothingModeAntiAlias); myGraphics->DrawLine(myPen, 0, 0, 60, 40); delete myGraphics; delete myPen; delete myMetafile;如前面的示例所示, Graphics 类是录制 图元文件 对象中的说明和设置的关键。 对 Graphics 对象的方法进行的任何调用都可以记录在 图元文件 对象中。 同样,可以设置 Graphics 对象的任意属性,并在 图元文件 对象中记录该设置。 当 Graphics 对象被删除或超出范围时,录制将结束。 以下示例显示上一示例中创建的图元文件。 图元文件的左上角显示为 (100, 100)。 Graphics myGraphics(hdc); Image myImage(L"MyDiskFile.emf"); myGraphics.DrawImage(&myImage, 100, 100);以下示例在 图元文件 对象中记录多个属性设置, (剪辑区域、世界转换和平滑模式) 。 然后,代码会记录几个绘图指令。 说明和设置保存在磁盘文件中。 myMetafile = new Metafile(L"MyDiskFile2.emf", hdc); myGraphics = new Graphics(myMetafile); myGraphics->SetSmoothingMode(SmoothingModeAntiAlias); myGraphics->RotateTransform(30); // Create an elliptical clipping region. GraphicsPath myPath; myPath.AddEllipse(0, 0, 200, 100); Region myRegion(&myPath); myGraphics->SetClip(&myRegion); Pen myPen(Color(255, 0, 0, 255)); myGraphics->DrawPath(&myPen, &myPath); for(INT j = 0; j DrawLine(&myPen, 0, 0, 300 - j, j); } delete myGraphics; delete myMetafile;以下示例显示上一示例中创建的图元文件图像。 myGraphics = new Graphics(hdc); myMetafile = new Metafile(L"MyDiskFile.emf"); myGraphics->DrawImage(myMetafile, 10, 10);下图显示了上述代码的输出。 请注意抗锯齿、椭圆形剪裁区域和 30 度旋转。
|
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |