跳转到主要内容
此方法用于判断 PDF 文件的任意页面是否包含文本层。如果您需要将多个 PDF 文件转换为可搜索的 PDF,可以先检查是否存在文本层;如果包含文本层,则直接复制整个文件即可。但请注意,文本层可能包含额外或无关的文本,在这种情况下,如果您需要完整且准确地呈现文档文本,仍然需要执行识别。

语法

C++

HRESULT IsPdfWithTextualContent(
  BSTR                    FileName,
  IImagePasswordCallback* Callback,
  VARIANT_BOOL*           Result
);

C#

bool IsPdfWithTextualContent(
  string                 FileName,
  IImagePasswordCallback Callback
);

Visual Basic .NET

Function IsPdfWithTextualContent( _
  FileName As String, _
  [Callback As IImagePasswordCallback = Nothing] _
) As Boolean

参数

FileName [in] 此变量包含要检测文本层的 PDF 文件的完整路径。 Callback [in] 此变量引用由用户实现的 ImagePasswordCallback 类型对象的接口,用于处理访问 PDF 文件时可能出现的密码请求。此参数为可选参数,也可以为 0;在这种情况下,将无法检查受密码保护的文件。 Result [out, retval] 如果文件中至少有一个页面包含文本层,则此参数返回 TRUE;如果所有页面都不包含文本层,则返回 FALSE。

返回值

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

备注

如果您要从磁盘打开 PDF 文件,我们建议使用此方法,而不要使用 FRDocument 对象的 CheckTextLayer 方法或 ImageDocument 对象的 HasTextualContent 属性。此方法速度更快,因为它不会实际打开文件并将其表示为 FRDocument,而只是检查 PDF 文件的文本层属性。

另请参阅

Engine IImagePasswordCallback