summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/context/base/enco-pfr.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/context/base/enco-pfr.tex')
-rw-r--r--Master/texmf-dist/tex/context/base/enco-pfr.tex45
1 files changed, 31 insertions, 14 deletions
diff --git a/Master/texmf-dist/tex/context/base/enco-pfr.tex b/Master/texmf-dist/tex/context/base/enco-pfr.tex
index 9507d9e4e5b..a74a8c6a72a 100644
--- a/Master/texmf-dist/tex/context/base/enco-pfr.tex
+++ b/Master/texmf-dist/tex/context/base/enco-pfr.tex
@@ -137,6 +137,8 @@
% {\doif{#1}\currentencoding
% {\immediate\pdfobj useobjnum \getvalue{\pdffontresource} stream {#2}}}
+% alternatively we can use object references
+
\long\def\startpdffontresource[#1]#2\stoppdffontresource
{\doif{#1}\currentencoding{\doifdefined\pdffontresource
{\immediate\pdfobj useobjnum \getvalue{\pdffontresource} stream {#2}}}}
@@ -151,20 +153,33 @@
\appendtoksonce \includepdffontresource \to \everyfont
+% \def\includepdffontresource
+% {\ifincludepdffontresources
+% \ifx\pdffontattr\undefined
+% % we're not using (a recent version of) pdftex
+% \else\ifcase\pdfoutput
+% % we're not in pdf mode
+% \else
+% \doincludepdffontresource
+% \fi\fi
+% \fi}
+
\def\includepdffontresource
{\ifincludepdffontresources
- \ifx\pdffontattr\undefined
- % we're not using (a recent version of) pdftex
- \else\ifcase\pdfoutput
- % we're not in pdf mode
- \else
- \doincludepdffontresource
- \fi\fi
+ \expandafter\ifx\the\font\nullfont \else
+ \ifx\pdffontattr\undefined
+ % we're not using (a recent version of) pdftex
+ \else\ifcase\pdfoutput
+ % we're not in pdf mode
+ \else
+ \doincludepdffontresource
+ \fi\fi
+ \fi
\fi}
\def\dododoincludepdffontresource#1% encoding
{\bgroup
- \def\currentencoding{#1}%
+ \edef\currentencoding{#1}%
\doifvaluesomething\pdffontfileresource
{\startreadingfile
\readsysfile{pdfr-\getvalue\pdffontfileresource}\donothing\donothing
@@ -190,9 +205,10 @@
\doifsomething\pdffontfileresource
{\pdfobj reserveobjnum {}%
\setxvalue\pdffontresource{\the\pdflastobj}%
- \doglobal\appendetoks
- \noexpand\dododoincludepdffontresource{\currentencoding}%
- \to \everybeforeshipout}% prevent multiple loading
+ \flushatshipout{\dododoincludepdffontresource{\currentencoding}}}%
+% \doglobal\appendetoks
+% \noexpand\dododoincludepdffontresource{\currentencoding}%
+% \to \everybeforeshipout}% prevent multiple loading
\fi\fi
\ifcsname\pdffontresource\endcsname
\expanded{\pdffontattr\font{/ToUnicode \csname\pdffontresource\endcsname\space0 R}}%
@@ -216,9 +232,10 @@
\doifsomething\pdffontfileresource
{\pdfobj reserveobjnum {}%
\setxvalue\pdffontresource{\the\pdflastobj}%
- \doglobal\appendetoks
- \noexpand\dododoincludepdffontresource{\currentencoding}%
- \to \everybeforeshipout}% prevent multiple loading
+ \flushatshipout{\dododoincludepdffontresource{\currentencoding}}}%
+% \doglobal\appendetoks
+% \noexpand\dododoincludepdffontresource{\currentencoding}%
+% \to \everybeforeshipout}% prevent multiple loading
\fi
\fi
\expandafter\ifx\csname\pdffontresource\endcsname\relax\else