ConvertTextToPaths
ویرایش جریان محتوا، قلمها
توضیحات
دستورات نمایش متن را در صفحات انتخابشده به فراخوانیهای برداری Form XObject بازنویسی میکند در حالی که جایگذاری گلیف، فاصلهگذاری متن، جهت نوشتار، تبدیلها، رنگ پرکننده، رنگ خط و تنظیمات خط حفظ میشود
outlines گلیف TrueType و Type 1 یک بار استخراج و برای گلیفهای مکرر دوباره استفاده میشوند. CharProcهای Type 3 به Form XObjectهای معمولی با حفظ ماتریس فونت، کادر محاطی و دامنهٔ resourceشان تبدیل میشوند. دستورالعملهای اصلی نمایش متن و انتخاب فونت حذف میشوندتبدیل تراکنشی است. هر لایهٔ محتوای انتخابشده و فرم تودرتوی درخواستی قبل از تغییر هر شیء PDF، در حافظه تجزیه و تبدیل میشود. فونتهای پشتیبانینشده، حالتهای رندر برش متن 4 تا 7، وضعیت متن بدشکل و دامنههای resource فرم مشترک مبهم، بدون بازنویسی جزئی سند شکست میخورند
متن تبدیلشده دیگر بهعنوان متن قابل جستوجو، انتخاب یا استخراج نیست. برای رندر و چاپ بهصورت محتوای برداری مقیاسپذیر باقی میماند
نحو
Delphi
Function TPDFlib.ConvertTextToPaths(Const PageRange: WideString= ''; Options: Integer= PDF_TEXT_PATH_DEFAULT): Integer;
ActiveX
Function PDFlib::ConvertTextToPaths(PageRange As String, Options As Long) As Long
DLL
int DLConvertTextToPaths(int InstanceID, const wchar_t *PageRange, int Options);
int DLConvertTextToPathsA(int InstanceID, const char *PageRange, int Options);
پارامترها
| PageRange | عبارت بازهٔ صفحه با شماره صفحه از 1. مقدار خالی همهٔ صفحهها را انتخاب میکند |
|---|---|
| Options | ترکیب بیتی PDF_TEXT_PATH_RECURSE_FORMS برای تبدیل Form XObjectهای تودرتو و PDF_TEXT_PATH_PURGE_FONTS برای حذف resourceهای فونت مبدأ که بلااستفاده میشوند. PDF_TEXT_PATH_DEFAULT هر دو گزینه را فعال میکند |
مقادیر بازگشتی
| 1 یا بیشتر | تعداد دستورالعملهای نمایش متن تبدیلشده |
|---|---|
| 0 | متن واجد شرایطی پیدا نشد، بازه یا گزینهها نامعتبر بودند یا تبدیل شکست خورد. برای تفکیک خطاها LastErrorCode را بررسی کنید |
کدهای خطا
| 506 | فونت مبدأ نمیتواند برنامهٔ گلیف برداری پشتیبانیشدهای بدهد |
|---|---|
| 507 | حالت رندر برش متن به مسیر برشی نیاز دارد که با Form گلیف مستقل قابل نمایش نیست |
| 508 | برنامهٔ متن، وضعیت فونت یا دامنهٔ بازگشتی resource فرم بدشکل یا مبهم است |
مثال
Converted := PDF.ConvertTextToPaths('1-3,5', PDF_TEXT_PATH_DEFAULT);
If (Converted= 0)and (PDF.LastErrorCode<> 0) Then
raise Exception.Create(PDF.LastError);