www.pudn.com > stm32-printer.rar > PrinterDrv.h, change:2014-10-24,size:7161b


#ifndef	__CAPPPRINTDRV_H 
#define	__CAPPPRINTDRV_H 
 
#ifdef   _OWN_CAPPPRINTDRV 
#define  CAPPPRINTDRV_EXT 
#else 
#define  CAPPPRINTDRV_EXT  extern 
#endif 
 
//----------------------------------------------- 
//头文件声明 
//----------------------------------------------- 
 
//----------------------------------------------- 
//宏声明 
//----------------------------------------------- 
//打印模式 
#define CHAR_FONT_12_24		0x00	//字符字型A (12*24) 
#define CHAR_FONT_9_17		0x01	//字符字型B (9*17) 
#define EMPHASIS_MODE_ON	0x08	//加粗模式 
#define DOUBLE_HEIGHT_MODE	0x10	//倍高模式 
#define DOUBLE_WIDTH_MODE	0x20	//倍宽模式 
#define UNDERLINE_MODE		0x80	//下划线 
 
//放大字符 
#define HEIGHT_1TIMES		0x00	//1倍高度 
#define HEIGHT_2TIMES		0x01	//2倍高度 
#define HEIGHT_3TIMES		0x02	//3倍高度 
#define HEIGHT_4TIMES		0x03	//4倍高度 
#define HEIGHT_5TIMES		0x04	//5倍高度 
#define HEIGHT_6TIMES		0x05	//6倍高度 
#define HEIGHT_7TIMES		0x06	//7倍高度 
#define HEIGHT_8TIMES		0x07	//8倍高度 
#define WIDTH_1TIMES		0x00	//1倍宽度 
#define WIDTH_2TIMES		0x10	//2倍宽度 
 
//字符字体 
#define FONT_12_24			0x00	//西文字符(半宽)字体(12×24)  
#define FONT_8_16			0x01	//西文字符(半宽)字体(8×16) 
#define FONT_24_24			16		//简体汉字字符字体24×24   
#define FONT_16_16			17		//简体汉字字符字体16×16 
 
//设置/取消下划线 
#define UNDER_LINE_MODE_CANCEL		0x00	//解除下划线模式 
#define UNDER_LINE_MODE_1POINT		0x01	//设定下划线模式(1 点粗) 
#define UNDER_LINE_MODE_2POINT		0x02	//设定下划线模式(2 点粗)   
 
//设定/解除粗体打印  
#define	BOLD_PRINT_MODE_CANCEL	0x00		//解除重叠打印 
#define	BOLD_PRINT_MODE_SET		0x01		//设定重叠打印 
 
//设定/解除重叠打印 
#define	OVERLAP_MODE_CANCEL		0x00		//解除粗体打印 
#define	OVERLAP_MODE_SET		0x01		//设定粗体打印 
 
//设定/解除反白打印 
#define	INVERSE_MODE_CANCEL		0x00		//解除反白打印 
#define	INVERSE_MODE_SET		0x01		//设定反白打印 
 
//设定/取消字符旋转  
#define REVOLVE_MODE_CANCEL		0x00   				//解除旋转模式   
#define REVOLVE_MODE_90_DEGREE_CLOCKWISE 	0x01   	//设置90°顺时针旋转模式  
 
//选择国际字符集 
#define CHAR_SETS_USA 	0  	//美国  
#define CHAR_SETS_FRA 	1  	//法国  
#define CHAR_SETS_GER 	2  	//德国  
#define CHAR_SETS_GBR	3  	//英国  
#define CHAR_SETS_DEN1	4  	//丹麦   
#define CHAR_SETS_SWE	5  	//瑞典  
#define CHAR_SETS_ITA	6  	//意大利  
#define CHAR_SETS_ESP1	7  	//西班牙   
#define CHAR_SETS_JPN	8  	//日本  
#define CHAR_SETS_NOR	9  	//挪威  
#define CHAR_SETS_DEN2	10  //丹麦   
#define CHAR_SETS_ESP2	11  //西班牙    
#define CHAR_SETS_LATIN	12  //拉丁美洲  
#define CHAR_SETS_KOR	13  //韩国 
 
//设置/解除颠倒打印模式  
#define	REVERSE_PRINT_MODE_CANCEL	0x00		//解除颠倒打印模式 
#define	REVERSE_PRINT_MODE_SET		0x01		//设定颠倒打印模式 
 
//对齐方式 
#define	DT_LEFT		0 
#define	DT_CENTER	1 
#define	DT_RIGHT	2 
 
//选择位图的模式 
#define	BIP_MAP_MODE_8HEIGHT_2WIDTH		0		//8点高度,两倍宽 
#define	BIP_MAP_MODE_8HEIGHT_1WIDTH		1		//8点高度,单倍宽 
#define	BIP_MAP_MODE_24HEIGHT_2WIDTH	32		//24点高度,两倍宽 
#define	BIP_MAP_MODE_24HEIGHT_1WIDTH	33		//24点高度,单倍宽  
 
//位图打印模式  
#define BIP_MAP_MODE_NORMAL					0x00	//普通  
#define BIP_MAP_MODE_DOUBLE_WIDTH			0x01	//倍宽  
#define BIP_MAP_MODE_DOUBLE_HEIGHT			0x02	//倍高   
#define BIP_MAP_MODE_DOUBLE_WIDTH_HEIGHT	0x03	//倍宽倍高   
 
//选择条码可识读字符的打印位置 
#define	BAR_CODE_DENTIFY_CHAR_POS_NO_PRINT	0x00	//不打印 
#define	BAR_CODE_DENTIFY_CHAR_POS_ABOVE		0x01	//条形码上方 
#define	BAR_CODE_DENTIFY_CHAR_POS_BELOW		0x02	//条形码下方 
 
//选择条码识读字符字体  
#define	BAR_CODE_DENTIFY_CHAR_FORM_A_12x24 	0x00 
#define	BAR_CODE_DENTIFY_CHAR_FORM_B_8x16 	0x01 
//----------------------------------------------- 
//结构体声明 
//----------------------------------------------- 
 
//----------------------------------------------- 
//常量声明 
//----------------------------------------------- 
 
 
//----------------------------------------------- 
//变量声明 
//----------------------------------------------- 
 
//----------------------------------------------- 
//函数声明 
//----------------------------------------------- 
 
// 打印机初始化 
void InitPrinter(void); 
 
// 打印并走纸到下页首 
void PrintAndNewPage(void); 
 
// 打印并换行  
void PrintAndNewLine(void); 
 
// 执行测试页打印 
void PrintTest(void); 
 
// 打印并进纸  
void PrintAndForward(u8 dat); 
 
// 打印并进纸 n行 
void PrintAndForwardNLine(u8 nLine); 
 
// 移动打印位置到下一个水平制表位置 
void MoveToNextTablePos(void); 
 
//选择打印模式 
void SetPrintMode(u8 sMode); 
 
void CancelPrintMode(u8 cMode); 
 
//放大字符 
void EnlargeFont(u8 value); 
	 
//设置字符大小 
void SetFontSize(u8 cWidth, u8 cHeight); 
 
//[名称]选择字符字体 
void SelectFont(u8 fontType); 
 
// [名称]  设置/取消下划线   
void SetCancelUnderLineMode(u8 sMode); 
 
// [名称]  设定/解除粗体打印   
void SetCancelBold(u8 sta); 
 
// [名称]  设定/解除重叠打印   
void SetCancelOverlapping(u8 sta); 
 
// [名称]  设定/解除反白打印   
void SetCancelInverse(u8 sta); 
 
// [名称]  设定/取消字符旋转  
void SetCancelRevolve(u8 sta); 
 
// [名称]  设定汉字打印模式  
void SetChinesePrintMode(void); 
 
// [名称]  设置汉字ASCII字符混合打印模式  
void SetChiAsciiMixPrintMode(void); 
 
// [名称]  选择国际字符集  
void SelInternationalCharacterSets(u8 type); 
 
// [名称]  选择字符代码页  
void SelCharacterCodePage(u8 type); 
 
// [名称]  设置/解除颠倒打印模式  
void SetCancelReversePrintMode(u8 sta); 
 
// [名称] 设置绝对打印位置   
void SetAbsolutePosition(u8 nL, u8 nH); 
 
// [名称] 设置水平制表位   
void SetHerTabPos(int n1, ...); 
 
// [名称] 选择缺省行间距   
void SelDefaultRowSpace(void); 
 
// [名称] 设置行间距   
void SetRowSpace(u8 value); 
 
// [名称] 设置字符间距   
void SetCharSpace(u8 value); 
 
// [名称]  选择对齐方式   
void SetAlgin(u8 cFormat); 
 
// [名称] 设置左边距   
void SetLeftSpace(u8 nL, u8 nH); 
 
// [名称]  打印黑白位图   
void PrintBlackWhiteBitMap(u8 mMode, u8 horDotL, u8 horDotH, char *pBitMapStr, u8 cLen); 
 
// [名称]  定义下传位图   
void DefineDownloadBitMap(u8 x, u8 y, char *pBitMapStr, u8 cLen); 
 
// [名称]  打印下传位图   
void PrintDownloadBitMap(u8 sMode); 
 
// [名称] 打印预存储位图   
void PrintPrestoreBitMap(u8 bitMapNum); 
 
// [名称] 设置条形码高度   
void SetBarcodeHeight(u8 value); 
 
// [名称] 设置条形码宽度   
void SetBarcodeWidth(u8 value); 
 
// [名称]  选择条码可识读字符的打印位置   
void SelBarcodeIdentifyCharPos(u8 value); 
 
// [名称]  选择条码识读字符字体   
void SelBarcodeIdentifyCharForm(u8 value); 
 
//设置条码字符位置和字体 
void SetBarCodeHRI(u8 cPosition, u8 cFont); 
 
//设置条码大小 
void SetBarCodeSize(u8 cWidth, u8 cHeight); 
 
//打印条码 
void PrintBarCode128(char *pStr, u8 cLen); 
 
//打印条码 
void PrintBarCode39(char *pStr, u8 cLen); 
 
// [名称]  选择切纸模式并切纸  
void GoAndCutPaper(u8 cMM); 
 
// [名称]  全切  
void FullCutPage(void); 
 
// [名称]  半切  
void HalfCutPage(void); 
 
//打印字符串(自动回车) 
void PrintString(char *pStr, u8 cLen, u8 sMode); 
 
//实时状态传送 
u8 GetPrinterStatus(u8 cType); 
 
//传送打印纸传感器状态  
u8 GetSenserStatus(u8 cType); 
 
void App_PrinterTest(void); 
 
//----------------------------------------------- 
#endif