Cập Nhật Gần Nhất: 20 Tháng Hai, 2025

PostScript là gì?
PostScript (PS) là một ngôn ngữ mô tả trang (PDL) được phát triển bởi Adobe Systems vào năm 1982. Nó chủ yếu được sử dụng trong xuất bản desktop, in ấn, và thiết kế đồ họa để mô tả cách văn bản và hình ảnh nên được hiển thị trên một trang.

Giải Thích Về PostScript (PS)
PostScript (PS) là một ngôn ngữ mô tả trang (PDL) và cũng là một ngôn ngữ lập trình có kiểu dữ liệu động và dựa trên ngăn xếp. Đây là những gì điều đó có nghĩa:
1. Ngôn Ngữ Mô Tả Trang (PDL) là gì?
Một ngôn ngữ mô tả trang định nghĩa cách đồ họa và văn bản xuất hiện trên một trang in hoặc màn hình. PostScript được sử dụng trong máy in, phần mềm xuất bản, và chế bản điện tử để phản ánh chính xác các phông chữ, hình ảnh, và bố cục.
2. Ngôn Ngữ Lập Trình Dựa Trên Ngăn Xếp là gì?
PostScript sử dụng một ngăn xếp để xử lý các lệnh, nghĩa là nó tuân theo cách tiếp cận Vào Sau, Ra Trước (LIFO). Ví dụ, để cộng hai số trong PostScript, bạn đẩy chúng vào ngăn xếp và sau đó gọi một toán tử để xử lý chúng:
10 20 add
Điều này đẩy 10
và 20
vào ngăn xếp, sau đó lệnh add
lấy chúng ra và đẩy kết quả (30
) trở lại ngăn xếp.
3. Kiểu Dữ Liệu Động
PostScript không yêu cầu định nghĩa kiểu dữ liệu rõ ràng. Các biến số có thể chứa các kiểu khác nhau (số, chuỗi, mảng, v.v.) mà không cần kiểu dữ liệu được xác định trước.
4. Ứng Dụng của PostScript
PostScript chủ yếu được sử dụng trong xuất bản desktop và xuất bản điện tử, tức là nó giúp tạo ra và in tài liệu chất lượng cao với sự kiểm soát chính xác về phông chữ, bố cục và đồ họa.
5. Ngôn Ngữ Turing Hoàn Chỉnh
Là Turing hoàn chỉnh có nghĩa là PostScript có thể, trong lý thuyết, thực hiện bất kỳ tính toán nào được đưa ra đủ bộ nhớ và thời gian. Điều này có nghĩa là nó có thể được sử dụng cho các nhiệm vụ lập trình chung, không chỉ in ấn.
6. Lịch Sử và Phát Triển
- Được phát triển bởi Adobe Systems từ 1982 đến 1984.
- Được tạo ra bởi John Warnock, Charles Geschke, Doug Brotz, Ed Taft, và Bill Paxton.
- Phiên bản mới nhất, PostScript 3, được phát hành vào 1997 với hiệu suất tốt hơn, quản lý màu sắc, và nén hình ảnh.
Lịch Sử PostScript
Nguồn gốc của PostScript bắt nguồn từ 1976, khi John Gaffney tại Evans & Sutherland phát triển các khái niệm cho một ngôn ngữ mô tả trang trong khi đang làm việc trên cơ sở dữ liệu đồ họa. Cùng thời điểm đó, Xerox PARC đang phát triển máy in laser và cần một tiêu chuẩn để định nghĩa hình ảnh trang. Họ đã tạo ra định dạng Press đầu tiên, sau đó phát triển thành Interpress vào năm 1978, do John Gaffney và Martin Newell phát triển.

Năm 1982, John Warnock và Chuck Geschke rời Xerox PARC và đồng sáng lập Adobe Systems, nơi họ, cùng với Doug Brotz, Ed Taft, và Bill Paxton, phát triển PostScript như một lựa chọn đơn giản hơn so với Interpress. Nó được phát hành thương mại vào năm 1984.
Vai Trò của Apple trong Thành Công của PostScript
Vào năm 1983, Steve Jobs đã thấy tiềm năng của PostScript cho Macintosh và đã cấp phép từ Adobe với giá 1,5 triệu USD, cộng với 2,5 triệu USD cho 20% cổ phần của Adobe. Ông cũng đã cố gắng, nhưng không thành công, để mua lại Adobe. Apple và Adobe sau đó đã làm việc cùng nhau để tối ưu hóa PostScript cho máy in LaserWriter của Apple - ra mắt vào 1985 - đóng một vai trò quan trọng trong cuộc cách mạng xuất bản desktop.
Sự đột phá của Adobe trong kết xuất phông chữ và tạo gợi ý đã khiến PostScript khả thi ngay cả trên các máy in laser Canon có độ phân giải thấp 300-dpi. Adobe không cấp bằng sáng chế cho công nghệ này để giữ nó như một bí mật thương mại.
Sự Sụt Giảm và Di Sản của PostScript
Trong những năm 1980 và 1990, PostScript được sử dụng rộng rãi trong máy in laser, nhưng yêu cầu xử lý và bộ nhớ cao khiến nó trở nên đắt đỏ. Khi máy in trở nên rẻ hơn và máy tính mạnh mẽ hơn, các giải pháp dựa trên phần mềm đã thay thế xử lý phần cứng PostScript. Đến năm 2001, hầu hết các máy in giá rẻ đã loại bỏ trò chơi hỗ trợ PostScript để thay thế công nghệ in phun và kết xuất phần mềm.
Tuy nhiên, PostScript vẫn chiếm ưu thế trong máy in chuyên nghiệp cao cấp, nơi nó giảm thiểu xử lý từ máy tính đến máy in, cải thiện hiệu suất. Ngoài ra, PDF (Định Dạng Tài Liệu Di Động)—một hậu duệ trực tiếp của PostScript—đã trở thành tiêu chuẩn cho phân phối tài liệu điện tử.
Các Cấp Độ của PostScript
PostScript đã phát triển qua các cấp độ khác nhau, mỗi cấp độ cải thiện chức năng, hiệu suất và hiệu quả. Có ba cấp độ chính:

1. PostScript Cấp 1 (1984)
PostScript ban đầu (Cấp 1, phát hành năm 1984) cho phép người dùng kiểm soát chính xác bố cục trang với văn bản, đồ họa, và hình ảnh, và được sử dụng trong máy in laser đầu tiên. Tuy nhiên, nó chỉ giới hạn ở thang độ xám, xử lý đồ họa phức tạp chậm, và tạo ra các tệp lớn vì thiếu nén hình ảnh.
- Phiên bản gốc, phát hành bởi Adobe vào 1984.
- Cung cấp mô tả trang không phụ thuộc vào thiết bị cho văn bản, đồ họa, và hình ảnh.
- Cho phép kiểm soát chính xác về kiểu chữ và bố cục.
- Được sử dụng trong các máy in PostScript đầu tiên, bao gồm Apple LaserWriter.
- Hạn Chế:
- Thiếu hỗ trợ màu sắc (chỉ thang độ xám).
- Xử lý chậm trên đồ họa phức tạp.
- Không có nén hình ảnh tích hợp, dẫn đến kích thước tệp lớn.
2. PostScript Cấp 2 (1991)
PostScript Cấp 2 (1991) tăng hiệu suất, thêm in màu, nén tệp, cải thiện phông chữ, và tăng tốc xử lý đồ họa phức tạp.
- Cải thiện hiệu suất và hiệu quả bộ nhớ.
- Thêm hỗ trợ cho in màu (CMYK và màu đặc biệt).
- Giới thiệu nén dữ liệu để giảm kích thước tệp.
- Cho phép xử lý phông chữ cải thiện (phông chữ Loại 1 và Loại 3).
- Giới thiệu Mô Hình, Hình Thức và Phông Chữ Phức Tạp để cải thiện kết xuất văn bản.
- Xử lý nhanh hơn các đồ họa phức tạp so với Cấp 1.
3. PostScript 3 (1997)
PostScript 3 (1997) là một bản cập nhật lớn với kết xuất nhanh hơn, tốt hơn về màu sắc, hỗ trợ in độ phân giải cực cao, cải thiện phông chữ và hiệu ứng đồ họa. Dù giờ đã ít phổ biến hơn, nó vẫn được sử dụng trong một số máy in cao cấp.
- Nâng cấp lớn với hiệu quả kết xuất cao hơn.
- Quản lý màu sắc cải thiện với các hồ sơ ICC.
- Hỗ trợ cải thiện cho in ấn có độ phân giải cao (trên 2400 dpi).
- Xử lý phông chữ tốt hơn, bao gồm hỗ trợ cho phông chữ nhiều bậc thầy.
- Nhiều hiệu ứng trong suốt và tạo bóng (kết xuất đồ họa tốt hơn).
- Được thay thế bằng quy trình làm việc dựa trên PDF trong xuất bản hiện đại nhưng vẫn được sử dụng trong máy in cao cấp.
PostScript trong In Ấn
Trước PostScript:
- Máy in sớm chỉ in ký tự văn bản, thường là ASCII, với các dấu sao cố định (ví dụ như phím máy đánh chữ, dải kim loại, hoặc các bản quang tử).
- Máy in ma trận điểm giới thiệu các phông chữ có thể lựa chọn và tải lên dấu sao tùy chỉnh, cùng với đồ họa raster cơ bản thông qua chuỗi thoát, nhưng yêu cầu trình điều khiển đặc biệt cho từng mẫu máy in.
- Đồ họa vector được xử lý bởi bộ điều hướng (ví dụ, dựa trên HPGL), nhưng chúng chậm, đắt đỏ, và chỉ giới hạn cho đồ họa.
In Ấn PostScript:
- Máy in laser kết hợp sức mạnh của máy in ma trận điểm và bộ điều hướng, cho phép văn bản và đồ họa chất lượng cao trên cùng một trang.
- PostScript thống nhất việc kiểm soát in ấn với một ngôn ngữ độc lập với thiết bị duy nhất hoạt động trên các máy in và phần mềm khác nhau.
- Không giống như các ngôn ngữ điều khiển máy in truyền thống, PostScript là một ngôn ngữ lập trình toàn diện, cho phép kết xuất tài liệu chính xác.
- Raster hóa ngay lập tức: PostScript định nghĩa mọi thứ (bao gồm văn bản) bằng cách sử dụng đường thẳng và đường cong Bézier, cho phép co dãn, xoay và biến đổi mượt mà.
- Các trình diễn giải PostScript, được gọi là Bộ Xử Lý Hình Ảnh Raster (RIPs), chuyển đổi chỉ dẫn thành các điểm cần thiết cho đầu ra cuối cùng.
Xử Lý Phông Chữ PostScript
Hệ thống phông chữ của PostScript sử dụng các hình dạng đồ họa cơ bản để tạo ra các ký tự có thể co giãn, cho phép phông chữ được thay đổi kích thước mà không mất chất lượng. Kỹ thuật tạo gợi ý phông chữ được sử dụng để đảm bảo rằng phông chữ luôn rõ ràng và đọc được ngay cả ở các kích thước nhỏ hoặc độ phân giải thấp. Các phông chữ PostScript được lưu trữ trong các định dạng “Loại” chuyên biệt, mỗi loại cung cấp các khả năng khác nhau.

Hệ Thống Phông Chữ PostScript
- Sử dụng nguyên thủy đồ họa để định nghĩa các ký tự có thể co giãn.
- Kỹ thuật gợi ý phông chữ đảm bảo kết xuất chất lượng cao, ngay cả khi ở độ phân giải thấp.
- Phông chữ được lưu trữ trong các định dạng Loại chuyên biệt với các khả năng khác nhau.
Các Loại Phông Chữ PostScript
PostScript cung cấp nhiều định dạng phông chữ khác nhau. Phông chữ Loại 1 chất lượng cao của Adobe ban đầu được cấp phép, trong khi phông chữ Loại 3, thiếu chuẩn cho kỹ thuật gợi ý, được sử dụng bởi các nhà phát triển khác. Định dạng Loại 2 và CFF giảm kích thước tệp và mở đường cho OpenType. Phông chú CID-Keyed hỗ trợ các bộ ký tự lớn của châu Á và có thể sử dụng cấu trúc Loại 1 hoặc Loại 2.
Phông Chữ Loại 1 (T1):
- Định dạng phông chữ nén & mã hóa bảo vệ của Adobe.
- Được sử dụng cho phông chữ chất lượng cao với kỹ thuật gợi ý.
- Adobe ban đầu cấp phép công nghệ Loại 1 với phí.
Phông Chữ Loại 3 (T3):
- Cho phép tính năng đầy đủ của PostScript, nhưng thiếu kỹ thuật gợi ý tiêu chuẩn.
- Được sử dụng bởi những người không thể cấp phép công nghệ Loại 1.
Phông Chữ Loại 2 (T2) & Định Dạng Phông Chữ Nén (CFF):
- Giảm kích thước tệp phông chữ để hiệu quả.
- Trở thành nền tảng cho phông chữ OpenType.
Phông Chữ CID-Keyed:
- Thiết kế cho bộ ký tự châu Á (CJK) với không gian mã hóa lớn.
- Có thể sử dụng Loại 1 hoặc Loại 2 cho cấu trúc phông chữ khác nhau.
Sự Tiến Hóa Định Dạng Phông Chữ
Apple đã tạo ra phông chữ TrueType để cạnh tranh với phông chữ của Adobe. Điều này khiến Adobe phải chia sẻ cách hoạt động của phông chữ của họ. Sau đó, Adobe và Microsoft đã hợp tác để tạo ra phông chữ OpenType, phông chữ kết hợp những điều tốt nhất của cả hai và đã trở thành định dạng phông chữ tiêu chuẩn mà chúng ta sử dụng ngày nay.
TrueType (1991):
- Được phát triển bởi Apple như một đối thủ cạnh tranh với hệ thống của Adobe.
- Buộc Adobe phải công bố đặc điểm kỹ thuật Loại 1 cho sử dụng công cộng.
OpenType (Cuối thập niên 1990):
- Phát triển chung bởi Adobe & Microsoft.
- Hợp nhất chức năng Loại 1 và TrueType.
- Đã trở thành tiêu chuẩn ngành cho phông chữ hiện đại.
Kết Thúc Hỗ Trợ Loại 1
- Adobe chính thức kết thúc hỗ trợ cho phông chữ Loại 1 vào tháng Một 2023 để ưu tiên OpenType.
Định Dạng Tài Liệu Di Động (PDF) và PostScript
PDF vs. PostScript
PDF và PostScript là hai định dạng tài liệu tạo ra kết quả in ấn giống hệt nhau bởi vì chúng sử dụng cùng hệ thống đồ họa cơ bản. Sự khác biệt chính nằm ở cấu trúc của chúng: PostScript là một ngôn ngữ lập trình đầy đủ, cho phép thực hiện các thao tác động, trong khi PDF là định dạng tĩnh hơn, thiết kế để hiển thị và dẫn hướng hiệu quả. Dù có sự khác biệt này, việc chuyển đổi giữa hai định dạng vẫn có thể thực hiện.

- Mô Hình Hình Ảnh Tương Tự – Cả PDF và PostScript đều sử dụng cùng hệ thống đồ họa, đảm bảo kết quả in ấn giống hệt.
- Sự Khác Biệt Là Gì?
- PostScript là một ngôn ngữ lập trình Turing hoàn chỉnh với khả năng thực hiện các thao tác động.
- PDF là một cấu trúc dữ liệu tĩnh, tối ưu hóa cho truy cập và dẫn hướng hiệu quả, khiến nó tốt hơn cho xem tương tác.
- Khả Năng Chuyển Đổi Lẫn Nhau – Các tệp PDF có thể được chuyển đổi thành PostScript, và ngược lại.
Ngôn Ngữ PostScript
PostScript là một ngôn ngữ lập trình dựa trên ngăn xếp với kiểu dữ liệu động, giống như Forth nhưng có cấu trúc dữ liệu giống Lisp. Nó sử dụng ký pháp Ba Lan Nghịch (RPN), yêu cầu quản lý bộ nhớ cẩn thận. PostScript sử dụng các mảng và từ điển, quản lý kiểu tại thời gian chạy, và có sẵn bộ thu gom rác. Các chú thích bắt đầu bằng “%”, và các chương trình thường bắt đầu với “%!PS”.
- Turing Hoàn Chỉnh & Dựa Trên Ngăn Xếp – Giống với Forth, nhưng có kiểu dữ liệu động và cấu trúc dữ liệu giống Lisp.
- Ký Pháp Ba Lan Nghịch (RPN) – Các toán tử hoạt động trên một ngăn xếp, yêu cầu quản lý cẩn thận.
- Quản Lý Bộ Nhớ –
- Sử dụng bộ nhớ theo phạm vi.
- Giới thiệu bộ thu gom rác trong PostScript Cấp 2.
- Cấu Trúc Dữ Liệu –
- Sử dụng mảng & từ điển.
- Không có khai báo loại hình thức — kiểu được quản lý tại thời gian chạy.
- Chú Thích & Cấu Trúc Chương Trình –
- % dùng để giới thiệu chú thích.
- Các chương trình thường bắt đầu với "%!PS" để chỉ định định dạng PostScript.
Sử Dụng PostScript
- Phần lớn do phần mềm tạo ra, không phải tự viết tay.
- Có thể được sử dụng như một ngôn ngữ lập trình đầy đủ để tự động hóa.
- Được trình diễn bởi máy in (RIPs) hoặc trình xem trên màn hình.
Ví Dụ Về Một Tệp PostScript Đơn Giản
Dưới đây là một ví dụ đơn giản về một tệp PostScript (.ps) in “Hello, World!” trên một trang:
%!PS
/Times-Roman findfont 24 scalefont setfont
100 700 moveto
(Hello, World!) show
showpage
Giải Thích:
%!PS
→ Xác định tệp là một tài liệu PostScript./Times-Roman findfont 24 scalefont setfont
→ Chọn phông chữ Times-Roman với kích thước 24.100 700 moveto
→ Di chuyển con trỏ đến tọa độ (100, 700) trên trang.(Hello, World!) show
→ In “Hello, World!” tại vị trí cụ thể.showpage
→ Báo máy in in trang.
Bạn có thể lưu nó dưới dạng hello.ps và mở với một trình xem PostScript (ví dụ như GSview, Ghostscript) hoặc gửi đến một máy in PostScript.
Hello.ps Sau Khi Kết Xuất

Danh Sách Phần Mềm Để Xử Lý PostScript
Trình Xem & Trình Diễn Giải PostScript
- Ghostscript (Mã nguồn mở) – Trình diễn giải nổi tiếng cho PostScript và PDF.
- GSview – Giao diện người dùng cho Ghostscript.
- MuPDF – Trình xem nhẹ hỗ trợ PostScript và PDF.
- Xpdf – Trình xem PDF mã nguồn mở với hỗ trợ một số tài liệu PostScript.
- Evince – Trình xem tài liệu GNOME có thể xử lý các tệp PostScript.
- Okular – Trình xem tài liệu KDE hỗ trợ PostScript.
- Apple Preview – Trình xem mặc định trong macOS hỗ trợ PostScript & PDF.
Máy In & Máy Xử Lý Hình Ảnh Raster PostScript
- Adobe Acrobat Distiller – Chuyển đổi PostScript sang PDF chất lượng cao.
- CUPS (Hệ Thống In Ấn Unix Chung) – Xử lý in PostScript trên Unix/Linux.
- PPR (Phát Hành Sản Xuất Máy In) – Bộ xử lý & kết xuất PostScript.
Phần Mềm Đồ Họa Vector & DTP
- Adobe Illustrator – Có thể mở & chỉnh sửa các tệp PostScript.
- CorelDRAW – Hỗ trợ PostScript cho đồ họa vector.
- Scribus – Phần mềm xuất bản desktop mã nguồn mở với hỗ trợ PostScript.
- Inkscape – Có thể nhập/xuất PostScript (thông qua Ghostscript).
Công Cụ Dòng Lệnh & Chuyển Đổi
- ps2pdf (một phần của Ghostscript) – Chuyển đổi PostScript thành PDF.
- pstopdf (công cụ dòng lệnh của macOS) – Chuyển đổi PostScript thành PDF.
- ImageMagick – Có thể kết xuất các tệp PostScript thành hình ảnh.