跳转到主要内容
如果没有对 FRPage 对象的 ImageDocumentLayout 对象的引用,此方法会卸载这些对象,并在必要时将它们保存到磁盘。保存到磁盘是可选操作,如果数据未发生更改,可以省略此步骤。 该方法在处理大型文档时非常有用,可减少内存占用。在完成对单个文档页面的操作后,释放对该页面对应的 ImageDocument 和 Layout 对象的全部引用,并调用 Flush 方法以减少内存占用。 请注意,如果您对页面进行了更改并希望保留这些更改,则应调用 Flush 并将 IsSaveRequired 参数设置为 TRUE。否则,在调用其他释放内存的方法时,这些更改可能会丢失 (有关详细信息,请参阅 迭代文档页面) 。

语法

C++

HRESULT Flush(
  VARIANT_BOOL  IsSaveRequired,
  VARIANT_BOOL* Result
);

C#

bool Flush(bool IsSaveRequired);

Visual Basic .NET

Function Flush(Boolean IsSaveRequired) As Boolean

参数

IsSaveRequired [in] 指定是否保存对页面所做的更改。如果页面未更改或无需保存更改,请传递 FALSE。 Result [out, retval] 指向接收方法执行结果的变量的指针。如果方法成功完成,则结果为 TRUE;否则为 FALSE。

返回值

此方法没有特定的返回值。它返回 ABBYY FineReader Engine 函数的标准返回码

备注

在 Windows 中,Flush 方法的行为取决于 IFRDocument::PageFlushingPolicy 属性的值。如果 PageFlushingPolicy 的值为 PFP_FlushToDisk,则调用该方法会将 Layout 和图像文档卸载到磁盘。如果值为 PFP_Auto,则当文档页数超过 30 页时,调用该方法会将数据卸载到磁盘;否则,数据将保留在内存中。如果值为 PFP_KeepInMemory,则数据不会被卸载。当您需要在同一解决方案中同时处理大型和小型文档时,此功能非常实用,因为可以对两者使用相同的处理代码。

另请参阅

FRPage IFRDocument::PageFlushingPolicy
迭代文档页面