FILEINFO

类型定义结构体_FILEINFOL_UINTuStructSize;//使用sizeof(FILEINFO)L_INT格式;//文件格式:FILE_PCX,…L_TCHAR名称(_MAX_FNAME + _MAX_EXT);//文件名,包括扩展名L_INT宽度;//图像宽度L_INT高度;//图像高度L_INTBitsPerPixel;//每像素位L_SSIZE_TSizeDisk;//磁盘上文件的大小L_SSIZE_TSizeMem;//图像在内存中的大小L_TCHAR压缩[20];//压缩方法名称L_INTViewPerspective;//图像视图L_INT秩序;// RGB顺序L_INTPageNumber;//页面编号L_INTTotalPages;//文件中显示的总页面数L_INTXResolution;//沿X轴的分辨率,单位为dpi。L_INTYResolution;//沿Y轴的分辨率,单位为dpi。L_UINT国旗;//标识文件子类型:渐进式、交错式L_UINTGlobalLoop;//全局动画循环计数0 =无穷大L_INTGlobalWidth;//全局宽度,单位为像素L_INTGlobalHeight;//全局高度,单位为像素L_COLORREFGlobalBackground;//全局背景颜色(见Flags)L_RGBQUADGlobalPalette [256];//全局调色板(参见Flags)L_SIZE_TIFD;// IFD偏移量(仅用于TIF文件)L_INT层;//文件的层数L_INT色彩;//颜色空间(RGB, CMYK, CIELAB等)L_INT渠道;//文件中的通道数L_BOOLbIsDocFile;//指定文件是否为DOC文件L_DOUBLEdDocPageWidth;//(只对DOC文件有效),uDocUnit中的宽度L_DOUBLEdDocPageHeight;//(只对DOC文件有效),uDocUnit中的高度RASTERIZEDOC_UNITuDocUnit;//(只对DOC文件有效),用于宽度和高度的度量单位L_BOOLbIsVectorFile;//该值指示文件是否是向量文件VECTORPARALLELOGRAMVectorParallelogram;//矢量的包围平行四边形L_INTMessageCount;//消息总数(仅用于PST文件)L_INTnHorzTiles;//水平贴图的数量。L_INTnVertTiles;//垂直贴图的数量。L_VOID* pFilterData;//过滤数据。L_SIZE_TuFilterDataSize;//过滤数据的大小。L_INTnFilter;//哪个过滤器分配了过滤器数据。L_INTnAttachmentCount;//文件中附件的数量。} FILEINFO, *pFILEINFO;

FILEINFO结构,该结构是通过调用L_FileInfo函数,提供关于指定文件的信息。

笔记

成员

uStructSize

此结构的大小,以字节为单位(用于版本控制)。使用sizeof()操作符来计算这个值。

格式

文件格式。有关可能的值,请参见所有支持的图像文件格式摘要

的名字

一个字符数组,包含以空结尾的字符串,即文件名。如果该名称超过_MAX_FNAME + _MAX_EXT字符,则会被截断。

宽度

图像宽度,以像素为单位。

高度

图像高度,以像素为单位。

BitsPerPixel

每像素位。

SizeDisk

磁盘上文件的大小(以字节为单位)。

SizeMem

加载文件所需的内存量(以字节为单位)。

压缩

一个20个字符的数组,包含描述压缩方法的以空结尾的字符串。

ViewPerspective

存储图像开头的地方。以下值有效:

有关描述,请参见会计视角

订单

位图的颜色顺序。如果图像没有调色板,则此字段是有意义的。它指示颜色值是红-绿-蓝还是蓝-绿-红顺序。以下值有效:

PageNumber

多页文件中的页码。

若要确定文件中的总页数,请调用L_FileInfouFlags设置为FILEINFO_TOTALPAGES。

TotalPages

文件中显示的总页数。

要更新此字段,请调用L_FileInfouFlags设置为FILEINFO_TOTALPAGES。

如果您不希望此字段更新,请调用L_FileInfouFlags设置为0。

XResolution

水平分辨率,单位为每英寸点数。有些文件格式将此值保存在文件头文件中。

YResolution

垂直分辨率,单位为每英寸点数。有些文件格式将此值保存在文件头文件中。

旗帜

文件的特征。有关可能的值,请参见FILEINFO旗帜

GlobalLoop

全局动画循环计数。0 =无穷。只有设置了FILEINFO_HAS_GLOBALLOOP标志,该字段才有效。

GlobalWidth

动画回放的全局宽度

GlobalHeight

动画回放的全局高度

GlobalBackground

动画播放的全局背景色(FILEINFO旗帜

GlobalPalette [256]

动画播放的全局调色板(FILEINFO旗帜).

IFD

页开始位置的TIFF文件中的偏移量。该成员在何时更新L_FileInfo被称为。

PSD文件包含的层数(只有PSD文件可以有层)。如果文件不是PSD文件,或者文件是PSD文件但没有任何层,则Layers为0。

色彩

文件的颜色空间。取值为:

价值 意义
COLORSPACE_BGR [0] RGB或BGR
COLORSPACE_YUV [1] YUV或YCbCr
COLORSPACE_CMYK [2] CMYK
COLORSPACE_CIELAB [3] CIELab

渠道

PSD文件包含的通道数量(只有PSD文件可以有通道)。如果该值为0,则该文件不包含通道。

bIsDocFile

如果图像文件或流是文档格式,则为TRUE,否则为FALSE。

当该成员的值为TRUE时,则传递给L_FileInfo的图像文件或流是文档文件,如PDF或XPS和dDocPageWidthdDocPageHeight而且uDocUnit将包含原始文档逻辑大小。物理负载(栅格化大小)根据当前的栅格化值计算,并存储在宽度高度XResolution而且YResolution

当该成员的值为FALSE时,则图像文件或流为光栅图像,如JPEG或TIFF。这些文件有物理大小dDocPageWidthdDocPageHeight而且uDocUnit不应使用。

dDocPageWidth

文档的逻辑宽度。这个值在uDocUnit

文档的逻辑宽度和高度是栅格化之前的原始大小。LEADTOOLS通常以英寸为单位返回逻辑大小。

的值时才使用dDocPageWidthbIsDocFile是真的。

dDocPageHeight

文档的逻辑高度。这个值在uDocUnit

文档的逻辑宽度和高度是栅格化之前的原始大小。LEADTOOLS通常以英寸为单位返回逻辑大小。

的值时才使用dDocPageHeightbIsDocFile是真的。

uDocUnit

单位为dDocPageWidth而且dDocPageHeight.有效值如下:

价值 意义
RASTERIZEDOC_UNIT_PIXEL 页面宽度和高度以像素为单位。
RASTERIZEDOC_UNIT_INCH 页面的宽度和高度以英寸为单位。
RASTERIZEDOC_UNIT_MILLIMETER 页面的宽度和高度以毫米为单位。

bIsVectorFile

如果图像文件或流是矢量格式,则为TRUE,否则为FALSE。

VectorParallelogram

包含矢量的边界平行四边形的平行四边形结构。的值时才有效bIsVectorFile是真的。

在加载DXF和DWG等矢量文件时,平行四边形的价值观检索到的L_FileInfo和在FILEINFO中设置可能并不总是正确的,因为值取决于文件保存的数据。L_FileInfo不加载文件对象,但读取文件维度,而文件维度可能没有保存在文件中。

MessageCount

消息总数(仅针对PST文件)。

nHorzTiles

水平瓷砖的数量。

nVertTiles

垂直瓷砖的数量。

pFilterData

一个指向过滤器数据结构的指针,用于加速加载。pFilterData只有在FILEINFO_USEFILTERDATA标志被传递时才有效L_FileInfo.如果不是NULL,则将数据通过LOADFILEOPTION构造并通过调用释放它L_FreeFilterData当不再需要的时候。

看到使用筛选数据加速加载大文件主题以获取更多信息。

uFilterDataSize

筛选器数据的大小。仅当传入FILEINFO_USEFILTERDATA标志时返回L_FileInfo

如果为0,则可能筛选器数据包含只在当前进程中有效的句柄或指针。另外,如果为0,则过滤器数据一次只能在一个线程中使用。目前,这是大多数过滤器的情况。

如果不是0,则过滤器数据是平坦的,可以将其保存到磁盘并在以后重新加载。

看到使用筛选数据加速加载大文件主题以获取更多信息。

nFilter

分配过滤器数据的过滤器。仅当传入FILEINFO_USEFILTERDATA标志时返回L_FileInfo

看到使用筛选数据加速加载大文件主题以获取更多信息。

nAttachmentCount

如果该文件有附件,则该文件中的附件数量;否则,0。

评论

pFILEINFO是指向a的指针吗FILEINFO结构。当函数参数类型为pFILEINFO时,您可以声明一个FILEINFO变量,更新结构的字段,并在参数中传递变量的地址。只有当程序需要指针时,才需要声明pFILEINFO变量。

一些将此结构作为参数的函数要求必须在函数调用之前初始化该结构。你必须设置uStructSize成员的总大小(以字节为单位)。使用sizeof()操作符来计算这个值。不需要初始化结构的函数将使用结构的总大小(以字节为单位)作为附加的函数参数。

使用以下两种机制可以更快地加载多页文件:

  1. TIFF文件可以使用IFD(每页的偏移量)。有关快速加载和保存大型TIFF文件的更多信息,请参阅加载和保存大TIFF/BigTIFF文件

  2. TIFF文件以外的文件可以使用筛选器数据机制。通过调用检索筛选器数据L_FileInfo使用FILEINFO_USEFILTERDATA标志。如果过滤器支持此机制,则通过填充pFilterDatauFilterDataSize而且nFilter委员会的成员FILEINFO结构。然后传递过滤器数据LOADFILEOPTION结构来加载或转换函数,然后释放它们L_FreeFilterData当他们不再需要的时候。看到使用筛选数据加速加载大文件主题以获取更多信息。

注意,如果格式是FILE_JPEG或FILE_TIF_JPEG和BitsPerPixel为8,则图像使用4:0:0颜色空间,而不是4:4:4颜色空间。

目前只有PSD文件支持层。

附件

LEADTOOLS支持以下文件格式的附件:

因此,nAttachmentCount只有当文件是上面列出的格式之一时,才会包含一个有效值。

PDF文件可以创建为一个组合,其中包含多个文件组装成一个集成单元。在这些类型的文档中,文件包含一个单一的通用帮助页面,其中包含诸如“为了获得最佳体验,请在兼容的查看器中打开此PDF文件夹”之类的文本,以及任意数量的附件和控制如何查看文档的模式。旗帜将包含FILEINFO_PORTFOLIO如果该文件是PDF文件夹,则由应用程序决定如何进一步处理该文件。看到PDF格式的组合更多信息。

LEADTOOLS光栅成像C API帮助
188金宝搏的网址客服|支持|联系我们|知识产权公告
©1991 - 2021领先技术公司版权所有