تغيير حجم الصور لمنصات التواصل
لا يقتصر إعداد صورة واحدة لعدة شبكات اجتماعية على تغيير حجمها، بل يتطلب اختيار الإطار الصحيح.
شغّل الأداة مجانًا
تستقبل هذه الحاسبة عرض الصورة الأصلية وارتفاعها مع منصة وموضع مدعومين، ثم تعيد أكبر إطار قص مركزي يطابق نسبة الأبعاد المطلوبة. كما تعرض مقاسات القالب والمقدار الذي سيزال من كل حافة. لا تُرفع الصورة ولا تُفك شيفرتها ولا تُعدّل. يمكنكم استخدام الإحداثيات في محرر أو مكتبة رسوم أو برنامج نصي أو مسار نشر أو واجهة معاينة.
اختاروا وجهة النشر قبل حساب إطار القص
أدخلوا العرض والارتفاع الفعليين للصورة الأصلية بالبكسل، ثم اختاروا المنصة وموضع النشر المقصود. تختلف أطر منشور Instagram وقصته وترويسة Twitter ولافتة LinkedIn اختلافًا كبيرًا، حتى عند استخدام الصورة نفسها. تجمع الحاسبة حقلي الوجهة، وتبحث عن المقاسات المعروفة، وتستخرج نسبة الأبعاد منها. ثم تجد أكبر مستطيل بهذه النسبة يمكن احتواؤه بالكامل داخل الأصل. إذا كانت الصورة أعرض من اللازم، يُحفظ ارتفاعها كاملًا وتزال شريحتان متساويتان من اليمين واليسار. وإذا كانت أطول من اللازم، يُحفظ عرضها كاملًا ويزال مقدار متساوٍ من الأعلى والأسفل. تتضمن النتيجة المنصة والموضع بعد توحيدهما، واسم القالب، والعرض والارتفاع المستهدفين، ونسبة الأبعاد الرقمية، ومستطيل القص، والهوامش المحذوفة. تتيح لكم هذه البيانات إنشاء معاينة أو تطبيق القص برمجيًا من دون الاحتفاظ بجدول منفصل لمقاسات الشبكات الاجتماعية.
افهموا دلالة الإحداثيات المعادة
يستخدم كائن القص نقطة الأصل الشائعة في الزاوية العلوية اليسرى؛ تزداد x نحو اليمين وتزداد y نحو الأسفل. يصف العرض والارتفاع المنطقة التي ينبغي الاحتفاظ بها من المصدر، لا دقة الملف النهائي بعد التصدير. ويعرض كائن الهوامش القرار نفسه على هيئة مقادير محذوفة من الجوانب الأربعة، وهو تنسيق مناسب للواجهات والسجلات. بما أن القص مركزي، تكون الهوامش المتقابلة متساوية. قد تنتج بعض التركيبات إحداثيات أو أبعادًا عشرية، لأن المركز الدقيق أو النسبة الدقيقة قد يقعان بين وحدات البكسل. يحافظ إبقاء القيم الدقيقة على حياد الحاسبة تجاه سياسات التقريب المختلفة في Sharp وImageMagick وCanvas وغيرها. إذا كانت أداة المعالجة لا تقبل إلا أعدادًا صحيحة، فطبّقوا قاعدة التقريب الموثقة لديها في الخطوة النهائية. بعد القص، يمكن تغيير حجم المنطقة المحفوظة إلى المقاسات المستهدفة إذا اشترطتها المنصة. تحسب هذه القدرة البيانات الهندسية فقط؛ فلا تمد الصورة ولا تضيف حواف ولا تعيد أخذ العينات ولا تغيّر أي بكسل.
استخدموا قوالب صارمة لضمان نشر متوقع
لا يكفي اسم المنصة وحده، لأن كل شبكة توفر مواضع متعددة بأشكال مختلفة. لذلك لا تقبل الحاسبة إلا التركيبات المدعومة صراحة بين المنصة والموضع. تعيد التركيبة المجهولة خطأ في الإدخال بدل تخمين نسبة أو استخدام مربع عام. تحمي هذه الصرامة عمليات النشر الآلي، إذ يوقف الخطأ الإملائي المهمة قبل إنشاء مئات الصور ذات المقاسات الخاطئة. احفظوا اسم القالب والمقاسات المعادة مع الملف الناتج لكي تظل القاعدة المطبقة موثقة. راجعوا معاينة القص المركزي عندما يكون العنصر المهم قريبًا من الحافة، لأن الحساب الصحيح رياضيًا لا يعرف أي وجه أو شعار أو منتج أو نص له الأولوية. في هذه الحالة، أبقوا العرض والارتفاع المحسوبين واسمحوا للمحرر بتحريك x أو y داخل حدود الأصل. لا تستخدم العملية شبكة أو ساعة أو عشوائية أو تحليلًا بصريًا أو حالة مخفية، ولذلك تنتج المدخلات المتطابقة النتيجة نفسها دائمًا ويمكن تخزينها مؤقتًا بأمان.
حالات الاستخدام
إعداد حملة لعدة شبكات
احسبوا إطارًا مركزيًا مستقلًا لكل وجهة قبل إنتاج الملفات الخاصة بكل قناة.
التحقق من مهمة نشر آلية
ارفضوا أي تركيبة غير مدعومة قبل أن ينشئ معالج الصور ملفًا بالشكل الخاطئ.
إنشاء معاينة لإطار القص
اعرضوا المستطيل والهوامش المحذوفة فوق الأصل قبل اعتماد التكوين النهائي.
الأسئلة الشائعة
هل ترفع الأداة الصورة أو تغيّر حجمها؟
لا. تستقبل المقاسات وأسماء الوجهة فقط، ثم تعيد بيانات هندسية من دون تلقي وحدات البكسل أو حفظها أو تعديلها.
ما تكلفة الحساب عبر API؟
سعر API هو $0.002 لكل طلب. تنفذ نسخة المتصفح الحساب الحتمي نفسه محليًا.
لماذا تكون بعض قيم القص عشرية؟
قد يقع المركز الدقيق أو النسبة الدقيقة بين وحدات البكسل. تحفظ القيم العشرية الإطار الرياضي حتى التقريب النهائي.
ماذا يحدث عند اختيار وجهة مجهولة؟
يفشل الطلب بخطأ إدخال. لا تخمّن الحاسبة نسبة الأبعاد لأي تركيبة غير مدعومة.
هل يبقى العنصر المهم داخل الإطار؟
تضع الحاسبة أكبر مستطيل في الوسط، لكنها لا تحلل المحتوى. راجعوا المعاينة وحرّكوا الإطار عند الحاجة.
للمطوّرين — الوصول عبر API
كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.
الـEndpoint
صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.
استدعِ الخدمة من بيئتك
curl -X POST https://api.kit.forhosting.com/image/social-preset-resize \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"width":2400,"height":1600,"platform":"instagram","placement":"post"}'const res = await fetch("https://api.kit.forhosting.com/image/social-preset-resize", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"width": 2400,
"height": 1600,
"platform": "instagram",
"placement": "post"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/image/social-preset-resize",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"width": 2400,
"height": 1600,
"platform": "instagram",
"placement": "post"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/image/social-preset-resize", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"width":2400,"height":1600,"platform":"instagram","placement":"post"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"width":2400,"height":1600,"platform":"instagram","placement":"post"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/image/social-preset-resize", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)مثال على الطلب
{
"width": 2400,
"height": 1600,
"platform": "instagram",
"placement": "post"
}مثال على الاستجابة
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "image.social_preset_resize",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.
الأسعار
السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.
الحدود
max_mb | 15 |
max_megapixels | 12 |
الأخطاء
| HTTP | الرمز | المعنى |
|---|---|---|
401 | unauthorized | مفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك. |
402 | insufficient_balance | رصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة. |
404 | unknown_type | نوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب. |
429 | rate_limited | تجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة. |