Котельников И., Чеботаев П. LaTeX2e по-русски (1185906), страница 55
Текст из файла (страница 55)
Часть опций является общей для всей коллекции,другая — специфична для отдельных пакетов. К первой группе принадлежатопции выбора драйвера выходного устройства.10.9.1.ДрайверыГрафические пакеты должны знать, какое устройство будет использоваться дляпечати документа или его просмотра на экране монитора. Список драйверов приведен в табл.
10.1. Имена драйверов указываются в необязательном аргументедекларации \usepackage. Следующий пример показывает, как загрузить пакетgraphics для работы с драйвером dvips:\usepackage[dvips]{graphics}По умолчанию загружается драйвер, указанный в файле graphics.cfg, точнотак же, как пакет color по умолчанию загружается с драйвером, заданным вфайле настройки color.cfg.Загружать пакеты более чем с одним драйвером бессмысленно, так как будетиспользован последний. Если несколько пакетов используют общий драйвер, егоможно указать в необязательном аргументе декларации \documentclass (раздел 3.1).10.9.2.Опции пакетов graphics и graphicxРяд опций можно использовать с пакетами graphics, graphicx, epsfig и lscape:draft | final позволяют изменить действие аналогичных опций при выборе класса печатного документа в \documentclass. Если для обработки или просмотра печатного документа, содержащего множество рисунков, требуется немало времени, можно отменить реальное импортирование графических изображений, загрузив пакеты с опцией draft.
В этом случае графические файлыиспользуются компилятором только для получения информации о размерахимпортируемого изображения, а в печатном документе вместо рисунка печатается имя графического файла в рамке с размерами, равными размерурисунка. По умолчанию действует опция final, если она не замещена опциейdraft в \documentclass;hiderotate указывает, что не нужно показывать вращаемый графический объект (возможно потому, что драйвер не может вращать);264Глава 10.
Графика и цветИмпорт графикиВращениеМасштабированиеЦветТаблица 10.1Драйверы графических пакетов. Знаком × отмечены не поддерживаемые функцииdvipdf••••dvips••••dvipsone••••dviwin•×××emtex•×××pctex32••••pctexhp•×××pctexps••••pctexwin•×××pdftex••••psprint•×××tcidvi•×××textures••••truetex•×וvtex••••ДрайверФирма / АвторЛесенко, СергейТ. Рокицки (Rokicki, Tomas)Y&Y, Inc.Х. Сендукас (Sendoukas, Hippocrates)Э. Маттес (Mattes, Eberhard)Personal TEX, Inc.Personal TEX, Inc.Personal TEX, Inc.Personal TEX, Inc.Х.
Хаген (Hagen, Hans)Э. Треворов (Trevorrow, Andrew)Scientific WordBlue Sky ResearchР. Кинч (Kinch, Richard)MicroPress, Inc.Примечание: вместо драйверов dviwindo, oztex, xdvi, имевшихся в ранних версиях коллекции пакетов graphics, следует использовать dvips.10.9. Опции графических пакетов265hidescale указывает, что не нужно показывать масштабируемый графическийобъект (возможно потому, что драйвер не может масштабировать);hiresbb указывает, что размеры ограничивающего бокса следует взять из строки, содержащей %%HiResBoundingBox, а не %%BoundingBox;debugshow требуется при отладке пакета; обычному пользователю вряд ли придётся применять эту опцию.10.9.3.Опции пакета colorТри из четырёх имеющихся опций пакета color контролируют работу с цветовой моделью named.
Изначально эта модель не содержит заранее предопределённых названий цветов, типа тех 68, которые известны драйверу dvips. Опцияdvipsnames заставляет пакет загрузить определения всех этих 68 поименованныхцветов. Противоположная ей опция nodvipsnames предотвращает эту операцию.Опция usenames делает все загруженные поименованные цвета доступными непосредственно в командах переключения цвета, как мы объяснили в разделе 10.7.3.Наконец, опция monochrome приводит к тому, что любые команды, которыеописаны в разделе 10.7, будут проигнорированы. Эта опция необходима при использовании драйвера, который не поддерживает работу с цветом:\usepackage[emtex,monochrome]{color}Это может помочь при предварительном просмотре или распечатке пробныхчёрно-белых копий.Итак, помимо названия драйвера пакет color может иметь следующие опции:dvipsnames | nodvipsnames управляет загрузкой 68 наименований цветов из набора dvipsnames, перечисленных на странице 259.
По умолчанию эти цвета доступны (опция dvipsnames) при выборе драйвера dvips и не доступны(опция nodvipsnames) при выборе любого другого драйвера. Чтобы сделатьисходный текст одинаково пригодным для компиляторов latex и pdflatex,следует всегда загружать пакет color с опцией dvipsnames;usenames делает возможным использование названий цветов, загружаемых опцией dvipsnames, непосредственно в командах переключения цвета без явногоуказания цветовой модели named;monochrome игнорирует команды переключения цвета.Громада двинулась и рассекает волны.Плывёт.
Куда ж нам плыть?А. Пушкин. ОсеньГлава 11Плавающие объектыВ отличие от обычного текста, рисунки и некоторые таблицы нельзя перенести на следующую страницу по частям. Подобные объекты называются боксами (глава 9). Чтобы избежать появления полупустых страниц, большие боксыдолжны уметь «уплывать» в подходящее место, например в верхнюю часть страницы, где они впервые упомянуты. Стандартные классы печатных документоврасполагают двумя процедурами figure и table, которые формируют плавающие объекты. Процедура figure обычно используется для размещения рисунков, созданных процедурой picture (раздел 9.4) или импортированных командой\includegraphics (раздел 10.3.4), а table — для таблиц, созданных процедуройtabular (глава 12).
Однако, по большому счёту, компилятору LATEX безразлично, для размещения каких объектов используются эти процедуры. Единственноеразличие между ними состоит в том, как они подписывают размещаемый объект:Таблица, Рис. или как-то иначе.К плавающим объектам относятся также заметки на полях, которые создаются командой \marginpar. Поскольку размер заметок на полях обычно невелик, имне нужно далеко «уплывать», но они могут переходить с правого поля страницына левое, в зависимости от чётности номера страницы.11.1.Процедуры figure и tableПроцедуры figure (рисунок) и table (таблица) располагаются в исходном тексте обычно там, где впервые упоминаются размещаемые ими объекты. LATEX самостоятельно находит для них свободное место.
Рисунок 11.1 в верхней частиследующей страницы во входном файле описан следующим образом:...место. Рисунок~\ref{fig:2}\begin{figure}\center\includegraphics[height=5cm]{golfer}\caption{Подпись к рисунку} \label{fig:2}\end{figure}в верхней части следующей страницы во входном файле...Тело процедуры figure в данном примере состоит из четырёх команд. Декларация \center (раздел 5.1) обеспечивает центрирование рисунка, который импор-11.1. Процедуры figure и table267Рис. 11.1.
Подпись к рисункутирует команда \includegraphics, причём её синтаксис предполагает, что загружен пакет graphicx (раздел 10.3.4). Подпись к рисунку создаёт команда \caption.Она же печатает порядковый номер рисунка. Команда \label (раздел 3.7), идущая вслед за \caption, метит рисунок, приписывая ему метку (в данном случаеметку fig:2). По этой метке можно сослаться на рисунок в любом месте печатного документа (раздел 3.7).LATEX обрабатывает тело процедур figure и table в текстовой моде. Поэтомудля размещения объектов внутри процедуры можно использовать процедуры типа center, команды \hspace и \vspace. Процедуры figure и table создают абзацтакой же ширины, какую имеет окружающий их текст.
В разделе 10.4 рассказано, как разместить два рисунка рядом друг с другом и ещё о многих другихприёмах форматирования. В теле процедур figure и table может быть болееодной команды \caption. Таким способом можно создавать единый плавающийобъект с несколькими рисунками или таблицами, снабжёнными собственнымиподписями. Рис. 11.2 и 11.3 иллюстрируют эту возможность. Они содержат дватигриных портрета, которые во входном файле описаны следующим образом:\begin{figure}\includegraphics[width=0.47\textwidth]{tiger}\hfill\reflectbox{\includegraphics[width=0.47\textwidth]{tiger}}\\\parbox[t]{0.47\textwidth}{\caption{Это тигр Тай}\label{fig:3}} \hfill\parbox[t]{0.47\textwidth}{\caption{А это его брат-близнец Гер.\\ Он зеркальная копия Тая}\label{fig:4}}\end{figure}Ключи width=0.47\textwidth в аргументах \includegraphics указывают, чтокаждый портрет должен быть отмасштабирован так, чтобы его ширина составила 47% ширины страницы.
Команда \hfill позиционирует портреты на равномрасстоянии друг от друга. Каждый портрет снабжен своей подписью. Они имеюттакую же ширину, как и сами рисунки. Изменение ширины подписей достигает-268Глава 11. Плавающие объектыРис. 11.2. Это тигр ТайРис. 11.3. А это его брат-близнец Гер.Он зеркальная копия Таяся за счёт размещения команды \caption в парбоксе \parbox заданной ширины.Опция t в команде \parbox обеспечивает выравнивание парбоксов по верхнейстроке; без неё подписи к рисункам начинаются на разной высоте, если содержатразное число строк. Наконец, обратим внимание Читателя, что точка в концеподписи к рисунку или заголовка таблицы не ставится, даже если они состоят изнескольких предложений. Издательства обычно требуют, чтобы заголовки таблиц размещались над ними, а подписи к рисункам — под рисунками.