AddInkAnnotation
Anotasi dan tautan area interaktif
Deskripsi
Menambahkan ink markup annotation (PDF /Subtype /Ink) yang merepresentasikan satu atau lebih goresan tulisan tangan, tanda bebas, atau sketsa bebas yang digambar di halaman. Entri dictionary /InkList memuat array goresan; setiap goresan adalah array koordinat x/y bergantian yang merepresentasikan jalur yang dilacak perangkat penunjuk antara event pen-down dan pen-up. Komponen warna dan opacity dinyatakan pada skala 0–1; Transparency diberikan pada skala 0–100 (0 = sepenuhnya opak, 100 = sepenuhnya transparan). Karena entry point ini mengeluarkan key opacity /CA anotasi PDF 1.4, library menaikkan dokumen yang lebih rendah dan tidak terkunci ke PDF 1.4 sebelum menyimpan; target yang lebih rendah dan terkunci ditolak oleh compatibility gate. Didefinisikan di ISO 32000-1 §12.5.6.13
Sintaks
Delphi
Function TPDFlib.AddInkAnnotation(Const InkPaths: WideString; BorderWidth: Double; InkRed, InkGreen, InkBlue: Double; Const Title, Contents: WideString; Transparency: Integer): Integer;
Parameter
InkPaths — Satu atau lebih goresan yang dienkode sebagai satu string. Goresan dipisahkan '|' atau newline (CR / LF / CRLF). Di dalam setiap goresan, pasangan koordinat memakai konvensi delimiter yang sama seperti AddPolygonAnnotation: nilai x/y bergantian dipisah spasi, koma, titik koma, atau tab. Contoh: "100 100 110 105 120 110 | 200 200 210 205" mendeskripsikan dua goresan terpisah. Setiap goresan harus memuat minimal dua pasangan koordinat (empat angka) dan total nilai berjumlah genap, jika tidak panggilan mengembalikan 0
BorderWidth — Lebar stroke tinta, dalam satuan saat ini
InkRed, InkGreen, InkBlue — Komponen RGB (0–1) dari warna tinta, ditulis ke /C
Title — Nama penulis yang ditulis ke entri /T anotasi. Berikan string kosong untuk melewatinya
Contents — Isi popup yang terkait dengan anotasi. Berikan string kosong untuk melewatinya
Transparency — Opacity yang dinyatakan sebagai persentase transparan (0–100). Library mengonversinya menjadi PDF /CA = 1 - Transparency/100 dan membatasinya ke rentang yang valid
Nilai Kembalian
1 jika sukses, 0 jika tidak ada dokumen terpilih, string ink gagal di-parse menjadi stroke list yang valid, atau anotasi gagal dibuat
Catatan
/Rect anotasi dihitung otomatis dari luasan gabungan semua stroke plus padding kecil proporsional terhadap lebar border agar stroke hasil render tetap di dalam bounding box anotasi
Entry point ini cocok baik untuk tulisan tangan hasil digitalisasi yang ditangkap dari perangkat sentuh/ pena maupun untuk bentuk bebas programatik seperti signature yang di-coret atau anotasi yang diimpor dari tool lain. Untuk meng-overwrite warna tinta, border, isi, atau rectangle setelah dibuat, gunakan SetAnnotBorderColor, SetAnnotBorderStyle, SetAnnotContents, dan SetAnnotRect