Что такое PostScript?

PostScript — это самый настоящий язык программирования, который используется для того, чтобы описать содержимое страницы. Например, пишутся такие серии команд: переместиться туда-то, напечатать слово такое-то, сменить шрифт на такой-то. Существуют модели принтеров, непосредственно понимающие PostScript для всех остальных требуется посредник, и GS успешно с этим справляется. Вы спросите, как он поддерживает столько принтеров? Дело в том, что количество языков принтеров намного меньше возможных моделей. Например, известные всем HP LaserJet 4, 4L, 5, 5L, 6, 6L, 1100, 2100 “понимают” один и тот же язык PCL5. Если вы не страшитесь этих слов и вам любопытно посмотреть, какие драйвера языков поддерживает ваш GS — дайте команду gs --help. Так, например, ljet4 как раз и обслуживает вышеупомянутую линейку моделей принтеров.

Итак, теперь вам стало понятно, как устроена печать в любом дистрибутиве Linux: программа формирует документ, GS переводит его на язык принтера, установленного в вашей системе и передаёт эстафету принтеру.

Но это ещё далеко не всё. А что если вам надо послать документ на принтер, установленный на другой машине, или напечатать сразу несколько документов и нет времени ждать, пока каждый из них будет обслужен GhostScript и уступит место следующему? Для этого существует так называемый сервер печати или спулер (spooler), обслуживающий очереди печати. Последний термин более точно отражает суть, поэтому им мы и будет пользоваться и писать дальше просто “спулер”.