AddLineAnnotation
annotationها و hotspot linkها
توضیحات
یک annotation از نوع line markup (PDF /Subtype /Line) بین دو endpoint در صفحه انتخابشده اضافه میکند. هر endpoint میتواند style متفاوتی برای انتهای line داشته باشد (arrow، square، circle، diamond، …) و بدنه line را میتوان با هر رنگ RGB و opacity قابلتنظیم ترسیم کرد. decorationهای انتهاییِ دارای بخش داخلی (ClosedArrow، Square، Circle، Diamond) را میتوان بهصورت اختیاری fill کرد. چون این entry point کلید opacity مربوط به annotation در PDF 1.4 یعنی /CA را تولید میکند، کتابخانه قبل از ذخیره، سندهای قدیمیترِ unlockشده را به PDF 1.4 ارتقا میدهد؛ targetهای قدیمیترِ lockشده توسط compatibility gate رد میشوند. در ISO 32000-1 §12.5.6.7 تعریف شده است
نحو
Delphi
Function TPDFlib.AddLineAnnotation(StartLeft, StartTop, EndLeft, EndTop: Double; BorderWidth: Double; LineRed, LineGreen, LineBlue: Double; StartStyle, EndStyle: Integer; Filled: Integer; FillRed, FillGreen, FillBlue: Double; Const Title, Contents: WideString; Transparency: Integer): Integer;
پارامترها
StartLeft، StartTop — مختصات نقطهٔ آغاز خط، در واحدهای جاری
EndLeft، EndTop — مختصات نقطهٔ پایان خط، در واحدهای جاری
BorderWidth — عرض خط و تزئینات انتهاییاش، در واحدهای جاری
LineRed، LineGreen، LineBlue — مؤلفههای RGB (0–1) رنگ خط، که در /C نوشته میشوند
StartStyle، EndStyle — سبکهای انتهای خط بهترتیب برای نقاط شروع و پایان. یکی از اینها را بهکار ببرید:
0 = هیچ، 1 = مربع، 2 = دایره، 3 = لوزی، 4 = پیکان باز، 5 = پیکان بسته، 6 = صاف، 7 = پیکان باز معکوس، 8 = پیکان بسته معکوس، 9 = مورب
مقادیر خارج از بازه به 0 (هیچ) محدود میشوند
Filled — 1 برای درج رنگ پرکنندهٔ داخلی (/IC) برای تزئینات انتهایی، 0 برای رهاکردن آنها بدون پرکننده
FillRed، FillGreen، FillBlue — مؤلفههای RGB (0–1) رنگ پرکنندهٔ داخلی تزئین انتهایی؛ وقتی Filled صفر است نادیده گرفته میشوند
Title — نام نویسندهای که در مدخل /T حاشیهنویسی نوشته میشود؛ برای رد کردن، رشتهٔ خالی بدهید
Contents — متن پاپآپ مرتبط با حاشیهنویسی؛ برای رد کردن، رشتهٔ خالی بدهید
Transparency — میزان کدری بر حسب درصد شفافیت (0–100)؛ کتابخانه این مقدار را به /CA = 1 - Transparency/100 در PDF تبدیل و به بازه مقید میکند
مقدار بازگشتی
در صورت موفقیت 1، و 0 اگر سندی انتخاب نشده باشد یا حاشیهنویسی قابل ایجاد نباشد
ملاحظات
مدخل /Rect حاشیهنویسی بهطور خودکار از دو نقطهٔ انتهایی بهعلاوهٔ لایی متناسب با عرض قاب محاسبه میشود تا تزئینات انتهایی درون کادر محاطی حاشیهنویسی بمانند. خوانندههای PDF میخواهند /Rect محدودکننده کل رسم دیداری را در بر بگیرد وگرنه ممکن است تزئینات انتهایی بریده شوند
فیلدهای پیشرفتهٔ اختیاری توصیفشده در مشخصات PDF — /LL (طول خط راهنما)، /LLE، /LLO، /Cap، /CP، /CO و /Measure — توسط این نقطهٔ ورود صادر نمیشوند. میتوان آنها را پس از ساخت با نوشتن مستقیم روی دیکشنری حاشیهنویسی اضافه کرد
برای بازنویسی رنگ خط، قاب، محتوا یا مستطیل پس از ساخت از SetAnnotBorderColor، SetAnnotBorderStyle، SetAnnotContents و SetAnnotRect استفاده کنید