Metafont

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
Metafont
METAFONT logo.svg
Розробник(и) Кнут, Дональд Ервін
Стабільний випуск 2.718281 (березень 2008)
Операційна система Багатоплатформність
Тип Мова програмування
Ліцензія вільно модифікуються

METAFONTмова програмування, яка використовується для розробки векторних шрифтів. Також це назва інтерпретатора, що виконує код METAFONT.

Ця мова програмування був розроблений Дональдом Кнутом як додаток до його друкарської системи TeX. Однією з особливостей METAFONT є те, що всі обриси символів визначаються за допомогою розвинутих геометричних описів, наприклад, можливо визначити яку-небудь крапку як перетин відрізка та кривої Безьє.

Кнут почав розробку METAFONT у 1977 році та випустив першу версію у 1979 р. Через недоліки в оригінальній мові METAFONT Кнут повністю переробляє METAFONT та випускає виправлену версію в 1984, яка використовується донині.

METAFONT можна використовувати для побудови не тільки символів шрифтів, а й будь-яких інших графічних об’єктів. Однак для складних зображень краще система MetaPost, що використовує у своїй роботі PostScript.

METAFONT найчастіше запускається без безпосередньої участі користувача. Файли DVI містять лише посилання на відповідні гарнітури шрифтів, а не самі растрові чи векторні шрифти, що можливо, наприклад, в PostScript. Отже, коли потрібно переглянути, роздрукувати або зконвертувати файл DVI, необхідний доступ безпосередньо до зображень символів в гарнітурах. Більшість дистрибутивів TeX зконфіґуровані таким чином, що недоступні шрифти з необхідною роздільною здатністю автоматично генеруються викликами METAFONT. Гарнітури потім зберігаються для подальшого використання.

Також METAFONT може працювати в інтерактивному режимі таі включає команди для відображення на екрані одержуваних зображень. Кнут каже, що зараз використовує METAFONT як свого роду калькулятор для вирішення складних виразів, а для математичних ілюстрацій він користується MetaPost.

Література[ред.ред. код]

Посилання[ред.ред. код]