Troubleshooting

Troubleshooting

FontSource، DataSource، وPdfPlugin يرفعون NotImplementedError عند إنشاءهم مباشرةً

FontSource، DataSource وPdfPlugin هي فئات أساسية مجردة. كل منها يعلن عن طريقة هوك واحدة يقوم التنفيذ الأساسي برفع NotImplementedError لها عن قصد، ويتوقع أن تقوم فئة فرعية ملموسة بتجاوزها:

الفئة الأساسيةخطاف تجريدياستخدم إحدى هذه الفئات الفرعية الملموسة بدلاً من ذلك
FontSourceget_font_definitions()FileFontSource, FolderFontSource, MemoryFontSource, SystemFontSource
DataSourceread_bytes() / write_bytes()FileDataSource, StreamDataSource, ByteArrayDataSource
PdfPluginprocess()Merger, Optimizer, Splitter, TextExtractor

إذا رأيت NotImplementedError يُرفع من إحدى هذه الفئات الأساسية الثلاث، فإن الحل يكون غالبًا استبداله بالفئة الملموسة المطابقة. لاكتشاف الخطوط، سجِّل مصدرًا ملموسًا مع FontRepository بدلاً من استخدام FontSource مباشرةً:

import aspose_pdf

aspose_pdf.FontRepository.add_source(
    aspose_pdf.FolderFontSource("./fonts", scan_subdirectories=True)
)

ينطبق نفس النمط على الإضافات منخفضة الشيفرة — أنشئ فئة فرعية من PluginOptions بمدخلات/مخرجات DataSource ملموسة وشغّلها عبر إضافة ملموسة، لا عبر PdfPlugin نفسها:

import aspose_pdf

options = aspose_pdf.MergeOptions()
options.add_input(aspose_pdf.FileDataSource("part1.pdf"))
options.add_input(aspose_pdf.FileDataSource("part2.pdf"))
options.add_output(aspose_pdf.FileDataSource("merged.pdf"))
aspose_pdf.Merger().process(options)

Shading.color_at() يرفع NotImplementedError على نسخة Shading فارغة

Shading — الفئة الأساسية لأخذ عينات اللون في المناطق المحدودة التي يستخدمها أنماط تظليل PDF — تنفّذ color_at() وpattern_color_at() عبر تفويض إلى هوك داخلي _color_at() لا يحتوي على جسم افتراضي. في الاستخدام العادي لا تقوم بإنشاء Shading بنفسك: محلل PDF الخاص بالمكتبة يبني الفئة الداخلية الصحيحة لكل ShadingType مدعوم عند مواجهته لمورد تظليل، ويعيد None لأنواع التظليل التي لا يتعرف عليها بدلاً من الرجوع إلى الفئة الأساسية. الـNotImplementedError لا يمكن الوصول إليه إلا إذا كان كود التطبيق ينشئ Shading مباشرةً ويستدعي color_at() أو pattern_color_at() دون إنشاء فئة فرعية لتوفير تنفيذ _color_at() حقيقي.

انظر أيضاً

 العربية