summaryrefslogtreecommitdiff
path: root/Build/source/texk/dvipdfm-x/spc_util.c
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/dvipdfm-x/spc_util.c')
-rw-r--r--Build/source/texk/dvipdfm-x/spc_util.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/Build/source/texk/dvipdfm-x/spc_util.c b/Build/source/texk/dvipdfm-x/spc_util.c
index c9cbcc87d0c..4c34ce03f3c 100644
--- a/Build/source/texk/dvipdfm-x/spc_util.c
+++ b/Build/source/texk/dvipdfm-x/spc_util.c
@@ -1,6 +1,6 @@
/* This is dvipdfmx, an eXtended version of dvipdfm by Mark A. Wicks.
- Copyright (C) 2007-2016 by Jin-Hwan Cho and Shunsaku Hirata,
+ Copyright (C) 2007-2017 by Jin-Hwan Cho and Shunsaku Hirata,
the dvipdfmx project team.
Copyright (C) 1998, 1999 by Mark A. Wicks <mwicks@kettering.edu>
@@ -290,7 +290,11 @@ spc_util_read_length (struct spc_env *spe, double *vp /* ret. */, struct spc_arg
#define K_UNIT__CM 2
#define K_UNIT__MM 3
#define K_UNIT__BP 4
- "pt", "in", "cm", "mm", "bp", NULL
+#define K_UNIT__PC 5
+#define K_UNIT__DD 6
+#define K_UNIT__CC 7
+#define K_UNIT__SP 8
+ "pt", "in", "cm", "mm", "bp", "pc", "dd", "cc", "sp", NULL
};
int k, error = 0;
@@ -325,6 +329,10 @@ spc_util_read_length (struct spc_env *spe, double *vp /* ret. */, struct spc_arg
case K_UNIT__CM: u *= 72.0 / 2.54 ; break;
case K_UNIT__MM: u *= 72.0 / 25.4 ; break;
case K_UNIT__BP: u *= 1.0 ; break;
+ case K_UNIT__PC: u *= 12.0 * 72.0 / 72.27 ; break;
+ case K_UNIT__DD: u *= 1238.0 / 1157.0 * 72.0 / 72.27 ; break;
+ case K_UNIT__CC: u *= 12.0 * 1238.0 / 1157.0 * 72.0 / 72.27 ; break;
+ case K_UNIT__SP: u *= 72.0 / (72.27 * 65536) ; break;
default:
spc_warn(spe, "Unknown unit of measure: %s", q);
error = -1;