كيفية تقسيم ملف PDF إلى مستندات PDF منفصلة

يصف هذا البرنامج التعليمي كيفية استخراج الصفحات من مستند PDF من سطر الأوامر. هناك أدوات متاحة عبر الإنترنت لتقسيم ملفات PDF، ولكن إذا كنت تفضل عدم مشاركة ملفات PDF الخاصة بك مع طرف ثالث، فيمكنك تقسيمها إلى صفحات منفصلة بسهولة من سطر الأوامر.
تقسيم ملفات PDF
على افتراض أن لديك node
المثبتة على جهاز الكمبيوتر الخاص بك، قم بتشغيل الأمر التالي في الوحدة الطرفية لتهيئة البيئة:
$ mkdir pdf-split
$ cd pdf-split
$ npm init -y
بعد ذلك، سنقوم بتثبيت الشعبية pdf-lib
الحزمة من سجل npm. مكتبة PDF مكتوبة بلغة TypeScript وهي أداة مفيدة لإنشاء ملفات PDF ومعالجتها. يمكنك معرفة المزيد حول مكتبة PDF على js.org.
بالإضافة إلى تقسيم ملفات PDF، يمكن أيضًا استخدام مكتبة PDF لدمج ملفات PDF متعددة في ملف PDF واحد. أو لإعادة ترتيب صفحات ملف PDF.
$ npm install --save pdf-lib
بعد ذلك، سنكتب نصًا بسيطًا لـ Node.js يقوم بتقسيم ملف PDF إلى ملفات PDF متعددة. تحتاج إلى توفير مسار ملف PDF المدخل ومجلد الإخراج.
// split.pdf.js
const fs = require('fs');
const path = require('path');
const { PDFDocument } = require('pdf-lib');
const splitPDF = async (pdfFilePath, outputDirectory) => {
const data = await fs.promises.readFile(pdfFilePath);
const readPdf = await PDFDocument.load(data);
const { length } = readPdf.getPages();
for (let i = 0, n = length; i < n; i += 1) {
const writePdf = await PDFDocument.create();
const [page] = await writePdf.copyPages(readPdf, [i]);
writePdf.addPage(page);
const bytes = await writePdf.save();
const outputPath = path.join(outputDirectory, `Invoice_Page_${i + 1}.pdf`);
await fs.promises.writeFile(outputPath, bytes);
console.log(`Added ${outputPath}`);
}
};
splitPDF('input/invoices.pdf', 'invoices').then(() =>
console.log('All invoices have been split!').catch(console.error)
);
في المثال أعلاه، لدينا ملف PDF كبير يحتوي على فواتير متعددة تم إنشاؤها من نظام المحاسبة Tally. نريد تقسيم ملف PDF إلى ملفات PDF متعددة بحيث تكون كل فاتورة عبارة عن ملف PDF منفصل.
يمكنك تشغيل البرنامج النصي أعلاه في المحطة لتقسيم ملف PDF.
$ node split.pdf.js
ضغط ملفات PDF الكبيرة
الجانب السلبي الوحيد لهذا الأسلوب هو أن ملفات PDF التي تم إنشاؤها كبيرة الحجم. ومع ذلك، يمكنك استخدام ghostscript
أداة سطر الأوامر لضغط حجم ملفات PDF المقسمة بشكل كبير.
gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.2 -r200 -dPDFSETTINGS=/screen -dEmbedAllFonts=true -dSubsetFonts=true -dPrinted=false -dNOPAUSE -dQUIET -dBATCH -sOutputFile=c12_{filename} {filename}
انظر أيضًا: أوامر FFMPEG المفيدة
اكتشاف المزيد من مرابع التكنولوجيا
اشترك للحصول على أحدث التدوينات المرسلة إلى بريدك الإلكتروني.