BookTranslator
BookTranslator

أرقام صفحات PDF لا تطابق الكتاب؟ تحقق من تسميات الصفحات أولاً

أصلح مشكلة التنقل في ملف PDF عندما يختلف عن أرقام الصفحات المطبوعة. اطلع على ستة ملفات تجريبية تغطي الصفحات التمهيدية بالأرقام الرومانية، ولوحة مدرجة، ومقتطفاً يبدأ من الصفحة 37.

BookTranslator

BookTranslator Team

قراءة 9 دقيقة

إذا كان قارئ ملفات PDF يشير إلى الصفحة 4 بينما صفحة الكتاب نفسها تشير إلى 1، فتحقق أولاً من تسميات الصفحاتداخل الملف. قد يؤدي وجود غلاف ومقدمة مرقمة بأرقام رومانية إلى إزاحة الترتيب المادي للصفحات دون أن يعني ذلك نقصاناً في الكتاب. صحح تسميات التنقل على نسخة من الملف، ولا تبدأ بختم أرقام جديدة فوق الصفحات أو حذف المقدمة.

لكن لهذا الإصلاح حدوداً: فتسميات الصفحات لا يمكنها استعادة مسح ضوئي مفقود، أو تصحيح ترتيب الصفحات، أو معرفة رقم غير مقروء. حدد أولاً الصفحة الموجودة بالفعل، ثم اجعل أدوات التنقل تصفها بدقة.

أنشأنا ثلاثة أزواج قابلة للتنزيل للمقارنة قبل التعديل وبعده لتوضيح هذا الفرق: دفتر ملاحظات من سبع صفحات، ونسخة تتضمن رسماً توضيحياً مدرجاً بدون ترقيم، ومقتطفاً يبدأ من الصفحة المطبوعة رقم 37. وفي كل زوج، تغيرت التسميات بينما بقيت الصفحات المعروضة متطابقة تماماً حتى مستوى البكسل.

ميّز بين الأرقام الثلاثة قبل البدء في أي إصلاح

في هذا الدليل، يقصد بـ موضع الملف الصفحة الأولى أو الثانية أو الثالثة في ملف PDF. ويقصد بـ الرقم المطبوع الرقم المرئي على الصفحة. بينما تعني تسمية الصفحة المعرّف المنطقي المخزن لأغراض التنقل، مثل ii أو A-1.

وقد تختلف هذه القيم عن بعضها بشكل طبيعي وصحيح. يوضح شرح تسميات الصفحات الصادر عن جمعية PDF تسلسلات الترقيم والبادئات والفرق بين فهارس الصفحات وأرقامها وتسمياتها. إذ يمكن أن يحتوي الملف على صفحات تمهيدية بأرقام رومانية، وترقيم متجدد للمتن، وملاحق ذات بادئات، دون أن يعني ذلك وجود خطأ في عدد الصفحات.

إليك جدول المطابقة في ملفنا التعليمي المكون من سبع صفحات:

موضع الملفالرقم المطبوع المرئيتسمية التنقل الأصليةالتسمية المصححة
1بلا: الغلاف1الغلاف
2i2i
3ii3ii
4141
5252
6A-16A-1
7A-27A-2

Cover هي تسمية وصفية حددناها، وليست رقماً مطبوعاً على الغلاف. ويظل إجمالي الصفحات سبع صفحات. وقد يعرض قارئ الملفات كلاً من التسمية والموضع، مثل 1 (4 of 7)؛ ورؤية الاثنين معاً ليست تناقضاً.

نزّل الملف المكون من سبع صفحات قبل التسمية و النسخة ذات الصفحات المسماة. افتح أول صفحة من متن الكتاب في كل منهما وقارن الصفحة نفسها بعناصر التحكم في التنقل.

سبع صفحات تعليمية أصلية، مزودة بتعليقات توضيحية خارج صور الصفحات توضح مواضع الملف والتسميات المنطقية: الغلاف، i، ii، 1، 2، A-1 وA-2.

هذه معاينة للصفحات التي أنشأناها مع إضافة تسميات خارج الصور، وليست لقطة شاشة لتطبيق PDF بعينه.

حدد حدود الأقسام على نسخة عمل

قبل التعديل، احفظ نسخة أصلية بدون تغيير وحدد الانتقالات من خلال معاينة الصفحات: أول صفحة تمهيدية مرقمة، وأول صفحة في متن الكتاب، وأي صفحات مدرجة، وكل ملحق أو موضع يعاد فيه بدء الترقيم. سجّل موضع الصفحة في الملف بجانب الرقم أو المعرف المرئي.

تحقق من أكثر من مجرد الصفحة الأولى للمتن. في المثال أعلاه، قاعدة "أضف ثلاثة" ترشدك إلى الصفحة 1 من المتن، لكنها لا تنطبق على المقدمة ذات الأرقام الرومانية أو ملحق A- . إن استخدام فارق ترقيم واحد ليس سوى حل مؤقت داخل قسم متصل، ولا يمثل وصفاً دقيقاً وموثوقاً للكتاب بأكمله.

إذا كان هناك تخطٍ غير متوقع في التسلسل — كأن تنتقل الصفحات المرئية من 38 إلى 40 — فافحص الصور الفاصلة بينهما، وإن أمكن، قارنها بالنسخة الأصلية من الطبعة نفسها. قد يكون السبب صفحة ممسوحة ضوئياً مفقودة، أو إدراجاً متعمداً، أو ترقيماً أصلياً غير معتاد، أو خللاً آخر في الترتيب. لا تعين الرقم "39" لصفحة لا علاقة لها بالأمر فقط لجعل العداد يبدو متسلسلاً.

بالنسبة لملفات PDF الموقعة أو المقيدة، استخدم سير عمل المصدر المصرح به أو اطلب نسخة قراءة مصححة من مزود المستند. لا تُعد النصوص البرمجية التجريبية الواردة في هذا المقال وسيلة للحفاظ على هذه الحمايات أو تجاوزها.

تغيير تسميات التنقل، وليس المحتوى المطبوع

طريقة عبر برامج سطح المكتب موثقة من Adobe

تشير تعليمات تسميات صفحات Acrobat الحالية من Adobe إلى المسار All tools ← Organize pages ← Page labels. حدد نطاقًا، وابدأ تسلسلًا جديدًا، ثم اختر نمط الترقيم، وقيمة البداية، وبادئة اختيارية. كرر ذلك للأقسام المنفصلة؛ ويمكن للقسم المتصل أن يواصل التسلسل السابق.

في مثالنا، يعني هذا استخدام الأرقام الرومانية للمقدمة، والترقيم العشري الذي يُعاد بدءه من الرقم 1 لمتن الكتاب، والترقيم العشري مع A- للملحق. تأكد من الصفحات المحددة الفعلية قبل تطبيق كل تغيير، لا سيما عندما تكون التسميات الحالية مختلفة بالفعل عن مواضع الصفحات داخل الملف.

تميز Adobe بين تسميات التنقل هذه وأرقام الترويسة/التذييل المرئية. إذا كنت تريد فقط مطابقة عناصر التحكم في صفحات القارئ مع الكتاب، فإن إضافة تذييل مرئي تُعد عملية مختلفة.

تستند هذه الخطوات إلى الوثائق الرسمية؛ إذ لم نقم بإجراء إصلاح في Acrobat أو اختبار واجهة Acrobat معينة لهذا المقال.

الطريقة التي اختبرناها فعليًا باستخدام pypdf

تم إنشاء ملفات الاختبار التجريبية الخاصة بنا باستخدام ReportLab، ونسخها باستخدام pypdf 6.10.0، وتعيين تسميات لها دون تغيير تدفقات محتوى صفحاتها. بالنسبة للعينة المكونة من سبع صفحات فقط، تتمثل العملية الأساسية في:

from pypdf import PdfReader, PdfWriter
from pypdf.constants import PageLabelStyle

reader = PdfReader("seven-page-before.pdf")
writer = PdfWriter(clone_from=reader)
writer.set_page_label(0, 0, prefix="Cover")
writer.set_page_label(1, 2, style=PageLabelStyle.LOWERCASE_ROMAN, start=1)
writer.set_page_label(3, 4, style=PageLabelStyle.DECIMAL, start=1)
writer.set_page_label(5, 6, style=PageLabelStyle.DECIMAL, prefix="A-", start=1)

with open("seven-page-labeled-copy.pdf", "xb") as output:
    writer.write(output)

assert PdfReader("seven-page-labeled-copy.pdf").page_labels == [
    "Cover", "i", "ii", "1", "2", "A-1", "A-2"
]

تستخدم واجهة برمجة التطبيقات (API) فهارس تبدأ من الصفر؛ فالموضع 4 في الملف يطابق الفهرس 3. وتشمل النطاقات المذكورة أعلاه كلا الطرفين. ويرفض وضع الإخراج الحصري، xb، الكتابة فوق أي ملف موجود مسبقًا. راجع واجهة برمجة تطبيقات تسميات الصفحات في pypdf المحددة بالإصدار و المولّد الكامل الخاص بنا لمعرفة آلية التنفيذ الدقيقة.

لا تقم بلصق هذه النطاقات في كتاب غير ذي صلة؛ بل حدد خريطة أقسامه أولاً. لا يقبل السكربت المختبر لدينا أي ملفات PDF للعملاء أو ملفات مصدر، بل ينشئ فقط الأمثلة الأصلية المحددة بداخله.

حالتان تفشل فيهما الإزاحة الثابتة

رسم توضيحي غير مرقم يغير إزاحة المتن

في النموذج التجريبي الثاني، أدرجنا لوحة توضيحية بين صفحتي المتن المطبوعتين 1 و2. لا تحتوي اللوحة التوضيحية على رقم مطبوع، لذا قمنا بتعيين التسمية الوصفية Plate-A لها، ثم استأنفنا صفحة المتن التالية بالرقم 2.

موضع الملفمعرّف الصفحة الظاهرالتسمية
411
5رسم توضيحي غير مرقمPlate-A
622

قبل الإدراج، كانت الصفحة المطبوعة 1 عند موضع الملف 4: أي بإزاحة قدرها ثلاثة. بعد الإدراج، أصبحت الصفحة المطبوعة 2 عند موضع الملف 6: أي بإزاحة قدرها أربعة. إن إعادة استخدام الإزاحة الأولى كان سينقلك إلى الرسم التوضيحي.

قارن بين نسخة الصفحات الثماني قبل التسمية و النسخة ذات التسميات. يضيف الإصلاح قسم تسمية عند موضع الإدراج ويعيد بدء تسلسل المتن بعده. وهو لا يحول اللوحة التوضيحية إلى صفحة مصدر مرقمة، ولا يزيلها من الملف.

يمكن أن يبدأ المقتطف من الصفحة المطبوعة 37

يحتوي نموذجنا التجريبي الثالث على ثلاث صفحات مرقمة ظاهرياً بالارقام 37 و38 و39. ومواضعها في الملف هي 1 و2 و3. تبدأ التسميات المناسبة من 37، وليس من 1.

يحتوي كل من الملف السابق و الملف اللاحق على هذه الصفحات الثلاث تحديداً. إن تسمية الصفحة الأولى بـ 37 لا تعني بالضرورة أن ملف PDF يحتوي على الـ 36 صفحة السابقة.

بالنسبة للاقتباس الفعلي، استخدم أرقاماً يمكنك التحقق منها من المصدر. إذا كان الرقم المرئي الأول مفقوداً أو مقصوصاً، فاحصل على أدلة داعمة من المصدر قبل تعيينه؛ إذ يمكن لتسلسل مخمّن يبدو ملائماً أن يكون أكثر تضليلاً من مجرد الاعتماد على ترتيب الصفحات العادي في الملف.

تحقق من الملف المحفوظ، وليس فقط من نافذة التعديل

بالنسبة لهذه الأزواج الثلاثة، أعدنا فتح جميع ملفات PDF الستة وفحصنا كل تسمية. أجرى Poppler 26.08.0 تصييراً لكلا الإصدارين بدقة 144 نقطة في البوصة. وكانت جميع أزواج الصفحات المتطابقة البالغ عددها 18 صفحة متطابقة البكسلات تماماً، كما تطابقت تدفقات محتوى الصفحات الـ 18 بايت ببايت. لم يُطبع أي شيء على محتوى الصفحة أو يُحذف منه خلال هذا الاختبار.

تتضمن النتائج المفصلة لكل صفحة قيم تجزئة الملفات، والتسميات، ومقارنات البكسلات. وتسجل خريطة الصفحات القابلة للتنزيل مواقع الصفحات في الملف، والفهارس المعتمدة على الصفر، والأرقام المرئية. تعليمات إعادة الإنتاج توضح إصدارات التبعيات وكيفية إعادة إنشاء الأمثلة في أدلة جديدة.

يؤكد ذلك سلامة ملفاتنا، لكنه لا يضمن طريقة تعامل كل برامج العرض معها. توثق PDF Association الاختلافات في دعم التسميات بين التطبيقات؛ ويعود استطلاع برامج العرض المنشور التابع لها إلى عام 2024، ولم نكرر هذا الاختبار اليوم. تحقق من برنامج القراءة الذي ستستخدمه فعلياً:

  1. أعد فتح النسخة المحفوظة وتأكد من أن إجمالي عدد الصفحات لم يتغير.
  2. افحص الصفحة الأولى والأخيرة من كل قسم ترقيم.
  3. جرب الانتقال إلى ii, 1 و A-1، أو ما يعادلهما في مستندك.
  4. تأكد من أن كل قفزة تنقلك إلى الصفحة المرئية المقصودة، وليس فقط إلى عداد يحمل رقماً مشابهاً.
  5. إذا تجاهل برنامج القراءة التسميات، فاحتفظ بمخطط المطابقة الصريح بين مواضع الملف والصفحات، أو استخدم قارئاً يدعمها. تجنب إعادة كتابة التسميات الصحيحة مراراً وتكراراً لتعويض واجهة لا تدعمها.

التصيير المتطابق لا يثبت توافق إمكانية الوصول، أو صلاحية التوقيعات، أو عمل الروابط، أو صحة النص المستخرج. إذا كانت الصفحة تبدو سليمة بصرياً ولكن النص المنسوخ خاطئ، فاستعن بدليل تشخيص طبقة النص في ملفات PDFالمنفصل؛ فهذه المشكلة لا تُعالج بواسطة تسميات الصفحات.

احتفظ بالمخطط الأصلي إذا أردت ترجمة المستند لاحقاً

إذا كان التنقل الدقيق هو المشكلة الوحيدة، فتوقف هنا. فلن تحتاج إلى OCR أو الترجمة لإعادة تسمية تسميات الصفحات.

أما إذا كانت اللغة لا تزال هي العائق، فاحتفظ بالملف الأصلي ومخطط الصفحات قبل اتباع سير عمل ترجمة ملفات PDF الممسوحة ضوئيًا أو دليل ترجمة وتنسيق ملفات PDF. ولإجراء عمليات فحص أوسع للملف الناتج، استخدم قائمة التحقق لضمان جودة ترجمة PDF.

يجب على القراء الذين يختارون مترجم PDF من BookTranslator ألا يفترضوا بقاء تسميات صفحات الملف المصدر كما هي في الملف الناتج بعد إعادة بنائه. فقد يغير وضع OCR التخطيط الأصلي والخطوط وأحجامها. وإذا أعيد ضبط انسياب النص في الملف الناتج، فتحقق من المقاطع المهمة بمقارنتها بالأصل؛ فنسخ مخطط الترقيم القديم وتطبيقه على فواصل الصفحات الجديدة لن يحافظ على التطابق.

ليس الهدف جعل كل رقم متطابقًا، بل إزالة أي لبس عن كل رقم: موضع الصفحة في هذا الملف، وما يسميه المصدر، وكيف يصل القارئ إليه.

مقالات ذات صلة