भूत के साथ काले और सफेद करने के लिए एक पीडीएफ परिवर्तित


21

इस सवाल के समान:

FLOSS में कमांड लाइन पर greyscale में एक PDF कन्वर्ट करें?

मेरे पास एक पीडीएफ-दस्तावेज है और इसे शुद्ध काले और सफेद में बदलना चाहते हैं। इसलिए मैं हाफटोन को त्यागना चाहता हूं। भूतल के साथ ग्रेस्केल में बदलने के लिए मैं इस कमांड का उपयोग कर सकता हूं:

gs \
 -sOutputFile=output.PDF \
 -sDEVICE=pdfwrite \
 -sColorConversionStrategy=Gray \
 -dProcessColorModel=/DeviceGray \
 -dCompatibilityLevel=1.4 \
  input.PDF < /dev/null

मोनोक्रोम प्राप्त करने के लिए मुझे क्या बदलना होगा जैसे कि केवल काले और सफेद रंग और कोई हफ़्ता नहीं?

जवाबों:


6

अंतिम सुझाव वास्तव में केवल ग्रेस्केल में परिवर्तित हो जाता है और उसके बाद ही काम करता है यदि अंतर्निहित डॉक्टर सेट्रबगोलर का उपयोग करता है । यह मेरे लिए काम नहीं करता था, क्योंकि मेरे पास एक डॉक्टर था, जो सेटकोलर का उपयोग करता था

मुझे हमेशा 0,0,0 में रंग सेट करने के लिए सेटकोलर को फिर से परिभाषित करने के साथ सफलता मिली :

gs -o <output-file.pdf> -sDEVICE=pdfwrite \
-c "/osetcolor {/setcolor} bind def /setcolor {pop [0 0 0] osetcolor} def" \
-f <input-file.ps>

जब से मैंने कोई पोस्टस्क्रिप्ट हैकिंग की है, तब से यह 15+ साल हो गया है, इसलिए उपरोक्त लंगड़ा, गलत या आकस्मिक भी हो सकता है - यदि आप जानते हैं कि कैसे बेहतर करना है, तो कृपया सुझाव दें।


3

मुझे यकीन नहीं है कि अगर निम्नलिखित सुझाव काम करेगा ... लेकिन यह कोशिश करने लायक हो सकता है:

  1. साधारण pdf2psउपयोगिता का उपयोग करके पीडीएफ को पोस्टस्क्रिप्ट में बदलें
  2. पुन: परिभाषित /setrgbcolorपोस्टस्क्रिप्ट ऑपरेटर का उपयोग करते समय उस पोस्टस्क्रिप्ट को पीडीएफ में परिवर्तित करें

ये आदेश हैं:

प्रथम

  pdf2ps color.pdf color.ps

यह आपको color.psआउटपुट के रूप में देता है ।

दूसरा

gs \
-o bw-from-color.pdf \
-sDEVICE=pdfwrite \
-c "/setrgbcolor{0 mul 3 1 roll 0 mul 3 1 roll 0 mul 3 1 roll 0 mul add add setgray}def" \
-f color.ps

मैंने यह कोशिश की और अभी भी भूरे रंग के रंगों के साथ छोड़ दिया गया था। niklasfi मोनोक्रोम चाहती है।
frabjous

3

यह भूत-प्रेत नहीं है, लेकिन इमेजमैजिक के साथ यह काफी सरल है:

 convert -monochrome input.pdf output.pdf

10
परिणामी पीडीएफ गुणवत्ता मूल से बहुत अधिक खराब है।
हिंडोल

convert -monochrome -denisty 600?
Ilia w495 निकितिन

यह हाफ़टोनिंग करने के लिए लगता है; मैं चाहता हूं कि सभी रंग (लेकिन सफेद) अंधेरे की परवाह किए बिना काले में परिवर्तित हो जाएं।
g.rocket

2

ग्रे स्केल पीडीएफ के लिए:

घोस्टस्क्रिप्ट का उपयोग करके

PHP कोड में, इस स्क्रिप्ट का उपयोग करें

exec("'gs' '-sOutputFile=outputfilename.pdf' '-sDEVICE=pdfwrite' '-sColorConversionStrategy=Gray' '-dProcessColorModel=/DeviceGray' '-dCompatibilityLevel=1.4'  'inputfilename.pdf'",$output);

उपयोगी यूआरएल
http://www.linuxjournal.com/content/tech-tip-use-ghostscript-convert-and-combine-files


1

ऐसा लगता है कि यह काम करेगा:

1) फ़ाइल को मोनोक्रोम के साथ कनवर्ट करें gs

gs -sDEVICE=psmono \
  -dNOPAUSE -dBATCH -dSAFER \
  -sOutputFile=combined.ps \
  first.pdf \
  second.ps \
  third.eps [...]

3) पोस्टस्क्रिप्ट फ़ाइल को PDF के साथ ps2pdfया उसके साथ वापस पीडीएफ में बदलेंgs

(क्रेडिट: http://www.linuxjournal.com/content/tech-tip-use-ghostscript-convert-and-combine-files पर )


0

शुद्ध काले और सफेद पीडीएफ के लिए, आपको इसे पोस्ट प्रारूप के लिए पीएस प्रारूप में पीडीएफ में बदलना होगा:

exec(" gs -sDEVICE=psmono  -dNOPAUSE -dBATCH -dSAFER  -sOutputFile=combined.ps  $pdf");

पीडीएफ के लिए पोस्टस्क्रिप्ट -> काले और सफेद

exec(" gs -sDEVICE=pdfwrite   -dNOPAUSE -dBATCH -dSAFER  -sOutputFile=file_pdf.pdf  filename.ps");
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.