property JavaScriptActionCount: Integer; // read only
Trả về số lượng JavaScript action được khai báo ở cấp tài liệu —
điển hình là các mục dưới cây tên /Names /JavaScript của catalog
(đặc tả PDF 1.7 mục 12.6.4.16) cộng với các mục OpenAction,
DA, WC, WS, DS, WP,
DP cấp tài liệu khi từ điển action của chúng mang một stream JS
Các script cấp trường và cấp chú thích không được tính; chúng nằm trên
các chú thích hoặc từ điển trường AcroForm
Giá trị là 0 khi tài liệu không tải được, khi Active
là False, hoặc khi PDF đơn giản là không chứa script cấp tài liệu. Hãy dùng
JavaScriptAction[Index] để lấy một mục duy nhất dưới dạng bản ghi
TPdfJavaScriptAction (Name + mã nguồn Script) hoặc
JavaScriptActions để hiện thực hóa toàn bộ mảng trong một lời gọi
Đọc thuộc tính này rất rẻ — PDFium chỉ duyệt cây tên mà không thực thi script nào. PDFium Delphi Component không đánh giá JavaScript; các chuỗi trả về là dữ liệu kiểm tra thuần túy, hữu ích cho phân tích pháp y, gỡ script trước khi phân phối lại, hoặc hiển thị cảnh báo “Tài liệu chứa JavaScript” cho người dùng
JavaScriptActions khi chỉ cần số lượng hoặc một mục duy nhấtName rỗng vẫn hợp lệ — PDF cho phép từ điển action
không tên (ví dụ OpenAction). Cũng đừng dựa vào việc Name là duy nhất
// Warn the user if the PDF carries embedded JavaScript.
if Pdf1.JavaScriptActionCount > 0 then
if MessageDlg('This document contains JavaScript. Open anyway?',
mtWarning, [mbYes, mbNo], 0) = mrNo then
Pdf1.Active := False;