LaTeX. Пакет calendar
Набор пакетов calendar позволяет создавать различные виды календарей (на год, месяц, неделю), а также расписания, графики работы и т.д. Если в используемом дистрибутиве LaTeX нет данного пакета, его можно скачать и установить.
По умолчания для составления календаря применяется английский язык. Для использования русского языка необходимо в файл dates.cfg, который находится в каталоге calendar, вручную добавить перевод дней недели и месяцев.
Рассмотрим, как создать календарь, аналогичный тем, которые можно приобрести в магазине. Почти во всех таких календарях обозначены праздники и важные события. Это без труда можно сделать и с помощью данного пакета. Для этого в том же каталоге, в котором лежит исходный .tex-файл нашего календаря, создаём файл с расширением .cld, например, firstlist.cld. В этот файл записываем все праздники в таком формате:
месяц число год время {праздник}
Например:
Янв 1 2013 {Новый год}
Март 8 2013 {Международный женский день}
В файл secondlist.cld можно записать события другого типа, например, дни рождения.
Кстати, создавать наш календарь будем с помощью стиля monthly. Вот исходный текст:
\documentclass[a4paper]{article} \usepackage[koi8-r]{inputenc} \usepackage[russian]{babel} \usepackage{margins} \usepackage{lscape} \parindent=0pt \usepackage{color} \usepackage{paratype} \usepackage{monthly} \begin{document} \margins{1.5cm} \begin{landscape} \begin{monthly}{firstday=1,daynametype=\small,texttype=\normalsize, titletype=\Large,datetype=\Large}{firstlist:red,secondlist:blue} Jan 1 2013 to 31 Dec 2013 \end{monthly} \end{landscape} \end{document}
Думаю, требуется несколько пояснений.
Опция firstday окружения monthly позволяет задать первым днём недели понедельник (по умолчанию — воскресенье). Опции daynametype, texttype, titletype и datetype устанавливают размеры шрифта для названий дней недели, месяца, текста событий.
Опции firstlist:red, secondlist:blue подключают файлы firstlist.cld и secondlist.cld, при этом события из файла firstlist будут напечатаны красным цветом, а из файла secondlist — синим. Строка Jan 1 2013 to 31 Dec 2013 позволит нам сформировать календарь на целый год.
Пакет lscape подключается для того, чтобы страницы календаря имели альбомную ориентацию.
А вот одна страничка календаря, который должен получиться в результате: