summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/fontspec/fontspec-fontload.dtx
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-01-30 23:00:25 +0000
committerKarl Berry <karl@freefriends.org>2016-01-30 23:00:25 +0000
commit0911ade404142a305ac949e3c53934a536168c3b (patch)
treea701776f43e3bddd09795208a8c3ed63ab5041cc /Master/texmf-dist/source/latex/fontspec/fontspec-fontload.dtx
parentb9447fda2f7279a83d10a110619ece7d753633b0 (diff)
fontspec (30jan16)
git-svn-id: svn://tug.org/texlive/trunk@39512 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/fontspec/fontspec-fontload.dtx')
-rw-r--r--Master/texmf-dist/source/latex/fontspec/fontspec-fontload.dtx73
1 files changed, 73 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/fontspec/fontspec-fontload.dtx b/Master/texmf-dist/source/latex/fontspec/fontspec-fontload.dtx
new file mode 100644
index 00000000000..566be0aeeb9
--- /dev/null
+++ b/Master/texmf-dist/source/latex/fontspec/fontspec-fontload.dtx
@@ -0,0 +1,73 @@
+
+% \section{expl3 interface for font loading}
+%
+% \iffalse
+% \begin{macrocode}
+%<*fontspec&(xetexx|luatex)>
+% \end{macrocode}
+% \fi
+%
+% \begin{macrocode}
+\cs_set:Nn \@@_fontwrap:n { "#1" }
+% \end{macrocode}
+%
+% \begin{macrocode}
+\cs_set:Npn \@@_primitive_font_set:Nnn #1#2#3
+ {
+ \font #1 = #2 ~at~ #3 \scan_stop:
+ }
+
+\cs_set:Npn \@@_primitive_font_gset:Nnn #1#2#3
+ {
+ \global \font #1 = #2 ~at~ #3 \scan_stop:
+ }
+
+\cs_set:Npn \@@_font_suppress_not_found_error:
+ {
+ \int_set_eq:NN \xetex_suppressfontnotfounderror:D \c_one
+ }
+
+\prg_set_conditional:Nnn \@@_font_if_null:N {p,TF,T,F}
+ {
+ \ifx #1 \nullfont
+ \prg_return_true:
+ \else
+ \prg_return_false:
+ \fi
+ }
+% \end{macrocode}
+%
+%
+% \begin{macro}{\fontspec_set:Nnn,\fontspec_gset:Nnn}
+% Wrapper around \cs{font_set:Nnn} and \cs{font_gset:Nnn}.
+% \begin{macrocode}
+\cs_new:Nn \@@_font_set:Nnn
+ {
+ \@@_primitive_font_set:Nnn #1 { \@@_fontwrap:n {#2} } {#3}
+ }
+\cs_new:Nn \@@_font_gset:Nnn
+ {
+ \@@_primitive_font_gset:Nnn #1 { \@@_fontwrap:n {#2} } {#3}
+ }
+% \end{macrocode}
+% \end{macro}
+%
+%
+% \begin{macro}{\font_glyph_if_exist:NnTF}
+% \begin{macrocode}
+\prg_new_conditional:Nnn \font_glyph_if_exist:Nn {p,TF,T,F}
+ {
+ \etex_iffontchar:D #1 #2 \scan_stop:
+ \prg_return_true:
+ \else:
+ \prg_return_false:
+ \fi:
+ }
+% \end{macrocode}
+% \end{macro}
+%
+% \iffalse
+% \begin{macrocode}
+%</fontspec&(xetexx|luatex)>
+% \end{macrocode}
+% \fi