summaryrefslogtreecommitdiff
path: root/source/pdf/js/util.js.h
diff options
context:
space:
mode:
Diffstat (limited to 'source/pdf/js/util.js.h')
-rw-r--r--source/pdf/js/util.js.h184
1 files changed, 150 insertions, 34 deletions
diff --git a/source/pdf/js/util.js.h b/source/pdf/js/util.js.h
index 3f9a8884..a4e5124f 100644
--- a/source/pdf/js/util.js.h
+++ b/source/pdf/js/util.js.h
@@ -59,21 +59,6 @@
"'HH:MM:ss',\n"
"'h:MM:ss tt'\n"
"],\n"
-"\n"
-"padZeros: function (num, places) {\n"
-"var s = String(num)\n"
-"while (s.length < places)\n"
-"s = '0' + s;\n"
-"return s;\n"
-"},\n"
-"\n"
-"convertCase: function (str, cmd) {\n"
-"switch (cmd) {\n"
-"case '>': return str.toUpperCase();\n"
-"case '<': return str.toLowerCase();\n"
-"default: return str;\n"
-"}\n"
-"},\n"
"};\n"
"\n"
"\n"
@@ -85,31 +70,149 @@
"};\n"
"\n"
"var border = {\n"
-"s: 'Solid',\n"
-"d: 'Dashed',\n"
-"b: 'Beveled',\n"
-"i: 'Inset',\n"
-"u: 'Underline',\n"
+"b: 'beveled',\n"
+"d: 'dashed',\n"
+"i: 'inset',\n"
+"s: 'solid',\n"
+"u: 'underline',\n"
"};\n"
"\n"
"var color = {\n"
"transparent: [ 'T' ],\n"
"black: [ 'G', 0 ],\n"
"white: [ 'G', 1 ],\n"
+"gray: [ 'G', 0.5 ],\n"
+"ltGray: [ 'G', 0.75 ],\n"
+"dkGray: [ 'G', 0.25 ],\n"
"red: [ 'RGB', 1, 0, 0 ],\n"
"green: [ 'RGB', 0, 1, 0 ],\n"
"blue: [ 'RGB', 0, 0, 1 ],\n"
"cyan: [ 'CMYK', 1, 0, 0, 0 ],\n"
"magenta: [ 'CMYK', 0, 1, 0, 0 ],\n"
"yellow: [ 'CMYK', 0, 0, 1, 0 ],\n"
-"dkGray: [ 'G', 0.25 ],\n"
-"gray: [ 'G', 0.5 ],\n"
-"ltGray: [ 'G', 0.75 ],\n"
+"};\n"
+"\n"
+"color.convert = function (c, colorspace) {\n"
+"switch (colorspace) {\n"
+"case 'G':\n"
+"if (c[0] === 'RGB')\n"
+"return [ 'G', c[1] * 0.3 + c[2] * 0.59 + c[3] * 0.11 ];\n"
+"if (c[0] === 'CMYK')\n"
+"return [ 'CMYK', 1 - Math.min(1, c[1] * 0.3 + c[2] * 0.59 + c[3] * 0.11 + c[4])];\n"
+"break;\n"
+"case 'RGB':\n"
+"if (c[0] === 'G')\n"
+"return [ 'RGB', c[1], c[1], c[1] ];\n"
+"if (c[0] === 'CMYK')\n"
+"return [ 'RGB',\n"
+"1 - Math.min(1, c[1] + c[4]),\n"
+"1 - Math.min(1, c[2] + c[4]),\n"
+"1 - Math.min(1, c[3] + c[4]) ];\n"
+"break;\n"
+"case 'CMYK':\n"
+"if (c[0] === 'G')\n"
+"return [ 'CMYK', 0, 0, 0, 1 - c[1] ];\n"
+"if (c[0] === 'RGB')\n"
+"return [ 'CMYK', 1 - c[1], 1 - c[2], 1 - c[3], 0 ];\n"
+"break;\n"
+"}\n"
+"return c;\n"
+"}\n"
+"\n"
+"color.equal = function (a, b) {\n"
+"var i, n\n"
+"if (a[0] === 'G')\n"
+"a = color.convert(a, b[0]);\n"
+"else\n"
+"b = color.convert(b, a[0]);\n"
+"if (a[0] !== b[0])\n"
+"return false;\n"
+"switch (a[0]) {\n"
+"case 'G': n = 1; break;\n"
+"case 'RGB': n = 3; break;\n"
+"case 'CMYK': n = 4; break;\n"
+"default: n = 0; break;\n"
+"}\n"
+"for (i = 1; i <= n; ++i)\n"
+"if (a[i] !== b[i])\n"
+"return false;\n"
+"return true;\n"
+"}\n"
+"\n"
+"var font = {\n"
+"Cour: 'Courier',\n"
+"CourB: 'Courier-Bold',\n"
+"CourBI: 'Courier-BoldOblique',\n"
+"CourI: 'Courier-Oblique',\n"
+"Helv: 'Helvetica',\n"
+"HelvB: 'Helvetica-Bold',\n"
+"HelvBI: 'Helvetica-BoldOblique',\n"
+"HelvI: 'Helvetica-Oblique',\n"
+"Symbol: 'Symbol',\n"
+"Times: 'Times-Roman',\n"
+"TimesB: 'Times-Bold',\n"
+"TimesBI: 'Times-BoldItalic',\n"
+"TimesI: 'Times-Italic',\n"
+"ZapfD: 'ZapfDingbats',\n"
+"};\n"
+"\n"
+"var highlight = {\n"
+"i: 'invert',\n"
+"n: 'none',\n"
+"o: 'outline',\n"
+"p: 'push',\n"
+"};\n"
+"\n"
+"var position = {\n"
+"textOnly: 0,\n"
+"iconOnly: 1,\n"
+"iconTextV: 2,\n"
+"textIconV: 3,\n"
+"iconTextH: 4,\n"
+"textIconH: 5,\n"
+"overlay: 6,\n"
+"};\n"
+"\n"
+"var scaleHow = {\n"
+"proportional: 0,\n"
+"anamorphic: 1,\n"
+"};\n"
+"\n"
+"var scaleWhen = {\n"
+"always: 0,\n"
+"never: 1,\n"
+"tooBig: 2,\n"
+"tooSmall: 3,\n"
+"};\n"
+"\n"
+"var style = {\n"
+"ch: 'check',\n"
+"ci: 'circle',\n"
+"cr: 'cross',\n"
+"di: 'diamond',\n"
+"sq: 'square',\n"
+"st: 'star',\n"
+"};\n"
+"\n"
+"var zoomtype = {\n"
+"fitH: 'FitHeight',\n"
+"fitP: 'FitPage',\n"
+"fitV: 'FitVisibleWidth',\n"
+"fitW: 'FitWidth',\n"
+"none: 'NoVary',\n"
+"pref: 'Preferred',\n"
+"refW: 'ReflowWidth',\n"
"};\n"
"\n"
"var util = {};\n"
"\n"
"util.printd = function (fmt, d) {\n"
+"function padZeros(num, places) {\n"
+"var s = String(num)\n"
+"while (s.length < places)\n"
+"s = '0' + s;\n"
+"return s;\n"
+"}\n"
"if (!d) return null;\n"
"var res = '';\n"
"var tokens = fmt.match(/(m+|d+|y+|H+|h+|M+|s+|t+|[^mdyHhMst]+)/g);\n"
@@ -144,6 +247,13 @@
"}\n"
"\n"
"util.printx = function (fmt, val) {\n"
+"function convertCase(str, cmd) {\n"
+"switch (cmd) {\n"
+"case '>': return str.toUpperCase();\n"
+"case '<': return str.toLowerCase();\n"
+"default: return str;\n"
+"}\n"
+"}\n"
"var cs = '=';\n"
"var res = '';\n"
"var i, m;\n"
@@ -157,14 +267,14 @@
"case 'X':\n"
"m = val.match(/\\w/);\n"
"if (m) {\n"
-"res += MuPDF.convertCase(m[0], cs);\n"
+"res += convertCase(m[0], cs);\n"
"val = val.replace(/^\\W*\\w/, '');\n"
"}\n"
"break;\n"
"case 'A':\n"
"m = val.match(/[A-Za-z]/);\n"
"if (m) {\n"
-"res += MuPDF.convertCase(m[0], cs);\n"
+"res += convertCase(m[0], cs);\n"
"val = val.replace(/^[^A-Za-z]*[A-Za-z]/, '');\n"
"}\n"
"break;\n"
@@ -181,7 +291,7 @@
"break;\n"
"case '?':\n"
"if (val) {\n"
-"res += MuPDF.convertCase(val.charAt(0), cs);\n"
+"res += convertCase(val.charAt(0), cs);\n"
"val = val.substring(1);\n"
"}\n"
"break;\n"
@@ -191,7 +301,7 @@
"cs = fmt.charAt(i);\n"
"break;\n"
"default:\n"
-"res += MuPDF.convertCase(fmt.charAt(i), cs);\n"
+"res += convertCase(fmt.charAt(i), cs);\n"
"break;\n"
"}\n"
"}\n"
@@ -523,6 +633,14 @@
"var m;\n"
"var length = fmt ? fmt.length : 0;\n"
"\n"
+"function convertCase(str, cmd) {\n"
+"switch (cmd) {\n"
+"case '>': return str.toUpperCase();\n"
+"case '<': return str.toLowerCase();\n"
+"default: return str;\n"
+"}\n"
+"}\n"
+"\n"
"while (i < length) {\n"
"switch (fmt.charAt(i)) {\n"
"case '\\\\':\n"
@@ -540,7 +658,7 @@
"event.rc = false;\n"
"break;\n"
"}\n"
-"res += MuPDF.convertCase(m[0], cs);\n"
+"res += convertCase(m[0], cs);\n"
"val = val.substring(1);\n"
"break;\n"
"\n"
@@ -550,7 +668,7 @@
"event.rc = false;\n"
"break;\n"
"}\n"
-"res += MuPDF.convertCase(m[0], cs);\n"
+"res += convertCase(m[0], cs);\n"
"val = val.substring(1);\n"
"break;\n"
"\n"
@@ -574,7 +692,7 @@
"event.rc = false;\n"
"break;\n"
"}\n"
-"res += MuPDF.convertCase(val.charAt(0), cs);\n"
+"res += convertCase(val.charAt(0), cs);\n"
"val = val.substring(1);\n"
"break;\n"
"\n"
@@ -781,12 +899,10 @@
"}\n"
"\n"
"function AFRange_Validate(lowerCheck, lowerLimit, upperCheck, upperLimit) {\n"
-"if (upperCheck && event.value > upperLimit) {\n"
+"if (upperCheck && event.value > upperLimit)\n"
"event.rc = false;\n"
-"}\n"
-"if (lowerCheck && event.value < lowerLimit) {\n"
+"if (lowerCheck && event.value < lowerLimit)\n"
"event.rc = false;\n"
-"}\n"
"if (!event.rc) {\n"
"if (lowerCheck && upperCheck)\n"
"app.alert(util.printf('The entered value ('+event.value+') must be greater than or equal to %s and less than or equal to %s', lowerLimit, upperLimit));\n"