Konversi PDF ke skala abu-abu pada baris perintah di FLOSS?


80

Saya memiliki file PDF berwarna, dan saya akan mencetaknya kemudian menyalinnya hitam putih. Saya ingin tahu bagaimana rasanya di B&W sebelum memfotokopi. Apakah mungkin untuk 'greyscale' PDF di baris perintah menggunakan perangkat lunak gratis? Saya menggunakan Ubuntu 9,10.

Jawaban:


35

ImageMagick dapat melakukan ini.

convert -colorspace GRAY color.pdf gray.pdf

via email ini


27
Itu secara signifikan mengurangi kualitas. Solusi @goyinux lebih baik.
— Johannes Weiss

7
Konversi sebenarnya akan meraster isi pdf. Jadi kecuali pdf sudah merangkum hanya gambar raster (misalnya dokumen yang dipindai), pendekatan ini adalah tidak boleh-tidak.
— m000

2
Kecuali Anda menggunakan -density 400 -quality 100parameter - yang berfungsi dengan baik
— burtek

2
Sungguh, adakah yang tidak bisa dilakukan ImageMagick ? :)
— BalinKingOfMoria

-density 400 -quality 100membuat file BESAR. +1 untuk solusi @ goyinux.
— Stanimir Stoyanov

155

Lebih baik:

gs \
 -sOutputFile=output.pdf \
 -sDEVICE=pdfwrite \
 -sColorConversionStrategy=Gray \
 -dProcessColorModel=/DeviceGray \
 -dCompatibilityLevel=1.4 \
 -dNOPAUSE \
 -dBATCH \
 input.pdf

1
Setuju, ini memberikan hasil yang jauh lebih baik daripada konversi, tetapi kadang-kadang memutar pdf yang sedikit mengganggu!
— tdc

9
Baru sadar Anda dapat menonaktifkannya dengan-dAutoRotatePages=/None
— tdc

1
Saya hanya menjalankan perintah ini pada 58MB PDF yang sudah abu-abu (berasal dari pemindai) dan output yang dihasilkan adalah 10MB dan tampak persis sama. Bagus!
— Archie

1
Bekerja dengan baik di Windows juga! Hapus saja `\` dan letakkan semuanya di baris yang sama.
— ixe013

1
Bahkan, ini gagal dengan kesalahan iniGPL Ghostscript 9.10: Unable to convert color space to Gray, reverting strategy to LeaveColorUnchanged.
— jjmerelo

13

Berikut ini adalah skrip kecil yang selain konversi grayscale dapat menggabungkan beberapa file input. Untuk menggunakan skrip, masukkan baris berikut dalam file, misalnya "convert2gray.sh"

#!/bin/bash
gs -sOutputFile=converted.pdf -sDEVICE=pdfwrite -sColorConversionStrategy=Gray -dProcessColorModel=/DeviceGray -dCompatibiltyLevel=1.4 -dNOPAUSE -dBATCH $@

dan membuatnya dapat dieksekusi

chmod +x convert2gray.sh

Kemudian

./convert2gray.sh input1.pdf input2.pdf … lastinput.pdf

akan menghasilkan satu PDF "convert.pdf", yang berisi semua halaman dari file input yang dikonversi ke skala abu-abu.

Saya harus mencetak file mutliple semua dalam skala abu-abu dan menemukan ini cara termudah, karena Anda dapat mencetak semuanya setelah pemeriksaan dengan satu perintah.


FWIW, pdftk juga dapat menggabungkan PDF.
— user1338062
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.