Foxit PDF SDK
com.foxit.sdk.common.Image类 参考
类 com.foxit.sdk.common.Image 继承关系图:
com.foxit.sdk.common.Base

Public 成员函数

 Image () throws com.foxit.sdk.PDFException
 构造函数。
更多...
 
 Image (byte[] buffer) throws com.foxit.sdk.PDFException
 构造函数,从内存缓冲区。
更多...
 
 Image (FileReaderCallback file_read) throws com.foxit.sdk.PDFException
 构造函数,使用文件读取回调对象。
更多...
 
 Image (Image other)
 构造函数,使用另一个图像对象。
更多...
 
 Image (String path) throws com.foxit.sdk.PDFException
 构造函数,从现有图像文件路径。
更多...
 
boolean addFrame (Bitmap bitmap) throws com.foxit.sdk.PDFException
 添加位图作为帧。(不支持的DIB格式:com.foxit.sdk.common.Bitmap.e_DIBRgb565 com.foxit.sdk.common.Bitmap.e_DIB8bppMask
更多...
 
synchronized void delete ()
 直接清除C++相关资源。 更多...
 
Bitmap getFrameBitmap (int index) throws com.foxit.sdk.PDFException
 根据索引获取帧位图。
更多...
 
int getFrameCount () throws com.foxit.sdk.PDFException
 获取帧数。
更多...
 
int getHeight () throws com.foxit.sdk.PDFException
 获取图像高度。
更多...
 
int getOrientation () throws com.foxit.sdk.PDFException
 获取图像方向。
更多...
 
int getType () throws com.foxit.sdk.PDFException
 获取图像类型。
更多...
 
int getWidth () throws com.foxit.sdk.PDFException
 获取图像宽度。
更多...
 
int getXDPI () throws com.foxit.sdk.PDFException
 获取X轴的DPI。
更多...
 
int getYDPI () throws com.foxit.sdk.PDFException
 获取Y轴的DPI。
更多...
 
boolean isEmpty ()
 检查当前对象是否为空。
更多...
 
boolean saveAs (StreamCallback file, String file_extension) throws com.foxit.sdk.PDFException
 将当前图像保存为图像文件。
更多...
 
boolean saveAs (String file_path) throws com.foxit.sdk.PDFException
 将当前图像保存为图像文件。
更多...
 
void setDPIs (int x_dpi, int y_dpi) throws com.foxit.sdk.PDFException
 设置X轴和Y轴的DPI。
更多...
 

静态 Public 属性

static final int e_BMP = 1
 图像类型是BMP。

 
static final int e_GIF = 4
 图像类型是GIF。

 
static final int e_JBIG2 = 8
 图像类型是JBIG2。
更多...
 
static final int e_JPG = 2
 图像类型是JPG或JPEG。

 
static final int e_JPX = 6
 图像类型是JPX或JPEG-2000。

 
static final int e_None = 0
 尚未有图像类型。
更多...
 
static final int e_OrientationFlipH = 2
 水平翻转。

 
static final int e_OrientationFlipV = 4
 垂直翻转。

 
static final int e_OrientationNone = 0
 无方向。

 
static final int e_OrientationNormal = 1
 正常方向。

 
static final int e_OrientationRotate180 = 3
 顺时针旋转180度。

 
static final int e_OrientationRotate270 = 8
 逆时针旋转90度。

 
static final int e_OrientationRotate270FlipH = 7
 先逆时针旋转90度,然后水平翻转。

 
static final int e_OrientationRotate90 = 6
 顺时针旋转90度。

 
static final int e_OrientationRotate90FlipH = 5
 先顺时针旋转90度,然后水平翻转。

 
static final int e_PNG = 3
 图像类型是PNG。

 
static final int e_TIF = 5
 图像类型是TIF或TIFF。

 
static final int e_Unknown = -1
 未知图像类型。

 
static final int e_WEBP = 9
 图像类型是webp。
更多...
 

详细描述

Foxit PDF SDK提供以下图像类型:

  • BMP:位图图像格式。只支持单帧。Foxit PDF SDK支持从BMP图像文件加载图像, 获取一些基本信息,获取其位图,更改其位图并将其保存为图像文件。
  • JPG:联合图像专家组图像格式。只支持单帧。Foxit PDF SDK支持从JPG图像文件加载图像, 获取一些基本信息,获取其位图,更改其位图并将其保存为图像文件。
  • PNG:便携式网络图形图像格式。只支持单帧。Foxit PDF SDK支持从PNG图像文件加载图像, 获取一些基本信息,获取其位图,更改其位图并将其保存为图像文件。
  • GIF:图形交换格式。支持多帧。Foxit PDF SDK支持从GIF图像文件加载图像, 获取其大小,获取其位图,更改其位图并将其保存为图像文件。
  • TIF:标签图像文件格式。支持多帧。Foxit PDF SDK支持从TIF图像文件加载图像, 获取一些基本信息,获取其位图,更改其位图并将其保存为图像文件。
  • JPX:JPEG-2000图像格式。只支持单帧。Foxit PDF SDK支持从JPX图像文件加载图像, 获取其大小,获取其位图,更改其位图并将其保存为图像文件。
  • JBIG2:JBIG2图像格式。只支持单帧。Foxit PDF SDK支持从JBIG2图像文件加载图像, 获取其大小,并将其保存为图像文件。Foxit PDF SDK尚不支持获取其帧位图。


构造及析构函数说明

◆ Image() [1/5]

com.foxit.sdk.common.Image.Image ( ) throws com.foxit.sdk.PDFException

构造函数。

此构造函数用于构造一个新的图像对象(不包含任何数据)。 此构造的图像对象的图像类型为 com.foxit.sdk.common.Image.e_None

◆ Image() [2/5]

com.foxit.sdk.common.Image.Image ( String  path) throws com.foxit.sdk.PDFException

构造函数,从现有图像文件路径。

参数
[in]path现有图像文件的完整路径。不应为空字符串。

◆ Image() [3/5]

com.foxit.sdk.common.Image.Image ( byte[]  buffer) throws com.foxit.sdk.PDFException

构造函数,从内存缓冲区。

参数
[in]buffer内存缓冲区。图像文件数据应完全加载到此内存缓冲区中。 不应为 null

◆ Image() [4/5]

com.foxit.sdk.common.Image.Image ( FileReaderCallback  file_read) throws com.foxit.sdk.PDFException

构造函数,使用文件读取回调对象。

参数
[in]file_read用户实现的 com.foxit.sdk.common.fxcrt.FileReaderCallback 对象,用于加载图像文件。 不应为 null

◆ Image() [5/5]

com.foxit.sdk.common.Image.Image ( Image  other)

构造函数,使用另一个图像对象。

参数
[in]other另一个图像对象。

成员函数说明

◆ addFrame()

boolean com.foxit.sdk.common.Image.addFrame ( Bitmap  bitmap) throws com.foxit.sdk.PDFException

添加位图作为帧。(不支持的DIB格式:com.foxit.sdk.common.Bitmap.e_DIBRgb565 com.foxit.sdk.common.Bitmap.e_DIB8bppMask

目前此函数不支持类型为 com.foxit.sdk.common.Image.e_JBIG2 com.foxit.sdk.common.Image.e_Unknown 的图像。
对于支持的图像类型:


参数
[in]bitmap要添加或设置的有效位图帧。
返回
true 表示成功,false 表示失败。

◆ delete()

synchronized void com.foxit.sdk.common.Image.delete ( )

直接清除C++相关资源。

返回
无。
注解
一旦这个接口被调用,这个对象将不能再被使用。

重载 com.foxit.sdk.common.Base .

◆ getFrameBitmap()

Bitmap com.foxit.sdk.common.Image.getFrameBitmap ( int  index) throws com.foxit.sdk.PDFException

根据索引获取帧位图。

目前此函数不支持类型为 com.foxit.sdk.common.Image.e_JBIG2 的图像。 此函数只能支持获取以下格式的帧位图:
com.foxit.sdk.common.Bitmap.e_DIB8bppMask com.foxit.sdk.common.Bitmap.e_DIB8bpp com.foxit.sdk.common.Bitmap.e_DIBRgb com.foxit.sdk.common.Bitmap.e_DIBRgb32 com.foxit.sdk.common.Bitmap.e_DIBArgb
对于其他不支持的DIB格式,此函数将返回一个位图对象, 其函数 Bitmap.isEmpty 返回 true

参数
[in]index帧的索引。有效范围:从0到(count-1)。 count 由函数 Image.getFrameCount 返回。
返回
帧位图。如果返回的位图对象的函数 Bitmap.isEmpty 返回值为 true,则表示该帧的DIB格式不受支持。

◆ getFrameCount()

int com.foxit.sdk.common.Image.getFrameCount ( ) throws com.foxit.sdk.PDFException

获取帧数。

目前此函数不支持类型为 com.foxit.sdk.common.Image.e_JBIG2 的图像。

返回
帧数。

◆ getHeight()

int com.foxit.sdk.common.Image.getHeight ( ) throws com.foxit.sdk.PDFException

获取图像高度。

如果图像有多帧,通常第一帧的大小将被视为图像大小。

返回
图像高度。

◆ getOrientation()

int com.foxit.sdk.common.Image.getOrientation ( ) throws com.foxit.sdk.PDFException

获取图像方向。

此函数只支持类型为 com.foxit.sdk.common.Image.e_JPG com.foxit.sdk.common.Image.e_TIF 的图像。

返回
图像方向。请参考从 com.foxit.sdk.common.Image.e_OrientationNone 开始的值, 这将是其中的一个值。

◆ getType()

int com.foxit.sdk.common.Image.getType ( ) throws com.foxit.sdk.PDFException

获取图像类型。

如果当前图像是新图像(不是从任何图像文件构造的),其类型为 com.foxit.sdk.common.Image.e_None

返回
图像类型。请参考从 com.foxit.sdk.common.Image.e_Unknown 开始的值, 这将是其中的一个值。

◆ getWidth()

int com.foxit.sdk.common.Image.getWidth ( ) throws com.foxit.sdk.PDFException

获取图像宽度。

如果图像有多帧,通常第一帧的大小将被视为图像大小。

返回
图像宽度。

◆ getXDPI()

int com.foxit.sdk.common.Image.getXDPI ( ) throws com.foxit.sdk.PDFException

获取X轴的DPI。

目前此函数不支持类型为 com.foxit.sdk.common.Image.e_JPX com.foxit.sdk.common.Image.e_GIF com.foxit.sdk.common.Image.e_JBIG2 com.foxit.sdk.common.Image.e_WEBP 的图像。
对于新图像(不是从任何图像文件构造的),X轴的默认DPI为96。

返回
X轴的DPI值。

◆ getYDPI()

int com.foxit.sdk.common.Image.getYDPI ( ) throws com.foxit.sdk.PDFException

获取Y轴的DPI。

目前此函数不支持类型为 com.foxit.sdk.common.Image.e_JPX com.foxit.sdk.common.Image.e_GIF com.foxit.sdk.common.Image.e_JBIG2 com.foxit.sdk.common.Image.e_WEBP 的图像。
对于新图像(不是从任何图像文件构造的),Y轴的默认DPI为96。

返回
Y轴的DPI值。

◆ isEmpty()

boolean com.foxit.sdk.common.Image.isEmpty ( )

检查当前对象是否为空。

当前对象为空时,表示当前对象无用。

返回
true 表示当前对象为空,false 表示不为空。

◆ saveAs() [1/2]

boolean com.foxit.sdk.common.Image.saveAs ( StreamCallback  file,
String  file_extension 
) throws com.foxit.sdk.PDFException

将当前图像保存为图像文件。

如果当前图像的类型为 com.foxit.sdk.common.Image.e_TIF com.foxit.sdk.common.Image.e_GIF com.foxit.sdk.common.Image.e_None ,且保存的图像文件类型不支持多帧, 则只有当前图像的第一帧会被保存到图像文件中。
如果保存的图像文件类型为 com.foxit.sdk.common.Image.e_WEBP ,当前图像的位图格式 应为 com.foxit.sdk.common.Bitmap.e_DIBRgb 、 或 。
对于图像对象(不是从任何图像文件构造的),请确保在使用此函数之前 至少向图像对象添加一个有效的帧位图; 否则此函数将失败。

参数
[in]file用户实现的 com.foxit.sdk.common.fxcrt.StreamCallback 对象,用于保存图像文件。
[in]file_extension保存的图像文件的完整路径。不应为空字符串。
目前此函数支持以下扩展名:
.bmp、.jpg、.jpeg、.png、.tif、.tiff、.jpx、.jp2。
返回
true 表示成功,false 表示失败。
注解
此函数不支持将当前图像对象保存回用于构造当前图像对象的图像文件。 为了实现这一点,建议用户按以下步骤操作:
假设当前图像对象是从名为"org.bmp"的图像文件构造的。
  1. 使用当前函数将当前图像对象保存到临时文件。这里,此临时文件 命名为"temp.tmp"。
  2. 确保当前图像对象已析构。
  3. 删除"org.bmp"并将"temp.tmp"重命名为"org.bmp"。

◆ saveAs() [2/2]

boolean com.foxit.sdk.common.Image.saveAs ( String  file_path) throws com.foxit.sdk.PDFException

将当前图像保存为图像文件。

如果当前图像的类型为 com.foxit.sdk.common.Image.e_TIF com.foxit.sdk.common.Image.e_GIF com.foxit.sdk.common.Image.e_None ,且保存的图像文件类型不支持多帧, 则只有当前图像的第一帧会被保存到图像文件中。
如果保存的图像文件类型为 com.foxit.sdk.common.Image.e_WEBP ,当前图像的位图格式 应为 com.foxit.sdk.common.Bitmap.e_DIBRgb 、 或 。
对于图像对象(不是从任何图像文件构造的),请确保在使用此函数之前 至少向图像对象添加一个有效的帧位图; 否则此函数将失败。

参数
[in]file_path保存的图像文件的完整路径。不应为空字符串。
目前此函数支持以下扩展名:
.bmp、.jpg、.jpeg、.png、.tif、.tiff、.jpx、.jp2。
返回
true 表示成功,false 表示失败。
注解
此函数不支持将当前图像对象保存回用于构造当前图像对象的图像文件。 为了实现这一点,建议用户按以下步骤操作:
假设当前图像对象是从名为"org.bmp"的图像文件构造的。
  1. 使用当前函数将当前图像对象保存到临时文件。这里,此临时文件 命名为"temp.tmp"。
  2. 确保当前图像对象已析构。
  3. 删除"org.bmp"并将"temp.tmp"重命名为"org.bmp"。

◆ setDPIs()

void com.foxit.sdk.common.Image.setDPIs ( int  x_dpi,
int  y_dpi 
) throws com.foxit.sdk.PDFException

设置X轴和Y轴的DPI。

目前此函数不支持类型为 com.foxit.sdk.common.Image.e_JPX com.foxit.sdk.common.Image.e_GIF com.foxit.sdk.common.Image.e_JBIG2 com.foxit.sdk.common.Image.e_WEBP 的图像。

参数
[in]x_dpiX轴的DPI。应大于0。
[in]y_dpiY轴的DPI。应大于0。
返回
None。

类成员变量说明

◆ e_JBIG2

final int com.foxit.sdk.common.Image.e_JBIG2 = 8
static

图像类型是JBIG2。

注解
目前,类 Image 中只有少数函数支持此类型。

◆ e_None

final int com.foxit.sdk.common.Image.e_None = 0
static

尚未有图像类型。

注解
仅适用于新的图像对象,该对象不是从任何图像文件构造或 从其他对象检索的。

◆ e_WEBP

final int com.foxit.sdk.common.Image.e_WEBP = 9
static

图像类型是webp。

注解
目前,在Android、iOS、linux arm和mac arm平台上不支持。