Làm cách nào tôi có thể chia các trang PDF xuống giữa?


38

Có ai biết một cách hay để chia các trang pdf xuống giữa thành hai trang mới không?

Để rõ ràng, tôi không cố tách ra các trang đã có từ pdf; Tôi đang cố gắng tạo hai trang mới từ một trang hiện có.


Tại sao bạn muốn làm nó? nhận được các trang nhỏ hơn?
akira

Vâng MS Office không phải là một phần mềm miễn phí, nhưng nếu bạn có MS Office 2007, thì bạn chỉ có thể lưu tài liệu dưới dạng tệp PDF và làm theo ý bạn ...
Owen


Câu trả lời:


26

Hãy thử BRISS .

văn bản thay thế

Nó cho phép bạn chia mỗi trang thành nhiều trang con như bạn muốn bằng cách xác định các vùng bằng GUI. Nó nhóm tất cả các trang tương tự thành các nhóm cho bạn, vì vậy bạn có thể xác định các khu vực cho nhóm đó một lần.

Đó là đa nền tảng, miễn phí và nguồn mở.


Có vẻ như điều này làm tăng kích thước tệp (lần "số trang đầu ra trên mỗi trang đầu vào"), bởi vì nó sử dụng nội dung trang gốc và hộp cắt xén cho mỗi trang bị cắt. Nếu bạn cần kích thước tệp nhỏ, bạn có thể in tệp đầu ra sang PS và sau đó chuyển đổi sang PDF, nhưng sau đó bạn có thể mất chất lượng (ví dụ: do phông chữ bitmap).
tanius 17/03/2015

37

Bạn có thể giải quyết điều này với sự trợ giúp của Ghostscript. pdftkmột mình không thể làm điều đó (theo sự hiểu biết tốt nhất của tôi). Tôi sẽ cung cấp cho bạn các bước dòng lệnh để làm điều này bằng tay. Sẽ dễ dàng để kịch bản này như một thủ tục, cũng với các tham số khác nhau cho kích thước trang và số trang. Nhưng bạn nói rằng bạn có thể tự làm điều đó ;-)

Cách giải quyết vấn đề này với sự trợ giúp của Ghostscript ...

... Và để giải trí, gần đây tôi đã thực hiện nó không phải bằng một tệp đầu vào có các trang "nhân đôi", mà là một trang có "treble-up". Bạn có thể đọc câu trả lời cho trường hợp này trong phản ứng khác này .

Trường hợp của bạn thậm chí còn đơn giản hơn. Bạn dường như có một cái gì đó tương tự như thế này:

+------------+------------+   ^
|            |            |   |
|      1     |      2     |   |
|            |            | 595 pt
|            |            |   |
|            |            |   |
|            |            |   |
+------------+------------+   v
             ^
            fold
             v
+------------+------------+   ^
|            |            |   |
|      3     |      4     |   |
|            |            | 595 pt
|            |            |   |
|            |            |   |
|            |            |   |
+------------+------------+   v
<---------- 842 pt -------->

Bạn muốn tạo 1 PDF với 4 trang, mỗi trang có kích thước 421 pt x 595 pt.

Bước đầu tiên

Trước tiên, hãy trích xuất các phần bên trái từ mỗi trang đầu vào:

gs \
    -o left-sections.pdf \
    -sDEVICE=pdfwrite \
    -g4210x5950 \
    -c "<</PageOffset [0 0]>> setpagedevice" \
    -f double-page-input.pdf

Những thông số này đã làm gì?

Đầu tiên, hãy biết rằng trong PDF 1 inch == 72 điểm . Sau đó, phần còn lại là:

  • -o ...............:Tên tập tin đầu ra. Ngẫu nhiên cũng sử dụng -dBATCH -dNOPAUSE -dSAFER.
  • -sDEVICE=pdfwrite : chúng tôi muốn PDF là định dạng đầu ra.
  • -g................:đặt kích thước phương tiện đầu ra bằng pixel. độ phân giải mặc định của pdfwrite là 720 dpi. Do đó nhân với 10 để có một trận đấu cho PagePackset.
  • -c "..............:yêu cầu Ghostscript xử lý đoạn mã PostScript đã cho ngay trước tệp đầu vào chính (cần phải tuân theo -f).
  • <</PageOffset ....:thiết lập sự dịch chuyển của hình ảnh trang trên phương tiện. (Tất nhiên, đối với các trang bên trái, sự thay đổi [0 0]không có tác dụng thực sự.)
  • -f ...............: xử lý tập tin đầu vào này.

Kết quả nào đã thực hiện lệnh cuối cùng?

Cái này:

Output file: left-sections.pdf, page 1
+------------+  ^
|            |  |
|     1      |  |
|            |595 pt
|            |  |
|            |  |
|            |  |
+------------+  v

Output file: left-sections.pdf, page 2
+------------+  ^
|            |  |
|     3      |  |
|            |595 pt
|            |  |
|            |  |
|            |  |
+------------+  v
<-- 421 pt -->

Bước thứ hai

Tiếp theo, các phần bên phải:

gs \      
    -o right-sections.pdf \
    -sDEVICE=pdfwrite \
    -g4210x5950 \
    -c "<</PageOffset [-421 0]>> setpagedevice" \
    -f double-page-input.pdf

Kết quả:

Output file: right-sections.pdf, page 1
+------------+  ^
|            |  |
|     2      |  |
|            |595 pt
|            |  |
|            |  |
|            |  |
+------------+  v

Output file: right-sections.pdf, page 2
+------------+  ^
|            |  |
|     4      |  |
|            |595 pt
|            |  |
|            |  |
|            |  |
+------------+  v
<-- 421 pt -->

Bươc cuôi

Bây giờ chúng tôi kết hợp các trang thành một tập tin. Chúng tôi cũng có thể làm điều đó với ghostscript, nhưng pdftkthay vào đó chúng tôi sẽ sử dụng vì công việc này nhanh hơn:

pdftk \
  A=right-sections.pdf \
  B=left-sections.pdf \
  shuffle A B \
  output single-pages-output.pdf
  verbose

Làm xong. Đây là kết quả mong muốn. 4 trang khác nhau, kích thước 421x595 pt.

Kết quả:

+------------+ +------------+ +------------+ +------------+   ^
|            | |            | |            | |            |   |
|     1      | |     2      | |     3      | |     4      |   |
|            | |            | |            | |            | 595 pt
|            | |            | |            | |            |   |
|            | |            | |            | |            |   |
|            | |            | |            | |            |   |
+------------+ +------------+ +------------+ +------------+   v
<-- 421 pt --> <-- 421 pt --> <-- 421 pt --> <-- 421 pt -->

3
Đẹp! Bạn thực sự nên sử dụng điều này trong mọi câu trả lời nếu bạn muốn tiếp tục nhận được miễn phí!
Ivo Flipse

2
Bước thứ hai chỉ làm việc cho tôi khi tôi sử dụng bù âm : "<</PageOffset [-421 0]>> setpagedevice". Tôi đoán nó phụ thuộc vào định hướng của tập tin gốc. Câu trả lời tuyệt vời dù sao. :)
moraes

1
Đối với tôi, bước thứ hai cũng hoạt động với dấu trừ
Rafareino

9

Cảm ơn @marttt và câu trả lời của họ trong Unix & Linux .

Bạn có thể sử dụng mutool(là một phần của mupdf):

mutool poster -x 2 input.pdf output.pdf

Bạn cũng có thể sử dụng -ynếu bạn muốn thực hiện phân chia dọc.


Đây là một giải pháp đơn giản, cảm ơn. Thật không may, không có cách nào để thay đổi nội dung trên trang để điều chỉnh lề - cho việc sử dụng phương pháp được mô tả bởi Kurt Pfeifle.
Ján Lalinský

0

Để mở rộng dựa trên câu trả lời của @ Kurt (vì tôi không có đủ điểm danh tiếng để nhận xét) trước tiên hãy đảm bảo rằng kích thước bạn sử dụng không dựa trên kích thước Hộp cắt nếu chúng khác với kích thước Hộp phương tiện. Kích thước đầu ra dựa trên kích thước Hộp Phương tiện, nhưng phần bù dường như sử dụng kích thước Hộp Cắt.

Đối với một trang được đóng gói có hộp phương tiện 20,0833 x 13,833 và hộp cắt xén 19,25 x 13,0 giống như hộp trang trí trong tài liệu của tôi, để chia nó thành hai trang trên Ubuntu, cho bên trái:

gs -o left.pdf -sDEVICE=pdfwrite -g7230x9960 -c "<</PageOffset [0 0]>> setpagedevice" -f gatefold.pdf

Phía bên phải:

gs -o right.pdf -sDEVICE=pdfwrite -g7230x9960 -c "<</PageOffset [-693 0]>> setpagedevice" -f gatefold.pdf

Và sau đó khâu chúng với pdftk left.pdf right.pdf output final.pdf.

Một cách khác là đặt hộp cắt giống như hộp phương tiện; thì phần bù sẽ là -723. Nhưng sau đó, crop sẽ phải được thiết lập lại để cắt để các trang xuất hiện liền mạch. Nếu không, đặt phương tiện để cắt.


Lưu ý, sau khi chia các trang với các tùy chọn lệnh này, các hộp phương tiện không thay đổi. Chỉ có vụ mùa thay đổi. Nếu bạn chia một trang thành nhiều trang, các trang mới sẽ giữ kích thước hộp phương tiện từ trang cũ. Cần sed để sửa đổi kích thước hộp phương tiện. Mặc dù không biết cách đặt hộp phương tiện để cắt mà không bao gồm số trong lệnh.
xe máy

Rất tiếc. Tôi có nghĩa là các trang mới giữ kích thước hộp cắt từ trang cũ.
xe máy

Tìm thấy một lỗi với Acrobat PDFs. Trực quan, kích thước cropBox có thể được nhìn thấy trong Hộp trang trong Acrobat. Nhưng kích thước cropBox sau khi sử dụng Ghostscript để phân chia các gateprint giữ kích thước trang cũ ở một cấp độ khác. Điều này có thể được nhìn thấy trong thông tin Phân tích Preflight trong Acrobat. Sau khi điều chỉnh crop trong Acrobat ở bên phải của trang bên trái tạm thời thành một số tùy ý và sau đó trả về 0, các kích thước hộp khác (bleed, art và trim) cũng được điều chỉnh. Điều này đã khắc phục sự cố trong đó dữ liệu cropBox vẫn hiển thị kích thước trang cũ. Trang bên phải là một chút khác nhau.
xe máy
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.