วิธีสร้างและรวมไฟล์ PDF บน Linux Command Line
เผยแพร่แล้ว: 2022-09-24ไฟล์ PDF ออกแบบมาเพื่อส่งเสริมการแบ่งปัน ทุกคนสามารถเปิดได้—ในเว็บเบราว์เซอร์ของพวกเขาหากพวกเขาไม่มีอย่างอื่น Linux ให้คุณจัดการ ผสาน และแยกไฟล์ PDF บนบรรทัดคำสั่ง
รูปแบบเอกสารแบบพกพา
การสร้างไฟล์ PDF บน Linux
คำสั่ง qpdf
การรวมไฟล์ PDF
การแยกไฟล์ PDF
หมุนหน้า
การเข้ารหัสและถอดรหัส
qpdf เป็นเครื่องมือที่ยอดเยี่ยม
รูปแบบเอกสารแบบพกพา
Portable Document Format (PDF) แก้ปัญหาได้ เมื่อคุณสร้างเอกสารบนคอมพิวเตอร์และต้องการแชร์กับคนอื่น การส่งเอกสารไปให้พวกเขาอาจไม่ได้ผลเสมอไป
แม้ว่าพวกเขาจะมีแพ็คเกจซอฟต์แวร์เดียวกันกับที่คุณใช้สร้างเอกสารของคุณ แต่ก็อาจไม่มีแบบอักษรเดียวกันที่ติดตั้งบนคอมพิวเตอร์ของพวกเขาที่คุณมีในคอมพิวเตอร์ของคุณ พวกเขาสามารถเปิดเอกสารได้ แต่จะดูผิด
หากพวกเขาไม่มีสำเนาของซอฟต์แวร์ที่คุณใช้สร้างแพ็คเกจ พวกเขาจะไม่สามารถเปิดได้เลย หากคุณใช้ซอฟต์แวร์ที่มีเฉพาะบน Linux การส่งเอกสารนั้นไปยังผู้ที่ใช้ Windows เท่านั้นก็ไม่มีประโยชน์
Adobe สร้างรูปแบบไฟล์ใหม่ในปี 1992 และเรียกมันว่ารูปแบบเอกสารแบบพกพา เอกสารที่สร้างขึ้นตามมาตรฐานนั้น—ISO 32000—ประกอบด้วยรูปภาพและแบบอักษรที่จำเป็นในการแสดงเนื้อหาของไฟล์อย่างถูกต้อง ไฟล์ PDF สามารถเปิดได้โดยผู้ดู PDF บนแพลตฟอร์มใดก็ได้ เป็นโซลูชันข้ามแพลตฟอร์ม เรียบง่าย และสง่างาม
ไฟล์ PDF ไม่ได้มีวัตถุประสงค์เพื่อให้อ่อนได้เหมือนเอกสารโปรแกรมประมวลผลคำ พวกเขาไม่พร้อมที่จะแก้ไข หากคุณต้องการเปลี่ยนเนื้อหาของ PDF จะดีกว่าเสมอที่จะกลับไปที่เอกสารต้นฉบับ แก้ไข และสร้าง PDF ใหม่ ตรงกันข้ามกับการพยายามเปลี่ยนเนื้อหา การปรับเปลี่ยน โครงสร้าง สามารถทำได้ในไฟล์ PDF ได้อย่างง่ายดาย
ต่อไปนี้เป็นวิธีสร้างไฟล์ PDF บน Linux และวิธีดำเนินการแปลงบางส่วนที่สามารถนำไปใช้กับไฟล์เหล่านี้ได้
การสร้างไฟล์ PDF บน Linux
แอพพลิเคชั่นมากมายบน Linux สามารถสร้างไฟล์ PDF ได้โดยตรง LibreOffice มีปุ่มขวาบนแถบเครื่องมือที่สร้าง PDF ของเอกสารปัจจุบัน มันไม่ง่ายเลย
สำหรับการควบคุมการสร้าง PDF อย่างละเอียด แอปพลิเคชันการเผยแพร่บนเดสก์ท็อป Scribus นั้นยากจะเอาชนะได้
หากคุณต้องการสร้างเอกสารที่มีเนื้อหาทางวิทยาศาสตร์หรือทางคณิตศาสตร์ สำหรับการส่งไปยังวารสารวิชาการ แอปพลิเคชันที่ใช้ LaTeX เช่น Texmaker จะเหมาะสำหรับคุณ
หากคุณต้องการเวิร์กโฟลว์ข้อความธรรมดา อาจใช้ Markdown คุณสามารถใช้ pandoc
เพื่อแปลงเป็นและจากรูปแบบไฟล์ที่ยอดเยี่ยมมากมาย รวมถึง PDF เรามีคำแนะนำเกี่ยวกับ pandoc
โดยเฉพาะ แต่ตัวอย่างง่ายๆ จะแสดงให้คุณเห็นว่าใช้งานง่ายเพียงใด
ติดตั้ง Texmaker ก่อน pandoc
อาศัยไลบรารี LaTeX บางตัวสำหรับการสร้าง PDF การติดตั้ง Texmaker เป็นวิธีที่สะดวกในการตอบสนองการพึ่งพาเหล่านั้น
ตัวเลือก -o
(เอาต์พุต) ใช้เพื่อระบุประเภทของไฟล์ที่จะสร้างขึ้น ไฟล์ “raw-notes.md” เป็นไฟล์ Markdown แบบข้อความธรรมดา
pandoc -o new.pdf raw-notes.md
หากเราเปิดไฟล์ “new.pdf” ในโปรแกรมดู PDF เราจะเห็นว่าไฟล์นั้นเป็น PDF ที่มีรูปแบบถูกต้อง
คำสั่ง qpdf
คำสั่ง qpdf
ช่วยให้คุณสามารถจัดการไฟล์ PDF ที่มีอยู่ ในขณะที่รักษาเนื้อหาไว้ การเปลี่ยนแปลงที่คุณสามารถทำได้คือ โครงสร้าง ด้วย qpdf
คุณสามารถทำงานต่างๆ เช่น การรวมไฟล์ PDF การแยกหน้า การหมุนหน้า การตั้งค่าและการลบการเข้ารหัส
ในการติดตั้ง qpdf
บน Ubuntu ให้ใช้คำสั่งนี้:
sudo apt ติดตั้ง qpdf
คำสั่งบน Fedora คือ:
sudo dnf ติดตั้ง qpdf
บน Manjaro คุณต้องพิมพ์:
sudo pacman -S qpdf
การรวมไฟล์ PDF
ในตอนแรก ไวยากรณ์บรรทัดคำสั่ง qpdf
บางตัวอาจดูสับสน ตัวอย่างเช่น คำสั่งจำนวนมากคาดหวังให้ป้อนไฟล์ PDF
หากไม่จำเป็นต้องใช้คำสั่ง คุณต้องใช้ตัวเลือก --empty
แทน สิ่งนี้บอก qpdf
ว่าไม่ต้องคาดหวังไฟล์อินพุต ตัวเลือก --pages
ให้คุณเลือกหน้าได้ หากคุณเพียงแค่ระบุชื่อ PDF หน้าทั้งหมดจะถูกใช้
หากต้องการรวมไฟล์ PDF สองไฟล์เข้าด้วยกันเป็นไฟล์ PDF ใหม่ ให้ใช้รูปแบบคำสั่งนี้
qpdf --empty --pages first.pdf second.pdf -- รวม.pdf
คำสั่งนี้ประกอบด้วย:
- qpdf : เรียกคำสั่ง
qpdf
- –empty : บอก
qpdf
ว่าไม่มีการป้อน PDF คุณสามารถโต้แย้งได้ว่า “first.pdf” และ “second.pdf” เป็นไฟล์อินพุต แต่qpdf
จะถือว่าไฟล์เหล่านี้เป็นพารามิเตอร์บรรทัดคำสั่ง - –pages : บอก
qpdf
ว่าเรากำลังจะทำงานกับเพจ - first.pdf second.pdf : สองไฟล์ที่เราจะแยกจากหน้า เราไม่ได้ใช้ช่วงของหน้า ดังนั้นทุกหน้าจะถูกใช้
- — : ระบุจุดสิ้นสุดของตัวเลือกคำสั่ง
- รวม .pdf : ชื่อของ PDF ที่จะถูกสร้างขึ้น
หากเราค้นหาไฟล์ PDF ด้วย ls
เราจะเห็นไฟล์ต้นฉบับสองไฟล์ของเรา—ไม่ถูกแตะต้อง—และ PDF ใหม่ที่เรียกว่า “combined.pdf”
ls -hl first.pdf second.pdf รวม.pdf
มีสองหน้าใน “first.pdf” และหนึ่งหน้าใน “second.pdf” ไฟล์ PDF ใหม่มีสามหน้า
คุณสามารถใช้ไวด์การ์ดแทนการแสดงรายการไฟล์ต้นฉบับจำนวนมากได้ คำสั่งนี้จะสร้างไฟล์ใหม่ชื่อ “all.pdf” ที่มีไฟล์ PDF ทั้งหมดในไดเร็กทอรีปัจจุบัน
qpdf --empty --pages *.pdf -- all.pdf
เราสามารถใช้ช่วงหน้าโดยการเพิ่มหมายเลขหน้าหรือช่วงหลังชื่อไฟล์ที่จะแยกหน้า
นี่จะแยกหน้าที่หนึ่งและสองจาก “first.pdf” และหน้าสองจาก “second.pdf” โปรดทราบว่าหากมี “combined.pdf” อยู่แล้ว จะไม่มีการเขียนทับ มีหน้าที่เลือก เพิ่ม เข้าไป
qpdf --empty --pages first.pdf 1-2 seconds.pdf 1 -- รวม.pdf
ช่วงของหน้าสามารถมีรายละเอียดได้ตามที่คุณต้องการ ในที่นี้ เราขอชุดหน้าที่เฉพาะเจาะจงมากจากไฟล์ PDF ขนาดใหญ่ และเรากำลังสร้างไฟล์ PDF สรุป
qpdf --empty --pages large.pdf 1-3,7,11,18-21,55 -- Summary.pdf
ไฟล์เอาต์พุต “summary.pdf” มีหน้า 1 ถึง 3, 7, 11, 18 ถึง 21 และ 55 จากไฟล์ PDF ที่ป้อน ซึ่งหมายความว่ามี 10 หน้าใน “summary.pdf”
เราจะเห็นว่าหน้า 10 เป็นหน้า 55 จาก PDF ต้นฉบับ
การแยกไฟล์ PDF
สิ่งที่ตรงกันข้ามกับการรวมไฟล์ PDF ก็คือการแยกไฟล์ PDF ในการแบ่ง PDF เป็นไฟล์ PDF แยกกันโดยแต่ละหน้ามีหน้าเดียว ไวยากรณ์นั้นง่ายมาก
ไฟล์ที่เรากำลังแยกคือ "summary.pdf" และไฟล์ที่ส่งออกจะได้รับเป็น "page.pdf" ใช้เป็นชื่อฐาน ไฟล์ใหม่แต่ละไฟล์มีการเพิ่มตัวเลขลงในชื่อฐาน ตัวเลือก --split-pages
จะบอก qpdf
ว่าเรากำลังดำเนินการประเภทใด
qpdf summary.pdf page.pdf --split-pages
ผลลัพธ์คือชุดของไฟล์ PDF ที่มีลำดับเลขตามลำดับ
ls หน้า*.pdf
หากคุณไม่ต้องการแยกทุกหน้า ให้ใช้ช่วงของหน้าเพื่อเลือกหน้าที่คุณต้องการ
หากเราออกคำสั่งถัดไป เราจะแยกคอลเลกชันของไฟล์ PDF หน้าเดียว ช่วงของหน้าใช้เพื่อระบุหน้าหรือช่วงที่เราต้องการ แต่แต่ละหน้ายังคงจัดเก็บไว้ใน PDF เดียว
qpdf large.pdf section.pdf --pages large.pdf 1-5,11-14,60,70-100 -- -- แยกหน้า
หน้าที่แยกออกมาจะมีชื่อตาม “section.pdf” โดยมีการเพิ่มหมายเลขตามลำดับเข้าไป
ls ส่วน*.pdf
หากคุณต้องการแยกช่วงหน้าและจัดเก็บไว้ใน PDF เดียว ให้ใช้คำสั่งของแบบฟอร์มนี้ โปรดทราบว่าเราไม่ได้รวมตัวเลือก --split-pages
อย่างมีประสิทธิภาพ สิ่งที่เราทำที่นี่คือการผสาน PDF แต่เรากำลัง "รวม" หน้าจากไฟล์ต้นฉบับเพียงไฟล์เดียว
qpdf --empty --pages large.pdf 8-13 -- ตอนที่2.pdf
สิ่งนี้จะสร้าง PDF หน้าเดียวหลายหน้าที่เรียกว่า “chapter2.pdf”
หมุนหน้า
ในการหมุนหน้า เราสร้าง PDF ใหม่ที่เหมือนกับ PDF ที่ป้อนโดยหมุนหน้าที่ระบุ
เราใช้ตัวเลือก --rotate
เพื่อทำสิ่งนี้ +90
หมายถึงหมุนหน้า 90 องศาตามเข็มนาฬิกา คุณสามารถหมุนหน้า 90, 180 หรือ 270 องศา คุณยังสามารถระบุการหมุนเป็นองศาทวนเข็มนาฬิกาได้โดยใช้จำนวนลบ แต่ไม่จำเป็นต้องทำเช่นนั้น การหมุน -90 เท่ากับการหมุน +270
ตัวเลขที่แยกจากการหมุนด้วยเครื่องหมายทวิภาค “ :
” คือหมายเลขของหน้าที่คุณต้องการหมุน นี่อาจเป็นรายการหมายเลขหน้าและช่วงของหน้า แต่เราเพิ่งจะหมุนเวียนหน้าแรก ในการหมุนหน้าทั้งหมด ให้ใช้ช่วงหน้า 1-z
qpdf --rotate=+90:1 สรุป.pdf หมุน1.pdf
หน้าแรกได้รับการหมุนสำหรับเรา
การเข้ารหัสและถอดรหัส
เอกสาร PDF สามารถเข้ารหัสได้เพื่อให้ต้องใช้รหัสผ่านในการเปิด รหัสผ่านนั้นเรียกว่า รหัสผ่านผู้ใช้ มีรหัสผ่านอื่นที่จำเป็นสำหรับการเปลี่ยนการตั้งค่าความปลอดภัยและการอนุญาตอื่นๆ สำหรับ PDF เรียกว่า รหัสผ่านของเจ้าของ
ในการเข้ารหัส PDF เราจำเป็นต้องใช้ --encrypt
ตัวเลือกและระบุรหัสผ่านทั้งสอง รหัสผ่านผู้ใช้มาก่อนในบรรทัดคำสั่ง
เรายังระบุความแข็งแกร่งของการเข้ารหัสที่จะใช้ คุณจะต้องลดการเข้ารหัสจาก 256 บิตเป็น 128 บิต หากคุณต้องการรองรับโปรแกรมดูไฟล์ PDF ที่เก่ามาก เราขอแนะนำให้คุณใช้การเข้ารหัสแบบ 256 บิต
เรากำลังจะสร้าง "summary.pdf" เวอร์ชันเข้ารหัสที่เรียกว่า "secret.pdf"
qpdf --เข้ารหัส hen.rat.squid goose.goat.gibbon 256 -- สรุป.pdf secret.pdf
เมื่อเราพยายามเปิด PDF โปรแกรมดู PDF จะถามรหัสผ่านให้เรา การป้อนรหัสผ่านผู้ใช้จะอนุญาตให้ผู้ดูเปิดไฟล์ได้
จำไว้ว่า qpdf
จะไม่เปลี่ยน PDF ที่มีอยู่ มันสร้างใหม่ด้วยการเปลี่ยนแปลงที่เราได้ขอให้ทำ ดังนั้น หากคุณสร้าง PDF ที่เข้ารหัส คุณจะยังมีเวอร์ชันดั้งเดิมที่ไม่ได้เข้ารหัส คุณอาจต้องการลบ PDF ต้นฉบับหรือเก็บไว้อย่างปลอดภัย ทั้งนี้ขึ้นอยู่กับสถานการณ์ของคุณ
ในการถอดรหัสไฟล์ ให้ใช้ตัวเลือก --decrypt
แน่นอน คุณต้องรู้รหัสผ่านของ เจ้าของ เพื่อให้สิ่งนี้ใช้งานได้ เราจำเป็นต้องใช้ตัวเลือก --password
เพื่อระบุรหัสผ่าน
qpdf --decrypt --password=goose.goat.gibbon secret.pdf Unlocked.pdf
“unlocked.pdf” สามารถเปิดได้โดยไม่ต้องใช้รหัสผ่าน
qpdf เป็นเครื่องมือที่ยอดเยี่ยม
เราประทับใจมากกับ qpdf
มีชุดเครื่องมือที่ยืดหยุ่นและมีคุณลักษณะครบถ้วนสำหรับการทำงานกับไฟล์ PDF และมันก็เร็วมากด้วย
ตรวจสอบเอกสารที่เขียนมาอย่างดีและมีรายละเอียดเพื่อดูว่าสามารถทำอะไรได้อีกมากเพียงใด