מבוא

Aspose.PSD FOSS עבור Python היא ספרייה קוד פתוח חדשה לעבודה עם קבצי PSD ו-PSB (מסמך גדול של Photoshop) מתוך קוד 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 וניתן להשתמש בו במוצרים מסחריים ללא תמלוגים, ללא סימן מים של הערכה או מגבלת שימוש.

לספרייה אין תלותיות מקומיות של צד שלישי — רק ספריית ה-standard של Python נדרשת בזמן הריצה.


התחלה

משאבים קשורים