diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvips.def')
-rw-r--r-- | Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvips.def | 194 |
1 files changed, 194 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvips.def b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvips.def new file mode 100644 index 00000000000..13f31d3e3cb --- /dev/null +++ b/Master/texmf-dist/tex/latex/pdfmanagement-testphase/l3backend-testphase-dvips.def @@ -0,0 +1,194 @@ +%% +%% This is file `l3backend-testphase-dvips.def', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% l3backend-testphase.dtx (with options: `drivers,dvips') +%% +%% Copyright (C) 2019-2021 The LaTeX Project +%% +%% It may be distributed and/or modified under the conditions of +%% the LaTeX Project Public License (LPPL), either version 1.3c of +%% this license or (at your option) any later version. The latest +%% version of this license is in the file: +%% +%% https://www.latex-project.org/lppl.txt +%% +%% This file is part of the "LaTeX PDF management testphase bundle" (The Work in LPPL) +%% and all files in that bundle must be distributed together. +%% +%% File: l3backend-testphase.dtx +\ProvidesExplFile + {l3backend-testphase-dvips.def}{2021-02-22}{} + {LaTeX~PDF~management~testphase~bundle~backend~support: dvips} +\RequirePackage{l3ref-tmp} +\cs_generate_variant:Nn \ref_label:nn {en} +\cs_generate_variant:Nn \ref_value:nn {en} +\cs_new_protected:Npn \__pdf_backend_ref_label:nn #1 #2 + { + \@bsphack + \ref_label:nn{#1}{abspage} + \@esphack + } +\cs_new:Npn \__pdf_backend_ref_value:nn #1 #2 + { + \ref_value:nn{#1}{#2} + } +\cs_generate_variant:Nn \__pdf_backend_ref_label:nn {en} +\cs_generate_variant:Nn \__pdf_backend_ref_value:nn {en} +\prop_new:N \g__pdf_tmpa_prop +\tl_new:N \l__pdf_tmpa_tl +\box_new:N \l__pdf_backend_tmpa_box +\int_new:N \g__pdf_backend_resourceid_int +\int_new:N \g__pdf_backend_name_int +\int_new:N \g__pdf_backend_page_int +\tl_gput_right:Nn\@kernel@after@shipout@lastpage + { + \g__kernel_pdfmanagement_end_run_code_tl + } +\tl_if_exist:NTF \@kernel@after@shipout@background + { + \g@addto@macro \@kernel@before@shipout@background{\relax} + \g@addto@macro \@kernel@after@shipout@background + { + \g__kernel_pdfmanagement_thispage_shipout_code_tl + } + \tl_gput_left:Nn\@kernel@after@shipout@lastpage + { + \g__kernel_pdfmanagement_lastpage_shipout_code_tl + } + } + { + \hook_gput_code:nnn{shipout/background}{pdf} + { + \g__kernel_pdfmanagement_thispage_shipout_code_tl + } + \hook_gput_code:nnn {shipout/lastpage} {pdf} + { + \g__kernel_pdfmanagement_lastpage_shipout_code_tl + } + } + +\cs_new_protected:Npx \__pdf_backend_Pages_primitive:n #1 + { + \tex_special:D{ps:~[#1~/PAGES~pdfmark} %] + } +\cs_new_protected:Npn \__pdf_backend_Page_primitive:n #1 + { + \tex_special:D{ps:~[{ThisPage}<<#1>>~/PUT~pdfmark} %] + } + % the command to store default values. + % Uses a prop with pdflatex + dvi, + % sets a lua table with lualatex +\cs_new_protected:Npn \__pdf_backend_Page_gput:nn #1 #2 + { + \pdfdict_gput:nnn {g__pdf_Core/Page}{ #1 }{ #2 } + } + % the command to remove a default value. + % Uses a prop with pdflatex + dvi, + % changes a lua table with lualatex +\cs_new_protected:Npn \__pdf_backend_Page_gremove:n #1 + { + \pdfdict_gremove:nn {g__pdf_Core/Page}{ #1 } + } + % the command used in the document. + % direct call of the primitive special with dvips/dvipdfmx + % \latelua: fill a page related table with lualatex, merge it with the page + % table and push it directly + % write to aux and store in prop with pdflatex +\cs_new_protected:Npn \__pdf_backend_ThisPage_gput:nn #1 #2 + { + \__pdf_backend_Page_primitive:n { /#1~#2 } + } + %the code to push the values, used in shipout + %merges the two props and then fills the register in pdflatex + %merges the two tables (the one is probably still empty) + %and then fills (in lua) in luatex + %issues the values stored in the global prop with dvi +\cs_new_protected:Npn \__pdf_backend_ThisPage_gpush:n #1 + { + \exp_args:Nx \__pdf_backend_Page_primitive:n + { \pdfdict_use:n { g__pdf_Core/Page} } + } +\clist_const:Nn \c__pdf_backend_PageResources_clist + { + ExtGState, + ColorSpace, + Pattern, + Shading, + } +\cs_new_protected:Npn \__pdf_backend_PageResources:n #1 {} +\cs_new_protected:Npn \__pdf_backend_PageResources_gput:nnn #1 #2 #3 + { %only for the show command TEST!! + \pdfdict_gput:nnn {g__pdf_Core/Page/Resources/#1} { #2 }{ #3 } + } +\cs_new_protected:Npn \__pdf_backend_PageResources_obj_gpush: {} +\bool_new:N \l__pdf_backend_xform_bool +\cs_set_protected:Npn \__pdf_backend_bdc:nn #1 #2 % #1 eg. Span, #2: dict_content + { + \__pdf_backend_pdfmark:x{/#1~<<#2>>~/BDC} + } +\cs_set_protected:Npn \__pdf_backend_bdcobject:nn #1 #2 % #1 eg. Span, #2: object name + { + \__pdf_backend_pdfmark:x{/#1~\__pdf_backend_object_ref:n{#2}~/BDC} + } +\cs_set_protected:Npn \__pdf_backend_bdcobject:n #1 % #1 eg. Span, + { + \__pdf_backend_pdfmark:x{/#1~\__pdf_backend_object_last:~/BDC} + } +\cs_set_protected:Npn \__pdf_backend_emc: + { + \__pdf_backend_pdfmark:n{/EMC} % + } +\cs_set_protected:Npn \__pdf_backend_bmc:n #1 + { + \__pdf_backend_pdfmark:n{/#1~/BMC} % + } +\cs_new_protected:Npn \__pdf_backend_PageResources_gpush:n #1 {} + + + +\cs_new_protected:Npn \__pdf_backend_NamesEmbeddedFiles_gpush:n #1 {} + +\int_new:N \g__pdf_backend_EmbeddedFiles_int +\cs_new:Npn \__pdf_backend_EmbeddedFiles_name: + { + ( + l3ef + \int_compare:nNnT {\g__pdf_backend_EmbeddedFiles_int} < {10} + {0} + \int_compare:nNnT {\g__pdf_backend_EmbeddedFiles_int} < {100} + {0} + \int_compare:nNnT {\g__pdf_backend_EmbeddedFiles_int} < {1000} + {0} + \int_use:N \g__pdf_backend_EmbeddedFiles_int + ) + } +\seq_new:N \g__pdf_backend_EmbeddedFiles_seq +\prop_new:N \g__pdf_backend_EmbeddedFiles_named_prop +\cs_new_protected:Npn \__pdf_backend_NamesEmbeddedFiles_add:n #1 + { + \int_gincr:N \g__pdf_backend_EmbeddedFiles_int + \prop_gput:Nnx \g__pdf_backend_EmbeddedFiles_named_prop + { #1 } + { \__pdf_backend_EmbeddedFiles_name: } + \__pdf_backend_pdfmark:x + { + /Name~\__pdf_backend_EmbeddedFiles_name:~ + /FS~#1~ + /EMBED + } + } +%% all +\prg_new_conditional:Npnn \__pdf_backend_xform_if_exist:n #1 { p , T , F , TF } + { + \int_if_exist:cTF { c__pdf_backend_xform_ \tl_to_str:n {#1} _int } + { \prg_return_true: } + { \prg_return_false:} + } +\prg_new_eq_conditional:NNn \pdfxform_if_exist:n\__pdf_backend_xform_if_exist:n + { TF , T , F , p } +%% +%% +%% End of file `l3backend-testphase-dvips.def'. |