diff --git a/backend/emf.c b/backend/emf.c index 5d4c5bc5..0e971434 100644 --- a/backend/emf.c +++ b/backend/emf.c @@ -46,7 +46,7 @@ int colour_to_red(int colour) { int return_val = 0; switch(colour) { - case 0: // White + case 8: // White case 3: // Magenta case 4: // Red case 5: // Yellow @@ -61,7 +61,7 @@ int colour_to_green(int colour) { int return_val = 0; switch(colour) { - case 0: // White + case 8: // White case 1: // Cyan case 5: // Yellow case 6: // Green @@ -76,7 +76,7 @@ int colour_to_blue(int colour) { int return_val = 0; switch(colour) { - case 0: // White + case 8: // White case 1: // Cyan case 2: // Blue case 3: // Magenta @@ -617,15 +617,18 @@ INTERNAL int emf_plot(struct zint_symbol *symbol) { } if (symbol->symbology == BARCODE_ULTRA) { + printf("Using Ultra draw\n"); for(i = 0; i < 8; i++) { if (rectangle_count_bycolour[i]) { fwrite(&emr_selectobject_colour[i], sizeof (emr_selectobject_t), 1, emf_file); + printf("colour %d\n", i); rect = symbol->vector->rectangles; this_rectangle = 0; while (rect) { if (rect->colour == i) { fwrite(&rectangle[this_rectangle], sizeof (emr_rectangle_t), 1, emf_file); + printf("rect\n"); } this_rectangle++; rect = rect->next; diff --git a/backend/ps.c b/backend/ps.c index 390c306c..cab9c0cf 100644 --- a/backend/ps.c +++ b/backend/ps.c @@ -43,9 +43,6 @@ void colour_to_pscolor(int option, int colour, char* output) { if ((option & CMYK_COLOUR) == 0) { // Use RGB colour space switch(colour) { - case 0: // White - strcat(output, "1.00 1.00 1.00"); - break; case 1: // Cyan strcat(output, "0.00 1.00 1.00"); break; @@ -64,6 +61,9 @@ void colour_to_pscolor(int option, int colour, char* output) { case 6: // Green strcat(output, "0.00 1.00 0.00"); break; + case 8: // White + strcat(output, "1.00 1.00 1.00"); + break; default: // Black strcat(output, "0.00 0.00 0.00"); break; @@ -72,9 +72,6 @@ void colour_to_pscolor(int option, int colour, char* output) { } else { // Use CMYK colour space switch(colour) { - case 0: // White - strcat(output, "0.00 0.00 0.00 0.00"); - break; case 1: // Cyan strcat(output, "1.00 0.00 0.00 0.00"); break; @@ -93,6 +90,9 @@ void colour_to_pscolor(int option, int colour, char* output) { case 6: // Green strcat(output, "1.00 0.00 1.00 0.00"); break; + case 8: // White + strcat(output, "0.00 0.00 0.00 0.00"); + break; default: // Black strcat(output, "0.00 0.00 0.00 1.00"); break; @@ -239,7 +239,7 @@ INTERNAL int ps_plot(struct zint_symbol *symbol) { // Rectangles if (symbol->symbology == BARCODE_ULTRA) { - for (colour_index = 0; colour_index <= 7; colour_index++) { + for (colour_index = 0; colour_index <= 8; colour_index++) { colour_rect_counter = 0; rect = symbol->vector->rectangles; while (rect) { diff --git a/backend/raster.c b/backend/raster.c index 08ca5704..c961ea83 100644 --- a/backend/raster.c +++ b/backend/raster.c @@ -57,7 +57,7 @@ INTERNAL int pcx_pixel_plot(struct zint_symbol *symbol, char *pixelbuf); INTERNAL int gif_pixel_plot(struct zint_symbol *symbol, char *pixelbuf); INTERNAL int tif_pixel_plot(struct zint_symbol *symbol, char *pixelbuf); -static const char ultra_colour[] = "WCBMRYGK"; +static const char ultra_colour[] = "0CBMRYGKW"; static int buffer_plot(struct zint_symbol *symbol, char *pixelbuf) { /* Place pixelbuffer into symbol */ diff --git a/backend/svg.c b/backend/svg.c index 498f7222..bb42ac6c 100644 --- a/backend/svg.c +++ b/backend/svg.c @@ -43,9 +43,6 @@ void pick_colour(int colour, char colour_code[]) { switch(colour) { - case 0: // White - strcpy(colour_code, "ffffff"); - break; case 1: // Cyan strcpy(colour_code, "00ffff"); break; @@ -64,6 +61,9 @@ void pick_colour(int colour, char colour_code[]) { case 6: // Green strcpy(colour_code, "00ff00"); break; + case 8: // White + strcpy(colour_code, "ffffff"); + break; default: // Black strcpy(colour_code, "000000"); break; diff --git a/backend/ultra.c b/backend/ultra.c index 58d0da82..8f58181f 100644 --- a/backend/ultra.c +++ b/backend/ultra.c @@ -55,7 +55,7 @@ static const char ultra_c43_set1[] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 .,%"; static const char ultra_c43_set2[] = "abcdefghijklmnopqrstuvwxyz:/?#[]@=_~!.,-"; static const char ultra_c43_set3[] = "{}`()\"+'<>|$;&\\^*"; static const char ultra_digit[] = "0123456789,/"; -static const char ultra_colour[] = "WCBMRYGK"; +static const char ultra_colour[] = "0CBMRYGKW"; //static const int ultra_maxsize[] = {34, 78, 158, 282}; // According to Table 1 static const int ultra_maxsize[] = {34, 81, 158, 282}; // Adjusted to allow 79-81 codeword range in 3-row symbols (only 1 secondary vertical clock track, not 2, so 3 extra) diff --git a/backend_qt/qzint.cpp b/backend_qt/qzint.cpp index b69590d7..d81b89b9 100644 --- a/backend_qt/qzint.cpp +++ b/backend_qt/qzint.cpp @@ -345,9 +345,6 @@ namespace Zint { painter.fillRect(rect->x, rect->y, rect->width, rect->height, QBrush(m_fgColor)); } else { switch(rect->colour) { - case 0: // White - painter.fillRect(rect->x, rect->y, rect->width, rect->height, QBrush(Qt::white)); - break; case 1: // Cyan painter.fillRect(rect->x, rect->y, rect->width, rect->height, QBrush(Qt::cyan)); break; @@ -365,7 +362,10 @@ namespace Zint { break; case 6: // Green painter.fillRect(rect->x, rect->y, rect->width, rect->height, QBrush(Qt::green)); - break; + break; + case 8: // White + painter.fillRect(rect->x, rect->y, rect->width, rect->height, QBrush(Qt::white)); + break; default: painter.fillRect(rect->x, rect->y, rect->width, rect->height, QBrush(Qt::black)); break;