From 97649e7d9e2120ae1cf2b221d7df6f93f80c6c37 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 2 Dec 2021 21:56:38 +0000 Subject: luafindfont git-svn-id: svn://tug.org/texlive/trunk@61207 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/support/luafindfont/luafindfont-doc.tex | 253 +++++++++++++++++++++ 1 file changed, 253 insertions(+) create mode 100644 Master/texmf-dist/doc/support/luafindfont/luafindfont-doc.tex (limited to 'Master/texmf-dist/doc/support/luafindfont/luafindfont-doc.tex') diff --git a/Master/texmf-dist/doc/support/luafindfont/luafindfont-doc.tex b/Master/texmf-dist/doc/support/luafindfont/luafindfont-doc.tex new file mode 100644 index 00000000000..b051447e549 --- /dev/null +++ b/Master/texmf-dist/doc/support/luafindfont/luafindfont-doc.tex @@ -0,0 +1,253 @@ + %% $Id: findfont-doc.tex 16 2021-11-07 19:42:57Z hvoss $ +% +\listfiles\setcounter{errorcontextlines}{100} +\documentclass[paper=a4,fontsize=11pt,DIV=14,parskip=half-, + captions=tableabove,twoside=on]{scrartcl} +\usepackage{fontspec} +%\usepackage{libertinus-otf} +\setmainfont{AccanthisADFStdNo3}[ + UprightFont =*-Regular, + BoldFont =*-Bold, + ItalicFont =*-Italic, + BoldItalicFont=*-BoldItalic, + RawFeature = -rlig, +] +\setsansfont{GilliusADF}[ + UprightFont =*-Regular, + BoldFont =*-Bold, + ItalicFont =*-Italic, + BoldItalicFont=*-BoldItalic, + RawFeature = -rlig, +] +\setmonofont{DejaVu Sans Mono}[Scale=MatchLowercase,FakeStretch=0.9] +%\setmonofont{Anonymous Pro}[Scale=MatchLowercase,FakeStretch=0.9] + +\usepackage[english]{babel} +\usepackage{scrlayer-scrpage} +\automark[section]{section} +\automark*[subsection]{} +\pagestyle{scrheadings} + +{\catcode`\%=12 + \gdef\perCent{%} + \gdef\DoubleperCent{%%} +} + +\usepackage{xcolor,fancyvrb,varioref} +\usepackage{xltabular,pdflscape} +\usepackage{hvlogos} % for Wikipedia W +\usepackage{listings} +\usepackage{dtk-extern} % for Wikipedia W +\lstset{basicstyle=\ttfamily\small,language=[LaTeX]TeX} +\usepackage{ragged2e} +\usepackage{makeidx}\makeindex +\usepackage{hvindex} +\def\Lfile#1{\texttt{#1}\index{#1 file@\texttt{#1} file}} +\def\Lext#1{\texttt{.#1}\index{#1 file extension@\texttt{.#1} file extension}} +\def\Lcs#1{\texttt{\textbackslash#1}\index{#1@\texttt{\textbackslash#1}}} +\def\Lenv#1{\texttt{#1}\index{#1 environment@\texttt{#1} environment}} +\def\Lpack#1{\texttt{#1}\index{#1 package@\texttt{#1} package}} +\def\Lprog#1{\texttt{#1}\index{#1 program@\texttt{#1} program}} +\def\Loption#1{\texttt{#1}\index{#1@\texttt{#1} package option}} +\def\Largb#1{\emph{\{#1\}}} + +%\usepackage[bibstyle=dtk]{biblatex} +%\addbibresource{\jobname.bib} + +\raggedbottom +\usepackage{url} +\usepackage[colorlinks,linktocpage]{hyperref} + +\makeatletter% from: doc.sty +\newcommand*\GetFileInfo[1]{% + \def\filename{#1}% + \def\@tempb##1 ##2 ##3\relax##4\relax{% + \def\filedate{##1}% + \def\fileversion{##2}% + \def\fileinfo{##3}}% + \edef\@tempa{\csname ver@#1\endcsname}% + \expandafter\@tempb\@tempa\relax? ? \relax\relax} +\makeatother + +%\GetFileInfo{xltabular.sty} +\usepackage{xspace} + +\newcommand\FF{\texttt{luafindfont}\xspace} + +\def\setVersion#1{\setVVersion#1!!} +\def\setVVersion#1=#2!!{\def\luafindfontVersion{#2}} + +\setVersion{version = 0.04}% can be automatically changed by perl + +\setkeys{dtk}{cleanup=true,force} + +\title{Program \texttt{luafindfont} \\--\\ \normalsize \luafindfontVersion\ (\today)} +\author{\shortstack{Herbert Voß\\\small \href{mailto:hvoss@tug.org}{hvoss@tug.org}}} +\date{} +\begin{document} +\maketitle +\thispagestyle{empty} +\enlargethispage{1cm} +\tableofcontents + +\vfill +Thanks to: \\ +Rolf Niepraschk; +\clearpage + +\section{Introduction} +The Lua program +\FF is a program for searching installed fonts which are usable for \LuaLaTeX\ and \XeLaTeX. +The already existing Lua program \Lprog{luaotfload-tool} can also be used for searching, but +the search-interface is somewhat cryptic and too complex for a user, who wants only to know +if a font is present or not. And if present, wher can it be found. For example: + +\begin{verbatim} +H-MacBook:~ voss$ +H-MacBook:~ voss$ luaotfload-tool --find=times +luaotfload | resolve : Font "times" found! +luaotfload | resolve : Resolved file name "/System/Library/Fonts/Times.ttc", subfont nr. 0 +H-MacBook:~ voss +H-MacBook:~ voss$ luaotfload-tool --fuzzy --find="times new roman" +luaotfload | resolve : Font "times new roman" found! +luaotfload | resolve : Resolved file name "/System/Library/Fonts/Supplemental/Times New Roman.ttf" +H-MacBook:~ voss$ +\end{verbatim} + +But this are not \emph{all} Times fonts. Compare it with the output of \Lprog{luafindfont}, +where the searchname \emph{times} must only be a part of a longer name: + +\begin{verbatim} +bash-3.2$ ./luafindfont.lua times +We are using Lua 5.3 +Check for file /usr/local/texlive/texmf-var/luatex-cache/generic/names/luaotfload-names + Nr. Fontname Symbolic Name Path + 1. Times New Roman Bold Italic.ttf timesnewroman /Users/voss/Library/Fonts/Times/ + 2. Times New Roman Bold Italic.ttf timesnewroman /System/Library/Fonts/Supplemental/ + 3. Times New Roman Bold.ttf timesnewroman /System/Library/Fonts/Supplemental/ + 4. Times New Roman Bold.ttf timesnewroman /Users/voss/Library/Fonts/Times/ + 5. Times New Roman Italic.ttf timesnewroman /System/Library/Fonts/Supplemental/ + 6. Times New Roman Italic.ttf timesnewroman /Users/voss/Library/Fonts/Times/ + 7. Times New Roman.ttf timesnewroman /System/Library/Fonts/Supplemental/ + 8. Times New Roman.ttf timesnewroman /Users/voss/Library/Fonts/Times/ + 9. Times.ttc times /System/Library/Fonts/ + 10. Times_Sans_Serif.ttf timessansserif /Users/voss/Library/Fonts/Times/ + 11. TimesNewRomanMTStd-Bold.otf timesnewromanmtstd /Users/voss/Library/Fonts/Times/ + 12. TimesNewRomanMTStd-BoldCond.otf timesnewromanmtstd /Users/voss/Library/Fonts/Times/ + 13. TimesNewRomanMTStd-BoldIt.otf timesnewromanmtstd /Users/voss/Library/Fonts/Times/ + 14. TimesNewRomanMTStd-Cond.otf timesnewromanmtstd /Users/voss/Library/Fonts/Times/ + 15. TimesNewRomanMTStd-CondIt.otf timesnewromanmtstd /Users/voss/Library/Fonts/Times/ + 16. TimesNewRomanMTStd-Italic.otf timesnewromanmtstd /Users/voss/Library/Fonts/Times/ + 17. TimesNewRomanMTStd.otf timesnewromanmtstd /Users/voss/Library/Fonts/Times/ + 18. TimesNewRomanPS-BoldItalicMT.otf timesnewromanpsmt /Users/voss/Library/Fonts/Times/ + 19. TimesNewRomanPS-BoldMT.otf timesnewromanpsmt /Users/voss/Library/Fonts/Times/ + 20. TimesNewRomanPSMT.otf timesnewromanpsmt /Users/voss/Library/Fonts/Times/ + 21. TimesNewRomanPSStd-Bold.otf timesnewromanpsstd /Users/voss/Library/Fonts/Times/ + 22. TimesNewRomanPSStd-BoldIt.otf timesnewromanpsstd /Users/voss/Library/Fonts/Times/ + 23. TimesNewRomanPSStd-Italic.otf timesnewromanpsstd /Users/voss/Library/Fonts/Times/ + 24. TimesNewRomanPSStd-Regular.otf timesnewromanpsstd /Users/voss/Library/Fonts/Times/ +\end{verbatim} + + +\subsection{Syntax} + +The \Index{syntax} is + +\verb|luafindfont [...] | + +where \verb|[...]| are optional \Index{argument}s, either in short or +long form which, of course, can be mixed: + +\begin{verbatim} + parameter handling + -q,--quiet + -h,--help + -o,--otfinfo (default 0) + -i,--info (default 0) + -n,--nosymbolicnames + -v... Verbosity output + -m,--max_string (default 90) + (string) +\end{verbatim} + +For example: + +\begin{verbatim} +luafindfont times +luafindfont palatino -o 3 +luafindfont -i 3 -m 50 arial +\end{verbatim} + +\begin{enumerate} +\item \texttt{-q}: quiet; +\item \texttt{-m }: How many columns are used for the font with full path. This can be really long, but with e.g. \verb|-m 50| +the length is limited to 50 characters. +\item \texttt{-o }: For the font with the given number from the font list the program \Lprog{otfinfo} is called + for some generell font informations. +\item \texttt{-i }: For the font with the given number from the font list the existing font styles are listed. +\end{enumerate} + +\section{How it works} +\FF uses the data file \Lfile{luaotfloadtool-names.lua} which is created by \LuaTeX. If it is +missing it will be created by \FF itself. The name of the font should be in lowercase +characters and must not be the complete name. A \verb|time| for finding all fonts with +time in its names is sufficiant. + +\section{Examples} + +\begin{Verbatim} +bash-3.2$ luafindfont segoe +\end{Verbatim} + +\VerbatimInput{Examples/exa01.txt} + +\begin{Verbatim} +bash-3.2$ luafindfont -m 40 libertinus +\end{Verbatim} + +\VerbatimInput{Examples/exa02.txt} + + +\begin{Verbatim} +bash-3.2$ luafindfont -i 9 sego +\end{Verbatim} + +\VerbatimInput{Examples/exa04.txt} + + +\begin{landscape} +\begin{Verbatim}[fontsize=\small] +bash-3.2$ luafindfont -o 6 arial +\end{Verbatim} + +\VerbatimInput[fontsize=\small]{Examples/exa03.txt} + + +\section{List of all fonts} +This possible with the symbolic fontname "*" instead of a real fontname: + +\begin{Verbatim}[fontsize=\small] +bash-3.2$ luafindfont "*" +\end{Verbatim} + +This list maybe really long and is shortend here! + +\VerbatimInput[fontsize=\small]{Examples/exa05.txt} + + +\end{landscape} + + +\begin{Verbatim}[fontsize=\small] +bash-3.2$ luafindfont -n minion +\end{Verbatim} + +\VerbatimInput[fontsize=\small]{Examples/exa06.txt} + + + + + +\printindex + +\end{document} -- cgit v1.2.3