COMInterfaceC++ Library Interface.docx
- 文档编号:30309081
- 上传时间:2023-08-13
- 格式:DOCX
- 页数:21
- 大小:21.10KB
COMInterfaceC++ Library Interface.docx
《COMInterfaceC++ Library Interface.docx》由会员分享,可在线阅读,更多相关《COMInterfaceC++ Library Interface.docx(21页珍藏版)》请在冰豆网上搜索。
COMInterfaceC++LibraryInterface
MethodsandProperties
Description
CConvertAgent
Construction(OnlyC++)
~CConvertAgent
Destruction(OnlyC++)
InitAgent
intInitAgent(constchar*lpszPrinterName,intnTimeOut,constchar*lpszRegName,constchar*lpszRegCode,boolUseAcrobatCom=false);
初始化ConvertAgent环境,调用ConverDoc前必须调用此函数。
Parameter:
PrinterName:
打印名称
TimeOut:
打印超时(S)
RegName:
注册名称(演示版本可以任意填写一般用Demo)
RegCode:
注册码(演示版本可以任意填写一般用Demo)
UseAcrobatCom:
转换pdf是否使用Acrobat自带的COM(为TURE时,必须安装Acrobat)
Example:
InitAgent("SmartPrinter",60,"Demo","Demo",FALSE);
ConvertDoc
intConvertDoc(constchar*lpszSrc,constchar*lpszDest);
文档转换主函数,转换时须使用绝对路径
Parameter:
lpszSrc:
需要转换的源文件。
lpszDest:
需要转换的目标文件。
Example:
ConvertDoc(“c:
\\test.doc”,“c:
\\test.tif”);
ConvertDoc(“c:
\\test.xls”,“c:
\\test.pdf”);
CleanAgent
voidCleanAgent();
清除ConvertAgent环境释放内存资源,必须和InitAgent对称。
Parameter:
Void
Example:
CleanAgent();
CreateCover
通过指定的模板和参数建立封面。
GetTiffPageCount
intGetTiffPageCount(constchar*szFileName);
获取TIFF页面数量
PdfMerge
intPdfMerge(constchar*stFirstPdf,constchar*strSecPdf,constchar*strNewPdf);
合并PDF文件。
TiffMerge
intTiffMerge(constchar*stFirstTiff,constchar*strSecTiff,constchar*strNewTiff);
合并TIFF文件
TiffMergeCover
intTiffMergeCover(constchar*strCoverTiff,constchar*strMainTiff,constchar*strNewTiff);
合并TIFF封面。
Text2TiffProperty
boolText2TiffProperty(intPageWidth,intPageHeight,intLeftMargin,\
intRightMargin,intTopMargin,intBottomMargin,\
char*FontName,intFontHeight,intFontWeight);
设置Text文件转TIFF的参数。
1.ConvertAgentCOM-Interface&C++LibraryInterface
●Include文件参见:
FaxServerPrinter\include\ConvertAgent.h
●VC++Sample参见:
FaxServerPrinter\SDKExamples\VC++\ConvertAgentDemo
●VBCOMSample参见:
FaxServerPrinter\VB.NET(COM)\ConverAgentDemo
●C#COMSample参见:
FaxServerPrinter\C#.NET(COM)\ConverAgentDemo
●Errorcode
NO
Value
Description
0
SM_SUCCESS
本次操作成功
-1
SM_FAIL
本次操作失败
-2
SM_OUTOF_MEMORY
内存错误
-3
SM_PRINT_TIMEOUT
打印超时
-4
SM_SYSTEM_ERROR
系统内部错误
-5
SM_LINCESE_ERROR
认证错误,测试版本中连续调用多次ConvertDoc可出现此类型错误
-6
SM_PRODUCT_NOT_INSTALL
转换文件对应的软件未安装
1:
转DOC时需要安装MicrosoftOffice2003以上版本
2:
转Cell时需要安装用友华表插件(5.3.9.15或以上版本)
3:
转ceb文件时需要安装ApabiReader(4.0或以上版本)
-7
SM_DISPATCH_NOT_FOUND
-8
SM_DISPATCH_CALL_FAIL
-9
SM_FOPEN_ERROR
文件打开错误,一般有两个原因导致
1:
文件路径错误.
2:
文件有加密保护.
(如果源文件是Doc类型检查是否安装MicrosoftOffice2003以上版本)
-10
SM_UNKNOWN_ERROR
未知错误
-11
SM_NOT_INIT
未初始化错误
-12
SM_PRINT_NOT_INSTALL
指定的打印机未安装
-13
SM_FWRITE_ERROR
写文件错误,检查磁盘容量
-14
SM_UNSUPPORTED_FILE_TYPE
不支持该文件类型
-15
SM_EXPIRE_LINCESE
软件已过试用期
2.PrinterSettingsCOM-Interface&C++LibraryInterface(FREE)
MethodsandProperties
Description
CPrinterSettings
Construction(OnlyC++)
~CPrinterSettings
Destruction(OnlyC++)
GetPrinterName
LPCTSTRGetPrinterName();
获取打印机名称
SetPrinterName
voidSetPrinterName(LPCTSTRlpszNewValue);
设置打印机名称(默认为:
FaxServerPrinter)
PageOption
GetPageWidth
intGetPageWidth(void);
获取页面宽度(单位0.1MM)
SetPageWidth
voidSetPageWidth(intnWidth)
设置页面宽度(单位0.1MM)
GetPageHeight
intGetPageHeight(void)
获取页面高度(单位0.1MM)
SetPageHeight
intSetPageHeight(void)
设置页面高度(单位0.1MM)
SetPageSize
intSetPageSize(intPageSize)
设置打印机的纸张类型
SmartPrinter支持以下几种标准纸张:
DMPAPER_A49/*A4210x297mm*/
DMPAPER_A266/*A2420x594mm*/
DMPAPER_A38/*A3297x420mm*/
DMPAPER_A511/*A5148x210mm*/
DMPAPER_B412/*B4(JIS)250x354
DMPAPER_B513/*B5(JIS)182x257mm
DMPAPER_JAPANESE_POSTCARD43/*JapanesePostcard100x148mm*/
DMPAPER_LEGAL5/*Legal81/2x14in*/
DMPAPER_LETTER1/*Letter81/2x11in*/
DMPAPER_TABLOID3/*Tabloid11x17in*/
Example:
SetPageSize(9)//设置为A4大小
标准纸张无需设置,纸张长度和宽度.
自定义纸张
DMPAPER_USER256/*用户定义大小*/
Example:
SetPageSize(256)//设置为自定义纸张
SetPageWidth(1000);//宽度为1000//(单位0.1MM)
SetPageHeight(1000);//高度为1000//(单位0.1MM)
GetPageSize
intSetPageSize(intPageSize)
获取打印机的纸张类型
AddCustomPaper
添加自定义纸张
intAddCustomPaper(LPCTSTRlpszPaperName,intWidth,intHeight,intUnits);
参数
1:
LPCTSTRlpszPaperName图纸名称(字符串类型)
2:
intWidth图纸宽度(数值类型)
3:
intHeight图纸高度(数值类型),
4:
Units单位1:
英寸2:
0.1MM
返回值
返回值为该纸张的dmPaperSize
大于0表示成功,否则为失败.
DeleteCustomPaper
删除自定义纸张
intDeleteCustomPaper(LPCTSTRlpszPaperName);
参数
1:
LPCTSTRlpszPaperName图纸名称(字符串类型)
返回值
大于0表示成功,否则为失败.
QueryCustomPaper
查询自定义纸张
intQueryCustomPaper(LPCTSTRlpszPaperName);
参数
1:
LPCTSTRlpszPaperName图纸名称(字符串类型)
返回值
返回值为该纸张的dmPaperSize
大于0表示成功,否则为失败.
SetPaperByName
设置当前纸张
boolSetPaperByName(LPCTSTRlpszPaperName);
参数
1:
LPCTSTRlpszPaperName图纸名称(字符串类型)
返回值
TRUE表示成功,否则为失败
GetPageOrientation
ORIENTATIONGetPageOrientation(void)
获取页面打印方向(可选项参见:
ORIENTATION)
enumORIENTATION
{
PORTRAIT=1,//DefaultOption//纵向打印
LANDSCAPE=2,//横行打印
};
SetPageOrientation
voidSetPageOrientation(ORIENTATIONorient)
设置页面打印方向(可选项参见:
ORIENTATION)
GetResolution
RESOLUTIONGetResolution(void)
获取打印机分辨率(可选项参见:
RESOLUTION)
enumRESOLUTION
{
NONE_STANDARD_MODE=-1,
FINE_FAX_MODE=0,//204X196
STANDARD_FAX_MODE=1,//204X98
RESOLUTION_1200x1200=2,
RESOLUTION_600x600=3,
RESOLUTION_300x300=4,
RESOLUTION_150x150=5,
RESOLUTION_120x120=6,
RESOLUTION_100x100=7,
RESOLUTION_75x75=8,
RESOLUTION_60x60=9,
RESOLUTION_50x50=10
};
SetResolution
voidSetResolution(RESOLUTIONNewResolution)
设置打印机分辨率(可选项参见:
RESOLUTION)
ImageOption
GetCurImageFileFormat
IMAGE_FORMATGetCurImageFileFormat()
获取输出的文件格式
SetCurImageFileFormat
voidSetCurImageFileFormat(IMAGE_FORMATFormat)
设置输出的文件格式
GetColorDepth
COLOR_DEPTHGetColorDepth(void)
获取颜色位深度,可选项:
C1BPP,C4BPP,C4BPP_GRAY,C8BPP,C8BPP_GRAY,C24BPP
enumCOLOR_DEPTH
{
C1BPP=0,
C4BPP=1,//DefaultOption
C4BPP_GRAY=2,
C8BPP=3,
C8BPP_GRAY=4,
C24BPP=5
};
SetColorDepth
voidSetColorDepth(COLOR_DEPTHColorDepth)
设置颜色位深度,可选项:
C1BPP,C4BPP,C4BPP_GRAY,C8BPP,C8BPP_GRAY,C24BPP
SetDitherColorThreshold
voidSetDitherColorThreshold(DITHER_COLOR_THRESHOLDThreshold)
设置抖动算法的颜色深度阈值,分别为:
较淡、标准、加黑三个选项。
改变此项会明显影响单色图像的显示效果。
enumDITHER_COLOR_THRESHOLD
{
CO_DISABLE=0,
CO_LIGHTEN=1,
CO_STANDARD=2,//DefaultOption
CO_DARKEN=3
};
GetDitherColorThreshold
DITHER_COLOR_THRESHOLDGetDitherColorThreshold(void)
获取设置抖动算法的颜色深度阈值。
SetPrinterDither
voidSetPrinterDither(DITHER_TYPEDITHER)
设置抖动类型(可选项参见:
DITHER_TYPE)
enumDITHER_TYPE
{
PATSIZE_DISABLE=-1,
PATSIZE_AUTO=0,
PATSIZE_16x16=1,
PATSIZE_14x14=2,
PATSIZE_12x12=3,
PATSIZE_10x10=4,
PATSIZE_8x8=5,
PATSIZE_6x6=6,
PATSIZE_4x4=7,//DefaultOption
PATSIZE_2x2=8,
};
GetPrinterDither
DITHER_TYPEGetPrinterDither(void)
获取抖动类型(可选项参见:
DITHER_TYPE)
GetCompressionMethod
COMPRESSIONGetCompressionMethod()
获取tiff格式压缩方法(可选项参见:
COMPRESSION)
enumCOMPRESSION
{
NONE=0,
CCITT_FAX3_1D=1,//DefaultOption
CCITT_FAX3_2D=2,
CCITT_FAX4=3,
LZW=4,
JPEG=5,
PACKBITS=6,
DEFLATE=7,
CCITT_RLE=8
};
SetCompressionMethod
voidSetCompressionMethod(COMPRESSIONCompress)
设置tiff格式压缩方法(可选项参见:
COMPRESSION)
Segmentation
voidSetSegmentation(SEGMENTATIONSegment)
设置tiff格式Segmentation属性
enumSEGMENTATION
{
SINGLE_STRIPED=0,//DefaultOption
STRIPED=1,
TILED=2,
}SEGMENTATION;
Gegmentation
SEGMENTATIONGetSegmentation(void)
GetFillOrder
FILL_ORDERGetFillOrder(void)
获取位序(可选项参见:
FILL_ORDER)
enumFILL_ORDER
{
MSB2LSB=1,
LSB2MSB=2,//DefaultOption
};
SetFillOrder
voidSetFillOrder(FILL_ORDERFillOrder)
设置位序(可选项参见:
FILL_ORDER)
GetJPEGQuality
intGetJPEGQuality()
获取JPEG压缩比例(1-100)
SetJPEGQuality
voidSetJPEGQuality(intnQuality)
设置JPEG压缩比例(1-100)
SetJpegProgressive
voidSetJpegProgressive(boolbNeed)
设置JPEGProgressive属性
GetJpegProgressive
boolGetJpegProgressive()
设获取JPEGProgressive属性
SetTiffJPEGQuality
voidSetTiffJPEGQuality(intnQuality)
Tiff使用jpeg压缩方法时JPEG压缩比例(1-100)
GetTiffJPEGQuality
intGetTiffJPEGQuality()
Tiff使用jpeg压缩方法时JPEG压缩比例(1-100)
GetPageMode
PAGE_MODEGetPageMode()
返回PAGE_MODE枚举类型定义如下
获取输出页面保存模式
enumPAGE_MODE
{
PM_MUTI_PAGE=0,//单页保存方式(所有页面保存为一个文件)
PM_ONE_PAGE=1,//多页保存方式(每个页面保存为一个文件)
PM_APPEND_ALL=2//添加所有页面至现在文件中
};
SetPageMode
voidSetPageMode(PAGE_MODEPageMode)
设置输出页面保存模式
SetPdfVer
voidSetPdfVer(intver)
设置pdf兼容版本
0:
PDF1.6
1:
PDF1.5
2:
PDF1.4
3:
PDF1.3
GetPdfVer
intGetPdfVer(void)
SetEmbedFonts
voidSetEmbedFonts(EMBED_FONTSEmbed_type)
PDF字体嵌入方式
enumEMBED_FONTS
{
EMBED_NON_STANDARD_FONTS=0,//嵌入非标准字体
EMBED_NONE_FONTS=1,//不嵌入任何字体
EMBED_ALL_FONTS=2//嵌入所有字体
};
GetEmbedFonts
EMBED_FONTSGetEmbedFonts(void)
PDF字体嵌入方式
SetPdfImageQuality
voidSetPdfImageQuality(intnQuality)
PDF文件图像压缩比例
0:
无损压缩(压缩级别100)
1:
较高质量(压缩级别75)
2:
中等质量(压缩级别50)
3:
较底质量(压缩级别25)
4:
仅保留图像位置(压缩级别5)
5:
不转换图像(压缩级别0)
GetPdfImageQuality
intGetPdfImageQuality()
PDF文件图像压缩比例
SetPdfOpenNeedPassword
voidSetPdfOpenNeedPassword(boolbNeed)
生成的PDF文件是否需要密码
GetPdfOpenNeedPassword
boolGetPdfOpenNeedPassword()
SetPdfOpenPassword
voidSetPdfOpenPassword(LPCTSTRPassword)
打开PDF文件的密码
SaveOption
GetSaveMode
SAVE_MODEGetSaveMode()
enumSAVE_MODE
{
SM_MANU=0,//DefaultOption
SM_AUTO=1,
};
获取输出文件保存模式:
1:
为默认值SM_MANU时,系统将弹出保存文件对话框,提示用户选择文件保存的路径。
2:
SM_AUTO将根据GetImageFilePath和GetImageFileName自动将文件保存。
SetSaveMode
voidSetSaveMode(SAVE_MODESaveMode)
设置输出文件保存模式
GetImageFilePath
LPCTSTRGetImageFilePath()
获取自动保存路径
当为自动保存模式时,系统将ImageFilePath+ ImageFileName 作为自动保存的完整路径
SetImageFilePath
voidSetImageFilePath(LPCTSTRlpszFilePath)
设置自动保存路径
GetImageFileName
LPCTSTRGet
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- COMInterface C+ Library Interface