حاسبة فرض صفحات PDF للكتيبات ذات التدبيس الوسطي
تحوّل حاسبة فرض كتيبات PDF عدد صفحات المستند إلى الترتيب الدقيق اللازم للطباعة بالتدبيس الوسطي.
شغّل الأداة مجانًا
وتضيف أقل عدد مسموح به من الصفحات البيضاء، ثم تسرد كل ورقة فعلية مع مواضع اليمين واليسار على الوجهين. النتيجة حتمية ويمكن إدخالها في سير عمل الطباعة، أو استخدامها لفحص ما قبل الطباعة، أو الرجوع إليها عند إعادة ترتيب الصفحات. ولا يلزم رفع ملف PDF لأن الحساب يعتمد فقط على عدد صفحات المستند المصدر.
لماذا يبدو ترتيب صفحات الكتيب غير مألوف
يتكوّن الكتيب ذو التدبيس الوسطي من أوراق مطبوعة على الوجهين، تُطوى من المنتصف وتُعشّق ثم تُدبّس على خط الطي. ويغيّر هذا التكوين المادي ترتيب الصفحات المطلوب على الأوراق المبسوطة. فالصفحتان الظاهرتان أولًا ليستا الصفحة الأولى والثانية ببساطة: في الورقة الخارجية يقع أعلى موضع مفروض بجانب الصفحة الأولى على الوجه الأمامي، بينما تقع الصفحة الثانية بجانب الموضع السابق للأعلى على الوجه الخلفي. ويتكرر النمط نحو الداخل حتى الوصول إلى الصفحتين الوسطيتين. تنفّذ الحاسبة هذا الاقتران لكل ورقة وتسمّي مواضع الوجهين من اليسار إلى اليمين. وتبدأ القائمة بالورقة الخارجية بما يلائم طريقة الفحص المعتادة لدى مختصي ما قبل الطباعة. تشير المواضع المرقمة إلى صفحات PDF الأصلية، أما الموضع الموسوم بأنه أبيض فهو صفحة حشو مضافة وليس صفحة مصدر مفقودة. تصف النتيجة الفرض وفق ترتيب القراءة، ولا تعدّل ملف PDF نفسه أو ترفعه أو تصيّره.
كيفية التحقق من الحشو بالصفحات البيضاء
توفّر كل ورقة مطوية أربع صفحات في الكتيب: موضعين على الوجه الأمامي وموضعين على الوجه الخلفي. لذلك يجب أن يقبل إجمالي الصفحات المفروضة القسمة على أربعة. إذا لم يكن عدد صفحات المصدر من مضاعفات أربعة، تضيف الحاسبة أقل عدد من الصفحات البيضاء للوصول إلى الإجمالي الصحيح التالي. فملف PDF من عشر صفحات، مثلًا، يحتاج إلى صفحتين بيضاوين ويصبح كتيبًا من اثني عشر موضعًا. يحدّد الحقل max_blank_pages ما إذا كان هذا التعديل مقبولًا. وتسمح قيمته الافتراضية، وهي ثلاثة، بكل البواقي الممكنة، بينما تتيح قيمة أصغر لقاعدة الإنتاج رفض المستندات التي تحتاج إلى حشو يتجاوز المتوقع. اضبطوا القيمة على صفر عندما ينبغي أن تتضمن الملفات الواردة ملزمة مكتملة. إذا تجاوز العدد المطلوب الحد المسموح، يعيد الطلب خطأ إدخال بدلًا من عرض تخطيط غير ممكن أو غير مصرح به. يُضاف الحشو دائمًا بعد آخر صفحة مصدر، وتعرض الاستجابة العددين الأصلي والمفروض ليكون التعديل واضحًا وقابلًا للتدقيق.
استخدام مخطط الأوراق في سير الطباعة
اقرؤوا كل عنصر بوصفه ورقة فعلية قبل الطي. يبيّن الكائن front موضعي اليسار واليمين على الوجه الأمامي، ويبيّن الكائن back الموضعين نفسيهما على الوجه الخلفي. تعتمد طريقة قلب الطباعة المزدوجة والدوران وتعويض الزحف وهوامش النزف وعلامات الطباعة على المطبعة وعملية التجليد، ولذلك لا تدخل في حساب ترتيب الصفحات هذا. قبل بدء الإنتاج، قارنوا نموذجًا صغيرًا مطويًا بالتسلسل الناتج: تحققوا من أن الصفحة الأولى تبدأ في المكان المتوقع، وأن الصفحات المتتابعة تلتقي بعد الطي، وأن صفحات الحشو تقع في نهاية المستند وفق ترتيب القراءة. تستطيع فرق البرمجيات استخدام الاستجابة لبناء مصفوفات إعادة الترتيب، أو تقارير ما قبل الطباعة، أو تعليمات المشغّل دون إعادة تنفيذ حسابات الكتيب. تميّز كائنات الصفحات البيضاء الصريحة الحشو بأمان عن الصفر أو null. العملية حسابية محضة ولا تستخدم الشبكة، وتعيد النتيجة نفسها للمدخلات نفسها. تبلغ كلفة الأتمتة عبر API مقدار $0.002 لكل طلب.
حالات الاستخدام
إعداد كتيب بطبعة محدودة
احسبوا مواضع الصفحات على الوجهين قبل إعادة ترتيب مطوية للطباعة المزدوجة بالتدبيس الوسطي.
التحقق من تصدير ما قبل الطباعة
قارنوا ملفًا مفروضًا بمخطط أوراق محسوب بصورة مستقلة، وتأكدوا من السماح بصفحات الحشو.
أتمتة تعليمات مهمة الطباعة
أنشئوا مخططًا حتميًا ورقةً بورقة لسير عمل أو بطاقة مهمة أو أداة تعيد ترتيب صفحات PDF.
الأسئلة الشائعة
ما تكلفة الطلب عبر API؟
يكلف كل طلب $0.002. ويتوفر الحساب الحتمي نفسه في المتصفح أيضًا.
لماذا يجب أن يقبل عدد الصفحات المفروضة القسمة على أربعة؟
تنشئ الورقة المطوية والمطبوعة على الوجهين أربعة مواضع، ولذلك يحتاج الكتيب المدبّس إلى مضاعف للعدد أربعة.
أين تُضاف الصفحات البيضاء؟
تُضاف بعد آخر صفحة مصدر مرقمة وقبل حساب ترتيب الأوراق.
ماذا يحدث إذا كانت max_blank_pages منخفضة جدًا؟
يعيد الطلب خطأ إدخال يوضح عدد الصفحات البيضاء المطلوبة وعدد الصفحات المسموح به.
هل تعدّل هذه الأداة ملف PDF أو ترفعه؟
لا. تستقبل عدد الصفحات فقط وتعيد مخططًا؛ ولا تقرأ ملف PDF أو تخزنه أو تصيّره أو تعيد كتابته.
هل يتضمن الناتج الدوران وإعدادات قلب الطباعة المزدوجة؟
لا. تختلف هذه الإعدادات باختلاف الطابعة. يغطي الناتج الترتيب المنطقي من اليسار إلى اليمين لكل وجه.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/pdf/booklet-layout \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"page_count":10}'const res = await fetch("https://api.kit.forhosting.com/pdf/booklet-layout", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"page_count": 10
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/pdf/booklet-layout",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"page_count": 10
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/pdf/booklet-layout", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"page_count":10}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"page_count":10}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/pdf/booklet-layout", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"page_count": 10
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "pdf.booklet_layout",
"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 | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |