2008-07-14 01:15:55 +04:00
/* zint.h - definitions for libzint
libzint - the open source barcode library
2008-11-17 11:47:42 +03:00
Copyright ( C ) 2008 Robin Stuart < robin @ zint . org . uk >
2008-07-14 01:15:55 +04:00
This program is free software ; you can redistribute it and / or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation ; either version 3 of the License , or
( at your option ) any later version .
This program is distributed in the hope that it will be useful ,
but WITHOUT ANY WARRANTY ; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
GNU General Public License for more details .
You should have received a copy of the GNU General Public License along
with this program ; if not , write to the Free Software Foundation , Inc . ,
51 Franklin Street , Fifth Floor , Boston , MA 02110 - 1301 USA .
*/
2008-09-02 23:57:47 +04:00
2008-07-18 18:47:03 +04:00
# ifndef ZINT_H
# define ZINT_H
2008-07-14 01:15:55 +04:00
2008-07-18 18:47:03 +04:00
# ifdef __cplusplus
extern " C " {
# endif /* __cplusplus */
2008-09-18 18:38:45 +04:00
//#define ZINT_VERSION "2.0.A"
2008-07-14 01:15:55 +04:00
struct zint_symbol {
int symbology ;
int height ;
int whitespace_width ;
int border_width ;
int output_options ;
char fgcolour [ 10 ] ;
char bgcolour [ 10 ] ;
char outfile [ 256 ] ;
2008-12-20 18:21:04 +03:00
float scale ;
2008-07-14 01:15:55 +04:00
int option_1 ;
int option_2 ;
2008-07-18 18:47:03 +04:00
int option_3 ;
2009-01-11 12:11:03 +03:00
int input_mode ;
2009-02-19 22:09:57 +03:00
unsigned char text [ 100 ] ;
2008-07-14 01:15:55 +04:00
int rows ;
int width ;
char primary [ 100 ] ;
2008-10-15 22:22:29 +04:00
char encoded_data [ 178 ] [ 1000 ] ;
2008-07-14 01:15:55 +04:00
int row_height [ 155 ] ;
char errtxt [ 100 ] ;
2009-01-03 00:09:16 +03:00
char nullchar ;
2008-07-14 01:15:55 +04:00
} ;
2008-09-16 11:50:43 +04:00
/* Tbarcode 7 codes */
2008-07-14 01:15:55 +04:00
# define BARCODE_CODE11 1
# define BARCODE_C25MATRIX 2
# define BARCODE_C25INTER 3
# define BARCODE_C25IATA 4
# define BARCODE_C25LOGIC 6
# define BARCODE_C25IND 7
# define BARCODE_CODE39 8
# define BARCODE_EXCODE39 9
# define BARCODE_EANX 13
# define BARCODE_EAN128 16
# define BARCODE_CODABAR 18
# define BARCODE_CODE128 20
# define BARCODE_DPLEIT 21
# define BARCODE_DPIDENT 22
# define BARCODE_CODE16K 23
2008-09-19 13:07:59 +04:00
# define BARCODE_CODE49 24
2008-07-14 01:15:55 +04:00
# define BARCODE_CODE93 25
# define BARCODE_FLAT 28
# define BARCODE_RSS14 29
# define BARCODE_RSS_LTD 30
# define BARCODE_RSS_EXP 31
# define BARCODE_TELEPEN 32
# define BARCODE_UPCA 34
# define BARCODE_UPCE 37
# define BARCODE_POSTNET 40
# define BARCODE_MSI_PLESSEY 47
# define BARCODE_FIM 49
# define BARCODE_LOGMARS 50
# define BARCODE_PHARMA 51
# define BARCODE_PZN 52
# define BARCODE_PHARMA_TWO 53
# define BARCODE_PDF417 55
# define BARCODE_PDF417TRUNC 56
# define BARCODE_MAXICODE 57
# define BARCODE_QRCODE 58
# define BARCODE_CODE128B 60
# define BARCODE_AUSPOST 63
# define BARCODE_AUSREPLY 66
# define BARCODE_AUSROUTE 67
# define BARCODE_AUSREDIRECT 68
# define BARCODE_ISBNX 69
# define BARCODE_RM4SCC 70
# define BARCODE_DATAMATRIX 71
2008-09-19 13:07:59 +04:00
# define BARCODE_EAN14 72
2008-09-16 11:50:43 +04:00
# define BARCODE_CODABLOCKF 74
2008-07-14 01:15:55 +04:00
# define BARCODE_NVE18 75
2009-03-14 14:04:52 +03:00
# define BARCODE_JAPANPOST 76
2008-07-14 01:15:55 +04:00
# define BARCODE_KOREAPOST 77
# define BARCODE_RSS14STACK 79
# define BARCODE_RSS14STACK_OMNI 80
# define BARCODE_RSS_EXPSTACK 81
# define BARCODE_PLANET 82
# define BARCODE_MICROPDF417 84
# define BARCODE_ONECODE 85
# define BARCODE_PLESSEY 86
2008-09-16 11:50:43 +04:00
/* Tbarcode 8 codes */
2008-09-19 13:07:59 +04:00
# define BARCODE_TELEPEN_NUM 87
# define BARCODE_ITF14 89
2008-09-16 11:50:43 +04:00
# define BARCODE_KIX 90
# define BARCODE_AZTEC 92
# define BARCODE_DAFT 93
# define BARCODE_MICROQR 97
2009-02-01 01:03:46 +03:00
/* Tbarcode 9 codes */
# define BARCODE_HIBC_128 98
# define BARCODE_HIBC_39 99
# define BARCODE_HIBC_DM 102
# define BARCODE_HIBC_QR 104
# define BARCODE_HIBC_PDF 106
# define BARCODE_HIBC_MICPDF 108
# define BARCODE_HIBC_BLOCKF 110
2008-09-16 11:50:43 +04:00
/* Zint specific */
2008-11-09 13:06:05 +03:00
# define BARCODE_AZRUNE 128
2008-09-16 11:50:43 +04:00
# define BARCODE_CODE32 129
# define BARCODE_EANX_CC 130
# define BARCODE_EAN128_CC 131
# define BARCODE_RSS14_CC 132
# define BARCODE_RSS_LTD_CC 133
# define BARCODE_RSS_EXP_CC 134
# define BARCODE_UPCA_CC 135
# define BARCODE_UPCE_CC 136
# define BARCODE_RSS14STACK_CC 137
# define BARCODE_RSS14_OMNI_CC 138
# define BARCODE_RSS_EXPSTACK_CC 139
2009-05-16 18:19:43 +04:00
# define BARCODE_CHANNEL 140
2008-07-14 01:15:55 +04:00
# define BARCODE_NO_ASCII 1
# define BARCODE_BIND 2
# define BARCODE_BOX 4
2008-12-21 15:17:14 +03:00
# define BARCODE_STDOUT 8
2008-07-14 01:15:55 +04:00
2009-01-11 12:11:03 +03:00
# define DATA_MODE 0
# define UNICODE_MODE 1
# define GS1_MODE 2
# define KANJI_MODE 3
2009-02-22 17:13:32 +03:00
# define SJIS_MODE 4
2009-01-11 12:11:03 +03:00
2008-07-14 01:15:55 +04:00
# define WARN_INVALID_OPTION 2
# define ERROR_TOO_LONG 5
# define ERROR_INVALID_DATA 6
# define ERROR_INVALID_CHECK 7
# define ERROR_INVALID_OPTION 8
# define ERROR_ENCODING_PROBLEM 9
# define ERROR_FILE_ACCESS 10
# define ERROR_MEMORY 11
extern struct zint_symbol * ZBarcode_Create ( ) ;
extern int ZBarcode_Delete ( struct zint_symbol * symbol ) ;
extern int ZBarcode_Encode ( struct zint_symbol * symbol , unsigned char * input ) ;
extern int ZBarcode_Print ( struct zint_symbol * symbol ) ;
extern int ZBarcode_Encode_and_Print ( struct zint_symbol * symbol , unsigned char * input ) ;
2008-09-30 19:05:53 +04:00
extern int ZBarcode_Encode_and_Print_Rotated ( struct zint_symbol * symbol , unsigned char * input , int rotate_angle ) ;
2008-07-18 18:47:03 +04:00
# ifdef __cplusplus
}
# endif /* __cplusplus */
# endif