Alguém acabou de me sugerir no contexto deoutra perguntaconsiderar uma ou duas \fontfamily{...}\fontseries{...}
combinações; mas não estou muito interessado nessas opções. Como posso verificartodostais combinações instaladas/disponíveis no meu sistema?
Observação:Eu ficaria bem em fazer isso fora do LaTeX, por exemplo, a partir do shell ou até mesmo usando algum mecanismo específico de distribuição do TeX (eu uso o TeXLive) - se não houver opção melhor.
Responder1
Responder2
As descrições das fontes geralmente são mantidas em .fd
arquivos (mas não é obrigatório, alguns pacotes podem definir as fontes diretamente no .sty
arquivo).
O comando shell
fd '^[tT]1.*\.fd$' /usr/local/texlive/2017/texmf-dist/tex/latex | wc -l
(fd
é um script que fornece uma interface mais simples que find
) retorna 555.
Portanto, existem 555 famílias de fontes que suportam a codificação T1 (e 502 para a codificação OT1, com uma linha de comando semelhante).
Agora sua tarefa é olhar dentro de cada .fd
arquivo de seu interesse e extrair as informações relacionadas à forma e série fornecidas na família de fontes. Apenas por exemplo, T1Roboto-LF.fd
contém
%% Generated by autoinst on 2015/09/15
%%
\ProvidesFile{T1Roboto-LF.fd}
[2015/09/15 (autoinst) Font definitions for T1/Roboto-LF.]
\expandafter\ifx\csname Roboto@scale\endcsname\relax
\let\Roboto@@scale\@empty
\else
\edef\Roboto@@scale{s*[\csname Roboto@scale\endcsname]}%
\fi
\DeclareFontFamily{T1}{Roboto-LF}{}
\DeclareFontShape{T1}{Roboto-LF}{l}{sc}{
<-> \Roboto@@scale Roboto-Light-lf-sc-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{l}{n}{
<-> \Roboto@@scale Roboto-Light-lf-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{l}{it}{
<-> \Roboto@@scale Roboto-LightItalic-lf-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{l}{scit}{
<-> \Roboto@@scale Roboto-LightItalic-lf-sc-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{l}{scsl}{
<-> ssub * Roboto-LF/l/scit
}{}
\DeclareFontShape{T1}{Roboto-LF}{l}{sl}{
<-> ssub * Roboto-LF/l/it
}{}
\DeclareFontShape{T1}{Roboto-LF}{k}{sc}{
<-> \Roboto@@scale Roboto-Black-lf-sc-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{k}{n}{
<-> \Roboto@@scale Roboto-Black-lf-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{k}{it}{
<-> \Roboto@@scale Roboto-BlackItalic-lf-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{k}{scit}{
<-> \Roboto@@scale Roboto-BlackItalic-lf-sc-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{k}{scsl}{
<-> ssub * Roboto-LF/k/scit
}{}
\DeclareFontShape{T1}{Roboto-LF}{k}{sl}{
<-> ssub * Roboto-LF/k/it
}{}
\DeclareFontShape{T1}{Roboto-LF}{b}{sc}{
<-> \Roboto@@scale Roboto-Bold-lf-sc-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{b}{n}{
<-> \Roboto@@scale Roboto-Bold-lf-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{b}{it}{
<-> \Roboto@@scale Roboto-BoldItalic-lf-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{b}{scit}{
<-> \Roboto@@scale Roboto-BoldItalic-lf-sc-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{b}{scsl}{
<-> ssub * Roboto-LF/b/scit
}{}
\DeclareFontShape{T1}{Roboto-LF}{b}{sl}{
<-> ssub * Roboto-LF/b/it
}{}
\DeclareFontShape{T1}{Roboto-LF}{mb}{sc}{
<-> \Roboto@@scale Roboto-Medium-lf-sc-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{mb}{n}{
<-> \Roboto@@scale Roboto-Medium-lf-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{mb}{it}{
<-> \Roboto@@scale Roboto-MediumItalic-lf-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{mb}{scit}{
<-> \Roboto@@scale Roboto-MediumItalic-lf-sc-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{mb}{scsl}{
<-> ssub * Roboto-LF/mb/scit
}{}
\DeclareFontShape{T1}{Roboto-LF}{mb}{sl}{
<-> ssub * Roboto-LF/mb/it
}{}
\DeclareFontShape{T1}{Roboto-LF}{m}{sc}{
<-> \Roboto@@scale Roboto-Regular-lf-sc-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{m}{n}{
<-> \Roboto@@scale Roboto-Regular-lf-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{m}{it}{
<-> \Roboto@@scale Roboto-Italic-lf-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{m}{scit}{
<-> \Roboto@@scale Roboto-Italic-lf-sc-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{m}{scsl}{
<-> ssub * Roboto-LF/m/scit
}{}
\DeclareFontShape{T1}{Roboto-LF}{m}{sl}{
<-> ssub * Roboto-LF/m/it
}{}
\DeclareFontShape{T1}{Roboto-LF}{t}{sc}{
<-> \Roboto@@scale Roboto-Thin-lf-sc-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{t}{n}{
<-> \Roboto@@scale Roboto-Thin-lf-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{t}{it}{
<-> \Roboto@@scale Roboto-ThinItalic-lf-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{t}{scit}{
<-> \Roboto@@scale Roboto-ThinItalic-lf-sc-t1
}{}
\DeclareFontShape{T1}{Roboto-LF}{t}{scsl}{
<-> ssub * Roboto-LF/t/scit
}{}
\DeclareFontShape{T1}{Roboto-LF}{t}{sl}{
<-> ssub * Roboto-LF/t/it
}{}
\DeclareFontShape{T1}{Roboto-LF}{bx}{sl}{
<-> ssub * Roboto-LF/b/sl
}{}
\DeclareFontShape{T1}{Roboto-LF}{bx}{scsl}{
<-> ssub * Roboto-LF/b/scsl
}{}
\DeclareFontShape{T1}{Roboto-LF}{bx}{sc}{
<-> ssub * Roboto-LF/b/sc
}{}
\DeclareFontShape{T1}{Roboto-LF}{bx}{n}{
<-> ssub * Roboto-LF/b/n
}{}
\DeclareFontShape{T1}{Roboto-LF}{bx}{it}{
<-> ssub * Roboto-LF/b/it
}{}
\DeclareFontShape{T1}{Roboto-LF}{bx}{scit}{
<-> ssub * Roboto-LF/b/scit
}{}
\endinput
que diz que a fonte fornece a série
l
(luz)k
(preto)b
(audacioso)mb
(negrito médio)m
(médio ou regular)t
(afinar)
e define bx
como um alias para b
.
Os descritores, além de m
e, b
são strings essencialmente arbitrárias. O LaTeX Font Guide ( texdoc fntguide
) lista apenas alguns valores “comuns”. O que um pacote de fontes chama k
pode ser muito diferente de outro.
Responder3
Este site pode ajudar. Útil para verificar as fontes disponíveis.
Responder4
A lista é ainda maior que isso. É aberto. A resposta é x.
Agora que xelatex e lualatex podem acessar fontes do sistema, não apenas fontes tex/latex, a lista cresceu muito.
Avançar,
Suponha que eu use o fontspec
pacote e defina uma família de fontes \setromanfont{Noto Serif}[
e, em seguida, nomeie uma de suas séries 仢ul
e atribua uma fonte não relacionada a essa série, FontFace={仢ul}{n}{Font=SimSun},
e faça isso várias vezes,
e tem
\DeclareRobustCommand{\仢ulseries}{\fontseries{仢ul}\selectfont}
e
\DeclareTextFontCommand{\仢textul}{\仢ulseries}
e então chame a série com
\仢textul{\sampletext} {\仢ulseries \sampletext}
onde \sampletext
é definido como
\newcommand\sampletext{了亶他件}
e faço isso para quantas séries (e formas) eu quiser ou precisar,
então eu recebo
A lista seria limitada por restrições do sistema.