ฉันจะรวม.png
ไฟล์หลายไฟล์เป็นไฟล์ PDF เดียวใน Unix ได้อย่างไร?
ฉันจะรวม.png
ไฟล์หลายไฟล์เป็นไฟล์ PDF เดียวใน Unix ได้อย่างไร?
คำตอบ:
จากการดูเอกสารใน ImageMagick อาจทำได้ง่ายดังนี้:
convert 1.png 2.png myfile.pdf
หากไม่ได้ผลPDFjamจะอ้างว่าสามารถแก้ปัญหาของคุณได้
-quality
ตัวเลือกนี้แล้ว แต่ขนาดไฟล์มักจะ ~ 9.5 MiB
convert *.jpg file.pdf
-compress jpeg -quality 50
คุณสามารถบีบอัดไฟล์โดยใช้พารามิเตอร์ ดูคำตอบของฉัน
หากฉันต้องการรวมการสแกนเป็นไฟล์ PDF หนึ่งไฟล์ฉันจะทำสิ่งนี้:
pdfjoin --a4paper --fitpaper false --rotateoversize false scan01.png scan02.png
เอกสารนี้จะให้เอกสาร PDF ที่มีขนาดหน้า DIN-A4 โดยที่ทุกpng
ไฟล์จะอยู่กึ่งกลางหน้าของตัวเอง รูปภาพที่ใหญ่เกินไปสำหรับหนึ่งหน้า DIN-A4 จะถูกปรับขนาดตามสัดส่วนเพื่อให้พอดีกับหนึ่งหน้า รูปภาพขนาดเล็กจะไม่ปรับขนาด (ไม่ได้ทำให้ใหญ่ขึ้น)
คุณต้องตั้งชื่อpng
ไฟล์ทั้งหมดในบรรทัดคำสั่ง แต่คุณยังสามารถใช้สัญลักษณ์แทนเพื่อรวมไฟล์ png ทั้งหมดในไดเร็กทอรีปัจจุบัน:
pdfjoin --a4paper --fitpaper false --rotateoversize false *.png
pdfjoin
คำสั่งเป็นส่วนหนึ่งของ PDFjam ตามที่กล่าวไว้ในคำตอบโดยเยเรมีย์ Willcock ดังนั้นคุณมักจะต้องติดตั้งแพ็คเกจที่ชื่อpdfjam
หรือtexlive-extra-utils
ด้วยตัวจัดการแพ็คเกจ distros ของคุณ PDFjam สามารถใช้png
ไฟล์เป็นอินพุตได้ตั้งแต่เวอร์ชัน 2.07 ซึ่งเผยแพร่ในปี 2010-11-13
pdfjoin
มีให้ในtexlive-extra-utils
แพ็คเกจบนบางแพลตฟอร์ม คุณสามารถติดตั้งจากแหล่งที่มาได้ตลอดเวลาเช่นกัน
ImageMagickของเครื่องมือแปลงคือความต้องการของฉัน
โปรแกรมแปลงเป็นสมาชิกของชุดเครื่องมือ ImageMagick ใช้เพื่อแปลงระหว่างรูปแบบภาพเช่นเดียวกับการปรับขนาดภาพเบลอครอบตัดขนาดย่อวาดพลิกเข้าร่วมสุ่มตัวอย่างใหม่และอื่น ๆ อีกมากมาย
convert [input-option] input-file [output-option] output-file`
หากคุณต้องการให้ไฟล์ภาพ (ดังนั้นคุณภาพและขนาดไฟล์) ไม่เปลี่ยนแปลงและเพียงแค่ใส่คอนเทนเนอร์ PDF ไว้รอบ ๆ :
convert In.png In-2.png Someother-*.png Result.pdf
ในกรณีที่คุณต้องการมีขนาดไฟล์ที่เล็กลงและคุณพอใจกับการสูญเสียคุณภาพคุณสามารถแปลงไฟล์เป็นรูปแบบ JPEG ก่อน (ImageMagick ยังรองรับการเปลี่ยนระดับการบีบอัด PNG แต่โดยปกติไฟล์อินพุตของคุณจะใช้ระดับสูงสุดอยู่แล้ว)
convert 1.png 2.png -compress jpeg -quality 50 Result.pdf
ใช้ค่าระหว่าง 0 ถึง 100 สำหรับquality
ตัวเลือก
หรือคุณสามารถเข้าถึงขนาดไฟล์ที่ต่ำลง (และคุณภาพ) ได้โดยการสุ่มตัวอย่างรูปภาพใหม่ให้มีความละเอียดที่แน่นอน
convert *.png 2.png -resample 300 Result.pdf
ค่าสำหรับresample
หมายถึงจำนวนพิกเซลต่อนิ้ว ImageMagick อ่านความหนาแน่นดั้งเดิมจากส่วน EXIF ของภาพอินพุตลดลงเหลือ 72 dpi คุณสามารถใช้density
พารามิเตอร์เพื่อตั้งค่าความละเอียดที่กำหนดเองสำหรับภาพอินพุต
คุณสามารถของหลักสูตรยังรวมcompress
, quality
และresample
พารามิเตอร์
ฉันขโมยสิ่งนี้ แต่นี่เป็นวิธีแก้ปัญหาที่ฉันใช้จาก Jeremiah Willcock และเว็บไซต์คำตอบอื่น ไม่ได้ขุดคุ้ยประวัติศาสตร์ในขณะนี้ ฉันโกหกฉันทำ (Tully @ https://askubuntu.com/a/626301 )
ฉันต้องการไฟล์ที่เล็กพอที่จะส่งอีเมลได้
ในการรวมภาพเป็น PDF (จากในไดเรกทอรีการทำงานให้ใช้บรรทัดคำสั่ง:
user@box:/home/user/scans/:$
convert 1.png 2.png convertoutput.pdf
หากต้องการลดขนาดโดยใช้ ghostscript หลังจากรวม (ฉันใช้กับระบบเริ่มต้น kde เกือบ):
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/default \
-dNOPAUSE -dQUIET -dBATCH -dDetectDuplicateImages -dCompressFonts=true \
-r150 -sOutputFile=output.pdf convertoutput.pdf
ไฟล์ของฉันมี 14 ภาพ (19MB หลังจากแปลงแล้ว gs ทำให้เป็น 1.6MB คุณภาพยังดีอยู่) output.pdf
ไฟล์ที่ส่งออกจะเรียกว่า
-compress jpeg -quality 50
โดยใช้พารามิเตอร์ ดูคำตอบของฉัน