Skip to content

Commit

Permalink
speed up writing out of the StructElems content
Browse files Browse the repository at this point in the history
  • Loading branch information
u-fischer committed Mar 20, 2024
1 parent 0f387bc commit 875af80
Show file tree
Hide file tree
Showing 81 changed files with 256 additions and 349 deletions.
2 changes: 1 addition & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ this project uses date-based 'snapshot' version identifiers.
- statistic and benchmark at the end of the run.

### Changed
- speed up writing of StructElem
- speed up writing of StructElems

## [2024-02-29]
Version 0.98x
Expand Down
50 changes: 21 additions & 29 deletions tagpdf-struct.dtx
Original file line number Diff line number Diff line change
Expand Up @@ -900,49 +900,41 @@
% \begin{macro}{\@@_struct_get_dict_content:nN}
% This maps the dictionary content of a structure into a tl-var.
% Basically it does what |\pdfdict_use:n| does.
% TODO!! this looks over-complicated. Check if it can be done with pdfdict now.
% This is used a lot so should be rather fast.
% \begin{macrocode}
\cs_new_protected:Npn \@@_struct_get_dict_content:nN #1 #2 %#1: stucture num
{
\tl_clear:N #2
\seq_map_inline:cn
\prop_map_inline:cn { g_@@_struct_#1_prop }
{
c_@@_struct_
\int_compare:nNnTF{#1}={0}{StructTreeRoot}{StructElem}
_entries_seq
}
{
\tl_put_right:Ne
#2
\tl_put_right:Ne #2
{
\prop_if_in:cnT
{ g_@@_struct_#1_prop }
{ ##1 }
{
\c_space_tl/##1~
% \end{macrocode}
% Some keys needs the option to format the key, e.g. add brackets for an
% array
% \begin{macrocode}
\cs_if_exist_use:cTF {@@_struct_format_##1:e}
{
{ \prop_item:cn{ g_@@_struct_#1_prop } { ##1 } }
}
{
\prop_item:cn{ g_@@_struct_#1_prop } { ##1 }
}
}
% \end{macrocode}
% Some keys needs the option to format the value, e.g. add brackets for an
% array, we also need the option to ignore some entries in the properties.
% \begin{macrocode}
\cs_if_exist_use:cTF {@@_struct_format_##1:nn}
{{##1}{##2}}
{\c_space_tl/##1~##2}
}
}
}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_struct_format_Ref:n}
%
% \begin{macro}{\@@_struct_format_rolemap:nn,\@@_struct_format_parentrole:nn}
% This two entries should not end in the PDF.
% \begin{macrocode}
\cs_new:Nn\@@_struct_format_rolemap:nn{}
\cs_new:Nn\@@_struct_format_parentrole:nn{}
% \end{macrocode}
% \end{macro}

% \begin{macro}{\@@_struct_format_Ref:nn}
% Ref is an array, we store only the content to be able to extend it
% so the formatting command adds the brackets:
% \begin{macrocode}
\cs_new:Nn\__tag_struct_format_Ref:n{[#1]}
\cs_generate_variant:Nn\__tag_struct_format_Ref:n{e}
\cs_new:Nn\__tag_struct_format_Ref:nn{\c_space_tl/#1~[#2]}
% \end{macrocode}
% \end{macro}
% \begin{macro}{\@@_struct_write_obj:n}
Expand Down
3 changes: 2 additions & 1 deletion tagpdf-tree.dtx
Original file line number Diff line number Diff line change
Expand Up @@ -266,7 +266,8 @@
{ g_@@_struct_0_prop }
{ RoleMap }
{ \pdf_object_ref:n { @@/tree/rolemap } }
\@@_struct_fill_kid_key:n { 0 }
\@@_struct_fill_kid_key:n { 0 }
\prop_gremove:cn { g_@@_struct_0_prop } {S}
\@@_struct_get_dict_content:nN { 0 } \l_@@_tmpa_tl
\pdf_object_write:nne
{ @@/struct/0 }
Expand Down
2 changes: 1 addition & 1 deletion testfiles-luatex/issue13-mcid-array.tpf
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ endobj
<< /Type /StructElem /S /P /P 9 0 R /K <</Type /MCR /Pg 28 0 R /MCID 0>> /ID (ID.04) >>
endobj
5 0 obj
<< /Type /StructTreeRoot /K 9 0 R /IDTree 32 0 R /ParentTree 6 0 R /RoleMap 7 0 R >>
<< /Type /StructTreeRoot /IDTree 32 0 R /ParentTree 6 0 R /RoleMap 7 0 R /K 9 0 R >>
endobj
33 0 obj
[ 28 [ 500 ] 35 [ 556 ] 43 [ 444 ] 103 [ 333 ] ]
Expand Down
2 changes: 1 addition & 1 deletion testfiles-luatex/issue14-artifact-bool.tpf
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ endobj
<< /Type /StructElem /S /P /P 9 0 R /K [<</Type /MCR /Pg 12 0 R /MCID 0>> <</Type /MCR /Pg 12 0 R /MCID 1>> ] /ID (ID.02) >>
endobj
5 0 obj
<< /Type /StructTreeRoot /K 9 0 R /IDTree 18 0 R /ParentTree 6 0 R /RoleMap 7 0 R >>
<< /Type /StructTreeRoot /IDTree 18 0 R /ParentTree 6 0 R /RoleMap 7 0 R /K 9 0 R >>
endobj
19 0 obj
[ 28 [ 500 ] 43 [ 444 ] 47 [ 556 ] 50 [ 444 ] 55 [ 306 ] 63 [ 556 ] 66 [ 278 ] 75 [ 833 ] 77 [ 556 ] 81 [ 500 500 ] 96 [ 392 556 ] 103 [ 333 ] 105 [ 389 ] 114 [ 722 ] 116 [ 528 ] ]
Expand Down
2 changes: 1 addition & 1 deletion testfiles-luatex/issue66-missing-space.tpf
Original file line number Diff line number Diff line change
Expand Up @@ -287,7 +287,7 @@ endobj
<< /Type /StructElem /S /text /P 10 0 R /K <</Type /MCR /Pg 14 0 R /MCID 0>> /ID (ID.03) >>
endobj
5 0 obj
<< /Type /StructTreeRoot /K 9 0 R /IDTree 20 0 R /ParentTree 6 0 R /RoleMap 7 0 R >>
<< /Type /StructTreeRoot /IDTree 20 0 R /ParentTree 6 0 R /RoleMap 7 0 R /K 9 0 R >>
endobj
21 0 obj
[ 28 [ 500 ] 50 [ 444 ] 82 [ 500 ] 98 [ 394 ] 103 [ 333 ] 105 [ 389 ] ]
Expand Down
10 changes: 5 additions & 5 deletions testfiles-luatex/test-AF-file.tpf
Original file line number Diff line number Diff line change
Expand Up @@ -112,19 +112,19 @@ endobj
[ 9 0 R 11 0 R 13 0 R 15 0 R 17 0 R 19 0 R ]
endobj
21 0 obj
<< /Type /StructElem /S /Document /P 5 0 R /K [24 0 R 27 0 R 30 0 R] /NS 11 0 R /ID (ID.01) >>
<< /Type /StructElem /S /Document /NS 11 0 R /P 5 0 R /K [24 0 R 27 0 R 30 0 R] /ID (ID.01) >>
endobj
24 0 obj
<< /Type /StructElem /S /P /P 21 0 R /K <</Type /MCR /Pg 32 0 R /MCID 0>> /AF [26 0 R] /NS 11 0 R /ID (ID.02) >>
<< /Type /StructElem /AF [26 0 R] /S /P /NS 11 0 R /P 21 0 R /K <</Type /MCR /Pg 32 0 R /MCID 0>> /ID (ID.02) >>
endobj
27 0 obj
<< /Type /StructElem /S /P /P 21 0 R /K <</Type /MCR /Pg 32 0 R /MCID 1>> /AF [29 0 R] /NS 11 0 R /ID (ID.03) >>
<< /Type /StructElem /AF [29 0 R] /S /P /NS 11 0 R /P 21 0 R /K <</Type /MCR /Pg 32 0 R /MCID 1>> /ID (ID.03) >>
endobj
30 0 obj
<< /Type /StructElem /S /P /P 21 0 R /K <</Type /MCR /Pg 32 0 R /MCID 2>> /AF [23 0 R] /NS 11 0 R /ID (ID.04) >>
<< /Type /StructElem /AF [23 0 R] /S /P /NS 11 0 R /P 21 0 R /K <</Type /MCR /Pg 32 0 R /MCID 2>> /ID (ID.04) >>
endobj
5 0 obj
<< /Type /StructTreeRoot /K 21 0 R /IDTree 38 0 R /ParentTree 6 0 R /RoleMap 7 0 R /Namespaces 8 0 R >>
<< /Type /StructTreeRoot /Namespaces 8 0 R /IDTree 38 0 R /ParentTree 6 0 R /RoleMap 7 0 R /K 21 0 R >>
endobj
39 0 obj
[ 28 [ 500 ] 49 [ 681 444 ] 63 [ 556 ] 66 [ 278 ] 72 [ 278 ] 75 [ 833 ] 77 [ 556 ] 81 [ 500 ] 88 [ 278 ] 97 [ 556 ] 105 [ 389 ] 108 [ 750 556 ] 120 [ 444 ] ]
Expand Down
6 changes: 3 additions & 3 deletions testfiles-luatex/test-alttext.tpf
Original file line number Diff line number Diff line change
Expand Up @@ -67,10 +67,10 @@ endobj
<< /Type /StructElem /S /Document /P 5 0 R /K [10 0 R 11 0 R 12 0 R 13 0 R] /ID (ID.01) >>
endobj
10 0 obj
<< /Type /StructElem /S /P /P 9 0 R /K <</Type /MCR /Pg 15 0 R /MCID 0>> /Alt <FEFF00440069006500730020006900730074002000650069006E00200054006500780074> /ActualText <FEFF0043006F00700079> /ID (ID.02) >>
<< /Type /StructElem /Alt <FEFF00440069006500730020006900730074002000650069006E00200054006500780074> /ActualText <FEFF0043006F00700079> /S /P /P 9 0 R /K <</Type /MCR /Pg 15 0 R /MCID 0>> /ID (ID.02) >>
endobj
11 0 obj
<< /Type /StructElem /S /P /P 9 0 R /K <</Type /MCR /Pg 15 0 R /MCID 1>> /Alt <FEFF00440069006500730020006900730074002000650069006E00200054006500780074> /ActualText <FEFF0043006F00700079> /ID (ID.03) >>
<< /Type /StructElem /Alt <FEFF00440069006500730020006900730074002000650069006E00200054006500780074> /ActualText <FEFF0043006F00700079> /S /P /P 9 0 R /K <</Type /MCR /Pg 15 0 R /MCID 1>> /ID (ID.03) >>
endobj
12 0 obj
<< /Type /StructElem /S /P /P 9 0 R /K <</Type /MCR /Pg 15 0 R /MCID 2>> /ID (ID.04) >>
Expand All @@ -79,7 +79,7 @@ endobj
<< /Type /StructElem /S /P /P 9 0 R /K <</Type /MCR /Pg 15 0 R /MCID 3>> /ID (ID.05) >>
endobj
5 0 obj
<< /Type /StructTreeRoot /K 9 0 R /IDTree 21 0 R /ParentTree 6 0 R /RoleMap 7 0 R >>
<< /Type /StructTreeRoot /IDTree 21 0 R /ParentTree 6 0 R /RoleMap 7 0 R /K 9 0 R >>
endobj
22 0 obj
[ 28 [ 500 ] 49 [ 681 444 ] 66 [ 278 ] 70 [ 528 ] 75 [ 833 ] 77 [ 556 ] 88 [ 278 ] 96 [ 392 ] 98 [ 394 ] 104 [ 722 389 ] 109 [ 556 ] 114 [ 722 ] 116 [ 528 ] ]
Expand Down
6 changes: 3 additions & 3 deletions testfiles-luatex/test-attribute.tpf
Original file line number Diff line number Diff line change
Expand Up @@ -112,10 +112,10 @@ endobj
<< /Type /StructElem /S /TR /P 11 0 R /K [13 0 R 15 0 R] /ID (ID.004) >>
endobj
13 0 obj
<< /Type /StructElem /S /TH /P 12 0 R /K <</Type /MCR /Pg 21 0 R /MCID 0>> /A 14 0 R /ID (ID.005) >>
<< /Type /StructElem /A 14 0 R /S /TH /P 12 0 R /K <</Type /MCR /Pg 21 0 R /MCID 0>> /ID (ID.005) >>
endobj
15 0 obj
<< /Type /StructElem /S /TH /P 12 0 R /K <</Type /MCR /Pg 21 0 R /MCID 1>> /C /TH-row /ID (ID.006) >>
<< /Type /StructElem /C /TH-row /S /TH /P 12 0 R /K <</Type /MCR /Pg 21 0 R /MCID 1>> /ID (ID.006) >>
endobj
16 0 obj
<< /Type /StructElem /S /TBody /P 10 0 R /K 17 0 R /ID (ID.007) >>
Expand All @@ -130,7 +130,7 @@ endobj
<< /Type /StructElem /S /TD /P 17 0 R /K <</Type /MCR /Pg 21 0 R /MCID 3>> /ID (ID.010) >>
endobj
5 0 obj
<< /Type /StructTreeRoot /K 9 0 R /IDTree 27 0 R /ParentTree 6 0 R /RoleMap 7 0 R /ClassMap 28 0 R >>
<< /Type /StructTreeRoot /IDTree 27 0 R /ClassMap 28 0 R /ParentTree 6 0 R /RoleMap 7 0 R /K 9 0 R >>
endobj
29 0 obj
[ 63 [ 556 ] 82 [ 500 ] 96 [ 392 ] 107 [ 500 ] ]
Expand Down
2 changes: 1 addition & 1 deletion testfiles-luatex/test-fakespace-box.tpf
Original file line number Diff line number Diff line change
Expand Up @@ -77,7 +77,7 @@ endobj
<< /Type /StructElem /S /Document /P 5 0 R /K <</Type /MCR /Pg 11 0 R /MCID 0>> /ID (ID.01) >>
endobj
5 0 obj
<< /Type /StructTreeRoot /K 9 0 R /IDTree 17 0 R /ParentTree 6 0 R /RoleMap 7 0 R >>
<< /Type /StructTreeRoot /IDTree 17 0 R /ParentTree 6 0 R /RoleMap 7 0 R /K 9 0 R >>
endobj
18 0 obj
[ 28 [ 500 ] 35 [ 556 ] 43 [ 444 ] 82 [ 500 ] 103 [ 333 ] ]
Expand Down
2 changes: 1 addition & 1 deletion testfiles-luatex/test-fakespace-fontchange.tpf
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ endobj
<< /Type /StructElem /S /Document /P 5 0 R /K <</Type /MCR /Pg 11 0 R /MCID 0>> /ID (ID.01) >>
endobj
5 0 obj
<< /Type /StructTreeRoot /K 9 0 R /IDTree 19 0 R /ParentTree 6 0 R /RoleMap 7 0 R >>
<< /Type /StructTreeRoot /IDTree 19 0 R /ParentTree 6 0 R /RoleMap 7 0 R /K 9 0 R >>
endobj
20 0 obj
[ 28 [ 481 ] 35 [ 517 ] 43 [ 444 ] 103 [ 333 ] ]
Expand Down
10 changes: 5 additions & 5 deletions testfiles-luatex/test-fakespace-gh72.tpf
Original file line number Diff line number Diff line change
Expand Up @@ -75,7 +75,7 @@ endobj
<< /Type /StructElem /S /text-unit /P 9 0 R /K 13 0 R /ID (ID.004) >>
endobj
13 0 obj
<< /Type /StructElem /S /text /P 12 0 R /K <</Type /MCR /Pg 23 0 R /MCID 0>> /C /justify /ID (ID.005) >>
<< /Type /StructElem /C /justify /S /text /P 12 0 R /K <</Type /MCR /Pg 23 0 R /MCID 0>> /ID (ID.005) >>
endobj
14 0 obj
<< /Type /StructElem /S /text-unit /P 9 0 R /K 15 0 R /ID (ID.006) >>
Expand All @@ -87,22 +87,22 @@ endobj
<< /Type /StructElem /S /codeline /P 15 0 R /K 17 0 R /ID (ID.008) >>
endobj
17 0 obj
<< /Type /StructElem /S /Code /P 16 0 R /K <</Type /MCR /Pg 23 0 R /MCID 1>> /C /justify /ID (ID.009) >>
<< /Type /StructElem /C /justify /S /Code /P 16 0 R /K <</Type /MCR /Pg 23 0 R /MCID 1>> /ID (ID.009) >>
endobj
18 0 obj
<< /Type /StructElem /S /text-unit /P 9 0 R /K 19 0 R /ID (ID.010) >>
endobj
19 0 obj
<< /Type /StructElem /S /text /P 18 0 R /K <</Type /MCR /Pg 23 0 R /MCID 2>> /C /justify /ID (ID.011) >>
<< /Type /StructElem /C /justify /S /text /P 18 0 R /K <</Type /MCR /Pg 23 0 R /MCID 2>> /ID (ID.011) >>
endobj
20 0 obj
<< /Type /StructElem /S /text-unit /P 9 0 R /K 21 0 R /ID (ID.012) >>
endobj
21 0 obj
<< /Type /StructElem /S /text /P 20 0 R /K <</Type /MCR /Pg 23 0 R /MCID 3>> /C /justify /ID (ID.013) >>
<< /Type /StructElem /C /justify /S /text /P 20 0 R /K <</Type /MCR /Pg 23 0 R /MCID 3>> /ID (ID.013) >>
endobj
5 0 obj
<< /Type /StructTreeRoot /K 9 0 R /IDTree 30 0 R /ParentTree 6 0 R /RoleMap 7 0 R /ClassMap 31 0 R >>
<< /Type /StructTreeRoot /IDTree 30 0 R /ClassMap 31 0 R /ParentTree 6 0 R /RoleMap 7 0 R /K 9 0 R >>
endobj
32 0 obj
[ 103 [ 525 ] 116 [ 525 ] ]
Expand Down
2 changes: 1 addition & 1 deletion testfiles-luatex/test-fakespace-tagpdf.tpf
Original file line number Diff line number Diff line change
Expand Up @@ -2950,7 +2950,7 @@ endobj
<< /Type /StructElem /S /Document /P 5 0 R /K [<</Type /MCR /Pg 11 0 R /MCID 0>> <</Type /MCR /Pg 11 0 R /MCID 1>> <</Type /MCR /Pg 11 0 R /MCID 2>> <</Type /MCR /Pg 11 0 R /MCID 3>> <</Type /MCR /Pg 11 0 R /MCID 4>> <</Type /MCR /Pg 11 0 R /MCID 5>> <</Type /MCR /Pg 11 0 R /MCID 6>> <</Type /MCR /Pg 11 0 R /MCID 7>> <</Type /MCR /Pg 11 0 R /MCID 8>> <</Type /MCR /Pg 11 0 R /MCID 9>> <</Type /MCR /Pg 11 0 R /MCID 10>> <</Type /MCR /Pg 11 0 R /MCID 11>> <</Type /MCR /Pg 11 0 R /MCID 12>> <</Type /MCR /Pg 11 0 R /MCID 13>> <</Type /MCR /Pg 11 0 R /MCID 14>> <</Type /MCR /Pg 11 0 R /MCID 15>> <</Type /MCR /Pg 11 0 R /MCID 16>> <</Type /MCR /Pg 11 0 R /MCID 17>> <</Type /MCR /Pg 11 0 R /MCID 18>> <</Type /MCR /Pg 11 0 R /MCID 19>> <</Type /MCR /Pg 11 0 R /MCID 20>> <</Type /MCR /Pg 11 0 R /MCID 21>> <</Type /MCR /Pg 11 0 R /MCID 22>> <</Type /MCR /Pg 11 0 R /MCID 23>> <</Type /MCR /Pg 11 0 R /MCID 24>> <</Type /MCR /Pg 11 0 R /MCID 25>> <</Type /MCR /Pg 11 0 R /MCID 26>> <</Type /MCR /Pg 11 0 R /MCID 27>> <</Type /MCR /Pg 11 0 R /MCID 28>> <</Type /MCR /Pg 11 0 R /MCID 29>> <</Type /MCR /Pg 11 0 R /MCID 30>> <</Type /MCR /Pg 11 0 R /MCID 31>> <</Type /MCR /Pg 11 0 R /MCID 32>> <</Type /MCR /Pg 11 0 R /MCID 33>> <</Type /MCR /Pg 11 0 R /MCID 34>> <</Type /MCR /Pg 11 0 R /MCID 35>> <</Type /MCR /Pg 11 0 R /MCID 36>> <</Type /MCR /Pg 11 0 R /MCID 37>> <</Type /MCR /Pg 11 0 R /MCID 38>> <</Type /MCR /Pg 11 0 R /MCID 39>> <</Type /MCR /Pg 11 0 R /MCID 40>> <</Type /MCR /Pg 11 0 R /MCID 41>> <</Type /MCR /Pg 11 0 R /MCID 42>> <</Type /MCR /Pg 11 0 R /MCID 43>> <</Type /MCR /Pg 11 0 R /MCID 44>> <</Type /MCR /Pg 11 0 R /MCID 45>> <</Type /MCR /Pg 11 0 R /MCID 46>> <</Type /MCR /Pg 11 0 R /MCID 47>> <</Type /MCR /Pg 11 0 R /MCID 48>> <</Type /MCR /Pg 11 0 R /MCID 49>> <</Type /MCR /Pg 11 0 R /MCID 50>> <</Type /MCR /Pg 11 0 R /MCID 51>> <</Type /MCR /Pg 11 0 R /MCID 52>> <</Type /MCR /Pg 11 0 R /MCID 53>> <</Type /MCR /Pg 11 0 R /MCID 54>> <</Type /MCR /Pg 11 0 R /MCID 55>> <</Type /MCR /Pg 11 0 R /MCID 56>> <</Type /MCR /Pg 11 0 R /MCID 57>> <</Type /MCR /Pg 11 0 R /MCID 58>> <</Type /MCR /Pg 11 0 R /MCID 59>> <</Type /MCR /Pg 11 0 R /MCID 60>> <</Type /MCR /Pg 11 0 R /MCID 61>> <</Type /MCR /Pg 11 0 R /MCID 62>> <</Type /MCR /Pg 11 0 R /MCID 63>> <</Type /MCR /Pg 11 0 R /MCID 64>> <</Type /MCR /Pg 11 0 R /MCID 65>> <</Type /MCR /Pg 11 0 R /MCID 66>> <</Type /MCR /Pg 11 0 R /MCID 67>> <</Type /MCR /Pg 11 0 R /MCID 68>> <</Type /MCR /Pg 11 0 R /MCID 69>> <</Type /MCR /Pg 11 0 R /MCID 70>> <</Type /MCR /Pg 11 0 R /MCID 71>> <</Type /MCR /Pg 11 0 R /MCID 72>> <</Type /MCR /Pg 11 0 R /MCID 73>> <</Type /MCR /Pg 11 0 R /MCID 74>> <</Type /MCR /Pg 11 0 R /MCID 75>> <</Type /MCR /Pg 11 0 R /MCID 76>> <</Type /MCR /Pg 11 0 R /MCID 77>> <</Type /MCR /Pg 11 0 R /MCID 78>> <</Type /MCR /Pg 11 0 R /MCID 79>> <</Type /MCR /Pg 11 0 R /MCID 80>> <</Type /MCR /Pg 11 0 R /MCID 81>> <</Type /MCR /Pg 11 0 R /MCID 82>> <</Type /MCR /Pg 11 0 R /MCID 83>> <</Type /MCR /Pg 11 0 R /MCID 84>> <</Type /MCR /Pg 11 0 R /MCID 85>> <</Type /MCR /Pg 11 0 R /MCID 86>> <</Type /MCR /Pg 11 0 R /MCID 87>> <</Type /MCR /Pg 11 0 R /MCID 88>> <</Type /MCR /Pg 11 0 R /MCID 89>> <</Type /MCR /Pg 11 0 R /MCID 90>> <</Type /MCR /Pg 11 0 R /MCID 91>> <</Type /MCR /Pg 11 0 R /MCID 92>> <</Type /MCR /Pg 11 0 R /MCID 93>> <</Type /MCR /Pg 11 0 R /MCID 94>> <</Type /MCR /Pg 11 0 R /MCID 95>> <</Type /MCR /Pg 11 0 R /MCID 96>> <</Type /MCR /Pg 11 0 R /MCID 97>> <</Type /MCR /Pg 11 0 R /MCID 98>> <</Type /MCR /Pg 11 0 R /MCID 99>> <</Type /MCR /Pg 11 0 R /MCID 100>> <</Type /MCR /Pg 11 0 R /MCID 101>> <</Type /MCR /Pg 11 0 R /MCID 102>> <</Type /MCR /Pg 11 0 R /MCID 103>> <</Type /MCR /Pg 11 0 R /MCID 104>> <</Type /MCR /Pg 11 0 R /MCID 105>> <</Type /MCR /Pg 11 0 R /MCID 106>> <</Type /MCR /Pg 11 0 R /MCID 107>> <</Type /MCR /Pg 11 0 R /MCID 108>> <</Type /MCR /Pg 11 0 R /MCID 109>> <</Type /MCR /Pg 11 0 R /MCID 110>> <</Type /MCR /Pg 11 0 R /MCID 111>> <</Type /MCR /Pg 11 0 R /MCID 112>> <</Type /MCR /Pg 11 0 R /MCID 113>> <</Type /MCR /Pg 11 0 R /MCID 114>> <</Type /MCR /Pg 11 0 R /MCID 115>> <</Type /MCR /Pg 11 0 R /MCID 116>> <</Type /MCR /Pg 11 0 R /MCID 117>> <</Type /MCR /Pg 11 0 R /MCID 118>> <</Type /MCR /Pg 11 0 R /MCID 119>> <</Type /MCR /Pg 11 0 R /MCID 120>> <</Type /MCR /Pg 11 0 R /MCID 121>> <</Type /MCR /Pg 11 0 R /MCID 122>> <</Type /MCR /Pg 11 0 R /MCID 123>> <</Type /MCR /Pg 11 0 R /MCID 124>> <</Type /MCR /Pg 11 0 R /MCID 125>> <</Type /MCR /Pg 11 0 R /MCID 126>> <</Type /MCR /Pg 11 0 R /MCID 127>> <</Type /MCR /Pg 11 0 R /MCID 128>> <</Type /MCR /Pg 11 0 R /MCID 129>> <</Type /MCR /Pg 11 0 R /MCID 130>> <</Type /MCR /Pg 11 0 R /MCID 131>> <</Type /MCR /Pg 11 0 R /MCID 132>> <</Type /MCR /Pg 11 0 R /MCID 133>> <</Type /MCR /Pg 11 0 R /MCID 134>> <</Type /MCR /Pg 11 0 R /MCID 135>> <</Type /MCR /Pg 11 0 R /MCID 136>> <</Type /MCR /Pg 11 0 R /MCID 137>> <</Type /MCR /Pg 11 0 R /MCID 138>> <</Type /MCR /Pg 11 0 R /MCID 139>> <</Type /MCR /Pg 11 0 R /MCID 140>> <</Type /MCR /Pg 11 0 R /MCID 141>> <</Type /MCR /Pg 11 0 R /MCID 142>> <</Type /MCR /Pg 11 0 R /MCID 143>> <</Type /MCR /Pg 11 0 R /MCID 144>> <</Type /MCR /Pg 11 0 R /MCID 145>> <</Type /MCR /Pg 11 0 R /MCID 146>> <</Type /MCR /Pg 11 0 R /MCID 147>> <</Type /MCR /Pg 11 0 R /MCID 148>> <</Type /MCR /Pg 11 0 R /MCID 149>> <</Type /MCR /Pg 11 0 R /MCID 150>> <</Type /MCR /Pg 11 0 R /MCID 151>> ] /ID (ID.01) >>
endobj
5 0 obj
<< /Type /StructTreeRoot /K 9 0 R /IDTree 23 0 R /ParentTree 6 0 R /RoleMap 7 0 R >>
<< /Type /StructTreeRoot /IDTree 23 0 R /ParentTree 6 0 R /RoleMap 7 0 R /K 9 0 R >>
endobj
25 0 obj
[480.5 516.7 444.5 ]
Expand Down
12 changes: 6 additions & 6 deletions testfiles-luatex/test-header-footer.tpf
Original file line number Diff line number Diff line change
Expand Up @@ -171,22 +171,22 @@ endobj
[ 9 0 R 11 0 R 13 0 R 15 0 R 17 0 R 19 0 R ]
endobj
21 0 obj
<< /Type /StructElem /S /Document /P 5 0 R /K [22 0 R 24 0 R] /NS 11 0 R /ID (ID.01) >>
<< /Type /StructElem /S /Document /NS 11 0 R /P 5 0 R /K [22 0 R 24 0 R] /ID (ID.01) >>
endobj
22 0 obj
<< /Type /StructElem /S /text-unit /P 21 0 R /K 23 0 R /NS 15 0 R /ID (ID.02) >>
<< /Type /StructElem /S /text-unit /NS 15 0 R /P 21 0 R /K 23 0 R /ID (ID.02) >>
endobj
23 0 obj
<< /Type /StructElem /S /text /P 22 0 R /K <</Type /MCR /Pg 27 0 R /MCID 0>> /NS 15 0 R /ID (ID.03) >>
<< /Type /StructElem /S /text /NS 15 0 R /P 22 0 R /K <</Type /MCR /Pg 27 0 R /MCID 0>> /ID (ID.03) >>
endobj
24 0 obj
<< /Type /StructElem /S /text-unit /P 21 0 R /K 25 0 R /NS 15 0 R /ID (ID.04) >>
<< /Type /StructElem /S /text-unit /NS 15 0 R /P 21 0 R /K 25 0 R /ID (ID.04) >>
endobj
25 0 obj
<< /Type /StructElem /S /text /P 24 0 R /K <</Type /MCR /Pg 27 0 R /MCID 1>> /NS 15 0 R /ID (ID.05) >>
<< /Type /StructElem /S /text /NS 15 0 R /P 24 0 R /K <</Type /MCR /Pg 27 0 R /MCID 1>> /ID (ID.05) >>
endobj
5 0 obj
<< /Type /StructTreeRoot /K 21 0 R /IDTree 35 0 R /ParentTree 6 0 R /RoleMap 7 0 R /Namespaces 8 0 R >>
<< /Type /StructTreeRoot /Namespaces 8 0 R /IDTree 35 0 R /ParentTree 6 0 R /RoleMap 7 0 R /K 21 0 R >>
endobj
36 0 obj
[ 35 [ 556 ] 72 [ 278 ] 82 [ 500 ] 109 [ 556 ] ]
Expand Down
2 changes: 1 addition & 1 deletion testfiles-luatex/test-header-tagging.tpf
Original file line number Diff line number Diff line change
Expand Up @@ -323,7 +323,7 @@ endobj
<< /Type /StructElem /S /Document /P 5 0 R /K [<</Type /MCR /Pg 11 0 R /MCID 1>> <</Type /MCR /Pg 11 0 R /MCID 3>> <</Type /MCR /Pg 16 0 R /MCID 0>> <</Type /MCR /Pg 11 0 R /MCID 2>> <</Type /MCR /Pg 11 0 R /MCID 4>> <</Type /MCR /Pg 11 0 R /MCID 0>> <</Type /MCR /Pg 11 0 R /MCID 5>> <</Type /MCR /Pg 16 0 R /MCID 1>> <</Type /MCR /Pg 19 0 R /MCID 0>> <</Type /MCR /Pg 22 0 R /MCID 0>> ] /ID (ID.01) >>
endobj
5 0 obj
<< /Type /StructTreeRoot /K 9 0 R /IDTree 26 0 R /ParentTree 6 0 R /RoleMap 7 0 R >>
<< /Type /StructTreeRoot /IDTree 26 0 R /ParentTree 6 0 R /RoleMap 7 0 R /K 9 0 R >>
endobj
27 0 obj
[ 27 [ 750 500 ] 35 [ 556 ] 42 [ 722 444 ] 45 [ 278 764 556 ] 49 [ 681 444 ] 54 [ 653 306 ] 57 [ 500 ] 59 [ 500 ] 63 [ 556 333 361 278 ] 68 [ 306 ] 71 [ 625 278 ] 74 [ 917 833 750 556 ] 81 [ 500 500 681 556 ] 88 [ 278 ] 90 [ 778 528 ] 96 [ 392 556 394 278 ] 103 [ 333 ] 105 [ 389 500 500 750 556 ] 111 [ 750 528 ] 114 [ 722 ] 118 [ 528 ] ]
Expand Down
Loading

0 comments on commit 875af80

Please sign in to comment.