مقدمة

Aspose.PSD FOSS لـ Python هي مكتبة مفتوحة المصدر جديدة للعمل مع ملفات PSD و PSB (مستند فوتوشوب كبير) من شفرة Python. تم إصدارها تحت رخصة MIT، ولا تعتمد على أي تبعيات أصلية من طرف ثالث، وتتطلب فقط مكتبة Python القياسية وقت التشغيل. يتم استيراد الحزمة كـ aspose_psd_foss.

تُنظم المكتبة حول الفئة PsdImage، التي تُوسِّع الفئة الأساسية المجردة Image، والفئة Layer. يقوم Image.load() / PsdImage.load() بتحميل مستند من مسار ملف أو من تدفق، مكشفًا عن معلومات الرأس (width، height، color_mode، version، compression) ومجموعة layers المُحلَّلة؛ يُكتب PsdImage.save() المستند مرة أخرى إلى ملف أو تدفق. تدعم الفئتان بيان with للتنظيف التلقائي. كل Layer يوفّر بياناته التعريفية الخاصة — name، bounds، is_visible، opacity، clipping، blend_mode_key، ومعلومات القناة/القناع — ويمكن تغيير مجموعة فرعية من هذه الخصائص في الموقع وحفظها مرة أخرى إلى الملف.

هذا الإصدار موجه للمطورين الذين يحتاجون إلى فحص أو إجراء تعديلات محدودة على بيانات التعريف في ملفات PSD/PSB داخل قاعدة شفرة Python دون الحاجة إلى ترخيص تجاري — أدوات خط أنابيب الأصول التي تُبلغ عن هيكل الطبقات، سكريبتات البناء التي تُعيد تسمية أو تُبدّل رؤية الطبقة قبل التسليم، أو تجهيزات الاختبار التي تحتاج إلى قراءة رأس PSD وبيانات الطبقة دون محرك عرض كامل. لا تقوم المكتبة بعرض بيانات البكسل أو تحويل PSD/PSB إلى صيغ صور أخرى — فهي قارئ/كاتب يركز على بيانات التعريف لتنسيق الحاوية PSD/PSB.


ما الذي يتضمنه

فحص المستند

PsdImage.load() يحلل رأس ملف PSD أو PSB إلى خصائص مُعَرَّفة — width، height، bits_per_channel، color_mode، version، compression، size، وis_flatten — دون فك ترميز بيانات البكسل.

from aspose_psd_foss.psdimage import PsdImage

with PsdImage.load("input.psd") as image:
    print(f"Width: {image.width}, Height: {image.height}")
    print(f"ColorMode: {image.color_mode}, Version: {image.version}")
    print(f"Layers: {image.layer_count}, Compression: {image.compression}")

بيانات تعريف الطبقة

كل إدخال في PsdImage.layers هو Layer يُظهر حدودها الخاصة، والظهور، والشفافية، والاقتصاص، وبيانات تعريف وضع المزج.

from aspose_psd_foss.psdimage import PsdImage

with PsdImage.load("input.psd") as image:
    for layer in image.layers:
        print(f"{layer.name}: {layer.bounds}, Visible={layer.is_visible}, Opacity={layer.opacity}")

تحريرات بيانات التعريف المدعومة

يمكن تغيير مجموعة فرعية من خصائص الطبقة في مكانها وإعادة كتابتها باستخدام PsdImage.save(): الاسم، والظهور، والشفافية، والاقتصاص، ومفتاح وضع المزج، وأربع حواف الحدود.

from aspose_psd_foss.psdimage import PsdImage
from aspose_psd_foss.layers.blendmode import BlendMode

with PsdImage.load("input.psd") as image:
    layer = image.layers[0]
    layer.name = f"{layer.name} (edited)"
    layer.is_visible = not layer.is_visible
    layer.opacity = 128
    layer.blend_mode_key = BlendMode.MULTIPLY
    image.save("output.psd")

البدء السريع

قم بتثبيت الحزمة، ثم حمّل ملف PSD أو PSB، افحص طبقاته، واحفظه مرة أخرى:

git clone https://github.com/aspose-psd-foss/Aspose.PSD-FOSS-for-Python.git
cd Aspose.PSD-FOSS-for-Python
# No packaging manifest is published yet -- run from this folder,
# or add it to PYTHONPATH:
export PYTHONPATH=$PWD:$PYTHONPATH
from aspose_psd_foss.psdimage import PsdImage

with PsdImage.load("input.psd") as image:
    print(f"Width: {image.width}, Height: {image.height}, Layers: {image.layer_count}")

    for layer in image.layers:
        print(f"  {layer.name}: {layer.bounds}")

    image.save("output.psd")

الصيغ المدعومة

تنسيقامتدادقراءةكتابة
PSDpsd✓✓
PSBpsb✓✓

المصدر المفتوح والترخيص

Aspose.PSD FOSS لـ Python مرخص برخصة MIT ويمكن استخدامه في المنتجات التجارية دون حقوق ملكية، دون علامة مائية للتقييم أو حد للاستخدام.

المكتبة لا تحتوي على أي تبعيات أصلية من طرف ثالث — فقط مكتبة Python القياسية مطلوبة وقت التشغيل.


البدء

الموارد ذات الصلة