ใน gedit การพิมพ์ไฟล์ให้ตัวเลือกในการพิมพ์ไปยังไฟล์ซึ่งสามารถบันทึกไฟล์เป็น pdf ได้ ฉันจะทำสิ่งเดียวกันจากบรรทัดคำสั่งได้อย่างไร
ใน gedit การพิมพ์ไฟล์ให้ตัวเลือกในการพิมพ์ไปยังไฟล์ซึ่งสามารถบันทึกไฟล์เป็น pdf ได้ ฉันจะทำสิ่งเดียวกันจากบรรทัดคำสั่งได้อย่างไร
คำตอบ:
นี่คือโซลูชันที่ไม่เกี่ยวข้องกับ OpenOffice:
sudo apt-get install enscript
enscript my_text_file.txt -o - | ps2pdf - output.pdf
มีตัวเลือกเพิ่มเติมenscript
เช่น-B
ละเว้นส่วนหัวของหน้า ดูman enscript
ตัวเลือกทั้งหมด
โดยไม่ต้องติดตั้งซอฟต์แวร์ใด ๆ ที่กล่าวถึงข้างต้นคุณสามารถทำสิ่งต่อไปนี้ด้วยการติดตั้งแล้วcupsfilter
:
cupsfilter foo.txt > foo.pdf
(สำหรับตัวเลือกอื่น ๆ โปรดดูที่หน้าคน cupsfilter :-))
แนวทางที่เรียบง่าย
sudo apt-get ติดตั้ง cups-pdf enscript
จากนั้นเรียกใช้ enscript บนไฟล์ของคุณด้วยสวิตช์ -P และคำอธิบายเครื่องพิมพ์ PDF ในกรณีนี้
enscript -B -PPDF test.txt
เครื่องพิมพ์ที่มีคำอธิบาย PDF ถูกสร้างขึ้นเมื่อคุณติดตั้ง cups-pdf เมื่อคุณใช้ enscript กับเครื่องพิมพ์นั้นเอกสารของคุณจะถูกส่งไปยังเครื่องพิมพ์ PDF และจะถูกพิมพ์ลงในไฟล์สร้างเป็น. pdf ในไดเรกทอรี / home / PDF ของคุณ คำสั่งข้างต้นจะพิมพ์ไฟล์ข้อความ test.txt เป็นไฟล์ PDF ในไดเรกทอรี PDF
ใช้ UNOCONV
sudo apt-get install unoconv
คุณสามารถใช้ unoconv ในโหมดสแตนด์อโลนซึ่งหมายความว่าหากไม่มีผู้ฟัง OpenOffice มันจะเริ่มทำงานเอง:
ในไดเรกทอรีที่ไฟล์ของคุณทำงานอยู่:
unoconv -f pdf test.txt
สิ่งนี้จะสร้างรูปแบบไฟล์ PDF ที่สวยงามของ test.txt ในไดเรกทอรีปัจจุบัน
enscript foo.txt -o bar.pdf
ทำงานได้ค่อนข้างดี ขอบคุณ!
มีโปรแกรมบรรทัดคำสั่งที่สามารถแปลงระหว่างทุกรูปแบบที่รองรับการเปิด / libre office ที่เรียกว่าunoconv ดังนั้นหากคุณต้องการแบทช์แปลงด้วยสคริปต์มันจะมีประโยชน์
sudo apt-get install unoconv
paps
เป็นทางเลือกที่ดีกว่า enscript
paps file.txt | ps2pdf - output.pdf
Pandoc เป็นเครื่องมือที่ต้องมีมีดสวิสเมื่อพูดถึงการแปลงระหว่างภาษามาร์กอัปต่างๆ ในการเริ่มต้นให้คุณติดตั้งตัวแปลง pandoc ก่อน:
sudo apt-get install pandoc
ไวยากรณ์ทั่วไปและที่ใช้บ่อยที่สุดสำหรับ pandoc คือ:
pandoc -f <from format> -t <to format> <source file>
โปรดทราบว่าคุณต้องติดตั้งแพคเกจ texlive-latex-base ก่อนจึงจะสามารถแปลงเป็นรูปแบบ PDF มิฉะนั้นคุณจะได้รับข้อผิดพลาดต่อไปนี้:
pandoc: pdflatex not found. pdflatex is needed for pdf output.
วิธีติดตั้ง:
sudo apt-get install texlive-latex-base
ตอนนี้คุณสามารถแปลงไฟล์เป็น pdf ได้อย่างง่ายดาย
pandoc -t txt -t pdf source.txt
แทนที่ txt ด้วยรูปแบบข้อความของคุณ (odt - html - .... )
pandoc: Unknown writer: pdf
จนกว่าฉันจะติดตั้ง texlive-latex-base นี่คือความไว้วางใจ ดูgithub.com/jgm/pandoc/issues/1155 จากนั้นฉันได้รับข้อผิดพลาดเกี่ยวกับแบบอักษรที่ขาดหายไปหนึ่งในนั้นเกี่ยวกับ url.sty ฯลฯ
ดังที่โพสต์ข้างต้นenscript
เป็นวิธีที่นิยมในการแปลงข้อความเป็น postscript ซึ่งสามารถแปลงเป็น PDF ได้อีก เครื่องมือที่คล้ายกันซึ่งได้รับรอบเป็นเวลานานคือ
a2ps
มันมีตัวเลือกจำนวนมากรวมถึงการวางหลายหน้าในหน้าทางกายภาพ ติดตั้ง ap2s
sudo apt-get install a2ps
กับ
AFAIK, enscript และ a2ps ทำหน้าที่เดียวกัน แต่อินเตอร์เฟสของพวกเขานั้นแตกต่างกันและ YMMV กับแต่ละคน
ฉันมีปัญหากับภาษาเยอรมัน Umlaute (ÄÖÜ) กับวิธีแก้ไขปัญหาที่กล่าวถึงข้างต้น หรือในกรณีของ paps PDF ที่เป็นผลลัพธ์จะไม่มีเลเยอร์ข้อความ
ทางออกที่ดีที่สุดสำหรับผมคือการใช้wkthmltopdf ดูเหมือนว่าจะไม่มีเอกสาร แต่คุณสามารถแปลงไฟล์ข้อความเป็นไฟล์ PDF ได้อย่างง่ายดายโดยใช้ไวยากรณ์นี้:
wktmltopdf <textfile> <pdffile>
wkhtmltopdf สามารถจัดการไฟล์ UTF-8 (ไม่เหมือน enscript) ตัวอักษรที่มีปัญหาทั้งหมดเช่นÄÖÜßเป็นต้นจะแสดงอย่างถูกต้อง
คุณสามารถใช้ a2x
a2x - แปลงไฟล์ข้อความ Asciidoc เป็น PDF, XHTML, วิธีใช้ HTML, ODF, manpage หรือข้อความธรรมดา
ในการติดตั้ง a2x:
sudo apt-get install asciidoc
ตัวอย่างเช่น:
a2x -f pdf testfile.txt
คุณสามารถใช้u2ps ได้เช่นกัน
สิ่งนี้สร้างทั้ง ps และ pdf สิ่งนี้ยอมรับข้อความ UTF-8 และรองรับการเน้นไวยากรณ์ผ่านมาร์กอัป Pango