summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def')
-rw-r--r--Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def105
1 files changed, 79 insertions, 26 deletions
diff --git a/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def b/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def
index f2447ac4f51..104fd7fc231 100644
--- a/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def
+++ b/Master/texmf-dist/tex/latex/l3kernel/l3dvipdfmx.def
@@ -46,16 +46,16 @@
%%
%% -----------------------------------------------------------------------
%%
-\GetIdInfo$Id: l3drivers.dtx 6511 2016-05-17 20:20:23Z joseph $
+\GetIdInfo$Id: l3drivers.dtx 6644 2016-08-13 20:22:11Z bruno $
{L3 Experimental drivers}
\ProvidesExplFile
{l3dvidpfmx.def}{\ExplFileDate}{\ExplFileVersion}
{L3 Experimental driver: dvipdfmx}
\cs_new_protected:Npn \__driver_literal:n #1
{ \tex_special:D { pdf:literal~ #1 } }
-\cs_new_protected_nopar:Npn \__driver_scope_begin:
+\cs_new_protected:Npn \__driver_scope_begin:
{ \__driver_literal:n { q } }
-\cs_new_protected_nopar:Npn \__driver_scope_end:
+\cs_new_protected:Npn \__driver_scope_end:
{ \__driver_literal:n { Q } }
\cs_new_protected:Npn \__driver_matrix:n #1
{ \__driver_literal:n { #1 \c_space_tl 0~0~cm } }
@@ -67,12 +67,12 @@
{ \tl_set:Nn \l__driver_current_color_tl { \current@color } }
{ }
}
-\cs_new_protected_nopar:Npn \__driver_color_ensure_current:
+\cs_new_protected:Npn \__driver_color_ensure_current:
{
\tex_special:D { pdf:bcolor~\l__driver_current_color_tl }
\group_insert_after:N \__driver_color_reset:
}
-\cs_new_protected_nopar:Npn \__driver_color_reset:
+\cs_new_protected:Npn \__driver_color_reset:
{ \tex_special:D { pdf:ecolor } }
\cs_new_protected:Npn \__driver_box_use_clip:N #1
{
@@ -129,13 +129,13 @@
}
\cs_new_eq:NN \__driver_draw_literal:n \__driver_literal:n
\cs_generate_variant:Nn \__driver_draw_literal:n { x }
-\cs_new_protected_nopar:Npn \__driver_draw_begin:
+\cs_new_protected:Npn \__driver_draw_begin:
{ \__driver_draw_scope_begin: }
-\cs_new_protected_nopar:Npn \__driver_draw_end:
+\cs_new_protected:Npn \__driver_draw_end:
{ \__driver_draw_scope_end: }
-\cs_new_protected_nopar:Npn \__driver_draw_scope_begin:
+\cs_new_protected:Npn \__driver_draw_scope_begin:
{ \__driver_draw_literal:n { q } }
-\cs_new_protected_nopar:Npn \__driver_draw_scope_end:
+\cs_new_protected:Npn \__driver_draw_scope_end:
{ \__driver_draw_literal:n { Q } }
\cs_new_protected:Npn \__driver_draw_moveto:nn #1#2
{
@@ -157,29 +157,42 @@
c
}
}
-\bool_new:N \__driver_draw_eor_bool
-\cs_new_protected_nopar:Npn \__driver_draw_closepath:
+\cs_new_protected:Npn \__driver_draw_rectangle:nnnn #1#2#3#4
+ {
+ \__driver_draw_literal:x
+ {
+ \dim_to_decimal_in_bp:n {#1} ~ \dim_to_decimal_in_bp:n {#2} ~
+ \dim_to_decimal_in_bp:n {#3} ~ \dim_to_decimal_in_bp:n {#4} ~
+ re
+ }
+ }
+\cs_new_protected:Npn \__driver_draw_evenodd_rule:
+ { \bool_gset_true:N \g__driver_draw_eor_bool }
+\cs_new_protected:Npn \__driver_draw_nonzero_rule:
+ { \bool_gset_false:N \g__driver_draw_eor_bool }
+\bool_new:N \g__driver_draw_eor_bool
+\cs_new_protected:Npn \__driver_draw_closepath:
{ \__driver_draw_literal:n { h } }
-\cs_new_protected_nopar:Npn \__driver_draw_stroke:
+\cs_new_protected:Npn \__driver_draw_stroke:
{ \__driver_draw_literal:n { S } }
-\cs_new_protected_nopar:Npn \__driver_draw_closestroke:
+\cs_new_protected:Npn \__driver_draw_closestroke:
{ \__driver_draw_literal:n { s } }
-\cs_new_protected_nopar:Npn \__driver_draw_fill:
+\cs_new_protected:Npn \__driver_draw_fill:
{
\__driver_draw_literal:x
- { f \bool_if:NT \__driver_draw_eor_bool * }
+ { f \bool_if:NT \g__driver_draw_eor_bool * }
}
-\cs_new_protected_nopar:Npn \__driver_draw_fillstroke:
+\cs_new_protected:Npn \__driver_draw_fillstroke:
{
\__driver_draw_literal:x
- { B \bool_if:NT \__driver_draw_eor_bool * }
+ { B \bool_if:NT \g__driver_draw_eor_bool * }
}
-\cs_new_protected_nopar:Npn \__driver_draw_clip:
+\cs_new_protected:Npn \__driver_draw_clip:
{
\__driver_draw_literal:x
- { W \bool_if:NT \__driver_draw_eor_bool * }
+ { W \bool_if:NT \g__driver_draw_eor_bool * }
}
-\cs_new_protected_nopar:Npn \__driver_draw_discardpath:
+\cs_new_protected:Npn \__driver_draw_discardpath:
{ \__driver_draw_literal:n { n } }
\cs_new_protected:Npn \__driver_draw_dash:nn #1#2
{
@@ -200,18 +213,34 @@
}
\cs_new_protected:Npn \__driver_draw_miterlimit:n #1
{ \__driver_draw_literal:x { \fp_eval:n {#1} ~ M } }
-\cs_new_protected_nopar:Npn \__driver_draw_cap_butt:
+\cs_new_protected:Npn \__driver_draw_cap_butt:
{ \__driver_draw_literal:n { 0 ~ J } }
-\cs_new_protected_nopar:Npn \__driver_draw_cap_round:
+\cs_new_protected:Npn \__driver_draw_cap_round:
{ \__driver_draw_literal:n { 1 ~ J } }
-\cs_new_protected_nopar:Npn \__driver_draw_cap_rectangle:
+\cs_new_protected:Npn \__driver_draw_cap_rectangle:
{ \__driver_draw_literal:n { 2 ~ J } }
-\cs_new_protected_nopar:Npn \__driver_draw_join_miter:
+\cs_new_protected:Npn \__driver_draw_join_miter:
{ \__driver_draw_literal:n { 0 ~ j } }
-\cs_new_protected_nopar:Npn \__driver_draw_join_round:
+\cs_new_protected:Npn \__driver_draw_join_round:
{ \__driver_draw_literal:n { 1 ~ j } }
-\cs_new_protected_nopar:Npn \__driver_draw_join_bevel:
+\cs_new_protected:Npn \__driver_draw_join_bevel:
{ \__driver_draw_literal:n { 2 ~ j } }
+\cs_new_protected:Npn \__driver_draw_color_cmyk:nnnn #1#2#3#4
+ {
+ \use:x
+ {
+ \__driver_draw_color_cmyk_aux:nnnn
+ { \fp_eval:n {#1} }
+ { \fp_eval:n {#2} }
+ { \fp_eval:n {#3} }
+ { \fp_eval:n {#4} }
+ }
+ }
+\cs_new_protected:Npn \__driver_draw_color_cmyk_aux:nnnn #1#2#3#4
+ {
+ \__driver_draw_literal:n
+ { #1 ~ #2 ~ #3 ~ #4 ~ k ~ #1 ~ #2 ~ #3 ~ #4 ~ K }
+ }
\cs_new_protected:Npn \__driver_draw_color_cmyk_fill:nnnn #1#2#3#4
{
\__driver_draw_literal:x
@@ -230,10 +259,34 @@
K
}
}
+\cs_new_protected:Npn \__driver_draw_color_gray:n #1
+ {
+ \use:x
+ { \__driver_draw_color_gray_aux:n { \fp_eval:n {#1} } }
+ }
+\cs_new_protected:Npn \__driver_draw_color_gray_aux:n #1
+ {
+ \__driver_draw_literal:n { #1 ~ g ~ #1 ~ G }
+ }
\cs_new_protected:Npn \__driver_draw_color_gray_fill:n #1
{ \__driver_draw_literal:x { \fp_eval:n {#1} ~ g } }
\cs_new_protected:Npn \__driver_draw_color_gray_stroke:n #1
{ \__driver_draw_literal:x { \fp_eval:n {#1} ~ G } }
+\cs_new_protected:Npn \__driver_draw_color_rgb:nnn #1#2#3
+ {
+ \use:x
+ {
+ \__driver_draw_color_rgb_aux:nnn
+ { \fp_eval:n {#1} }
+ { \fp_eval:n {#2} }
+ { \fp_eval:n {#3} }
+ }
+ }
+\cs_new_protected:Npn \__driver_draw_color_rgb_aux:nnn #1#2#3
+ {
+ \__driver_draw_literal:n
+ { #1 ~ #2 ~ #3 ~ rg ~ #1 ~ #2 ~ #3 ~ RG }
+ }
\cs_new_protected:Npn \__driver_draw_color_rgb_fill:nnn #1#2#3
{
\__driver_draw_literal:x