استكشاف الأخطاء وإصلاحها Aspose.PSD FOSS for Python
استكشاف الأخطاء وإصلاحها في Aspose.PSD FOSS لـ Python
تغطي هذه الصفحة أكثر المشكلات شيوعًا التي تُواجه عند تحميل، وفحص، وحفظ مستندات PSD/PSB باستخدام Aspose.PSD FOSS لـ Python.
مشكلات التحميل
PsdLoadException مع رسالة حول نسخة غير مدعومة
حقل نسخة PSD المعلن في الملف ليس نسخة PSD القياسية ولا قيمة PSB للوثائق الكبيرة. تأكد من أن الملف مستند PSD/PSB أصلي غير تالف قبل التحميل:
try:
image = PsdImage.load("input.psd")
except PsdLoadException as ex:
print(f"Not a valid PSD/PSB file: {ex}")PsdLoadException حول طول قسم يتجاوز الحد
حقول الطول الداخلية للملف غير متسقة مع حجمه الفعلي — وهذا عادةً يعني أن الملف مقطّع أو تالف، وليس أنه يستخدم هيكلًا غير مدعوم لكنه صالح. أعد تصدير الملف من تطبيق المصدر وحاول مرة أخرى.
مشكلات الحفظ
PsdSaveException عن طول سلسلة باسكال
قيمة السلسلة — غالبًا ما تكون اسم طبقة أو مورد — تتجاوز 255 بايت، الحد الأقصى الذي يمكن لحقل سلسلة باسكال في PSD ترميزه:
layer.name = layer.name[:255] if len(layer.name) > 255 else layer.name
image.save("output.psd")مشكلات التحرير
NotSupportedException عند تعيين خاصية
عدة خصائص للقراءة فقط في هذا البناء المفتوح المصدر. على PsdImage: active_layer, image_resources, global_layer_resources, has_transparency_data. على Layer: channel_information, layer_mask_data, layer_blending_ranges_data. اعتبرها للقراءة فقط — لا تقم بتعيين قيم لها.
تبدو شفافية الطبقة غير صحيحة بعد تعيينها
Layer.opacity عادةً ما تكون قيمة من 0 إلى 255، وليست كسرًا من 0.0 إلى 1.0 أو نسبة مئوية:
layer.opacity = 200 # approximately 78% opaque, not 200%إزالة الطبقة لا تُحدث أي تأثير
PsdImage.layers يحتوي على مُعيّن يعمل على مستوى المجموعة، لكن لا يمكن إزالة عناصر القائمة الفردية ببساطة في مكانها — أعد تعيين القائمة المفلترة بالكامل:
image.layers = [l for l in image.layers if l.name != "Unwanted Layer"]مشكلات التثبيت
الحزمة غير موجودة
تأكد من هوية الحزمة الدقيقة:
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قائمة التحقق التشخيصية
قبل فتح تذكرة الدعم، مرّ عبر هذه القائمة:
- تأكد من أن الملف هو حقًا PSD/PSB — أ
PsdLoadExceptionعن نسخة غير مدعومة عادةً ما يعني أن الملف ليس مستندًا PSD/PSB حقيقيًا. - تحقق من
NotSupportedException— قد تكون تقوم بتعيين إحدى الخصائص السبع للقراءة فقط المذكورة أعلاه بدلاً من قراءتها. - Verify
opacityفي النطاق 0-255، وليس 0.0-1.0 أو 0-100. - احتفظ بقيم السلاسل أقل من 255 بايت قبل الحفظ، لتجنب
PsdSaveException. - Call
image.saveبعد كل تعديل — تغييرات علىLayerالمثيل لا يتم حفظه حتى يتم حفظ المستند.