fs_image_r.h File Reference

Header file for Image module of Foxit PDF SDK. More...

Go to the source code of this file.

Classes

struct  FSCRT_BITMAP
 Handle type to bitmap. More...
 
struct  FSCRT_BITMAPINFOHEADER
 Structure for information about dimensions and color format of a device-independent bitmap (DIB). More...
 
struct  FSCRT_RGBQUAD
 Structure for a color consisting of relative intensities of red, green, and blue. More...
 
struct  FSCRT_BITMAPINFO
 Structure for dimensions and color information of a device-independent bitmap(DIB). More...
 
struct  FSCRT_IMAGE
 Handle type to image. More...
 
struct  FSCRT_IMAGEFILE
 Handle type to image file. More...
 

Macros

Macro Definitions for Bitmap Format
#define FSCRT_BITMAPFORMAT_24BPP_BGR   1
 24bpp format, bits order: Blue, Green, Red. Blue is the lowest order.
 
#define FSCRT_BITMAPFORMAT_32BPP_BGRx   2
 32bpp format, bits order: Blue, Green, Red, not used. Blue is the lowest order.
 
#define FSCRT_BITMAPFORMAT_32BPP_BGRA   3
 32bpp format, bits order: Blue, Green, Red, Alpha. Blue is the lowest order.
 
#define FSCRT_BITMAPFORMAT_8BPP_GRAY   4
 8bpp format, gray scale.
 
#define FSCRT_BITMAPFORMAT_24BPP_RGB   5
 24bpp format, bits order: Red, Green, Blue. Red is the lowest order.
 
#define FSCRT_BITMAPFORMAT_32BPP_RGBx   6
 32bpp format, bits order: Red, Green, Blue, not used. Red is the lowest order.
 
#define FSCRT_BITMAPFORMAT_32BPP_RGBA   7
 32bpp format, bits order: Red, Green, Blue, Alpha. Red is the lowest order.
 
#define FSCRT_BITMAPFORMAT_16BPP_RGB565   8
 16bpp format, bits order: Red 5 bits, Green 6 bits, Blue 5 bits. Red is the lowest order.
 
#define FSCRT_BITMAPFORMAT_8BPP_MASK   9
 8bpp alpha mask.
 
#define FSCRT_BITMAPFORMAT_1BPP_RGB   10
 1bpp format, 0 for black, 1 for white.
 
Macro Definitions for ARGB Color Format
#define FSCRT_ARGB_Encode(a, r, g, b)   ((((FS_DWORD)(((FS_BYTE)(b) | ((FS_DWORD)((FS_BYTE)(g)) << 8)) | (((FS_DWORD)(FS_BYTE)(r)) << 16)))) | (((FS_DWORD)(FS_BYTE)(a)) << 24))
 Used for encode ARGB color format.
 
#define FSCRT_ARGB_GetAValue(argb)   ((FS_BYTE)(((FS_DWORD)(argb)) >> 24))
 Used for get the A value from ARGB color format.
 
#define FSCRT_ARGB_GetRValue(argb)   ((FS_BYTE)(((FS_DWORD)(argb)) >> 16))
 Used for get the R value from ARGB color format.
 
#define FSCRT_ARGB_GetGValue(argb)   ((FS_BYTE)(((FS_DWORD)(argb)) >> 8))
 Used for get the G value from ARGB color format.
 
#define FSCRT_ARGB_GetBValue(argb)   ((FS_BYTE)(argb))
 Used for get the B value from ARGB color format.
 
Macro Definitions for stretching or transforming
#define FSCRT_INTERPOLATION_DOWNSAMPLE   0x04
 When set, do not do halftone for shrinking or rotating.
 
#define FSCRT_INTERPOLATION_QUADRATIC   0x20
 When set, do interpolation for stretching or transforming.
 
#define FSCRT_INTERPOLATION_BICUBIC   0x80
 When set, do bicubic interpolation for stretching or transforming.
 
Macro Definitions for calculation methods of bitmap bounding.
#define FSCRT_BITMAPBBOX_DETECTION   0
 Matching the given background color exactly.
 
#define FSCRT_BITMAPBBOX_BACKCOLOR   1
 Detecting a bounding box by analyzing a bitmap.
 
Macro definitions for image types
#define FSCRT_IMAGETYPE_BMP   1
 Image type is BMP.
 
#define FSCRT_IMAGETYPE_JPG   2
 Image type is JPG or JPeg.
 
#define FSCRT_IMAGETYPE_PNG   3
 Image type is PNG.
 
#define FSCRT_IMAGETYPE_GIF   4
 Image type is GIF.
 
#define FSCRT_IMAGETYPE_TIF   5
 Image type is TIF or TIFF.
 
#define FSCRT_IMAGETYPE_JPX   6
 Image type is JPX or JPeg-2000.
 
#define FSCRT_IMAGETYPE_JBIG2   8
 Image type is JBIG2. More...
 
Macro definitions for image properties
Note
Image properties are used in the function FSCRT_Image_GetProperty and FSCRT_ImageFile_SetProperty.
#define FSCRT_IMAGEPROPERTY_DPI   "dpi"
 DPI, that is Dot-Per-Inch. More...
 

Functions

FS_RESULT FSCRT_Bitmap_Create (FS_INT32 width, FS_INT32 height, FS_INT32 format, FS_LPVOID buffer, FS_INT32 stride, FSCRT_BITMAP *bitmap)
 Create a bitmap. More...
 
FS_RESULT FSCRT_Bitmap_Release (FSCRT_BITMAP bitmap)
 Destroy a bitmap and release related resources. More...
 
FS_RESULT FSCRT_Bitmap_FillRect (FSCRT_BITMAP bitmap, FS_ARGB color, const FSCRT_RECT *fillRect)
 Fill a bitmap object with a specified color. More...
 
FS_RESULT FSCRT_Bitmap_GetFormat (FSCRT_BITMAP bitmap, FS_INT32 *format)
 Get format of a bitmap object. More...
 
FS_RESULT FSCRT_Bitmap_GetSize (FSCRT_BITMAP bitmap, FS_INT32 *width, FS_INT32 *height)
 Get the size of a bitmap object. More...
 
FS_RESULT FSCRT_Bitmap_GetLineBuffer (FSCRT_BITMAP bitmap, FS_INT32 lineIndex, FS_LPVOID *buffer)
 Get a line buffer of a bitmap object. More...
 
FS_RESULT FSCRT_Bitmap_GetLineStride (FSCRT_BITMAP bitmap, FS_INT32 *stride)
 Get a row stride of the bitmap. More...
 
FS_RESULT FSCRT_Bitmap_GetFlipped (FSCRT_BITMAP srcBitmap, FS_BOOL flipX, FS_BOOL flipY, FSCRT_BITMAP *dstBitmap)
 Swap X/Y dimensions of a bitmap object to generate rotated one. More...
 
FS_RESULT FSCRT_Bitmap_StretchTo (FSCRT_BITMAP srcBitmap, FSCRT_BITMAP dstBitmap, FS_INT32 dstLeft, FS_INT32 dstTop, FS_INT32 dstWidth, FS_INT32 dstHeight, const FSCRT_RECT *dstClipRect, FS_INT32 interpolation)
 Stretch the source bitmap into a new bitmap with different size. More...
 
FS_RESULT FSCRT_Bitmap_TransformTo (FSCRT_BITMAP srcBitmap, FSCRT_BITMAP dstBitmap, const FSCRT_MATRIX *matrix, const FSCRT_RECT *dstClipRect, FS_INT32 interpolation)
 Transform a source bitmap into destination one. More...
 
FS_RESULT FSCRT_Bitmap_ConvertFormat (FSCRT_BITMAP bitmap, FS_INT32 format)
 Convert a bitmap to another specific format. More...
 
FS_RESULT FSCRT_Bitmap_Clone (FSCRT_BITMAP bitmap, FSCRT_BITMAP *clonedBitmap)
 Clone a bitmap. More...
 
FS_RESULT FSCRT_Bitmap_GetBitmapInfo (FSCRT_BITMAP bitmap, FSCRT_BITMAPINFO *bitmapInfo, FS_DWORD *size)
 Get bitmap information from a given Foxit DIB. More...
 
FS_RESULT FSCRT_Bitmap_CalcBBox (FSCRT_BITMAP bitmap, FS_INT32 flag, FS_ARGB backColor, FS_INT32 windowSize, FS_INT32 tolerance, FSCRT_RECT *rectBBox)
 Calculate the bounding box of a bitmap. More...
 
FS_RESULT FSCRT_Bitmap_GetMask (FSCRT_BITMAP bitmap, FSCRT_BITMAP *mask)
 Get the mask bitmap of a bitmap. More...
 
FS_RESULT FSCRT_Image_LoadFromFile (FSCRT_FILE imageFile, FSCRT_IMAGE *image)
 Load an image from an image file. More...
 
FS_RESULT FSCRT_Image_GetType (FSCRT_IMAGE image, FS_INT32 *type)
 Get an image type. More...
 
FS_RESULT FSCRT_Image_GetSize (FSCRT_IMAGE image, FS_INT32 *width, FS_INT32 *height)
 Get width and height of an image. More...
 
FS_RESULT FSCRT_Image_CountFrames (FSCRT_IMAGE image, FS_INT32 *count)
 Count frames of an image. More...
 
FS_RESULT FSCRT_Image_LoadFrame (FSCRT_IMAGE image, FS_INT32 frameIndex)
 Load an image frame by index. More...
 
FS_RESULT FSCRT_Image_GetCurrentFrameSize (FSCRT_IMAGE image, FS_INT32 *width, FS_INT32 *height)
 Get width and height of the current frame. More...
 
FS_RESULT FSCRT_Image_GetCurrentFrameBitmap (FSCRT_IMAGE image, FSCRT_BITMAP *bitmap)
 Retrieve the bitmap of the current frame. More...
 
FS_RESULT FSCRT_Image_GetProperty (FSCRT_IMAGE image, const FSCRT_BSTR *property, FSCRT_VAR *values, FS_INT32 *count)
 Get properties of an image. More...
 
FS_RESULT FSCRT_Image_Release (FSCRT_IMAGE image)
 Release an image object. More...
 

Detailed Description

Header file for Image module of Foxit PDF SDK.

Copyright (C) 2003-2016, Foxit Software Inc.. All Rights Reserved.

http://www.foxitsoftware.com

The following code is copyrighted and contains proprietary information and trade secrets of Foxit Software Inc.. It is not allowed to distribute any parts of Foxit PDF SDK to any third parties or general public, unless there is a license agreement between Foxit Software Inc. and customers.

This header file defines image utilities.
It contains:

  • 1. Definitions for image.
  • 2. Create bitmap.
  • 3. Access bitmap properties.
  • 4. High-level features on bitmap process.
  • 5. Load image file and get frame bitmap.
Note
If you want to purchase Foxit PDF SDK license and use ANY of the following functions, please request for enabling Standard module, Edit Add-on, Image Conversion Add-on, or Anntoation Add-on explicitly. Especially, if only request for enabling Standard module, only APIs which relates to bitmap reading/writing can be used.

Foxit Corporation