عیب‌یابی

عیب‌یابی

مشکلات رایج و راه‌حل‌ها هنگام کار با Aspose.PDF FOSS برای .NET.


بارگذاری سند

ProblemCauseSolution
Document.Open در یک PDF معتبر خطا می‌اندازدفایل با رمز محافظت شده استرمز عبور را در سازنده فراهم کنید
کمبود حافظه در PDFهای بزرگکل فایل به صورت آرایه بایت بارگذاری می‌شودصفحات را به‌صورت جداگانه پردازش کنید یا از استریمینگ استفاده کنید
Pages[0] خطای ایندکس می‌اندازدصفحات از ایندکس‌گذاری ۱-پایه استفاده می‌کننداز Pages[1] برای صفحه اول استفاده کنید

حاشیه‌نویسی‌ها

ProblemCauseSolution
حاشیه‌نویسی پس از ذخیره نمایش داده نمی‌شودمستطیل مساحت صفر دارد یا خارج از مرزهای صفحه استاطمینان حاصل کنید مختصات درون صفحه قرار دارند MediaBox
LinkAnnotation.Uri مقدار null برمی‌گرداندپیوند از عمل GoTo یا JavaScript استفاده می‌کنداز طریق PdfAction.Create حل کنید و ActionType را بررسی کنید
Flatten() استثنا می‌اندازدحاشیه‌نویسی مرجع /P (صفحه) را ندارداطمینان حاصل کنید حاشیه‌نویسی از طریق Page.Annotations اضافه شده است

استخراج متن

مشکلدلیلراه‌حل
متن استخراج‌شده خراب استرمزگذاری غیر استاندارد یا نگاشت فونت CIDجاسازی فونت را بررسی کنید؛ PDFهای اسکن‌شده ممکن است به OCR نیاز داشته باشند
هیچ بخش متنی یافت نشدمحتوای صفحه یک تصویر رستری استقبل از استخراج متن از OCR استفاده کنید
Regex هیچ مطابقتی برنمی‌گرداندچیدمان متن PDF فضاهای خالی وارد می‌کنداز الگوی سست‌تر استفاده کنید یا فضاهای خالی را نرمال کنید

رندرینگ و تبدیل

مشکلدلیلراه‌حل
تصویر رندر شده تار استوضوح تصویر خیلی پایین استDPI را در سازنده Resolution افزایش دهید
خروجی HTML تصاویر را نشان نمی‌دهدمسیرهای تصویر خارجی پیکربندی نشده‌انداز HtmlSaveOptions با تصاویر جاسازی‌شده استفاده کنید
تبدیل PDF/A حاشیه‌نویسی‌ها را حذف می‌کندپروفایل هدف حاشیه‌نویسی‌ها را مجاز نمی‌دانداز PDF/A-2 یا PDF/A-3 استفاده کنید

فیلدهای فرم

ProblemCauseSolution
مقدار فیلد خالی استفیلد ورودی /V نداردبررسی کنید field.Value مقدار null نیست
FillField تأثیری نداردنام فیلد مطابقت ندارداز Form.FieldNames برای فهرست کردن نام‌های موجود استفاده کنید
ExportToJson خروجی خالی تولید می‌کندحاشیه‌نویسی ویجت به‌درستی تبدیل نشده استتأیید کنید حاشیه‌نویسی یک WidgetAnnotation است

نکات کلی

  • همیشه Document را در using بپیچید تا دستگیره‌های فایل آزاد شوند.
  • از Document.Open(byte[]) برای جریان‌های کاری در حافظه استفاده کنید تا از قفل شدن فایل‌ها جلوگیری شود.
  • قبل از دسترسی به صفحات بر اساس شاخص، doc.Pages.Count را بررسی کنید.
  • پس از تمام تغییرات، سند را یک‌بار ذخیره کنید تا بهترین عملکرد را داشته باشید.

همچنین ببینید

 فارسی