번역 : 이성주(linuxlee@hitel.net)
|
이 기사는 Linux Focus 지의 글을 번역한 것으로
원문은 다음 주소에서 볼 수 있습니다.
1. 소개 이 글은 포스트 스크립트 연재 기사 중 가장 처음 기사이다. 이 글의 주요 목적은 포스트 스크립트라는 소프트웨어를 가르치는 것이 아니라 포스트 스크립트가 재미있고 흥미로운 문서 제작 언어라는 사실을 발견한 사람들에게 충분한 정보를 제공하는 것이다. 이 글이 포스트 스크립트에 대한 유용한 정보를 제공해줄 수 있을 것이라고 생각한다. 포스트 스크립트에 대한 최초의 아이디어를 제공한 사람은 22년전, Evans & Sutherland 컴퓨터 회사에 근무하던 John Gaffney였다. 최초에는 "디자인 시스템"으로 불리다가 후에 Adobe 사에 의하여 포스트 스크립트라는 이름의 페이지 디자인을 위한 장치 독립적인 툴로서 발전하게 되었다. Adobe 사는 1982년 Chuck Geschke와 John Wamock에 의하여 설립되었다. Geshke와 J. Wamock는 언어의 디자인과 구현부분을 맡았으며, Doug Brotz, Billi Paxton, 그리고 Ed Taft가 배급을 맡았다. 요즘에 들어서는 비록 일반 사용자에 의해 사용되지는 않지만, 하나의 주요한 문서 작성 도구로서 각광받고 있다. 포스트 스크립트의 기능이 매우 막강함에도 불구하고 일반사용자의 경우 포스트 스크립트의 세세한 기능을 익히기 보다는 단순하며 손쉬운 사용자 인터페이스를 제공하는 일반적인 문서 제작 툴 조차도 문서 관리나 인쇄작업과 같은 다른 여러 문서 작업들을 위해서 내부적으로는 포스트 스크립트 파일 포맷을 이용하고 있다. 이러한 이유로 포스트 스크립트는 그리기, 채색, 이미지 프로세싱, 색분리, 시뮬레이션과 애니메이션 등에서 비록 외부적으로 잘 나타나지는 않지만 매우 강력한 우리의 오랜 친구로 그 생명을 계속 이어가고 있다. 여러분이 포스트 스크립트 프로그래밍에 대한 구조를 배우고자 한다면 그리 어려운 일만은 아닐 것이다. 포스트 스크립트 명령어는 인터프리터에 의해서 실행된다. 여러 인터프리터 중에서 Aladdin Enterprise의 "ghostscript"가 인터넷 상에서 무료로 배포되고 있다. 이와 더불어 "ghostview"라는 유용한 그래픽 인터페이스도 역시 무료로 배포되고 있다. GNU 프로젝트도 그들의 ghostscript를 가지고 있다. 이러한 프로그램들은 물론 모든 리눅스 플랫폼에서 사용가능하며 주요 리눅스 배포판에는 이들이 기본으로 포함되어 있다. 여기서는 ghostscript와 그와 관련된 구조, 성질등에 대해서 다루어 볼 것이다. 물론 이 기사에서 제공되는 예제들은 다른 어떠한 포스트 스크립트 인터프리터에서도 실행 가능하다. 그럼 이제부터 실전으로 들어가서 일단은 xterm에서 ghostscript를 실행시켜 보도록 하자. ghostscript를 실행시키면처음에 아래와 같은 글들이 나오고, ghostscript 명령어 프롬프트가 뜰 것이다. Initializing...done. Ghostscript 2.6.2
(4/19/95) Copyright (C) 1990-1995 Aladdin Enterprises, Menlo
Park, CA. All rights reserved. Ghostscript comes with NO WARRANTY:
see the file COPYING for details. 이와 동시에 ghostscript 명령어 프롬프트를 가진 하나의 빈 윈도우가 생성될 것이다. 만약 ghostscript 세션을 끝내기를 원한다면 단순히 GS> 프롬프트 상에서 quit를 입력하거나 Ctrl-D를 치면 된다. Ghostscript는 명령어들을 파일에서 읽어들여서 실행시킬 수도 있다. 그럼 예를 들어서 sample.ps라는 이름의 파일을 연다고 해보자. 이 파일에는 실행되어야 할 모든 ghostscript 명령어들이 수록되어 있다. 따라서 이 파일에 들어있는 내용 자체가 바로 포스트 스크립트 프로그램이 되는 것이다. 이제 우리가 아래와 같은 명령을 쉘 프롬프트에 입력하게 되면 이 파일 안에 있는 각각의 ghostscript 명령어들이 순서대로 실행되게 된다. gs sample.ps 그리고 ghostscript 윈도우에 sample.ps에 있는 프로그램 내용에 따른 그림이 표시되게 된다. (물론 이 프로그램의 목적이 그림 표시일 경우에만 그렇다. 사실 포스트 스크립트는 수학 계산이나 스택 연산등 여러 가지 다목적으로 사용될 수 있다. 이러한 기능들은 이 연재 뒷부분에서 자세히 다루게 될 것이다.) 만약 여러 페이지가 생선된다면 ghostscript 윈도우에 첫 페이지가 표시된 후 showpage 프롬프트가 ghostscript 명령어 라인에서 사용자의 키 입력을 기다리고 있게 될 것이다. 포스트 스크립트는 Reverse Polish Notation(RPN - HP의 전자 계산기와 같다)를 사용한다. 다시 말해서 명령어에 대한 파라미터가 명령어 앞에 놓이게 된다는 것이다. 명령어와 파라미터는 빈칸으로 구분된다. 포스트 스크립트는 자료 처리와 명령어 실행을 위해서 스택 연산을 이용하며 포스트 스크립트는 피연산자, 사전, 실행 그리고 그래픽 상태 스택등 4개의 스택을 가지고 있다. 피연산자 스택은 일련의 포스트 스크립트 객체를 가지고 있다. 여기서 포스트 스크립트 객체란 피연산자와 앞으로 실행될 포스트 스크립트 연산자의 결과들을 이야기하는 것이다. 예를 들어 아래와 같은 산술 연산의 경우. 20 30 add 10 sub 결과는 40이 나오게 된다. 먼저 20 30 add 부분에서 50의 결과가 나오고 sub라는 연산자는 50에서 10을 뺀 40을 결과물로 리턴하게 된다. mul(곱셈)과 div(나눗셈)도 마찬가지 방법으로 사용하면 된다. '=' 의 경우는 피연산자 스택에서 하나의 객체를 꺼내서 그 값을 표준 출력 파일에 텍스트의 형태로 출력하게 된다. 이때 뒤에서 새로운 줄을 삽입한다. '= =' 의 경우에는 '='연산자와 비슷하나 다만 그 결과를 텍스트 형태가 아닌 syntax 형식으로 출력한다. pop 명령어는 피연산자 스택의 맨 위에 있는 원소를 소거한다. 스택에 대해서는 이 연재의 뒷부분에서 좀 더 자세히 설명할 것이다. (피연산자 스택의 효과)
2. 포스트 스크립트로 그림 그리기 포스트 스크립트로 그림을 그리기 위해서는 우선 나타날 페이지의 기하학적 구조를 생각해보아야 한다. 페이지 위의 점의 위치는 포스트 스크립트 언어에서 1인치의 1/70초시 크기의 단위를 가지는 픽셀 값으로 표현한다. 페이지의 좌측 맨 아래 부분 좌표가 (0,0) 이 된다. 초기에는 페이지의 크기가 612, 792로 맞추어져 있다. 이 크기는 편지지 크기와 같다. 물론 페이지 크기를 아래와 같은 방법으로 바꿀 수 있다. note for 540 and 720 or 이 명령어들은 gs> 프롬프트에서 입력되어야 한다. 'a4' 명령어는 페이지를 적당한 크기로 재조정 해준다. 종이 크기 정의 부분은 gs-statd.ps 초기화 파일에 들어있으며 슬랙 웨어의 경우 /usr/lib/ghostscript 디렉토리에 들어 있다. 이 파일의 내용을 적절히 변경시켜서 사용자 정의 페이지를 쉽게 만들 수 있다. 이에 대한 자세한 내용은 이 연재 뒷부분에 다시 나오게 된다. 일단은 기본적인 편지지 크기의 페이지를 사용한다고 가정하도록 하자. 두 번째로 적절한 페이지 크기를 설정한 후, 커서를 그리기 시작 위치에 놓는다. 커서를 이동시키는 것은 다음의 명령어를 이용한다. x y moveto 이 명령어에 의해 커서는 수평선으로 x, 수직선으로 y만큼 이동해서 위치하게 된다. 이 명령어에서 보는 바와 같이 포스트 스크립트의 함수 구조는 C나 Fortran의 경우 대개 스크립트의 경우 스택을 사용하므로 언제나 파라미터가 앞에 가게 된다. 이러한 함수 구조는 여타 다른 언어와 확연히 다른 점이므로 항상 염두에 두여야 한다. 여기까지 함으로써 그림을 그릴 준비를 마쳤다. 이제 간단히 직선을 하나 그어 보도록 하자. 직선을 그리기 위해서는 다음의 명령어를 사용해야 한다. xx yy lineto 여기서 xx는 직선 끝점의 수평축 좌표, yy는 직선 끝점의 수직전 좌표를 나타낸다. 시작점은 위에서 옮겨 놓았던 x, y 가 된다. 따라서 위의 명령은 결국 시작점 x, y에서부터 끝점 xx, yy까지 직선을 그리게 된다. 이보다 더 복잡한 그림의 경우에는 경로 정의 명령어인 newpath와 stroke 명령어를 사용해야 한다. 그럼 지금부터 사각형을 그리는 포스트 스크립트 프로그램을 만들어 보도록 하자. 이 프로그램이 sample.ps 라는 파일에 저장되어 있다고 한다면 그 내용은 아래와 같을 것이다. newpath 비록 여기서는 각각의 명령어를 다 새로운 줄에 입력했지만 꼭 그럴 필요는 없다. 단지 각 명령어 사이에 빈칸만을 띄우고 한줄에 다 붙여써도 상관이 없다. 포스트 스크립트는 다른 여타 프로그래밍 언어와 같은 주석문 기능도 가지고 있다. 한 줄에서 퍼센트('%') 기호 뒤에 오는 모든 내용들은 인터프리터에 의해 주석으로 간주된다. newpath 이제 xterm 의 쉘 프롬프트에서 gs sample1.ps 명령을 입력하면 새로운 ghostscript 윈도우 생성되면서 그 안에 우리가 기대하던 사각형이 표시될 것이다. 이러한 그림을 표시하기 위해 매번 인터프리터를 실행시킬 필요는 없다. gs 프롬프트 상에서도 아래와 같이 명령을 입력하면 위와 똑같은 결과를 볼 수 있다. (sample1.ps) run stroke 명령어는 인터프리터에게 그림을 그리도록 지시한다. 위의 예제의 경우에는 길이가 200, 150인 모서리가 수평, 수직 방향으로 표시되어 사각형이 그려졌다. 직선의 경우에는 수평, 수직방향이 필요없이 어떠한 방향으로도 작성될 수 있다. 위에서 알 수 있듯이 moveto와 lineto 명령을 사용하면 삼각형 같은 그림도 표현할 수 있다. 그림 그리는 명령어에는 앞의 것들 말고도 rmoveto와 rlineto 두 개의 명령어가 더 존재한다. 이 두 명령어는 두 개의 파라미터를 필요로 하며 사용 예는 아래와 같다. x y rmoveto x y rlineto x와 y는 초기 위치와 마지막 위치의 수평, 수직방향의 거리를 나타낸다. rmoveto와 rlineto 의 'r' 은 'relative(대응하는, 상대적인)'를 나타낸다. 자세히 이야기하면 첫 번째 명령어의 경우 커서를 원래 위치를 기준으로 수평방향으로 x 만큼 오른쪽으로 수직방향으로 y 만큼 위로 이동시킨다. 두 번째 명령어 또한 비슷하게 동작하는데 다른 점은 직선을 그리고 마지막 점으로 커서를 이동시킨다는 것이다. (다 못했다.. 무슨 소린지...) 위의 예제들은 자동으로 제공되는 기본 선 두께를 사용한다. 기본적인 선의 두께는 1픽셀이다. 그러나 사용자가 선의 두께를 프로그램 어디에서든지 그리기 전에 변경할 수 있다. 아래의 명령어가 이러한 기능을 제공한다. x setlinewidth 여기서 x는 선의 두께를 픽셀 단위로 나타내는 것이다. 이 명령의 효과는 다음 번에 선의 두께를 변경할 때까지는 유효하다. 물론 포스트 스크립트에서의 그리기 작업은 단지 직선을 그리는 데만 국한되지는 않는다. 원호 같은 도형도 그릴 수 있다. 원호를 그리기 위한 명령어는 다음과 같다. x y r a b arc 여기서 x는 원호 중심의 수평축 좌표를, y는 원호 중심의 수직축 좌표를, r은 원호의 반지름을, a는 수직축의 양의 부분을 기준으로 한 시작 각도를, 그리고 b는 원호가 끝나는 점의 각도를 나타낸다. 각도는 반시계 반향으로 늘어나게 된다. 만약 원호의 시작점이 커서로 나타낼 수 없는 위치라면 현재의 커서 위치와 원호의 시작점 사이에 직선이 더 첨가되게 된다. 말로만 들어서는 약간 이해하는데 어려움이 있을 것이므로 다음 예제를 통해 좀 더 자세히 이해하도록 하자. 3 setlinewidth 원호의 시작점과 현재의 커서의 위치가 일치하지 않으면 원하지 않는 직선이 더 그려지므로 주의를 기울여야 한다. 그러나 둘 사이의 위치를 일치시키는 방법말고 여분의 직선이 그려지는 것을 막는 또 하나의 방법이 있다. 그림을 그리기 위해서 초기에 커서의 위치를 설정해야 하는데 아예 설정을 하지 않으면 시작점의 값은 비어있게 된다. 이렇게 되면 최초로 그리기가 시작된 후 그 그리기가 끝나는 점이 바로 시작점이 되게 된다. 따라서 초기에 newpath 명령어만 쓰게 되면 포스트 스크립트는 할당된 커서의 시작점을 지우게 되고 최초의 그리기가 시작되는 점이 마치 시작점인 것마냥 인식되게 되는 것이다. 따라서 위의 예에서도 다섯 번째 줄을 newpath 명령어로 바꾸어서 나타낼 수도 있다. 이렇게 바꾸어서 위의 프로그램을 다시 실행시켜 보면 원하지 않던 여분의 직선이 없어진 것을 볼 수 있을 것이다. 경로는 newpath 명령어를 실행시킴으로써 시작된다. 이 명령은 현재의 경로가 비어있도록 초기화를 시킨다. 그 이후에 여러 명령어를 이용하여 새로운 경로를 설정하게 된다. arc 명령어는 완벽한 원을 그릴 때도 이용될 수 있다. 단순히 시작 각도와 끝나는 각도에 각각 0, 360을 입력하기만 하면 된다. 만약 newpath 명령어를 써서 독립된 경로를 설정한 후, arc 명령어를 써서 완벽한 원을 만들어 냈다면, 포스트 스크립트의 scaling 설정을 이용하여 원에서 타원도 생성해 낼 수 있다. 사용자는 scale 명령어를 이용하여 현재 경로로 표현되는 도형을 수직, 수평방향으로 확대, 축소 할 수 있다. 다음은 scale 명령어의 사용 예이다. x y scale 여기서 x는 수평성분으로 확대/축소 인자이며, y는 수직성분으로의 확대/축소 인자이다. 따라서 만약 x, y의 값이 다 1이 되면 원래 도형에 아무런 영향도 안 미치게 된다. 이 확대/축소 명령어는 다음 번 scale 명령어가 입력되기 전까지는 계속 그 영향력을 유지하게 된다. 만약 첫 번째 scale 명령어 실행이 있은 후, 다시 scale 명령어를 이용하여 확대/축소 인자가 변경되게 되면 그전의 확대/축소 인자가 완전히 무시되는 것이 아니고 그 전의 것과 새로 설정되는 값이 합쳐져서 영향을 끼치게 된다. 예를 들어 첫 번째 확대/축소 인자로 x1, y1을 각각 설정하고, 두 번째 확대/축소 인자로 x2, y2를 각각 설정했다면 두 번째 scale 명령을 수행한 후의 확대/축소 인자값은 x1*x2, y1*y2가 된다. 이러한 이유로 확대/축소를 할 경우에는 그전의 값을 반드시 염두에 두어야 한다. 다음의 예제를 통해서 확대/축소를 실제로 적용해보도록 하자. 3 setlinewidth 이 프로그램을 실행시켜보면 알 수 있겠지만 확대/축소 명령어는 도형의 모양뿐만 아니라 선분의 두께에도 영향을 미친다. 위의 프로그램에 생성된 원과 타원의 선의 두께가 다른 것도 이러한 이유 때문이다. 또한 포스트 스크립트는 원호를 그리기 위한 두 개의 다른 명령어를 가지고 있다. 그 중 하나는 arcn 명령어로 이 명령어는 그리는 방향만 빼고는 arc 명령어와 같은 효과를 낸다. arc 명령어가 반 시계 방향으로 원호를 그리는 반면, arcn 명령어는 시계방향으로 원호를 그린다. 또 다른 하나 arcn 명령어로 이 명령어는 끝점에서 주어진 두 직선에 접하는 원을 그리는 기능을 한다. arcto 명령어의 사용 형식은 다음과 같다. x1 y1 x2 y2 r arcto xt1 yt1 xt2 yt2 여기서 xt1, yt1, xt2, yt2는 각각 수직 수평축으로의 원호의 좌표를 나타내며 x0, y0, x1, y1과 x1, y1, x2, y2는 각각 두 접선의 끝점들의 좌표를 나타낸다. 여기서 x0, y0는 시작점을 의미한다. 그리고 마지막으로 r은 원호의 반지름을 나타낸다. arc 명령어와 마찬가지로 만약 시작점과 현재의 커서 위치가 일치하지 앟으면 두 점 사이에 여분의 직선이 표시되게 된다. 그리기가 마무리 된 후의 커서 위치는 xt2, yt2가 된다. 여기에 덧붙여서 포스트 스크립트는 Bezier 알고리즘에 바탕을 둔 curveto 명령어를 가지고 있다. 이 명령어는 주어진 자료에 대한 제도를 위한 보간,외삽에 아주 유용하게 사용된다. 사용 형식은 아래와 같다. x1 y1 x2 y2 x3 y3 curveto 여기서 곡선의 시작점은 x0, y0로 설정된다. 시작점에서는 x0, y0, x1, y1을 각각 끝점으로 하는 직선에 접하게 되며, 끝점은 x3, y3이며 x2, y2, x3, y3를 각각 끝점으로 하는 직선에 접하게 된다. 기본적으로 위의 네 개의 점(시작점, 끝점, 직선을 나타내기 위한 두 점)은 다 다른 것으로 간주되며 이 네 점에 의해 곡선의 모양이 결정된다.
포스트 스크립트의 문자 표현 기능 포스트 스크립트는 전자 출판등에서 기본적으로 사용되고 있는 폰트를 포함하여 여러 다양한 폰트를 가지고 있다. 또한 사용될 폰트가 들어있는 사전 스택을 정의하는 방법으로 폰트를 생성하는 기능도 내장하고 있다. 다음은 그 일례이다. /Times-roman findfont 위의 프로그램에서 알 수 있듯이 findfont 명령어는 사용하고자하는 폰트에 접근하려고 할 때 사용되는 명령어이다. 폰트의 이름은 '/'로 시작하며 findfont 명령어의 파라미터로서 명령어 앞에 주어진다. 실제로 '/'은 인터프리터로 하여금 폰트의 이름을 스택에 집어넣게 한다. 추후에 스택에 대해서 더 자세히 이야기 할 때가 있을 것이다. 폰트를 찾은 후에는 scalefont 명령어를 이용하여 폰트의 확대/축소를 하게 된다. 확대/축소 인자는 명령어 앞 부분에 쓰게 된다. 폰트를 확대/축소 한 후, setfont 명령어를 이용하여 폰트를 사용 가능하도록 만든다. 이후 moveto 명령어를 이용하여 커서를 원하는 위치로 옮겨 놓은 후 나타내어질 문장이 괄호('()')에 싸여서 show 명령어의 파라미터로 넘겨지게 된다. 이후에 showpage 명령어를 이용하여 앞에서 표시한 모든 문장등을 실제로 페이지에 보여주게 된다. 위의 예에서는 같은 문장을 각각 다른 폰트, 크기로 각기 다른 위치에 표시하였다. 포스트 스크립트에서 사용 가능한 폰트를 리눅스 시스템의 트리 구조에서 찾을 수 있다. 각 문장들은 또한 선분, 곡선이나 기타 다른 도구들을 이용하여 조절할 수 있다. 따라서 이론적으로는 어떠한 형식으로든 문장이 표현될 수 있다. 문제가 되는 것은 어떻게 디자인 하느냐는 것 뿐이다.
포스트 스크립트에서 그림 그리기와 채색하기. 포스트 스크립트 언어는 그림 그리기와 채색하는데 사용되는 수많은 기능들을 가지고 있다. 우선 채색하는데 사용되는 명령어부터 살펴보도록 하자. 포스트 스크립트는 검은 색을 기본 색으로 사용한다. 따라서 우리가 여태까지 테스트했던 프로그램들의 결과물들은 검은 색과 흰색으로만 표현되었을 것이다. 포스트 스크립트는 채색과 관계된 세가지의 명령어를 가지고 있다. 첫 번째 것은 setrgbcolor 명령어로써 이 명령어는 r, g, b 즉 빨강, 초록, 파랑의 세가지 삼원색을 조합하여 색을 표현하게 된다. 각각의 명도 값 범위는 0부터 255이며 명도 값으로 실수 또는 소수점 아래 3자리까지 지정 가능하다. 이 명령어의 사용 형식은 아래와 같다. x y z setrgbcolor 여기서 x, y, z는 각각 빨강, 초록, 파랑의 명도
값을 나타내며 setrgbcolor 명령어 앞에 놓이게 된다. 예를 들어
1 0 0 setrgbcolor 명령은 초록색을 그리고 검은 색의 경우에는
빨강, 초록, 파랑의 칼라 값을 1 1 1 로 설정하면 될 것이다. 한
번 이 명령어를 이용하여 색을 지정하게 되면 다시 바꾸기 전까지는
이후에 쓰거나 그리는 모든 결과물들은 앞에서 지정된 색으로 표현된다.
색 지정횟수는 제한이 없으며 이를 이용하여 거의 모든 사용자가
원하는 색을 표현할 수 있다. 두 번째 색 지정 명령어는 setcmykcolor 명령어로써 이 명령어는 삼원색이 아닌 사원색을 기초로 해서 색을 지정한다. 사원색으로는 청록색, 자홍색, 노랑색, 검정색이 있다. 각 사원색은 0부터 1까지의 명암도를 가지고 있다. 이 명령어의 사용형식은 아래와 같다. w x y z setcmykcolor 여기서 w, x, y, z는 청록색, 자홍색, 노랑색, 검정색의 명암도를 나타내는 것으로 setcmykcolor 명령어의 파라미터가 된다. 나머지 특징은 앞에서 설명한 setrgbcolor명령어와 동일하다. 세 번째 명령어로 sethsbcolor 명령어가 있으며 사용 형식은 다음과 같다. x y z sethsbcolor 여기서 x, y, z는 칼라의 세가지 서로 다른 특성 값들을 나타낸다. 첫 번째 것은 빛의 스펙트럼에서의 색의 위치를 나타내는 hue 값을 나타낸다. 두 번째는 채도를, 세 번째는 광도를 나타낸다. 이 형식은 스펙트럼 상에서의 칼라의 위치나, 채도, 광도를 조절해야 할 상황에서 많이 사용된다. hsbcolor에 익숙치 못한 독자는 리눅스의 xfig 기능을 조사해보기 바란다. 포스트 스크립트의 그림 그리는 부분에서 가장 중요한 명령어는 fill과 closepath 이다. 다음의 예제는 포스트 스크립트를 이용한 그림 그리기와 채색하기 기능을 명확하게 해주는 역할을 할 것이다. 1 1 0 0 setcmykcolor 여기서 closepath 명령어는 열려져 있는 경로에서 두 끝점을 직선으로 이어서 경로를 닫도록 만든다. 그리고 fill 명령어는 닫혀진 경로를 현재의 색으로 채색하는 역할을 한다. 포스트 스크립트는 또한 다음의 명령어를 사용하여 회색색조를 생성할 수도 있다. x setgray 여기서 x는 회색의 명암도를 나타내며 그 값의 범위는 0부터 1까지이다. 만약 x 의 값이 0이라면 검은 색을, 1이라면 흰색을 표현하게 된다. 다음의 예제는 setgray 명령어를 이용하는 방법을 서술한 것이다. 0.0 setgray 이 기사를 끝내기 전에 만약 포스트 스크립트를 매우 매력적인 툴로 느낀 독자가 있다면 이 기사에서 배운 내용을 바탕으로 더욱 복잡하고 화려한 프로그램을 만들어 볼 것을 권하는 바이다. 다음 기사에서는 포스트 스크립트 언어에 대한 더욱 구체적이고 세부적인 사항들에 대해 이야기를 하도록 하겠다. |