AddImageJBIG2FromFileEx

تصاویر

توضیحات

یک فایل بیت‌مپ را بارگذاری می‌کند، آن را به داده‌های تصویر تک‌رنگ تبدیل می‌کند و با استفاده از پارامترهای گزینه نام‌گذاری شده، آن را به عنوان یک JBIG2 image XObject ذخیره می‌کند

نحو

Delphi

Function TPDFlib.AddImageJBIG2FromFileEx(Const FileName: WideString; Interpolate, SymbolExtract, UseExternalEncoder, SkipBlackDots, BlackDotSize, LossyLevel: Integer): Integer;

پارامترها

FileNameفایل بیت‌مپ جهت کدگذاری
Interpolateدر صورت غیر صفر بودن، پرچم درون‌یابی تصویر را می‌نویسد
SymbolExtractهنگامی که بک‌اند رمزگذار فعال از آن پشتیبانی می‌کند، استخراج دیکشنری نماد را درخواست می‌کند
UseExternalEncoderدر صورت در دسترس بودن، بک‌اند رمزگذار خارجی JBIG2 را ترجیح می‌دهد
SkipBlackDotsپاک‌سازی نقطه‌های سیاه ایزوله را قبل از کدگذاری فعال می‌کند، در صورتی که مقدار غیرصفر باشد
BlackDotSizeحداکثر اندازه کلاستر پیکسل سیاه ایزوله‌شده حذف شده در طول پاک‌سازی
LossyLevelراهنمای تهاجمی بودن پاک‌سازی از 0 تا 9 برای ورودی‌های اسکن شده تک‌رنگ

مقادیر بازگشتی

مقدار ImageID جدید, یا در صورت عدم امکان خواندن یا رمزگذاری فایل مقدار 0 بازمی‌گرداند

ملاحظات

تابع پارامترهای نام‌گذاری شده را به همان مسیر کدگذاری استفاده‌شده توسط AddImageJBIG2FromFile نقشه‌نگاری می‌کند که سازگاری با ماسک‌های بیتی گزینه‌های موجود را حفظ می‌نماید

ثبت backendهای JBIG2

رمزگذار پشت خانوادهٔ AddImageJBIG2* و رمزگشای به‌کاررفته برای تصاویر JBIG2 در اسناد واردشده قابل تعویض (pluggable) هستند. واحد PDFlibJBIG2Enc سطح ثبت را به‌صورت توابع مستقل در دسترس می‌گذارد:

RegisterJBIG2EncoderBackendیک TJBIG2EncodeCallback نصب می‌کند که خطوط اسکن، عرض، ارتفاع و یک رکورد TJBIG2EncodeOptions را می‌گیرد و داده تصویر فشرده و داده‌های سگمنت سراسری اختیاری را برمی‌گرداند؛ درخواست UseExternalEncoder داده‌شده از طریق گزینه پایین را پاسخ می‌دهد
RegisterJBIG2DecoderBackendTJBIG2DecodeCallback اصلی را نصب می‌کند که بایت‌های تصویر و داده‌های سراسری را می‌گیرد و یک رکورد TJBIG2DecodeResult را پر می‌کند
RegisterJBIG2ExternalDecoderBackendbackend رمزگشای خارجی را ثبت می‌کند (رمزگشای C یعنی jbig2dec روی Win64). وقتی ثبت شده باشد و کلید ترجیح نسخه خارجی روشن باشد (پیش‌فرض)، مسیر بارگذاری /JBIG2Decode از آن می‌گذرد و رمزگشای اصلی به‌عنوان پشتیبان می‌ماند
ClearJBIG2Backendsهمه callbackهای ثبت‌شده رمزگذار و رمزگشا را حذف می‌کند
IsJBIG2EncoderBackendAvailable / IsJBIG2DecoderBackendAvailable / IsJBIG2ExternalDecoderBackendAvailableگزارش می‌دهند که آیا callback متناظر در حال حاضر ثبت شده است
SetPreferExternalJBIG2Decoder / GetPreferExternalJBIG2Decoderکلید سراسری که وقتی هر دو موجودند رمزگشای خارجی را بر رمزگشای داخلی Pascal ترجیح می‌دهد؛ پیش‌فرض True است، برای اجبار به پشتیبان بومی False بگذارید
DefaultJBIG2EncodeOptionsرکورد TJBIG2EncodeOptions را با پیش‌فرض‌هایی که فراخوانی‌های AddImageJBIG2* از آن‌ها شروع می‌شوند مقداردهی‌شده برمی‌گرداند (بدون افت، symbol dictionary روشن، سگمنت‌های سراسری خاموش، رمزگذار خارجی ترجیحی)
ClearJBIG2DecodeResultحافظه خطوط اسکن متعلق به رکورد TJBIG2DecodeResult را آزاد می‌کند و فیلدهایش را صفر می‌کند