summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Rasmussen <sebras@hotmail.com>2010-12-15 21:43:23 +0000
committerSebastian Rasmussen <sebras@hotmail.com>2010-12-15 21:43:23 +0000
commite34d93101ea2af05083148496929e0d7c2dc470b (patch)
tree58397e073910eb1d317b3fd1ef1f0d0efda46da8
parent74b88c6c5c3050bfe45fe25e059ba99b2f84588b (diff)
downloadmupdf-e34d93101ea2af05083148496929e0d7c2dc470b.tar.xz
Add searchable keywords to code for content stream interpreter.
-rw-r--r--mupdf/pdf_interpret.c137
1 files changed, 68 insertions, 69 deletions
diff --git a/mupdf/pdf_interpret.c b/mupdf/pdf_interpret.c
index 425b009f..afcc7c50 100644
--- a/mupdf/pdf_interpret.c
+++ b/mupdf/pdf_interpret.c
@@ -405,24 +405,24 @@ pdf_runkeyword(pdf_csi *csi, fz_obj *rdb, char *buf)
case 'B':
switch(buf[1])
{
- case 0:
+ case 0: /* "B" */
if (csi->top < 0)
goto syntaxerror;
pdf_showpath(csi, 0, 1, 1, 0);
break;
- case 'D':
+ case 'D': /* "BDC" */
if ((buf[2] != 'C') || (buf[3] != 0))
goto defaultcase;
if (csi->top < 2)
goto syntaxerror;
break;
- case 'M':
+ case 'M': /* "BMC" */
if ((buf[2] != 'C') || (buf[3] != 0))
goto defaultcase;
if (csi->top < 1)
goto syntaxerror;
break;
- case 'T':
+ case 'T': /* "BT" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 0)
@@ -430,14 +430,14 @@ pdf_runkeyword(pdf_csi *csi, fz_obj *rdb, char *buf)
csi->tm = fz_identity;
csi->tlm = fz_identity;
break;
- case 'X':
+ case 'X': /* "BX" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 0)
goto syntaxerror;
csi->xbalance ++;
break;
- case '*':
+ case '*': /* "B*" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 0)
@@ -449,7 +449,7 @@ pdf_runkeyword(pdf_csi *csi, fz_obj *rdb, char *buf)
}
break;
- case 'C':
+ case 'C': /* "CS" */
if ((buf[1] == 'S') && (buf[2] == 0))
{
fz_colorspace *cs;
@@ -505,13 +505,13 @@ Lsetcolorspace:
case 'D':
switch (buf[1])
{
- case 'P':
+ case 'P': /* "Dp" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 2)
goto syntaxerror;
break;
- case 'o':
+ case 'o': /* "Do" */
{
fz_obj *dict;
fz_obj *obj;
@@ -588,20 +588,20 @@ Lsetcolorspace:
case 'E':
switch (buf[1])
{
- case 'X':
+ case 'X': /* "EX" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 0)
goto syntaxerror;
csi->xbalance --;
break;
- case 'M':
+ case 'M': /* "EW" */
if ((buf[2] != 'C') || (buf[3] != 0))
goto defaultcase;
if (csi->top < 0)
goto syntaxerror;
break;
- case 'T':
+ case 'T': /* "ET" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 0)
@@ -614,7 +614,7 @@ Lsetcolorspace:
}
break;
- case 'F':
+ case 'F': /* "F" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 0)
@@ -622,7 +622,7 @@ Lsetcolorspace:
pdf_showpath(csi, 0, 1, 0, 0);
break;
- case 'G':
+ case 'G': /* "G" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 1)
@@ -633,7 +633,7 @@ Lsetcolorspace:
pdf_setcolor(csi, PDF_MSTROKE, v);
break;
- case 'J':
+ case 'J': /* "J" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 1)
@@ -641,7 +641,7 @@ Lsetcolorspace:
gstate->strokestate.linecap = fz_toint(csi->stack[0]);
break;
- case 'K':
+ case 'K': /* "K" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 4)
@@ -659,12 +659,12 @@ Lsetcolorspace:
case 'M':
switch (buf[1])
{
- case 0:
+ case 0: /* "M" */
if (csi->top < 1)
goto syntaxerror;
gstate->strokestate.miterlimit = fz_toreal(csi->stack[0]);
break;
- case 'P':
+ case 'P': /* "Mp" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 1)
@@ -675,7 +675,7 @@ Lsetcolorspace:
}
break;
- case 'Q':
+ case 'Q': /* "Q" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 0)
@@ -683,7 +683,7 @@ Lsetcolorspace:
pdf_grestore(csi);
break;
- case 'R':
+ case 'R': /* "RG" */
if ((buf[1] != 'G') || (buf[2] != 0))
goto defaultcase;
if (csi->top < 3)
@@ -700,14 +700,13 @@ Lsetcolorspace:
case 'S':
switch (buf[1])
{
- case 0:
+ case 0: /* "S" */
if (csi->top < 0)
goto syntaxerror;
pdf_showpath(csi, 0, 0, 1, 0);
break;
- case 'C':
+ case 'C': /* "SC" or "SCN" */
{
- /* SC or SCN */
pdf_material *mat;
fz_obj *patterntype;
fz_obj *dict;
@@ -794,21 +793,21 @@ Lsetcolor:
case 'T':
switch (buf[1])
{
- case 'c':
+ case 'c': /* "Tc" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 1)
goto syntaxerror;
gstate->charspace = fz_toreal(csi->stack[0]);
break;
- case 'w':
+ case 'w': /* "Tw" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 1)
goto syntaxerror;
gstate->wordspace = fz_toreal(csi->stack[0]);
break;
- case 'z':
+ case 'z': /* "Tz" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 1)
@@ -817,14 +816,14 @@ Lsetcolor:
pdf_flushtext(csi);
gstate->scale = a;
break;
- case 'L':
+ case 'L': /* "TL" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 1)
goto syntaxerror;
gstate->leading = fz_toreal(csi->stack[0]);
break;
- case 'f':
+ case 'f': /* "Tf" */
{
fz_obj *dict;
fz_obj *obj;
@@ -856,21 +855,21 @@ Lsetcolor:
break;
}
- case 'r':
+ case 'r': /* "Tr" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 1)
goto syntaxerror;
gstate->render = fz_toint(csi->stack[0]);
break;
- case 's':
+ case 's': /* "Ts" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 1)
goto syntaxerror;
gstate->rise = fz_toreal(csi->stack[0]);
break;
- case 'd':
+ case 'd': /* "Td" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 2)
@@ -879,7 +878,7 @@ Lsetcolor:
csi->tlm = fz_concat(m, csi->tlm);
csi->tm = csi->tlm;
break;
- case 'D':
+ case 'D': /* "TD" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 2)
@@ -889,7 +888,7 @@ Lsetcolor:
csi->tlm = fz_concat(m, csi->tlm);
csi->tm = csi->tlm;
break;
- case 'm':
+ case 'm': /* "Tm" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 6)
@@ -907,7 +906,7 @@ Lsetcolor:
csi->tm = m;
csi->tlm = csi->tm;
break;
- case '*':
+ case '*': /* "T*" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 0)
@@ -916,14 +915,14 @@ Lsetcolor:
csi->tlm = fz_concat(m, csi->tlm);
csi->tm = csi->tlm;
break;
- case 'j':
+ case 'j': /* "Tj" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 1)
goto syntaxerror;
pdf_showtext(csi, csi->stack[0]);
break;
- case 'J':
+ case 'J': /* "TJ" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 1)
@@ -938,13 +937,13 @@ Lsetcolor:
case 'W':
switch (buf[1])
{
- case 0:
+ case 0: /* "W" */
if (csi->top < 0)
goto syntaxerror;
csi->clip = 1;
csi->clipevenodd = 0;
break;
- case '*':
+ case '*': /* "W*" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 0)
@@ -960,12 +959,12 @@ Lsetcolor:
case 'b':
switch (buf[1])
{
- case 0:
+ case 0: /* "b" */
if (csi->top < 0)
goto syntaxerror;
pdf_showpath(csi, 1, 1, 1, 0);
break;
- case '*':
+ case '*': /* "b*" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 0)
@@ -980,7 +979,7 @@ Lsetcolor:
case 'c':
switch (buf[1])
{
- case 0:
+ case 0: /* "c" */
if (csi->top < 6)
goto syntaxerror;
a = fz_toreal(csi->stack[0]);
@@ -991,7 +990,7 @@ Lsetcolor:
f = fz_toreal(csi->stack[5]);
fz_curveto(csi->path, a, b, c, d, e, f);
break;
- case 'm':
+ case 'm': /* "cm" */
{
if (buf[2] != 0)
goto defaultcase;
@@ -1008,7 +1007,7 @@ Lsetcolor:
gstate->ctm = fz_concat(m, gstate->ctm);
break;
}
- case 's':
+ case 's': /* "cs" */
if (buf[2] != 0)
goto defaultcase;
what = PDF_MFILL;
@@ -1021,7 +1020,7 @@ Lsetcolor:
case 'd':
switch (buf[1])
{
- case 0:
+ case 0: /* "d" */
{
fz_obj *array;
if (csi->top < 2)
@@ -1035,8 +1034,8 @@ Lsetcolor:
gstate->strokestate.dashphase = fz_toreal(csi->stack[1]);
break;
}
- case '0':
- case '1':
+ case '0': /* "d0" */
+ case '1': /* "d1" */
if (buf[2] != 0)
goto defaultcase;
/* we don't care about setcharwidth and setcachedevice */
@@ -1049,12 +1048,12 @@ Lsetcolor:
case 'f':
switch (buf[1])
{
- case 0:
+ case 0: /* "f" */
if (csi->top < 0)
goto syntaxerror;
pdf_showpath(csi, 0, 1, 0, 0);
break;
- case '*':
+ case '*': /* "f*" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 0)
@@ -1069,7 +1068,7 @@ Lsetcolor:
case 'g':
switch (buf[1])
{
- case 0:
+ case 0: /* "g" */
if (csi->top < 1)
goto syntaxerror;
@@ -1077,7 +1076,7 @@ Lsetcolor:
pdf_setcolorspace(csi, PDF_MFILL, fz_devicegray);
pdf_setcolor(csi, PDF_MFILL, v);
break;
- case 's':
+ case 's': /* "gs" */
{
fz_obj *dict;
fz_obj *obj;
@@ -1105,7 +1104,7 @@ Lsetcolor:
}
break;
- case 'h':
+ case 'h': /* "h" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 0)
@@ -1113,7 +1112,7 @@ Lsetcolor:
fz_closepath(csi->path);
break;
- case 'i':
+ case 'i': /* "i" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 1)
@@ -1121,7 +1120,7 @@ Lsetcolor:
/* flatness */
break;
- case 'j':
+ case 'j': /* "j" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 1)
@@ -1129,7 +1128,7 @@ Lsetcolor:
gstate->strokestate.linejoin = fz_toint(csi->stack[0]);
break;
- case 'k':
+ case 'k': /* "k" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 4)
@@ -1144,7 +1143,7 @@ Lsetcolor:
pdf_setcolor(csi, PDF_MFILL, v);
break;
- case 'l':
+ case 'l': /* "l" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 2)
@@ -1154,7 +1153,7 @@ Lsetcolor:
fz_lineto(csi->path, a, b);
break;
- case 'm':
+ case 'm': /* "m" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 2)
@@ -1164,7 +1163,7 @@ Lsetcolor:
fz_moveto(csi->path, a, b);
break;
- case 'n':
+ case 'n': /* "n" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 0)
@@ -1172,7 +1171,7 @@ Lsetcolor:
pdf_showpath(csi, 0, 0, 0, csi->clipevenodd);
break;
- case 'q':
+ case 'q': /* "q" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 0)
@@ -1183,13 +1182,13 @@ Lsetcolor:
case 'r':
switch (buf[1])
{
- case 'i':
+ case 'i': /* "ri" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 1)
goto syntaxerror;
break;
- case 'e':
+ case 'e': /* "re" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 4)
@@ -1206,7 +1205,7 @@ Lsetcolor:
fz_lineto(csi->path, x, y + h);
fz_closepath(csi->path);
break;
- case 'g':
+ case 'g': /* "rg" */
if (buf[2] != 0)
goto defaultcase;
if (csi->top < 3)
@@ -1227,17 +1226,17 @@ Lsetcolor:
case 's':
switch (buf[1])
{
- case 0:
+ case 0: /* "s" */
if (csi->top < 0)
goto syntaxerror;
pdf_showpath(csi, 1, 0, 1, 0);
break;
- case 'c':
+ case 'c': /* "sc" or "scn" */
if ((buf[2] != 0) && ((buf[2] != 'n') || (buf[3] != 0)))
goto defaultcase;
what = PDF_MFILL;
goto Lsetcolor;
- case 'h':
+ case 'h': /* "sh" */
{
fz_obj *dict;
fz_obj *obj;
@@ -1271,7 +1270,7 @@ Lsetcolor:
}
break;
- case 'v':
+ case 'v': /* "v" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 4)
@@ -1283,7 +1282,7 @@ Lsetcolor:
fz_curvetov(csi->path, a, b, c, d);
break;
- case 'w':
+ case 'w': /* "w" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 1)
@@ -1291,7 +1290,7 @@ Lsetcolor:
gstate->strokestate.linewidth = fz_toreal(csi->stack[0]);
break;
- case 'y':
+ case 'y': /* "y" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 4)
@@ -1303,7 +1302,7 @@ Lsetcolor:
fz_curvetoy(csi->path, a, b, c, d);
break;
- case '\'':
+ case '\'': /* "'" */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 1)
@@ -1316,7 +1315,7 @@ Lsetcolor:
pdf_showtext(csi, csi->stack[0]);
break;
- case '"':
+ case '"': /* """ */
if (buf[1] != 0)
goto defaultcase;
if (csi->top < 3)