Как стать автором
Обновить

Использование цвета в LaTeX

Время на прочтение5 мин
Количество просмотров80K
Сегодня я хочу вам представить ещё одну статью, посвящённую графическим возможностям издательской системы LaTeX. На сей раз речь пойдёт о цвете. Чаще всего эти возможности LaTeX игнорируются, так как доля цветных публикация довольна мала. К тому же чрезмерное использование цвета может только навредить — пёстрый многоцветный документ трудно читать и смотрится он малопривлекательно. Но умелое использование цвета может очень способствовать восприятию контента: выделение заголовков, подзаголовков, цитат, важных частей текста и даже ячеек таблиц помогает быстро уловить суть, не вчитываясь в подробности.
Так что кому стало интересно, жмём по ссылке:

Цвет в LaTeX


С цветом в системе LaTeX позволяют работать два пакета из коллекции graphics: color и colortbl. Первый позволяет задавать цвет текста и фона, как отдельного блока, так и всего документа, а второй — закрашивать таблицы. Подключим оба пакета в преамбуле документа:
\usepackage[usenames]{color}
\usepackage{colortbl}

Все команды переключения цвета имеют опцию, в которой указывается цветовая модель и обязательные аргументы, в которых задаётся цвет.
Модель named является цветовой моделью по умолчанию. Цвет задаётся одной из восьми констант:
  • black
  • red
  • blue
  • magenta
  • white
  • green
  • cyan
  • yellow

Напоминает восьмибитную палитру DOS. Вот небольшой пример:
\textcolor{blue}{Синий \hbox{$x^2$}}
Синий x2

Цвета именнованные в драйвере dvips. Драйвер dvips содержит определение имён 68 цветов:
  • GreenYellow
  • Yellow
  • Goldenrod
  • Dandelion
  • Apricot
  • Peach
  • Melon
  • YellowOrange
  • Orange
  • BurntOrange
  • Bittersweet
  • RedOrange
  • Mahogany
  • Maroon
  • BrickRed
  • Red
  • OrangeRed
  • RubineRed
  • WildStrawberry
  • Salmon
  • CarnationPink
  • Magenta
  • VioletRed
  • Rhodamine
  • Mulberry
  • RedViolet
  • Fuchsia
  • Lavender
  • Thistle
  • Orchid
  • DarkOrchid
  • Purple
  • Plum
  • Violet
  • RoyalPurple
  • BlueViolet
  • Periwinkle
  • CadetBlue
  • CornflowerBlue
  • MidnightBlue
  • NavyBlue
  • RoyalBlue
  • Blue
  • Cerulean
  • Cyan
  • ProcessBlue
  • SkyBlue
  • Turquoise
  • TealBlue
  • Aquamarine
  • BlueGreen
  • Emerald
  • JungleGreen
  • SeaGreen
  • Green
  • ForestGreen
  • PineGreen
  • LimeGreen
  • YellowGreen
  • SpringGreen
  • OliveGreen
  • RawSienna
  • Sepia
  • Brown
  • Tan
  • Gray
  • Black
  • White

Тут, как видим, возможности несколько шире. Пример мало отличается от предыдущего:
\textcolor{Orange}{Оранжевый $\bigcup$.}
Оранжевый ∪

Модель rgb. В модели rgb любой цвет получается в результате смешения лучей света трёх базовых цветов: красного (red), зелёного (green) и синего (blue). Вообще данную модель не применяют в полиграфии, так как она основана на цветных лучах света (как в кинескопе, наших ЖК-мониторах или на фотоплёнке). Для печати традиционно используется модель cmyk, о которой речь пойдёт ниже.
Спецификация цвета в модели rgb задаётся трёмя перечисленными через запятую числами в диапазоне от 0 до 1, которые соответствуют интенсивности базовых составляющих цвета. Например, желтый цвет задаётся как 1, 1, 0, белый — как 1, 1, 1, а 0, 0, 0 — даёт чёрный цвет.

Модель gray. Серый цвет получается при смешении в равных пропорциях базовых цветов из модели rgb с интенсивностью меньше единицы. Спецификация цвета в модели gray задаётся одним числом от 0 до 1, например 0.5 вместо 0.5, 0.5, 0.5 в модели rgb. Чёрному цвету соответсвует 0, белому — 1.

Модель cmyk. Если на лист бумаги нанести красную краску и затем осветить его белым светом, то только красная составляющая света отразится от бумаги. Нанесём теперь на бумагу красную краску густо посаженными точками, а затем заполним все промежутки между красными точками зелёной краской. Теперь от листа бумаги отразится как красный, так и зелёный свет. Издали различить отдельные точки нельзя, поэтому глаз получит смесь красного и зелёного цвета и бумага выглядит жёлтой. [Если краски наносить не точками, а сплошной заливкой, то краска перемешается и получится грязный красноватый цвет.]
На этом основывается цветовая модель cmyk. В этой модели спецификация цвета задаётся четырьмя перечисленными через запятую числами от 0 до 1, которые соответствуют «количеству» голубой (cyan), пурпурной (magenta), жёлтой (yellow) и чёрной (black) краски на белом листе бумаги. Белому цвету соответствует спецификация 0, 0, 0, 0 (на белом листе бумаги нет никакой краски), а чёрному — 0, 0, 0, 1.

Цветной текст


Изменить цвет текста в документе можно либо командой
\textcolor[model]{spec}{text}
либо декларацией
{\color[model]{spec}text}
Здесь model — цветовая модель, spec — спецификация цвета.
Пример:
\textcolor{red}{Красный,} \textcolor[cmyk]{0,1,1,0}{опять красный,}
\textcolor[rgb]{1,0,0}{и ещё раз красный!}

Красный, опять красный, и ещё раз красный!

Цветные боксы


Команда
\colorbox[model]{spec}{lr-text}
помещает, подобно команде \mbox, текст lr-text в бокс, у которого цвет фона задан аргументами model и spec. Здесь model — цветовая модель, spec — спецификация цвета. Команда
\fcolorbox[model]{fr-spec}{spec}{lr-text}
дополнительно обводит этот бокс рамкой цвета fr-spec. Пример:
\fcolorbox{red}{yellow}{Текст\dots}
Текст...

Цветной фон страницы


Изменить цвет страницы можно декларацией
\pagecolor[model]{spec}
Здесь model — цветовая модель, spec — спецификация цвета. Область действия декларации не ограничевается никакими скобками. Чтобы вернуть белый цвет страниц, надо вызвать команду \pagecolor{white}.

Цветные таблицы


Пакет colortbl, используя пакеты color и array, позволяет раскрашивать таблицы. Цвета задаются также, как в пакете color.
Команда
\columncolor[model]{spec}[left-overhang][right-overhang]
задаёт цвет столбца таблицы цветом, заданным первыми двумя аргументами. Опции left-overhang и right-overhang задают расстояния слева и справа между краями окрашенной области и текстом. Если указан только один аргумент, то он задаёт оба расстояния.
Команда
\rowcolor[model]{spec}[left-overhang][right-overhang]
окрашивает строку таблицы. Её место в начале строки.
Следующие примеры помогут во всём разобраться.
\begin{tabular}{%
|>{\color{white}\columncolor{black}}l|
>{\columncolor{yellow}[.6\tabcolsep]}c|
>{\columncolor[gray]{.8}}r|}
один & два & три \\ четыре & пять & шесть
\end{tabular}



\begin{tabular}{|l|c|}
\rowcolor[gray]{.9} один & два \\
\rowcolor[gray]{.6} три & четыре
\end{tabular}



\newcolumntype{H}{>{\columncolor{magenta}}c}
\begin{tabular}{%
|>{\columncolor{yellow}}l|
>{\color{white}\columncolor{black}}l|}
\multicolumn{2}{|H|}{один} \\
два & три \\ четыре & пять
\end{tabular}



\def\tabrowsep{\noalign{\vskip 2pt}}
\newcolumntype{H}{%
>{\columncolor[gray]{.9}}p{1.7cm}}
\begin{tabular}[t]{*2H}
\rowcolor[gray]{.6}один & два\\\tabrowsep три & четыре \\\tabrowsep
пять & шесть
\end{tabular}



\setlength\arrayrulewidth{2pt}\arrayrulecolor{blue}
\setlength\doublerulesep{2pt}\doublerulesepcolor{yellow}
\begin{tabular}{||l||c||}
\hline\hline
один & два \\ три & четыре \\
\hline\hline
\end{tabular}



\begin{tabular}{||l|c||}
\hhline{|t:=:t:=:t|}
один & два \\ три & четыре \\
\hhline{|b:=:b:=:b|}
\end{tabular}



\newcommand\rgbline[1]{\hhline{>{\arrayrulecolor{red}}|#1:=%
>{\arrayrulecolor{green}}=>{\arrayrulecolor{blue}}=:#1|}}
\arrayrulecolor{red}
\begin{tabular}{||*3c||}\rgbline{t}
red & green & \multicolumn{1}{c||}{blue}\\
\rgbline{b}\end{tabular}



Ну вот собственно и всё. Для написания статьи использовалась книга Владимира Сюткина «Цвет в LaTeX2e». Надеюсь, кому-нибудь будет полезной эта статья. Тут лежит оригинал статьи. Спасибо.
Теги:
Хабы:
Всего голосов 17: ↑16 и ↓1+15
Комментарии8

Публикации

Истории

Ближайшие события

15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
22 – 24 ноября
Хакатон «AgroCode Hack Genetics'24»
Онлайн
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань