code_app/imgfmt/HGImgFmt.h

66 lines
2.1 KiB
C
Raw Normal View History

2022-05-03 10:25:52 +00:00
#ifndef __HGIMGFMT_H__
#define __HGIMGFMT_H__
#include "../base/HGDef.h"
#include "../base/HGBaseErr.h"
#include "HGImgFmtErr.h"
#include "../base/HGImage.h"
HG_DECLARE_HANDLE(HGImgFmtReader);
HG_DECLARE_HANDLE(HGImgFmtWriter);
/* JPEG */
#define HGIMGFMT_TYPE_JPEG 1L
/* BMP */
#define HGIMGFMT_TYPE_BMP 2L
/* PNG */
#define HGIMGFMT_TYPE_PNG 3L
/* TIFF */
#define HGIMGFMT_TYPE_TIFF 4L
/* PDF */
#define HGIMGFMT_TYPE_PDF 5L
/* OFD */
#define HGIMGFMT_TYPE_OFD 6L
typedef struct
{
HGUInt width; /* 图像宽 */
HGUInt height; /* 图像高 */
HGUInt bpp; /* 每像素比特数 */
HGUInt xDpi; /* x-DPI */
HGUInt yDpi; /* y-DPI */
2022-05-03 10:25:52 +00:00
}HGImgFmtLoadInfo;
typedef struct
{
HGUInt xDpi; /* x-DPI */
HGUInt yDpi; /* y-DPI */
2022-05-03 10:25:52 +00:00
}HGImgFmtSaveInfo;
HGEXPORT HGResult HGAPI HGImgFmt_GetImgFmtType(const HGChar* fileName, HGUInt* fmtType);
HGEXPORT HGResult HGAPI HGImgFmt_GetImgFmtTypeFromFileName(const HGChar* fileName, HGUInt* fmtType);
HGEXPORT HGResult HGAPI HGImgFmt_IsMultiImgFmtType(HGUInt fmtType, HGBool *isMulti);
HGEXPORT HGResult HGAPI HGImgFmt_LoadImage(const HGChar *fileName, HGUInt fmtType, HGImgFmtLoadInfo *info,
HGUInt imgType, HGUInt imgOrigin, HGImage *image);
HGEXPORT HGResult HGAPI HGImgFmt_SaveImage(HGImage image, HGUInt fmtType, const HGImgFmtSaveInfo *info, const HGChar *fileName);
2022-05-03 10:25:52 +00:00
HGEXPORT HGResult HGAPI HGImgFmt_OpenImageReader(const HGChar *fileName, HGUInt fmtType, HGImgFmtReader *reader);
HGEXPORT HGResult HGAPI HGImgFmt_CloseImageReader(HGImgFmtReader reader);
HGEXPORT HGResult HGAPI HGImgFmt_GetImagePageCount(HGImgFmtReader reader, HGUInt *count);
HGEXPORT HGResult HGAPI HGImgFmt_LoadImageFromReader(HGImgFmtReader reader, HGUInt index, HGImgFmtLoadInfo *info,
HGUInt imgType, HGUInt imgOrigin, HGImage *image);
HGEXPORT HGResult HGAPI HGImgFmt_OpenImageWriter(const HGChar *fileName, HGUInt fmtType, HGImgFmtWriter *writer);
HGEXPORT HGResult HGAPI HGImgFmt_CloseImageWriter(HGImgFmtWriter writer);
HGEXPORT HGResult HGAPI HGImgFmt_SaveImageToWriter(HGImgFmtWriter writer, HGImage image, const HGImgFmtSaveInfo *info);
2022-05-03 10:25:52 +00:00
#endif /* __HGIMGFMT_H__ */