跳转到主要内容
此对象表示一个 PDF 附件。它可用于访问原始文件名、作者添加的说明以及附件的绑定类型。它还提供了一些方法,让您可以通过将附件文件保存到磁盘或全局内存来访问该文件。

属性

名称类型描述
ApplicationEngine, 只读返回 Engine 对象。
BindingPDFAttachmentBindingEnum, 只读指定附件是与单个注释、PDF Portfolio 还是整个文档关联。对于通过 FineReader Engine API 添加的附件,此属性值始终为 PAB_Document。
DescriptionBSTR, 只读返回文件附加时指定的说明。
FileFormatImageFileFormatEnum, 只读返回文件经 ABBYY FineReader Engine 打开后识别出的原始文件格式。<Note> 如果附件格式不等于 IFF_UnknownFormat,则可在 AddImageFileFromAttachment 方法中使用它。否则,可使用 SaveToFileSaveToMemory (Win) 方法保存该附件。 </Note>
FileNameBSTR, 只读返回原始文件名。

方法

名称描述
SaveToFile将附件文件保存到磁盘。
SaveToMemory <Note> 仅限 Windows </Note>将附件文件保存到全局内存。
PDFAttachment 对象图

输入参数

此对象将作为输入参数传递给 AddImageFileFromAttachment 方法。

输出参数

此对象是 PDFAttachments 对象中 AddFromFileAddFromMemory (Win) 方法的输出参数。

示例

FREngine::IEnginePtr Engine;
FREngine::IFRDocumentPtr sourceFile = Engine->CreateFRDocument();
sourceFile->AddImageFile( imageFilePath, 0, 0 );
// 从源文档中获取附件集合
FREngine::IPDFAttachmentsPtr attachments;
sourceFile->get_PDFAttachments( &attachments );
int attachmentsCount( 0 );
attachments->get_Count( &attachmentsCount );
// 将附件中的图像添加到新文档中进行处理
FREngine::IFRDocumentPtr frDocument = Engine->CreateFRDocument();
for( int j = 0; j < attachmentsCount; j++ ) {
    FREngine::IPDFAttachmentPtr attach;
    attachments->get_Element( j, &attach );
    FREngine::ImageFileFormatEnum fileFormat( FREngine::IFF_UnknownFormat );
    attach->get_FileFormat( &fileFormat );
    // 仅支持的 ImageFileFormatEnum 才能处理
    if( fileFormat != FREngine::IFF_UnknownFormat ) {
        frDocument->AddImageFileFromAttachment( attach, 0, 0, 0 );
    } else {
    // 所有附件都可以保存
        BSTR fileName;
        attach->get_FileName( &fileName );
        attach->SaveToFile( fileName );
    }
}
 // 识别文档
 frDocument->Process( 0 );     

另请参阅

PDFAttachments 符合 ZUGFeRD 标准的电子发票