summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty')
-rw-r--r--Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty131
1 files changed, 60 insertions, 71 deletions
diff --git a/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty b/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty
index 8bd5ebe5d77..93965cf14f7 100644
--- a/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty
+++ b/Master/texmf-dist/tex/latex/tagpdf/tagpdf.sty
@@ -28,7 +28,7 @@
%% and all files in that bundle must be distributed together.
%%
%% File: tagpdf.dtx
-\ProvidesExplPackage {tagpdf} {2024-01-19} {0.98s}
+\ProvidesExplPackage {tagpdf} {2024-01-26} {0.98t}
{ A package to experiment with pdf tagging }
\bool_if:nF
@@ -799,45 +799,25 @@
{ IDTree }
{ \pdf_object_ref_last: }
}
-\pdf_version_compare:NnTF < {2.0}
- {
- \cs_new_protected:Npn \__tag_tree_write_structtreeroot:
- {
- \__tag_prop_gput:cne
- { g__tag_struct_0_prop }
- { ParentTree }
- { \pdf_object_ref:n { __tag/tree/parenttree } }
- \__tag_prop_gput:cne
- { g__tag_struct_0_prop }
- { RoleMap }
- { \pdf_object_ref:n { __tag/tree/rolemap } }
- \__tag_struct_fill_kid_key:n { 0 }
- \__tag_struct_get_dict_content:nN { 0 } \l__tag_tmpa_tl
- \pdf_object_write:nne
- { __tag/struct/0 }
- {dict}
- {
- \l__tag_tmpa_tl
- }
- }
- }
- {
- \cs_new_protected:Npn \__tag_tree_write_structtreeroot:
- {
- \__tag_prop_gput:cne
- { g__tag_struct_0_prop }
- { ParentTree }
- { \pdf_object_ref:n { __tag/tree/parenttree } }
- \__tag_struct_fill_kid_key:n { 0 }
- \__tag_struct_get_dict_content:nN { 0 } \l__tag_tmpa_tl
- \pdf_object_write:nne
- { __tag/struct/0 }
- {dict}
- {
- \l__tag_tmpa_tl
- }
- }
- }
+\cs_new_protected:Npn \__tag_tree_write_structtreeroot:
+ {
+ \__tag_prop_gput:cne
+ { g__tag_struct_0_prop }
+ { ParentTree }
+ { \pdf_object_ref:n { __tag/tree/parenttree } }
+ \__tag_prop_gput:cne
+ { g__tag_struct_0_prop }
+ { RoleMap }
+ { \pdf_object_ref:n { __tag/tree/rolemap } }
+ \__tag_struct_fill_kid_key:n { 0 }
+ \__tag_struct_get_dict_content:nN { 0 } \l__tag_tmpa_tl
+ \pdf_object_write:nne
+ { __tag/struct/0 }
+ {dict}
+ {
+ \l__tag_tmpa_tl
+ }
+ }
\cs_new_protected:Npn \__tag_tree_write_structelements:
{
\int_step_inline:nnnn {1}{1}{\c@g__tag_struct_abs_int}
@@ -947,33 +927,30 @@
/Nums\c_space_tl [\l__tag_parenttree_content_tl]
}
}
-\pdf_version_compare:NnT < {2.0}
- {
- \pdf_object_new:n { __tag/tree/rolemap }
- }
-\pdf_version_compare:NnTF < {2.0}
- {
- \cs_new_protected:Npn \__tag_tree_write_rolemap:
- {
- \prop_map_inline:Nn\g__tag_role_rolemap_prop
+\pdf_object_new:n { __tag/tree/rolemap }
+\cs_new_protected:Npn \__tag_tree_write_rolemap:
+ {
+ \bool_if:NT \g__tag_role_add_mathml_bool
+ {
+ \prop_map_inline:Nn \g__tag_role_NS_mathml_prop
{
- \tl_if_eq:nnF {##1}{##2}
- {
- \pdfdict_gput:nne {g__tag_role/RoleMap_dict}
- {##1}
- {\pdf_name_from_unicode_e:n{##2}}
- }
+ \prop_gput:Nnn \g__tag_role_rolemap_prop {##1}{Span}
}
- \pdf_object_write:nne { __tag/tree/rolemap }{dict}
- {
- \pdfdict_use:n{g__tag_role/RoleMap_dict}
- }
+ }
+ \prop_map_inline:Nn\g__tag_role_rolemap_prop
+ {
+ \tl_if_eq:nnF {##1}{##2}
+ {
+ \pdfdict_gput:nne {g__tag_role/RoleMap_dict}
+ {##1}
+ {\pdf_name_from_unicode_e:n{##2}}
+ }
+ }
+ \pdf_object_write:nne { __tag/tree/rolemap }{dict}
+ {
+ \pdfdict_use:n{g__tag_role/RoleMap_dict}
}
- }
- {
- \cs_new_protected:Npn \__tag_tree_write_rolemap:{}
- }
-
+ }
\cs_new_protected:Npn \__tag_tree_write_classmap:
{
\tl_clear:N \l__tag_tmpa_tl
@@ -1155,12 +1132,10 @@
\int_to_Hex:n{\int_rand:n {16777215}}
\int_to_Hex:n{\int_rand:n {16777215}}
}
+\bool_new:N \g__tag_role_add_mathml_bool
\__tag_role_NS_new:nnn {pdf} {http://iso.org/pdf/ssn}{}
\__tag_role_NS_new:nnn {pdf2} {http://iso.org/pdf2/ssn}{}
-\pdf_version_compare:NnF < {2.0}
- {
- \__tag_role_NS_new:nnn {mathml}{http://www.w3.org/1998/Math/MathML}{}
- }
+\__tag_role_NS_new:nnn {mathml}{http://www.w3.org/1998/Math/MathML}{}
\__tag_role_NS_new:nnn {latex} {https://www.latex-project.org/ns/dflt/2022}{}
\__tag_role_NS_new:nnn {latex-book} {https://www.latex-project.org/ns/book/2022}{}
\__tag_role_NS_new:nnn {latex-inline} {https://www.latex-project.org/ns/inline/2022}{}
@@ -1290,6 +1265,20 @@
\prop_gput:cno { g__tag_role_NS_#2_prop } {#1}{\l__tag_tmpa_tl}
}
}
+ \tl_if_empty:nF { #3 }
+ {
+ \tl_if_eq:nnF{#1}{#3}
+ {
+ \prop_get:NnN \g__tag_role_rolemap_prop {#3}\l__tag_tmpa_tl
+ \quark_if_no_value:NTF \l__tag_tmpa_tl
+ {
+ \prop_gput:Nne \g__tag_role_rolemap_prop {#1}{\tl_to_str:n{#3}}
+ }
+ {
+ \prop_gput:NnV \g__tag_role_rolemap_prop {#1}\l__tag_tmpa_tl
+ }
+ }
+ }
}
\cs_generate_variant:Nn \__tag_role_add_tag:nnnn {VVVV}
\pdf_version_compare:NnF < {2.0}
@@ -1400,8 +1389,7 @@
}
\__tag_role_read_namespace:n {pdf}
\__tag_role_read_namespace:n {pdf2}
-\pdf_version_compare:NnF < {2.0}
- {\__tag_role_read_namespace:n {mathml}}
+\__tag_role_read_namespace:n {mathml}
\bool_set_false:N\l__tag_role_update_bool
\__tag_role_read_namespace:n {latex-inline}
\__tag_role_read_namespace:n {latex-book}
@@ -1763,7 +1751,8 @@
\keys_define:nn { __tag / setup }
{
- add-new-tag .code:n =
+ mathml-tags .bool_gset:N = \g__tag_role_add_mathml_bool
+ ,add-new-tag .code:n =
{
\keys_set_known:nnnN
{__tag/tag-role}