รวมไฟล์ PDF หลายไฟล์โดยใช้ pdftk ตามวันที่สร้าง


0

ฉันมีไฟล์ PDF หลายไฟล์และฉันต้องการรวมไฟล์เหล่านี้โดยใช้ pdftk ฉันสามารถทำสิ่งนี้ได้

C:\pdftk *.pdf cat output merged.pdf

วิธีนี้จะรวมไฟล์โดยใช้ลำดับตัวอักษร แต่ฉันต้องการสั่งซื้อไฟล์โดยใช้วันที่สร้าง (เวลาประทับ) เป็นไปได้อย่างไร? ฉันใช้ Win XP

คำตอบ:


0

ฉันคิดว่าวิธีที่ดีที่สุดคือการเพิ่มวันที่ลงในชื่อไฟล์ คุณสามารถทำได้ด้วยBulk Rename Utilityมันเป็นยูทิลิตี้ที่ทรงพลังและฟรี

หรือคุณสามารถใช้ซอฟต์แวร์อื่นเพื่อรวม / แยกไฟล์ pdf ด้วย gui เช่น PDFsam


0

คุณสามารถสร้างรายการไฟล์ PDF ที่เรียงลำดับตามวันที่สร้าง:

 dir /b /tc /od *.pdf > my-pdf-filelist.txt

(ถ้าคุณต้องการรายการ - แทนที่จะเรียงตามเวลาการสร้าง - การเรียงลำดับ happing ตามเวลาเข้าถึงใช้ ' /ta' แทน ' /tc' ถ้าคุณต้องการเรียงตามเวลาที่ปรับเปลี่ยนให้ใช้ ' /tw')

จากนั้นใช้รายการนี้เพื่อสร้าง listfile ชั่วคราวอีกอันหนึ่งที่มีการประทับเวลาและชื่อไฟล์ PDF ที่เพิ่มวันที่ + เวลาในบรรทัดเดียวกัน:

 for /f "usebackq" %i in (my-pdf-filelist.txt) ^
        do (echo. %~ti %~nxi >> my-pdf-filelist.2)

ตอนนี้ตรวจสอบว่ารายการไฟล์ของคุณmy-pdf-filelist.2มีบรรทัดที่มีลักษณะดังนี้:

05/27/2009 06:08 AM fontproblems-in-footer-16_9_1557.pdf
01/20/2010 09:22 AM trainschedule-hannover.pdf
06/05/2010 07:30 PM Figure_001-a.pdf

รูปแบบการประทับเวลาของคุณอาจแตกต่างกันไปขึ้นอยู่กับการตั้งค่าภาษา + ภาษาของคุณและคุณอาจต้องปรับเปลี่ยนขั้นตอนต่อไปนี้ ในกรณีของฉันฉันต้องดูแล "AM / PM" thingie รวมถึง datestring เพื่อให้แน่ใจว่าชื่อไฟล์ในเวลาต่อมาจะเรียงตามลำดับตัวอักษรที่เหมือนกันกับลำดับเวลาที่บันทึกไว้

ขั้นสุดท้ายใช้ listfile ชั่วคราวนี้เพื่อเปลี่ยนชื่อไฟล์เดิมของคุณเพื่อให้มีการประทับเวลาเป็นคำนำหน้าเป็นชื่อเดิม แต่ก่อนอื่นทดสอบคำสั่งที่ตั้งใจไว้ดังนี้:

 for /f "usebackq tokens=1,2,3,4,5,6,7 delims=/: " %i in (my-pdf-filelist.2) ^
        do (echo.  "%o"  will be renamed to:  "%k-%j-%i-%n-%l-%m-%o")

ตรวจสอบอย่างละเอียดว่าจะใช้งานได้ตามที่ตั้งใจหรือไม่ สุดท้ายทำการเปลี่ยนชื่อจริง:

 for /f "usebackq tokens=1,2,3,4,5,6,7 delims=/: " %i in (my-pdf-filelist.2) ^
        do (ren "%o"  "%k-%j-%i-%n-%l-%m-%o")

ตอนนี้ PDF ของคุณถูกตั้งชื่อในลักษณะที่ทำให้ 'เรียงตามลำดับตัวอักษร' == 'ลำดับเวลาประทับ' คุณก็สามารถเรียกใช้pdftk.exe:

 pdftk.exe *.pdf cat output merged.pdf
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.