跳转到主要内容
此方法在 Windows 版 FRE 中实现
此方法将图像的一部分作为自顶向下的 DIB (设备无关位图) 返回。对于灰度和黑白图像,使用调色板,其中 0 表示黑色。 该方法以 Handle 对象的形式返回 DIB。此对象负责管理内存分配,并在资源不再使用时将其释放。

语法

C++

HRESULT GetBitmap(
  IImageModification* Modification,
  IHandle**           Result
);

C#

IHandle GetBitmap( IImageModification Modification );

Visual Basic .NET

Function GetBitmap(Modification As IImageModification) As IHandle

参数

Modification [in] 此参数的类型为 ImageModification,用于定义对图像执行的修改。它可包含裁剪矩形,此时仅传递图像的指定部分;还可包含拉伸比例、用于以颜色填充图像某些部分的绘制矩形等。该参数也可以为 0,此时不会对图像页面执行任何修改,而是按“原样”传递。 Result [out, retval] 指向 IHandle* 指针变量的指针,该变量接收结果 Handle 对象的接口指针,该对象表示关联位图的句柄。

返回值

备注

如果在 Linux 中将 Engine 作为进程外服务器加载,或者在 Windows 中使用 OutprocLoader 对象创建该对象,则此方法无法使用。

示例

FREngine.IEngine engine;
FREngine.IFRDocument frdoc;
// 假定文档已创建,并且其中已添加图像
// 获取文档页面彩色图像层的位图句柄
FREngine.IFRPage page = frDoc.Pages[0];
FREngine.IImageDocument imageDoc = page.ImageDocument;
FREngine.IImage image = imageDoc.ColorImage;
FREngine.IHandle hBitmap = image.GetBitmap( null );
// 处理该位图
System.Drawing.Image preprocessedImage = System.Drawing.Image.FromHbitmap( hBitmap.Handle );
...
Gdi32.DeleteObject( hBitmap );
该方法可用于以下 Windows 演示工具:Engine Predefined Processing Profiles

另请参见

ImageModification IImage::EstimateBitmapSize