Почему \usepackage[T2A]{fontenc} берет верх?

Почему \usepackage[T2A]{fontenc} берет верх?

Я хочу создать документ со шрифтом без засечек. Я также хочу включить кириллические символы. Эти две цели кажутся взаимоисключающими. Когда я закомментирую \usepackage[T2A]{fontenc}, документ прекрасен, за исключением того, что кириллические символы не будут печататься. Когда я включаю \usepackage[T2A]{fontenc}, документ прекрасен, но это полностью serifшрифт.

Ниже представлен MWE. Часть преамбулы может показаться немного глупой, но она вся включена в шаблон моего университета (см. ссылку ниже). Она действительно скомпилируется, но только с некоторой поддержкой (см.http://helpdesk.ufl.edu/wp-content/uploads/2012/12/latex_spring_2011.zip).

Из того, что я прочитал, ядуматьМне нужно загрузить другое семейство шрифтов. Но я не уверен, правильно ли это, или даже как это сделать.

Как мне создать документ, который включает в себя как символы кириллицы, так иисохраняет свой sans serifшрифт?

\documentclass{article}
\renewcommand{\rmdefault}{ma1}
\renewcommand{\sfdefault}{phv}
\renewcommand{\familydefault}{\sfdefault}
\usepackage{datetime}
\usepackage{qtree}
\usepackage[T1,T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{tipa}
\usepackage{pgfplots}
\usepackage[authoryear]{natbib}
\usepackage{hypernat}
\usepackage[dvipdfm,hyperfootnotes=false]{hyperref}
\hypersetup{colorlinks=true,linkcolor=blue,anchorcolor=blue,citecolor=blue,filecolor=blue,urlcolor=blue,bookmarksnumbered=true,pdfview=FitB} \usepackage{gb4e}
\noautomath
\let\eachwordone=\sffamily
\let\eachwordtwo=\sffamily
\let\eachwordthree=\sffamily

\begin{document}

Todd is a cat. у меня есть машина. я очень харашо.

\end{document}

решение1

Шрифты TeX имеют только 256 слотов. И вы не можете смешивать кодировки, не указав LaTeX сделать это; \textcyrillicопределено с babelпомощью параметра russian, который делает это. Последняя указанная кодировка становится кодировкой по умолчанию.


Это должен быть полный список шрифтов без засечек, доступных также в кодировке T2A (для кириллицы):

\documentclass{article}
\usepackage[T2A,T1]{fontenc}
\usepackage[utf8]{inputenc}

\usepackage[russian,english]{babel}

\renewcommand{\familydefault}{\sfdefault}


\begin{document}

\renewcommand{\sfdefault}{PTSans-TLF}\normalfont
\section{PTSans}

Todd is a cat. \textcyrillic{у меня есть машина. я очень харашо.}


\renewcommand{\sfdefault}{fds}\normalfont
\section{Droid}

Todd is a cat. \textcyrillic{у меня есть машина. я очень харашо.}


\renewcommand{\sfdefault}{fco}\normalfont
\section{Comforta}

Todd is a cat. \textcyrillic{у меня есть машина. я очень харашо.}


\renewcommand{\sfdefault}{fca}\normalfont
\section{Cantarell}

Todd is a cat. \textcyrillic{у меня есть машина. я очень харашо.}


\renewcommand{\sfdefault}{iwona}\normalfont
\section{Iwona}

Todd is a cat. \textcyrillic{у меня есть машина. я очень харашо.}


\renewcommand{\sfdefault}{fos}\normalfont
\section{OpenSans}

Todd is a cat. \textcyrillic{у меня есть машина. я очень харашо.}

\end{document}

Конечно, декларации должны быть приведены в преамбуле, это просто для того, чтобы показать образцы.

введите описание изображения здесь

В следующем примере я показываю результат использования Helvetica (Arial похож) для латинского текста и одного из предыдущих шрифтов для русского текста в кириллице. Выбирайте и определяйте \sfcyrillicвыбранное семейство.

\documentclass{article}
\usepackage[T2A,T1]{fontenc}
\usepackage[utf8]{inputenc}

\usepackage[russian,english]{babel}

\renewcommand{\sfdefault}{phv}
\renewcommand{\familydefault}{\sfdefault}

\newcommand{\sfcyrillic}{} %%% Add here your preference
\usepackage{xpatch}
\xpatchcmd{\Russian}
  {\selectfont}
  {\fontfamily{\sfcyrillic}\selectfont}
  {}{}
\xshowcmd\Russian


\begin{document}

\renewcommand{\sfcyrillic}{PTSans-TLF}\normalfont
\section{PTSans}

Todd is a cat. \textcyrillic{у меня есть машина. я очень харашо.}


\renewcommand{\sfcyrillic}{fds}\normalfont
\section{Droid}

Todd is a cat. \textcyrillic{у меня есть машина. я очень харашо.}


\renewcommand{\sfcyrillic}{fco}\normalfont
\section{Comforta}

Todd is a cat. \textcyrillic{у меня есть машина. я очень харашо.}


\renewcommand{\sfcyrillic}{fca}\normalfont
\section{Cantarell}

Todd is a cat. \textcyrillic{у меня есть машина. я очень харашо.}


\renewcommand{\sfcyrillic}{iwona}\normalfont
\section{Iwona}

Todd is a cat. \textcyrillic{у меня есть машина. я очень харашо.}


\renewcommand{\sfcyrillic}{fos}\normalfont
\section{OpenSans}

Todd is a cat. \textcyrillic{у меня есть машина. я очень харашо.}

\end{document}

введите описание изображения здесь

решение2

Чтобы дополнить более точный ответ egreg для latex, вы можете захотеть взглянуть на xelatex, который поддерживает каждый пакет latex, который я когда-либо пробовал (и даже больше!). Вам просто нужно будет изменить свой движок набора.

Вот код, который позволит вам добиться желаемого с помощью минимального количества строк.

Загрузить новое семейство шрифтов очень просто:

\setmainfont{имясистемногошрифта}

Для этого примера я выбрал (неохотно) Arial, но подойдет любой шрифт, содержащий как кириллические, так и латинские символы.

ОБНОВЛЕННЫЙ КОД ДЛЯ ВКЛЮЧЕНИЯ ПОЛИГЛОССИИ СОГЛАСНО КОММЕНТАРИЮ EGREG

\documentclass[12pt]{article}
\usepackage{fontspec}
\usepackage{polyglossia} %% added for proper hyphening
\setmainfont{Arial}
\begin{document}

Todd is a cat. у меня есть машина. я очень харашо.

\end{document}

Шрифт кириллицы без засечек

Также проверьтеКакие шрифты можно использовать для написания кириллицей в LaTeX

Связанный контент