#209 ps.c move string loop inside if string check

This commit is contained in:
gitlost 2021-02-10 22:37:59 +00:00
parent b3610d3c43
commit 4875a3bcac

View File

@ -420,30 +420,30 @@ INTERNAL int ps_plot(struct zint_symbol *symbol) {
fprintf(feps, "/Helvetica-ISOLatin1 exch definefont pop\n"); fprintf(feps, "/Helvetica-ISOLatin1 exch definefont pop\n");
font = "Helvetica-ISOLatin1"; font = "Helvetica-ISOLatin1";
} }
} do {
while (string) { ps_convert(string->text, ps_string);
ps_convert(string->text, ps_string); fprintf(feps, "matrix currentmatrix\n");
fprintf(feps, "matrix currentmatrix\n"); fprintf(feps, "/%s findfont\n", font);
fprintf(feps, "/%s findfont\n", font); fprintf(feps, "%.2f scalefont setfont\n", string->fsize);
fprintf(feps, "%.2f scalefont setfont\n", string->fsize); fprintf(feps, " 0 0 moveto %.2f %.2f translate 0.00 rotate 0 0 moveto\n", string->x, (symbol->vector->height - string->y));
fprintf(feps, " 0 0 moveto %.2f %.2f translate 0.00 rotate 0 0 moveto\n", string->x, (symbol->vector->height - string->y)); if (string->halign == 0 || string->halign == 2) { /* Need width for middle or right align */
if (string->halign == 0 || string->halign == 2) { /* Need width for middle or right align */ fprintf(feps, " (%s) stringwidth\n", ps_string);
fprintf(feps, " (%s) stringwidth\n", ps_string); }
} if (string->rotation != 0) {
if (string->rotation != 0) { fprintf(feps, "gsave\n");
fprintf(feps, "gsave\n"); fprintf(feps, "%d rotate\n", 360 - string->rotation);
fprintf(feps, "%d rotate\n", 360 - string->rotation); }
} if (string->halign == 0 || string->halign == 2) {
if (string->halign == 0 || string->halign == 2) { fprintf(feps, "pop\n");
fprintf(feps, "pop\n"); fprintf(feps, "%s 0 rmoveto\n", string->halign == 2 ? "neg" : "-2 div");
fprintf(feps, "%s 0 rmoveto\n", string->halign == 2 ? "neg" : "-2 div"); }
} fprintf(feps, " (%s) show\n", ps_string);
fprintf(feps, " (%s) show\n", ps_string); if (string->rotation != 0) {
if (string->rotation != 0) { fprintf(feps, "grestore\n");
fprintf(feps, "grestore\n"); }
} fprintf(feps, "setmatrix\n");
fprintf(feps, "setmatrix\n"); string = string->next;
string = string->next; } while (string);
} }
//fprintf(feps, "\nshowpage\n"); //fprintf(feps, "\nshowpage\n");