Декабрь 19, 2019 Просмотры 135 просмотров

TEX и компания

Говорят, что есть на свете доктор Кнут ...

Да-с, трудно представить, чем была бы современная IT-индустрия, не будь на свете этого уникального человека. Чего стоит хотя бы эпопея с изданием 7 томов грандиозной книги «Исскусство программирования для ЭВМ» (в оригинале «The art of computer programming»). Все люди, которым небезразличен прогресс в околокомпьютерном мире, знают, что каждый новый проект профессора Калифорнийского Университета Д. Э. Кнута - это событие мирового значения. И одним из самых знаменитых его проектов является TEX.

Автор известного словаря «Jargon» Эрик С. Реймонд как-то сказал, что все подлинно полезные программы пишутся авторами для собственных нужд. Надо отметить, что в области издательских систем это правило оказалось законом sine qua non1. В особенности это относится к TEX.

А ведь как хорошо начинался 1978 год - Дональд Кнут, тогда ещё никакой не доктор, а всего лишь аспирант Стенфордского Университета, написал серию статей по классификации формальных грамматик. Эти работы должны были перевернуть все представления о языках программирования вообще и компиляторах, в частности. Но получилась в итоге, пардон, нечитаемая ерунда. Правда виноват в этом был отнюдь не будущий корифей программирования, а Американское Математическое Общество, в журналах которого в то время не было единого стандарта набора статей. Что сделал бы каждый уважающий себя и читателей автор в этом случае - ясно и без объяснений. Конечно, переписал бы статью заново. Вот так все и поступали. Впрочем, не все. Исключением из этого правила стал Д. Э. Кнут, который просто написал свою издательскую систему и предложил её Американскому Математическому Обществу.

Творение Кнута по существу является компилятором, преобразующим текстовый файл - исходный код документа - в машинно-независимый формат dvi2. В принципе, dvi-файл содержит инструкции языка, который очень напоминает Postscript. Поэтому очень скоро появился конвертер dvips, предназначенный для создания Postscript-файлов прямо в сиситеме TEX. Кнут учёл, что текстовые редакторы - самый популярный класс программ и потому не стал изобретать велосипед. Для создания публикации оператор может выбрать тот редактор, к которому лично он более привычен. Все эти качества оценили в Американском Математическом Обществе - и приняли подарок. И процесс пошёл.

Что из этого вышло - видно невооружённым глазом. Очень скоро все американские издательства приняли TEX в качестве стандарта. Да и не только американские - все гранды издательского бизнеса, начиная от германского Springer Verlag и заканчивая сингапурским World Scientific, уже много лет используют LATEX, EmTEX, и прочие вариации на тему TEX. Даже на территории России похоже решили забыть про «особенности национального пути в мировую цивилизацию» и использовать продукт, который зарекомендовал себя с лучшей стороны тем, что уже не один десяток лет используется для самых разных публикаций - от научных статей до деловых писем.

TEX против WYSIWYG
К сожалению, взрывной характер компьютеризации мира в 90-е годы качественно изменил квалификацию оператора. Если в 80-е годы за компьютером - или даже терминалом - сидели достаточно квалифицированные люди, то в нынешние высококультурные времена нередко недели отводятся на обучение операторов работе с текстовым редактором. Или, что ещё хуже - текстовым процессором класса WYSIWYG3. Поэтому нередки случаи, когда начинающие авторы используют именно WYSIWYG-процессор для набора своего произведения. И даже не задумываются о заслуживающих большого сочувствия читателях подобных opus magnum4.

Несложно понять, что читатель будет отнюдь не в восторге от качества этих творений. В самом деле - ни обработка шрифтов, ни поддержка различных стилей, ни отображение специфической информации (такой, как формулы) не поддерживаются WYSIWYG-процессорами на хоть сколько-нибудь приемлемом уровне. Да что там шрифты - даже механизм вывода информации на принтер реализован в них по принципу пятого колеса в телеге.

«Как-же, как-же» - возразит искушенный читатель. «Ведь во всех последних версиях StarOffice реализован механизм экспорта в Portable Document Format. Теперь каждый может распечатать документ хорошего качества!». И в самом деле - может. При исключительно удачном стечении обстоятельств. Во-первых, ни в каком процессоре кроме StarOffice экспорт в PDF или Postscript не поддерживается. Правда, имярек весьма распространен в Linux. Однако новички редко используют Linux. Во-вторых, наш уважаемый оппонент умалчивает о качестве полученного PDF. А оно отнюдь не всегда на высоте. Прямо скажем - почти никогда. Не в последнюю очередь это обусловлено тем, что в текстовых процессорах используются шрифты класса TrueType, которые представляют собой дешёвую подделку под Type1. Эти шрифты были разработаны компанией Apple после того как компания Adobe5 не выдала им лицензию на распространение своих шрифтов. Как и все векторные шрифты, Type1 и TrueType реализованы с помощью кривых Безье. Но в Type1 эти кривые - третьей степени, а в TrueType - второй. Разница незаметна при выводе информации на устройство с низкой разрешающей способностью (например, монитор), но очень хорошо видна при выводе на устройство с высокой разрешающей способностью, в частности, принтер. И тем более, разница будет просто фатальна при выводе на фотонаборные механизмы, используемые для отпечатки книг. Стоит также отметить, что plug-in, ответственный за конвертацию в PDF не вполне адекватно справляется с обработкой стилей. А ведь тем самым теряется основное качество текстовых процессоров этого класса - документ, набранный автором, и документ, экспортированный в PDF, выглядят принципиально различным образом.

Но всё это мелочи по сравнению с главной неприятностью, подстерегающей неопытного автора - он полностью лишается контроля за внешним видом результирующего документа. Конечно, можно прочитать описание работы конвертера и даже его исходные тексты. Однако текстовые процессоры WYSIWYG построены именно так, чтобы напрочь отбить у пользователей желание заниматься подобного рода делами.

Что же касается TEX - то это настоящий рай для наборщиков любого уровня квалификации6. Проблема со шрифтами решается не просто, а очень просто - с помощью замечательных шрифтов Metafont, которые разработал всё тот же Дональд Кнут. С концептуальной точки зрения, система Metafont очень похожа на Type1. Разница состоит всего в двух пунктах - количестве шрифтов и лицензии на оные. Необходимо упомянуть значительный вклад компании Adobe в TEX - очень много весьма и весьма дорогих Type1 шрифтов сотрудники Adobe подарили сообществу. Стоит заметить, что крупные компании вообще-то не склонны к филантропии и этот поступок объясняется желанием поддержать свою репутацию производителя самых качественных продуктов на рынке домашних издательских систем7.

Что же касается обработки стилей и специфической информации, то стоит вспомнить, что TEX был изначально разработан для использования в научных журналах. Ведь даже само название TEX (читается как «тех») происходит, согласно объяснению Кнута, совсем не от слова Texas, а от греческого корня TEX, от которого берёт своё начало слово «технология». Поэтому при некотором навыке, для обретения коего требуется от нескольких минут до нескольких дней, вы всегда можете добиться великолепного качества воспроизведения вашей работы.

Ведь по существу TEX предоставляет в распоряжение пользователя компилятор, переводящий исходный документ в Postscript. Последний является родным языком большого количества высококлассных принтеров8 и весьма хорошо оптимизирован для работы практически на любом фотонаборном аппарате. Но даже пользователям дешёвых принтероподобных устройств не следует расстраиваться - родные языки бытовых моделей, такие, как Epson, PCL, SPL весьма похожи на Postscript. Их появление было обусловлено неприятной для производителей необходимостью платить лицензионные отчисления Adobe за использование языка Postscript в коммерческих целях. Поэтому такие интерпретаторы, как Aladdin Ghostscript9 без особых проблем поддерживают устройства low-end класса. При появлении новых моделей принтеров первое же действие их производителей состоит в обеспечении совместимости с Postscript. И, к счастью, очень маловероятно изменение этой ситуации в обозримом будущем.

В прочем, конфликты вида «TEX vs WYSIWYG» стары как мир. Свидетелем или участником таких споров приходилось быть каждому образованному человеку. Это и «Большие машины vs сотни PC» и «UNIX vs Windows». Это вопрос мировоззрения. Что важнее - удобство неопытного автора или удобство клиента (в данном случае, читателя). Скорее всего, подобные вопросы не будут решены до конца никогда.

Примечания

1 sine qua non. (лат.) - «без которого невозможно», непременное условие.

2 DVI расшифровывается как «device independent».

3 WYSIWYG (англ.) - «What You See Is What You Get», т.е. «Что видите, то и получите». К процессорам такого типа относятся MSWord, Sun StarOffice Writer, Corel WordPerfect и др.

4 opus magnum (лат.) - «великий труд»

5 Adobe - Мировой лидер в области издательского ПО; в частности разработчик шрифтов Type1.

6 наборщиков любого уровня квалификации. - Ну, почти любой. Сложно будет разве что тем, кто лишь вчера сел за компьютер.

7 домашних издательских систем. - Автор скромно умолчивает о качестве их программ. Речь идёт о стандартах, в создании которых принимала участие компания и о контенте (в частности, шрифтах), который компания предоставляет.

8 высококлассных принтеров. - Поделки, продающиеся под именем принтеров на наших рынках к ним не относятся.

9 Aladdin Ghostscript. - Недавно компания Aladdin Enterprises выпустила Ghostscript под лицензией GPL.


Просмотры 135 просмотров

Отзывы

Админ
Отлично!
Март 28 Админ

Статьи и обзоры Все статьи

Китайская компания Tecno Mobie, вышла на мировой рынок несколько лет ...
У вас бывает такое? Видео на YouTube останавливается на самом ...
Какие услуги предоставляет компания "НЕТФЛОУ".
Квинслендский университет удивил новым опытом в области создания органического OLED-дисплея.