PostScript
PostScript | |
---|---|
Парадигма | мультипарадигмальна: стекова, процедурна |
Дата появи | 1982 |
Творці | Джон Варнок, Чарлз Ґешке, Даґ Бротц, Ед Тафт, Біл Пакстон |
Розробник | Adobe Systems |
Останній реліз | PostScript 3 (1997) |
Система типізації | Динамічна, сильна |
Основні реалізації | Adobe PostScript, TrueImage, Ghostscript |
Під впливом від | Interpress, Lisp |
Вплинула на | |
Звичайні розширення файлів | .ps |
PostScript — мова програмування та мова розмітки сторінок, в основному використовується у видавничих системах.
PostScript є стековою мовою програмування, яка схожа на FORTH, а структурами даних — на Lisp. Як і в FORTH, використовується зворотна польська нотація для визначення виразів.
Концепції мови PostScript були створені в 1976 році Джоном Гаффні з компанії Evans & Sutherland, що займається комп’ютерною графікою. У той час Гаффні та Джон Уорнок розробляли інтерпретатор для великої тривимірної графічної бази даних Нью-Йоркської гавані.
Спочатку Postscript — це мова описів сторінок. Іншими словами, це мова програмування, що містить команди принтеру (такі принтери називаються PostScript-принтерами), і призначений для друку графіки і тексту. Створений фірмою Adobe. Важлива мета — незалежність від пристрою (реально Postscript не завжди повністю незалежний від пристрою).
PostScript — повнофункціональна мова програмування. Хоча програми на PostScript і створюються здебільшого не людьми, а іншими програмами, в принципі ніщо не заважає писати нею програми для обрахунку графіки, реалізації чисельних методів розв'язання математичних задач тощо.
PostScript — інтерпретована стекова мова, схожа на Форт. Синтаксис мови використовує зворотню польську нотацію, що робить непотрібним використання дужок, однак вимагає деякої практики для читання тексту програми через необхідність тримати в голові вміст стеку. Більшість операторів беруть операнди зі стеку і поміщають результат обчислень на стек. Літерали (рядки і числа) поміщають свою копію на стек.
У PostScript для малювання використовується двовимірна прямокутна система координат, початок якої збігається з лівим нижнім кутом сторінки; вісь X за замовчуванням спрямована горизонтально (тобто по ширині сторінки), вісь Y — вертикально. Одиницею вимірювання лінійних координат служить типографський пункт. За допомогою операторів мови початок системи координат може бути перенесено в будь-яку точку (оператор translate), а сама система — повернута на довільний кут у площині сторінки (оператор rotate); масштаб по кожній з двох осей за допомогою оператора scale також може бути змінений.
Наприклад, «дзеркальне» виведення зображення на плівку (т.зв. «Emulsion down») в PostScript-принтерах здійснюється за допомогою одного єдиного оператора scale, що задає негативний масштаб по одній з осей системи координат: наприклад, -1.0 1.0 scale.
PostScript має риси метафайлу, поєднуючи підтримку як векторних, так і растрових зображень.
Шрифти в PostScript тільки векторні. Трохи осторонь стоять так звані Type3-шрифти, в яких для малювання гліфи (процедура /BuildGlyph) може бути використана будь-яка процедура, сформульована в термінах мови PostScript.
Після виходу SP4 для Windows NT 4.0 в 1998 році) при встановленому у системі Adobe Type Manager 4.0 і драйвері AdobePS 5 всі шрифти в не-roman кодуванні, зокрема кирилиця вивантажувалися в PostScript-файл у вигляді Type3-шрифтів, де кожен гліф був представлений у вигляді растрового зображення відповідної роздільної здатності. Вивантаження шрифту у вигляді растрових зображень створило багато проблем при підготовці до виводу на фотонабір і додрукарської підготовки взагалі. Ця помилка була виправлена в AdobePS 5.1 і Adobe Type Manager 4.1, які потім увійшли в дистрибутив Windows 2000.
Програма Hello world!, на PostScript може виглядати так:
%!PS
/Courier % назва бажаного шрифта
20 selectfont % вибрати розмір і задати цей шрифт як поточний
72 500 moveto % Перемістити курсор в дані координати
% (початок в лівому нижньому куті сторінки)
(Hello world!) show % вивести текст в дужках
showpage % показати все на сторінці
Окрім звичайних математичних операторів, в мові визначено багато функцій для роботи з графічними об'єктами.
Історично, PostScript призначено для використання у видавничих системах. Перед роздруковуванням файлу в форматі PostScript, його зміст інтерпретується спеціальним інтерпретатором, який видає команди для друку.
Перетворити будь-який документ у формат Postscript не так вже й складно. Для цього достатньо, щоб документ можна було роздрукувати з якої-небудь Windows-програми. Наприклад, маючи MS Word, можна перетворити .doc у Postscript, маючи Netscape або Internet Explorer, можна перетворити HTML в Postscript, і т. д. Для цього потрібно:
- встановити на комп'ютері драйвер PostScript-принтера (у Windows 95: Пуск -> Настройка -> Панель управління -> Принтери -> Установка принтера)
- роздрукувати документ, вибравши цей драйвер і встановивши опцію «Друк у файл» (краще всього в установках драйвера принтера задати «Архівний формат»)
- вкажіть, в який файл зберегти («роздрукувати») документ (бажано при цьому використовувати розширення .ps, а не .prn, як пропонують деякі програми).
Знайти драйвер PostScript-принтера, маючи доступ до Інтернет, не складає особливих труднощів.
Якщо у Вас є PostScript-принтер, то, як природно чекати, можна роздрукувати на ньому файл Postscript безпосередньо, запустивши команду вигляду:
<команда друку> <ім'я файлу>
Для проглядання/друку файлів Postscript можна використовувати безкоштовні програми Ghostscript, GSView.
Документи у форматі Postscript часто архівують як zip або gzip, тому можуть знадобитися відповідні розпакувальники.
При використанні Ghostscript/gsview, можна зіткнутися з проблемою, коли програма бачить тільки першу сторінку тексту. Спробуйте в цьому випадку використати текстовий редактор, щоб відкрити файл і замінити кожен рядок, який починається з %! Ps-adobe- на %! Це, принаймні, дозволить перегортати файл вперед (але не назад).
Використовуючи відповідні інтерпретатори PostScript (наприклад, Ghostscript), можна переглядати зображення на моніторі комп'ютера.
- Portable Document Format Формат документів, створений на основі PostScript
- про PostScript від Adobe Systems [Архівовано 15 червня 2006 у Wayback Machine.]
Це незавершена стаття про мови програмування. Ви можете допомогти проєкту, виправивши або дописавши її. |