
Meu problema é que a fonte parece mudar quando altero seu tamanho com \fontsize
.
Estou tentando ajustar o tamanho de uma fonte dentro de um acm
bloco de autor de modelo. Estou usando o código deesta postagempara imprimir as informações da fonte.
Quando imprimo as informações da fonte antes de alterar qualquer coisa, recebo a primeira linha. Então eu ligo
\fontsize{13 pt}{1 em} \selectfont
e eu recebo a segunda linha. Finalmente tentei mudar a família com
\fontsize{13 pt}{1 em}\sffamily \selectfont`
e recebo a terceira linha que parece correta, mas parece ampliada em vez de um tamanho de fonte real e também é claramente uma família diferente das outras duas.
Edit: Ao criar um MWE descobri que há alguma estranheza com oarquivo acmcls.
O exemplo é:
\documentclass{acm_proc_article-sp}
\begin{document}
\title{problem with my unit}
\numberofauthors{1}
\makeatletter
\newcommand{\showfont}{encoding: \f@encoding{},
family: \f@family{},
series: \f@series{},
shape: \f@shape{},
size: \f@size{}
}
\author{
\alignauthor
\showfont\\
{\fontsize{13 pt}{1 em} \selectfont \showfont }\\
{\fontsize{13 pt}{1 em}\sffamily \selectfont \showfont }\\
}
\maketitle
\end{document}
Responder1
o link que você deu não é mais bom, masEncontrei uma versão da aula
Observe que isso \fontsize{13 pt}{1 em}
não é um erro, mas os comprimentos são absorvidos neste ponto, antes da fonte ser selecionada, portanto o espaçamento da linha de base será definido como 1em noatualfonte antes desta configuração (que normalmente não será grande o suficiente)
Seu documento com o arquivo de classe encontrado agora produz
Se eu modificar o documento para começar com fontes tx como na sua saída, adicionando
\renewcommand\rmdefault{txr}
\renewcommand\sfdefault{txss}
para o preâmbulo eu recebo
que corresponde mais ou menos ao que você mostra.
Presumivelmente, a questão é por que os tamanhos de 9pt e 13pt são mais ou menos do mesmo tamanho, e o primeiro é sem serifa. O motivo pode ser visto adicionando um \selectfont
antes do primeiro \showfont
. Isso sincroniza a fonte real usada com as macros LaTeX, como \f@size
as que registram o último tamanho de fonte solicitado.
\author{
\alignauthor
\showfont - \selectfont\showfont\\
{\fontsize{13 pt}{1 em} \selectfont \showfont }\\
{\fontsize{13 pt}{1 em}\sffamily \selectfont \showfont }\\
}
produz
onde você vê que \selectfont
força a primeira linha a usar a fonte romana real de 9 pontos, que é visivelmente menor que os 13 pontos da próxima linha.
Sem o \selectfont
fato de as macros serem definidas conforme mostrado por sua \showfont
fonte, a fonte real é uma sans serif de 13 pontos que sobrou da configuração do título.
A razão pela qual as escolhas de fontes não seguem as convenções do látex é a forma infeliz como foram declaradas na classe. Por exemplo, os autores são definidos usando \aufnt
"fonte do autor", mas isso não foi definido em termos do eixo família/tamanho do LaTeX, é definido como
\newfont{\aufnt}{phvr at 12pt}
que é um invólucro muito fino em torno do \font
primitivo e define \aufnt
como uma seleção de fonte primitiva que ignora todas as alterações de fonte relativas ao látex, como \bfseries
alterações de tamanho ou tamanho.