تطبيق ترقيم Bates
يمنح ترقيم Bates كل صفحة في مجموعة المستندات معرّفًا ثابتًا ومتسلسلًا. تنشئ هذه الحاسبة خطة التسميات كاملة قبل ختم ملف PDF: أدخل عدد الصفحات والبادئة المطلوبة والرقم المخصص للصفحة الأولى وعرض الخانات المرغوب.
شغّل الأداة مجانًا
تربط النتيجة كل موضع فعلي للصفحة بقيمته الرقمية وتسميته النهائية. كما تتحقق مسبقًا من نهاية التسلسل، فتمنع العرض غير الكافي من إنشاء معرّفات غير متسقة في منتصف الملف.
حدّد خطة الترقيم قبل تعديل ملف PDF
يبدأ سير Bates الموثوق بخطة ترقيم، لا برسم النص مباشرة على الصفحات. احصل أولًا على عدد صفحات PDF من قارئ موثوق أو خطوة معالجة مستندات معتمدة. ثم اختر بادئة تميّز القضية أو عملية التسليم أو العميل أو المرفق أو الدفعة من دون الاعتماد على اسم الملف. يمثّل رقم البداية القيمة المخصصة لأول صفحة فعلية، بينما يحدد العرض عدد خانات الجزء الرقمي بعد البادئة. فمثلًا، تؤدي البداية 17 بعرض خمس خانات إلى 00017. تحسب الإمكانية التسلسل كاملًا وتعيد لكل صفحة موضعها الذي يبدأ من واحد والرقم الخام والتسمية المكتملة. ولأنها لا تستقبل وحدات بايت PDF ولا تعدّلها، يمكنكم مراجعة الخطة أو حفظها في سجل تدقيق أو إرسالها إلى عملية ختم منفصلة. يفيد هذا الفصل عندما تلزم موافقة قبل وضع علامات دائمة، أو عندما يجب أن تتفق أدوات متعددة بدقة على المعرّف المخصص لكل صفحة.
امنع تغيّر عرض الأرقام داخل المستند
لا تُعد الأصفار البادئة تفضيلًا بصريًا فحسب. فالأرقام ذات العرض الثابت تُرتّب كنص بصورة صحيحة، وتصطف بوضوح، ويسهل مقارنتها بين عمليات التسليم. لا يقتصر الفحص المهم على ملاءمة رقم البداية، بل يشمل ملاءمة الرقم الأخير بعد احتساب جميع الصفحات. ينتهي ملف PDF من 20 صفحة يبدأ عند 990 بالرقم 1009؛ ولذلك يكون عرض ثلاث خانات غير صالح رغم أن 990 يبدو ملائمًا في البداية. تحدد الحاسبة القيمة النهائية قبل إنشاء أي تسمية، وتعيد خطأ إدخال إذا تجاوز عدد خاناتها العرض المطلوب. ولا توسّع التسميات الأخيرة ضمنيًا لأن ذلك يجعل السلسلة غير متسقة. إذا كانت ملفات لاحقة ستتابع التسلسل نفسه، فاختاروا عرضًا يستوعب النمو المتوقع. يصبح الرقم الأخير المرجع للدفعة التالية: ابدؤوا بقيمته مضافًا إليها واحد، وحافظوا على البادئة والعرض، وبذلك يستمر نطاق التسليم بلا تداخل أو فجوات غير مقصودة.
استخدم التسميات بأمان في الإجراءات القانونية
تكون النتيجة حتمية؛ فالمدخلات المتطابقة تنتج دائمًا خريطة الصفحات نفسها من دون اتصال بالشبكة أو وقت حالي أو عنصر عشوائي. لذلك تلائم إعداد الأدلة والإفصاح عن السجلات العامة وملاحق العقود والتحقيقات الداخلية وفهرسة الأرشيف. إذا كانت سلسلة الحيازة مهمة، فاحفظوا الخريطة المنشأة مع قيمة التحقق للمستند الأصلي وقيمة التحقق لملف PDF المختوم النهائي. قبل الختم، تأكدوا من أن العدد المقدم يشمل كل صفحة ستعالجها أداة الختم، بما فيها الأغلفة والفواصل والملاحق والصفحات الفارغة المقصودة. تحققوا كذلك من كتابة البادئة وعلامات ترقيمها وقيمة البداية والعرض الثابت الذي تفرضه عملية التسليم القائمة. تحسب هذه الإمكانية التسميات فقط؛ فهي لا تعدّل PDF ولا تفحص محتوى الصفحات ولا تكتشف أرقامًا مطبقة سابقًا ولا تقرر مكان العلامة. تتيح هذه الحدود التحقق من التسلسل بصورة مستقلة ثم استخدام أداة ختم تتحكم صراحة في الخط واللون والهوامش.
حالات الاستخدام
تخطيط تسليم مستندات قانونية
أنشئ الخريطة الدقيقة بين الصفحات والتسميات قبل رسم أختام Bates الدائمة على الدفعة.
متابعة الترقيم عبر ملفات PDF
استخدم الرقم الأخير للدفعة السابقة لبدء المستند التالي من دون معرّفات مكررة أو فجوات.
التحقق من عملية ختم آلية
قارن التسميات المخططة بالعلامات المستخرجة أو المفحوصة بصريًا بعد أن تعدّل أداة أخرى ملف PDF.
الأسئلة الشائعة
هل تعدّل هذه الإمكانية ملف PDF؟
لا. تستقبل عدد الصفحات وإعدادات الترقيم، ثم تعيد تسمية كل صفحة. ويمكن لأداة PDF منفصلة تطبيق تلك التسميات.
ماذا يحدث إذا كان العرض صغيرًا؟
يعيد الطلب خطأ إدخال غير صالح إذا احتوى الرقم النهائي على خانات أكثر من العرض المحدد. ولا تُوسّع التسميات ضمنيًا أبدًا.
هل يمكن ترك البادئة فارغة؟
نعم. تنتج السلسلة الفارغة تسميات لا تحتوي إلا على الرقم المتسلسل بعد إكماله بالأصفار.
هل يمكن بدء الترقيم من الصفر؟
نعم. قد تكون البداية صفرًا أو أي عدد صحيح آمن غير سالب، بشرط بقاء النطاق كاملًا ضمن حد الأعداد الآمنة.
ما تكلفة طلب API؟
تبلغ تكلفة كل طلب $0.002. ويمكن لإصدار المتصفح تنفيذ الحساب الحتمي نفسه من دون إرسال محتوى PDF.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/pdf/bates-numbering \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"page_count":4,"prefix":"CASE-","start_number":17,"padding_width":5}'const res = await fetch("https://api.kit.forhosting.com/pdf/bates-numbering", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"page_count": 4,
"prefix": "CASE-",
"start_number": 17,
"padding_width": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/pdf/bates-numbering",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"page_count": 4,
"prefix": "CASE-",
"start_number": 17,
"padding_width": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/pdf/bates-numbering", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"page_count":4,"prefix":"CASE-","start_number":17,"padding_width":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"page_count":4,"prefix":"CASE-","start_number":17,"padding_width":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/pdf/bates-numbering", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"page_count": 4,
"prefix": "CASE-",
"start_number": 17,
"padding_width": 5
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "pdf.bates_numbering",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
max_pages | 100000 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |