ملاحظة المؤلف: شرح مفصل لكيفية تحقيق مخرجات بالنسبة الأصلية باستخدام Nano Banana Pro API، وإتقان مهارة حذف معلمة aspect_ratio، وحل مشكلة الحفاظ على الأبعاد في سيناريوهات تحرير الصور.
عند استخدام Nano Banana Pro API لتحرير الصور، تعد كيفية الحفاظ على أبعاد الصورة الأصلية مشكلة شائعة يواجهها المطورون. تحدد الوثائق الرسمية بوضوح أن aspect_ratio يدعم 10 نسب ثابتة فقط، ولكن في الواقع هناك حل بسيط: في سيناريوهات تعديل الصور، يؤدي حذف معلمة aspect_ratio ببساطة إلى الحصول على مخرجات بالأبعاد الأصلية.
القيمة الجوهرية: بعد قراءة هذا المقال، ستتقن التقنيات الكاملة للمخرجات بالنسبة الأصلية في Nano Banana Pro API، وتتحكم بمرونة في أبعاد الصور في مختلف السيناريوهات.

النقاط الرئيسية لمخرجات Nano Banana Pro بالنسبة الأصلية
| النقطة | الشرح | القيمة |
|---|---|---|
| طريقة حذف المعلمة | عدم تمرير aspect_ratio عند تحرير الصور | الحفاظ تلقائيًا على أبعاد الصورة الأصلية |
| 10 نسب ثابتة | 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9 | تُستخدم في سيناريوهات توليد الصور من النص |
| اختلاف السلوك الافتراضي | الافتراضي في (نص إلى صورة) هو 1:1، وفي (تعديل الصور) هو الأبعاد الأصلية | مفتاح فهم منطق واجهة البرمجية (API) |
المبدأ الأساسي للمخرجات بالنسبة الأصلية في Nano Banana Pro
يمتلك Nano Banana Pro (المعروف بـ Gemini 3 Pro Image) سلوكين افتراضيين مختلفين عند معالجة الصور. بالنسبة لسيناريوهات توليد الصور من النص فقط (text-to-image)، إذا لم يتم تحديد aspect_ratio ، فستقوم واجهة البرمجية (API) بإخراج صورة مربعة بنسبة 1:1 بشكل افتراضي.
ولكن في سيناريو تحرير الصور (image-to-image)، يختلف سلوك واجهة البرمجية تماماً. عندما تقدم صورة مرجعية وتطلب إجراء تعديلات عليها، وإذا لم تقم بتمرير معلمة aspect_ratio ، فستقوم واجهة البرمجية تلقائيًا بالتعرف على الأبعاد الأصلية للصورة المدخلة، وإخراج نتيجة التعديل بنفس الأبعاد. هذه هي الآلية الأساسية لتحقيق مخرجات بالنسبة الأصلية.
لماذا تعد المخرجات بالنسبة الأصلية في Nano Banana Pro فعالة؟
هذا التصميم منطقي للغاية: فعندما يقوم المستخدم برفع صورة لتحريرها، فإنه يتوقع عادةً أن تحافظ الصورة الناتجة على نفس أبعاد ونسبة الصورة الأصلية. إجبار المستخدم على حساب النسبة وتحديدها يدويًا لا يزيد من تعقيد التطوير فحسب، بل قد يؤدي أيضًا إلى تشوه الصورة أو قصها بسبب عدم تطابق النسب.

شرح مفصل للقواعد الرسمية لإخراج النسبة الأصلية في Nano Banana Pro
تنص وثائق API الرسمية على أن المعلمة aspect_ratio تقبل فقط القيم العشر المحددة مسبقاً التالية:
| النسبة | مثال للأبعاد (1K) | الاستخدام الشائع | سيناريوهات التطبيق |
|---|---|---|---|
| 1:1 | 1024×1024 | الصور الشخصية، الأيقونات | صور حسابات التواصل الاجتماعي |
| 2:3 | 832×1248 | الملصقات الرأسية | خلفيات الهاتف المحمول |
| 3:2 | 1248×832 | الصور الأفقية | النسبة القياسية للكاميرات |
| 3:4 | 864×1152 | المحتوى الرأسي | أغلفة منصة XiaoHongShu |
| 4:3 | 1152×864 | الشاشات التقليدية | صور العروض التقديمية (PPT) |
| 4:5 | 896×1120 | إنستغرام | محتوى منصات التواصل الاجتماعي |
| 5:4 | 1120×896 | طباعة الصور | صور مقاس 8×10 بوصة |
| 9:16 | 768×1344 | الفيديو الرأسي | أغلفة الفيديوهات القصيرة |
| 16:9 | 1344×768 | الفيديو الأفقي | أغلفة YouTube |
| 21:9 | 1536×658 | الشاشات العريضة جداً | اللقطات السينمائية |
تنبيه هام: تنطبق قيود النسب المذكورة أعلاه فقط على الحالات التي تتطلب تحديد الأبعاد يدوياً. أما في حالات تحرير الصور، فيُنصح بإجراء الاختبار عبر منصة APIYI apiyi.com، حيث يمكنك تحقيق الإخراج بالنسبة الأصلية ببساطة عن طريق حذف معلمة
aspect_ratio.
الدليل السريع للإخراج بالنسبة الأصلية في Nano Banana Pro
مثال مبسط: تحرير الصور مع الحفاظ على الأبعاد الأصلية
إليك أبسط طريقة لتنفيذ الإخراج بالنسبة الأصلية:
import openai
import base64
client = openai.OpenAI(
api_key="YOUR_API_KEY",
base_url="https://vip.apiyi.com/v1"
)
# 读取原图并编码
with open("input.jpg", "rb") as f:
image_base64 = base64.b64encode(f.read()).decode()
# 关键:不传 aspect_ratio 参数
response = client.chat.completions.create(
model="gemini-3-pro-image-preview",
messages=[{
"role": "user",
"content": [
{"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{image_base64}"}},
{"type": "text", "text": "将图片背景改为日落场景"}
]
}]
)
عرض كود التنفيذ الكامل (يتضمن معالجة الأخطاء)
import openai
import base64
from pathlib import Path
def edit_image_keep_ratio(
image_path: str,
edit_prompt: str,
output_path: str = "output.png"
) -> bool:
"""
编辑图片并保持原始尺寸
Args:
image_path: 输入图片路径
edit_prompt: 编辑指令
output_path: 输出图片路径
Returns:
是否成功
"""
client = openai.OpenAI(
api_key="YOUR_API_KEY",
base_url="https://vip.apiyi.com/v1"
)
# 读取并编码图片
image_data = Path(image_path).read_bytes()
image_base64 = base64.b64encode(image_data).decode()
# 检测图片格式
suffix = Path(image_path).suffix.lower()
mime_type = {"jpg": "jpeg", "jpeg": "jpeg", "png": "png", "webp": "webp"}.get(suffix[1:], "jpeg")
try:
# 核心:不传 aspect_ratio,自动保持原尺寸
response = client.chat.completions.create(
model="gemini-3-pro-image-preview",
messages=[{
"role": "user",
"content": [
{"type": "image_url", "image_url": {"url": f"data:image/{mime_type};base64,{image_base64}"}},
{"type": "text", "text": edit_prompt}
]
}]
)
# 保存结果
result_base64 = response.choices[0].message.content
output_data = base64.b64decode(result_base64)
Path(output_path).write_bytes(output_data)
return True
except Exception as e:
print(f"编辑失败: {e}")
return False
# 使用示例
edit_image_keep_ratio(
"product.jpg",
"移除图片背景,保留主体产品",
"product_nobg.png"
)
نصيحة: احصل على رصيد اختبار مجاني عبر APIYI apiyi.com للتحقق بسرعة من جودة الإخراج بالنسبة الأصلية. تدعم المنصة استدعاء كافة وظائف نموذج Nano Banana Pro.
مقارنة إخراج Nano Banana Pro بالأبعاد الأصلية في ثلاثة سيناريوهات

| السيناريو | إعداد aspect_ratio | نتيجة المخرجات | حالات الاستخدام |
|---|---|---|---|
| نص إلى صورة – نسبة محددة | "aspect_ratio": "16:9" |
1344×768 (1K) | بوسترات، تصميم أغلفة |
| نص إلى صورة – افتراضي | بدون تمرير المعلمة | 1024×1024 | أيقونات مربعة |
| تعديل صورة – الحجم الأصلي | بدون تمرير المعلمة | مطابق للصورة الأصلية | تحرير صور المنتجات |
السيناريو الأول: تحويل النص إلى صورة يتطلب تحديد النسبة
عند إنشاء صورة من نص فقط، إذا كنت ترغب في أبعاد محددة، يجب عليك تمرير معلمة aspect_ratio بوضوح:
response = client.chat.completions.create(
model="gemini-3-pro-image-preview",
messages=[{"role": "user", "content": "一只可爱的猫咪"}],
extra_body={
"image_config": {
"aspect_ratio": "16:9", # 必须指定
"resolution": "2K"
}
}
)
السيناريو الثاني: تحرير الصور مع الحفاظ على الأبعاد الأصلية
هذا هو السيناريو الأساسي في هذا المقال؛ فكل ما عليك فعله هو حذف aspect_ratio بكل بساطة:
response = client.chat.completions.create(
model="gemini-3-pro-image-preview",
messages=[{
"role": "user",
"content": [
{"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{img}"}},
{"type": "text", "text": "增强图片色彩"}
]
}]
# 不传 extra_body 或 aspect_ratio
)
السيناريو الثالث: تحرير الصور مع تغيير النسبة إجبارياً
إذا كنت بحاجة فعلياً لتغيير الأبعاد أثناء عملية التحرير، يمكنك تمرير المعلمات بشكل صريح:
response = client.chat.completions.create(
model="gemini-3-pro-image-preview",
messages=[{
"role": "user",
"content": [
{"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{img}"}},
{"type": "text", "text": "将图片改为正方形构图"}
]
}],
extra_body={"image_config": {"aspect_ratio": "1:1"}}
)
ملاحظة حول المقارنة: تم التحقق من إعدادات المعلمات المذكورة أعلاه على منصة APIYI (apiyi.com)، وقد أثبتت فعاليتها في الاختبارات الفعلية.
الأسئلة الشائعة
س1: لماذا لا تزال الصورة تظهر بشكل مربع رغم أنني حذفت معامل aspect_ratio؟
يرجى التأكد من أن طلبك يتضمن بالفعل صورة مدخلة. إذا كانت الـ messages تحتوي على نص فقط بدون صورة، سيعالج الـ API الطلب بنمط "تحويل النص إلى صورة" (Text-to-Image)، وسيكون المخرج الافتراضي بنسبة 1:1. ميزة الإخراج بالأبعاد الأصلية لا تفعيل إلا في سيناريوهات التعديل التي يتم فيها توفير صورة مرجعية.
س2: ماذا أفعل إذا كانت أبعاد الصورة الأصلية ليست ضمن النسب الـ 10 المدعومة؟
هنا تكمن قيمة "طريقة حذف المعامل". على سبيل المثال، إذا كانت الصورة الأصلية بأبعاد 1920×1080 (حوالي 16:9)، سيقوم الـ API بإخراج نتيجة قريبة جداً من هذه الأبعاد دون فرض أي قص (Cropping). أما إذا قمت بتمرير aspect_ratio: "16:9" بشكل صريح، فستكون النتيجة بالأبعاد القياسية 1344×768.
س3: كيف يمكنني اختبار تأثير مخرج الأبعاد الأصلية بسرعة؟
نوصي باستخدام منصة تجميع واجهات البرمجة (API) التي تدعم نماذج متعددة:
- قم بزيارة APIYI عبر الرابط apiyi.com وتسجيل حساب.
- احصل على مفتاح API (API Key) والرصيد المجاني.
- استخدم أمثلة الكود المذكورة في هذا المقال، وقم برفع صورة اختبار للتحقق من النتائج.
الملخص
النقاط الجوهرية للحصول على مخرجات بالأبعاد الأصلية في Nano Banana Pro:
- الحذف يعني الأبعاد الأصلية: في سيناريوهات تحرير الصور، عدم إرسال معامل
aspect_ratioيحافظ على أبعاد الصورة الأصلية. - فهم اختلاف السيناريوهات: النمط الافتراضي لتحويل النص إلى صورة هو 1:1، بينما النمط الافتراضي لتعديل الصور هو الأبعاد الأصلية؛ سلوك النمطين مختلف تماماً.
- 10 نسب محددة مسبقاً: عندما تحتاج لتحديد أبعاد معينة، يمكنك الاختيار فقط من بين النسب الـ 10 المدعومة رسمياً.
بعد إتقان هذه التقنية، يمكنك بسهولة تحقيق مخرجات بالأبعاد الأصلية في مجالات مثل تحرير صور المنتجات، وتعديل الصور الشخصية، واستبدال الخلفيات، مما يجنبك عناء تعديل المقاسات يدوياً لاحقاً.
نوصي بالتحقق من النتائج بسرعة عبر APIYI (apiyi.com)، حيث توفر المنصة رصيداً مجانياً ودعماً كاملاً لنموذج Nano Banana Pro.
📚 المراجع
⚠️ ملاحظة حول تنسيق الروابط: جميع الروابط الخارجية تستخدم تنسيق
اسم المصدر: domain.comليسهل نسخها ولكنها غير قابلة للنقر، وذلك لتجنب فقدان قوة الـ SEO.
-
وثائق Google Gemini API الرسمية: شرح كامل لمعلمات إنشاء الصور في Nano Banana
- الرابط:
ai.google.dev/gemini-api/docs/nanobanana - الوصف: الوثائق الرسمية المعتمدة، تتضمن التعريف الكامل لمعلمة aspect_ratio
- الرابط:
-
fal.ai Nano Banana Pro API: شرح مفصل لواجهة البرمجة من منصة طرف ثالث
- الرابط:
fal.ai/models/fal-ai/nano-banana-pro/edit/api - الوصف: يتضمن أمثلة لتهيئة المعلمات في سيناريوهات "صورة إلى صورة" (image-to-image)
- الرابط:
-
منتدى مطوري Google AI: مناقشات المجتمع والإجابة على الأسئلة
- الرابط:
discuss.ai.google.dev - الوصف: يمكنك العثور على مشاركات لمطورين آخرين حول تجاربهم في التحكم في الأبعاد
- الرابط:
المؤلف: الفريق التقني
التواصل التقني: نرحب بمناقشة نصائح استخدام Nano Banana Pro API في قسم التعليقات. لمزيد من المصادر، يمكنكم زيارة المجتمع التقني لـ APIYI علىapiyi.com
