LINUX.ORG.RU

[LaTeX] Проблема при смене шрифта

 


0

1

Пытаюсь сменить шрифт:

\usepackage[utf8]{inputenc}
\usepackage[english, russian]{babel} 
\usepackage[T2A]{fontenc}

\usepackage{fontspec}
\setmonofont{Droid Sans Mono} % <-------

Если не писать \usepackage{fontspec}, то выдает, что не знает, что такое setmonofont, а если писать, то выдается очень много таких ошибок:
! I can't find file `'. <*> \mode:=ljfour; mag:=1; nonstopmode; input Please type another input file name ! Emergency stop. <*> \mode:=ljfour; mag:=1; nonstopmode; input Transcript written on mfput.log.

что я не подключил ?


Не знаю, может надо \setmainfont{название}?
Вот моя шапка файла *.tex :

\documentclass[a4paper,oneside,titlepage,10pt]{extbook} 
\usepackage{hyperref}
\usepackage{amsmath, amsthm}
\usepackage{indentfirst}
\usepackage[dvipdf]{graphicx}
\usepackage{subfigure}
\usepackage{anysize}
\usepackage[english,russian,ukrainian]{babel}
\usepackage{wrapfig} %пакет для текста в оборку вокруг рисунка

\usepackage{fontspec}
\usepackage{multicol}
\usepackage{xecyr}
\usepackage{xunicode}
\usepackage{xltxtra}
\usepackage[cm-default]{fontspec} %смотрите также параметры fontspec
\setmainfont{Charis SIL}


\usepackage[left=1.5cm,right=1.5cm,top=1.5cm,bottom=1.5cm,bindingoffset=0cm]{geometry}
\usepackage{setspace}
\onehalfspacing % one-and-half spacing globally

blinkenlichten
()

Я привел пример для XeLaTeX(компилировать также, только команда xelatex вместо latex).
Не знаю можно-ли в обычном LaTeX для юникода выбирать шрифты командой
\setmainfont{..} или иной такого типа, по-моему нельзя.

blinkenlichten
()
Ответ на: комментарий от blinkenlichten

Нужно было запускать через lualatex.

но через lualatex не отображает русские буквы.

AoD314
() автор топика
Ответ на: комментарий от anonymous

Оказывается, для того, чтобы появился русский текст нужно до определить \setmainfont{}

Существует ли возможность использовать Computer Modern в качестве основного и Droid Sans Mono в качестве mono шрифта ?

AoD314
() автор топика
Ответ на: комментарий от AoD314

Да, используйте XeLaTeX. Даже кодировку не нужно явно указывать, он прекрасно работает с текстом в utf-8.

\documentclass[12pt,a4paper]{article}
\usepackage{fontspec}
\usepackage[ukrainian,english]{babel}
\defaultfontfeatures{Scale=MatchLowercase}
%%%%%%%%%%%%%%% Font Section %%%%%%%%%%%%%%%
\setmainfont[Mapping=tex-text]{Times Ten LT Std}
\setsansfont[Mapping=tex-text]{Myriad Pro}
\setmonofont{Monaco}

\usepackage{amssymb,amsmath,epsfig,xunicode,xltxtra,xecyr,indentfirst}

nikitos ★★★
()
Ответ на: комментарий от AoD314

Вроде все получилось. Собираю через xelatex. Окончательный вариант:

\documentclass[12pt, a4paper, utf8, draft]{article}
\usepackage[utf8]{inputenc}
\usepackage[T2A]{fontenc}
\usepackage[english, russian]{babel}
\usepackage{xltxtra}
\usepackage{xecyr}

\usepackage{fontspec}
\defaultfontfeatures{Scale=MatchLowercase}
\setmainfont[Mapping=tex-text]{Liberation Serif}
\setsansfont[Mapping=tex-text]{Liberation Sans}
\setmonofont{Droid Sans Mono}

% разрешаю увеличить расстояние между словами не больше чем на 14pt, что бы не было переполнения
\emergencystretch=14pt

AoD314
() автор топика
Ответ на: комментарий от srj

Или вы про прямоугольник? Тогда надо отключить опцию draft.

Я знаю. Я хотел показать, что в одном случае он нормально переносити, а в другом тупит чёта ((

AoD314
() автор топика
Ответ на: комментарий от AoD314

> \usepackage[T2A]{fontenc} зачем тут T2A?

По поводу переносов - предполагаю, что для babel нужно русский первым указывать (хотя сомневаюсь).

nikitos ★★★
()
Ответ на: комментарий от AoD314

Он не тупит. Настройте penalty для переносов. У Львовского про это, вроде, было.

srj ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.