"फ़ाइल से प्रिंट" क्या है और क्या इसे कमांड लाइन से इस्तेमाल किया जा सकता है?


12

जब आप एक गनोम प्रिंट डायलॉग में "प्रिंट टू फाइल" चुनें (कप-पीडीएफ नहीं):

फाइल करने के लिए प्रिंट

... वास्तविक कमांड क्या है जो निष्पादित होती है? (मैं पोस्टस्क्रिप्ट संस्करण में रुचि रखता हूं, जैसा कि छवि पर है)

दूसरी ओर - शायद कोई कमांड कॉल नहीं है; शायद यह है gtk_print_operation_set_export_filenameसे नया जीटीके + मुद्रण एपीआई ?

किसी भी मामले में - क्या मेरे लिए कमांड लाइन (नहीं pdf2psऔर इस तरह) से इस विशेष कोड का उपयोग करने का कोई तरीका है ? lprएक पोस्टस्क्रिप्ट फ़ाइल में "प्रिंट टू फाइल" का उपयोग करके कहें - जैसे कि मैं ऊपर दिए गए संवाद का उपयोग कर रहा था?


3
AFAIK, यह कुछ GNOME और GTK + अनुप्रयोगों द्वारा सामान को प्रिंट करने के लिए उपयोग किए जाने वाले सबसिस्टम की एक विशेषता है (इनमें से कुछ का उपयोग कैफ़े)। सीधे lprबातचीत cupsकरता है, फ़ाइल विकल्प का प्रिंट पूरी तरह से प्रिंटिंग सर्वर को बायपास करता है। यह शायद एक आदेश नहीं कहता है, यह सिर्फ एक अलग तरीके से cairo रेंडरिंग फ़ंक्शन को आमंत्रित करता है इसलिए यह पीडीएफ, पोस्टस्क्रिप्ट या svg आउटपुट को एक फ़ाइल में उत्पन्न करता है।
njsg

आह, तो इसके cairo वहाँ बैकेंड! किसी भी विचार अगर एक तुलनीय कमांड लाइन उपलब्ध है, जो कि इस रेंडरिंग फ़ंक्शन को उसी तरह से लागू कर सकता है जैसे कि प्रिंट संवाद करता है? टिप्पणी के लिए बहुत धन्यवाद, @njsg - चीयर्स!
सादाऊ

3
कुछ कैरो कमांड लाइन टूल हो सकते हैं (मुझे वास्तव में पता नहीं है), लेकिन मुझे लगता है कि यह थोड़ा मुश्किल है, क्योंकि कई एप्लिकेशन अपने स्वयं के दस्तावेजों को प्रिंट करने के लिए कैरो का उपयोग करते हैं, और यह एप्लिकेशन वह है जो फ़ाइल प्रारूप को समझने में सक्षम है। । काहिरा यादृच्छिक फ़ाइल स्वरूपों को पढ़ने में सक्षम नहीं होगा। निकटतम आप प्राप्त कर सकते हैं यह देखने के लिए कि संवाद के साथ कार्यक्रम में जीयूआई को खोलने के बिना फ़ाइल को प्रिंट करने के लिए कुछ कमांडलाइन विकल्प है।
njsg

यह समझाने के लिए धन्यवाद कि @njsg - उपरोक्त स्क्रीनशॉट evinceप्रिंट संवाद से लिया गया था ; दुर्भाग्य से, मैं किसी भी कमांड लाइन स्विच को नहीं देख सकता हूँ evinceजो इस तरह से कुछ करेगा .. चीयर्स!
सादाऊ

यह सिर्फ एक यूआई सम्मेलन है, प्रत्येक प्रोग्राम सिद्धांत रूप में वह कर सकता है जब वह "प्रिंट टू फाइल" चुना जाता है।
वॉनब्रांड

जवाबों:


4

आप cups-pdfपैकेज को सूक्ति से स्वतंत्र समाधान के रूप में उपयोग कर सकते हैं । पैकेज को स्थापित करने के बाद, यहाँhttp://localhost:631 वर्णित कप वेबरेंफ़र्ट का उपयोग करके पीडीएफ प्रिंटर जोड़ें (' सामान्य' प्रिंटर निर्माता के रूप में, CUPS-PDF ड्राइवर के रूप में )।

अपनी सुविधा के लिए, आउटपुट निर्देशिका को उस विकल्प Outमें बदलें /etc/cups/cups-pdf.conf, जैसे, ${HOME}या जो भी आप चाहते हैं। फिर फ़ाइल के लिए प्रिंट करने के लिए @ Noam द्वारा सुझाए अनुसार करें ।


2
lpr -P "Print_to_PDF" file_to_print

वर्तमान में कॉन्फ़िगर किए गए प्रिंटर की सूची प्राप्त करने के लिए, चलाएं lpstat -p -d


mmm, -P "Print_to_PDF" मुझे यह त्रुटि देता है "lpr: प्रिंटर या क्लास मौजूद नहीं है।"
ऑब्री

0

आप सिस्टम पर डिफ़ॉल्ट (या केवल) प्रिंटर के लिए फ़ाइल प्रिंट करने के लिए lp प्रिंटिंग कमांड का उपयोग कर सकते हैं :

lp filename

या एक विशिष्ट प्रिंटर के लिए

lp -d printer filename

0

प्रिंट-टू-फाइल दस्तावेज़ को प्रिंटर पर नहीं बल्कि एक पीडीएफ दस्तावेज़ पर भेजता है।

कप प्रिंटिंग सिस्टम के साथ भी किया जा सकता है, जो आपके एप्लिकेशन प्रिंट कमांड भेजते समय उपयोग करते हैं।

कपफिल्टर टूल का उपयोग करें। यह प्रभावी रूप से एक दस्तावेज़ को परिवर्तित करता है। यह डिफ़ॉल्ट रूप से पीडीएफ में कनवर्ट करता है।

$ cupsfilter inputfilename > outputfilename.pdf

जैसा यहाँ बताया गया है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.