SetMarkInfo
מאפייני מסמך, נגישות
תיאור
מגדירה את מילון ה-/MarkInfo של המסמך בקטלוג. כאשר Marked הוא 1 הקטלוג מקבל כניסת /MarkInfo << /Marked true /Suspects false >>, המכריזה על המסמך כ-PDF מתויג. כאשר Marked הוא 0 כניסת ה-/MarkInfo מוסרת.
פונקציה זו נקראת אוטומטית על ידי SetPDFUAMode ועל ידי SetPDFAMode ברמות תאימות a (PDF/A-1a, PDF/A-2a, PDF/A-3a). קראו לה ישירות רק כאשר אתם זקוקים למצב Tagged-PDF בלי הגדרת ה-PDF/UA-1 או PDF/A-A המלאה.
תחביר
Delphi
Function TPDFlib.SetMarkInfo(Marked: Integer): Integer;
ActiveX
Function PDFlib::SetMarkInfo(Marked As Long) As Long
DLL
int DLSetMarkInfo(int InstanceID, int Marked);
פרמטרים
| Marked | 1 כדי להכריז שהמסמך מתויג (כותב /Marked true ו-/Suspects false); 0 כדי להסיר את רשומת ה-/MarkInfo |
|---|
ערכי החזרה
| 1 | כניסת ה-/MarkInfo עודכנה בהצלחה. |
|---|
הערות
ISO 14289-1 (PDF/UA-1) §7.18.6 דורש ש-/Suspects יהיה קיים ומוגדר false כאשר /Marked הוא true. הספרייה תמיד כותבת /Suspects false לצד /Marked true, כך שקריאה בודדת ל-SetMarkInfo(1) מספקת את שתי הדרישות.
הגדרת /Marked true היא הצהרה בלבד — היא אינה מאכלסת בפני עצמה את עץ המבנה של המסמך. אחרי קריאת SetMarkInfo(1), בנו את עץ המבנה עם זוגות BeginTag/EndTag וסמנו תוכן דקורטיבי עם BeginArtifact/EndArtifact. השתמשו ב-GetPDFUADiagnostics כדי לחשוף פערים נפוצים לפני השמירה.
את המצב הקודם של /MarkInfo במסמך טעון אפשר לשאול עם IsTaggedPDF.
דוגמה
// Convert a non-tagged loaded document into a tagged one, then add structure
PDF.LoadFromFile('source.pdf', '');
if PDF.IsTaggedPDF = 0 then
begin
PDF.SetMarkInfo(1);
// Re-open page 1 for editing
PDF.SelectPage(1);
PDF.BeginPageUpdate;
PDF.BeginTag('H1', '', '');
PDF.PrintText(50, 750, 'Document Title');
PDF.EndTag;
PDF.EndPageUpdate;
end;
PDF.SaveToFile('tagged.pdf');ראו גם
IsTaggedPDF, SetPDFUAMode, SetPDFAMode, BeginTag, GetPDFUADiagnostics