void _ZINT(int n, unsigned char *s, C_LONGINT &Param2, C_LONGINT &Param3, C_TEXT &Param4, ARRAY_LONGINT &Param5, C_TEXT &returnValue) { zint_symbol *sym = ZBarcode_Create(); if(sym){ sym->input_mode = UNICODE_MODE; sym->symbology = Param2.getIntValue(); if(Param5.getSize() > 1) sym->option_1 = Param5.getIntValueAtIndex(1); if(Param5.getSize() > 2) sym->option_2 = Param5.getIntValueAtIndex(2); if(Param5.getSize() > 3) sym->option_3 = Param5.getIntValueAtIndex(3); sym->show_hrt = 0; //no text #ifdef DEBUG sym->output_options = BARCODE_STDOUT; strncpy(sym->outfile, "dummy.txt", 10); #endif int err = ZBarcode_Encode(sym, s, n); if(!err){ #ifdef DEBUG err = ZBarcode_Print(sym, 0); #endif err = ZBarcode_Buffer(sym, 0); if(!err){ switch (Param3.getIntValue()) { case 1: _convertToSVG(sym, returnValue); break; default: _convertToText(sym, returnValue); break; } } }else{ CUTF8String err = (const uint8_t *)sym->errtxt; Param4.setUTF8String(&err); } ZBarcode_Delete(sym); } }
int ZBarcode_Encode_File_and_Buffer(struct zint_symbol *symbol, char *filename, int rotate_angle) { int error_number; error_number = 0; error_number = ZBarcode_Encode_File(symbol, filename); if(error_number != 0) { return error_number; } return ZBarcode_Buffer(symbol, rotate_angle); }
int ZBarcode_Encode_and_Buffer(struct zint_symbol *symbol, uint8_t *input, int length, int rotate_angle) { int error_number; error_number = 0; error_number = ZBarcode_Encode(symbol, input, length); if(error_number != 0) { return error_number; } error_number = ZBarcode_Buffer(symbol, rotate_angle); return error_number; }