Xử lý tệp PostScript trên Linux: Các công cụ dòng lệnh thiết yếu

PostScript là định dạng tài liệu vector lâu đời, vẫn được sử dụng rộng rãi trong in ấn chuyên nghiệp và xử lý tài liệu tự động trên hệ thống Linux. Nhóm công cụ psutils cung cấp một bộ lệnh nhẹ, không phụ thuộc vào GUI, cho phép thao tác chính xác với tệp PostScript mà không cần chuyển đổi định dạng trung gian.

Lọc trang bằng psselect

Công cụ này hỗ trợ chọn trang theo chỉ số tuyệt đối hoặc tương đối. Để trích xuất trang thứ 47 từ tệp report.ps:

psselect -p47 report.ps output_page.ps

Để lấy dãy trang từ trang thứ 3 đến trang thứ 8 (bao gồm cả hai đầu mút):

psselect -p3-8 report.ps range.ps

Chỉ số âm đếm ngược từ cuối: -p_-1 là trang cuối cùng, -p_-3--1 là ba trang cuối.

Ghép nhiều trang lên một mặt giấy với psnup

Thay vì in từng trang riêng lẻ, bạn có thể nén nội dung lên một tờ A4 hoặc Letter:

psnup -2 document.ps two_up.ps

Thêm tùy chọn -s để co tỷ lệ toàn bộ nội dung — ví dụ, thu nhỏ còn 60% kích thước gốc:

psnup -s 0.6 -4 document.ps four_up.ps

Sắp xếp lại trang theo thứ tự in sách (imposition)

Để in thành cuốn sách (booklet), trước tiên dùng psbook sắp xếp lại thứ tự trang sao cho khi gấp lại đúng chiều:

psbook manual.ps booklet_ordered.ps

Sau đó kết hợp với psnup để đặt hai trang trên một mặt giấy theo bố cục nằm ngang:

psnup -l -2 -pletter booklet_ordered.ps booklet_2up.ps

Thay đổi kích thước trang đích

Dùng psresize để điều chỉnh khung trang — hữu ích khi chuẩn bị tài liệu cho các loại máy in khác nhau:

psresize -pa4 input.ps a4_output.ps

Hỗ trợ các định danh tiêu chuẩn như a4, letter, legal, tabloid.

Nối nhiều tài liệu PostScript

psmerge nối tuần tự các tệp, đảm bảo giữ nguyên phần mở đầu (prologue) chỉ ở tệp đầu tiên:

psmerge -o combined.ps chapter1.ps chapter2.ps appendix.ps

Tạo tài liệu dạng booklet hoàn chỉnh

Một quy trình đầy đủ gồm ba bước:

  1. Sắp xếp lại trang: psbook source.ps ordered.ps
  2. Ghép 2 trang/mặt: psnup -l -2 -pa4 ordered.ps layout.ps
  3. Tách thành hai luồng in riêng biệt (lẻ/chẵn) nếu cần in hai mặt thủ công:
    pstops "2:0L@0.95(20cm,27cm)" layout.ps odd_pages.ps
    pstops "2:1L@0.95(20cm,27cm)" layout.ps even_pages.ps

Chuyển đổi sang định dạng khác

Với Ghostscript, việc chuyển đổi diễn ra nhanh và kiểm soát cao:

  • PS → PDF: gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/prepress -dNOPAUSE -dQUIET -dBATCH -sOutputFile=output.pdf input.ps
  • PS → văn bản thuần: ps2ascii -q input.ps output.txt

Thẻ: psutils ghostscript postscript linux-cli document-processing

Đăng vào ngày 8 tháng 7 lúc 22:41