| Type | Values or purpose |
|---|---|
EPdfLayoutError | החריגה שמועלית עבור קלט פריסה שגוי, מגבלות שחרגו, ומבנה סמנטי בלתי-עקבי |
TPdfLayoutAlignment | plaLeft, plaCenter, plaRight |
TPdfLayoutCommandKind | plcText, plcRule, plcImage, plcPageXObject, plcCachedNode, plcLink, plcRectangle |
TPdfLayoutItemKind | pliText, pliSpacer, pliRule, pliImage, pliPageXObject, pliPageBreak, pliCachedNode, pliLink, pliSemanticNode, pliTable |
TPdfLayoutSemanticRole | plsrArtifact, plsrParagraph, plsrHeading1, plsrHeading2, plsrHeading3, plsrHeading4, plsrHeading5, plsrHeading6, plsrList, plsrListItem, plsrListLabel, plsrListBody, plsrTable, plsrTableRow, plsrTableHeader, plsrTableData, plsrFigure, plsrCaption, plsrLink, plsrSection, plsrDivision |
TPdfLayoutTableScope | pltsNone, pltsRow, pltsColumn, pltsBoth |
TPdfLayoutListNumbering | plnNone, plnDisc, plnCircle, plnSquare, plnDecimal, plnUpperRoman, plnLowerRoman, plnUpperAlpha, plnLowerAlpha |
TPdfLayoutGridTrackKind | plgtkFixed, plgtkFraction, plgtkAuto |
TPdfMarkupFormat | pmfMarkdown, pmfHtml |
| Type | Public members |
|---|---|
TPdfLayoutSemantics | Role, ParentID, ElementID, AlternateText, ActualText, Language, HeaderIDs, TableScope, ColumnSpan, RowSpan, ListNumbering, Artifact, Paragraph, Figure |
TPdfLayoutTextStyle | FontName, FontSize, Color, Alpha, LineHeight, Alignment, KeepTogether, BreakLongWords, SpaceBefore, SpaceAfter, Default |
TPdfLayoutConstraints | KeepTogether, KeepWithNext, PageBreakBefore, PageBreakAfter, OrphanLines, WidowLines, Default |
TPdfLayoutPageSettings | Width, Height, MarginLeft, MarginTop, MarginRight, MarginBottom, HeaderHeight, FooterHeight, A4, Letter |
TPdfLayoutRect | Left, Top, Width, Height |
TPdfLayoutGridTrack | Kind, Value, Minimum, Maximum, MeasuredContent |
TPdfLayoutGridTracks | מערך דינמי של TPdfLayoutGridTrack |
TPdfLayoutGridSizes | מערך דינמי של גדלי track שנפתרו |
TPdfLayoutTableOptions | CellPadding, BorderWidth, BorderColor, BorderAlpha, RepeatHeaderRows, Default |
TPdfMarkupOptions | BaseStyle, HeadingScale, MaxInputCharacters, MaxNodes, Default |
TPdfLayoutSemanticElement | Semantics, ParentElementIndex |
TPdfLayoutSemanticElements | מערך דינמי של TPdfLayoutSemanticElement |
TPdfLayoutCommand | Kind, PageNumber, Bounds, Text, FontName, FontSize, Color, Alpha, Alignment, Thickness, FileName, Uri, Source, SourcePageIndex, SemanticElementIndex, MarkedContentID, AnnotationIndex |
TPdfLayoutCommands | מערך דינמי של TPdfLayoutCommand |
TPdfLayoutPlan | PageSettings, PageCount, Commands, SemanticElements, TextLineCount, RuleCount, RectangleCount, ImageCount, PageXObjectCount, CachedNodeCount, LinkCount, TaggedContentCount, ArtifactCount, MeasuredTextCount, TotalPageReferenceCount, ReservedPageDigits, CacheHitCount, CacheMissCount, ReusedXObjectCount, ColumnCount, ColumnGap |
| Type | Public members |
|---|---|
TPdfLayoutMeasurer | MeasureTextWidth, CacheIdentity |
TPdfLayoutItem | Kind |
TPdfLayoutTableCell | Text, Uri, Style, ColumnSpan, RowSpan, Header, ElementID, HeaderIDs, Scope |
TPdfLayoutTableRow | AddCell, Cells, Header, AllowSplit, MinimumHeight |
TPdfLayoutTable | Create, Destroy, AddRow, SetCaption, Columns, Rows, Options, Caption, CaptionStyle, ElementID, ParentID |
TPdfLayoutPagedPlan | Create, Destroy, ClearPageCache, MaterializePage, Reset, Summary, CommandCount, StorageByteCount, SourceCount, Completed, תקציבי ה-MaxCommandCount, MaxStorageBytes, MaxPageCommands, MaxSourceCount ו-MaxCachedPages, וסטטיסטיקות המטמון של CachedPageCount, CacheHitCount, CacheMissCount ו-PeakCachedPageCount |
TPdfLayoutDocument | Create, Destroy, Clear, AddText, AddSpacer, AddRule, AddImage, AddPageXObject, AddCachedNode, AddLink, AddSemanticNode, SetLastItemSemantics, SetLastItemConstraints, AddTable, AddPageBreak, LoadMarkup, InvalidateCache, BuildPlan, BuildPagedPlan, PageSettings, HeaderText, FooterText, HeaderStyle, FooterStyle, ReservedPageDigits, ColumnCount, ColumnGap, Items |
TPdfLayoutCachedNode | Create, Destroy, Invalidate, BeginEmission, EndEmission, Content, Width, Height, Built |
קראו ל-SetLastItemConstraints אחרי הוספת כל פריט זרימה גלוי כדי להחזיק אותו יחד, לקשור אותו לתחילת הפריט הבא, או לכפות מעבר עמוד פיזי לפניו או אחריו
OrphanLines הוא מינימום השורות של פסקה שנשמרות בתחתית אזור, ו-WidowLines הוא המינימום שמוצב בראש האזור הבא; שניהם ברירת מחדל של אחד כדי לשמר את ה-pagination הקיימת
האילוצים חלים באותה מידה על פריטים מסוג פסקה, קישור, רשימה, תרשים וטבלה, ואילו מכלים סמנטיים-בלבד חסרי גאומטריה ולכן דוחים אילוצי pagination
פריט pliTable מקבל רק PageBreakBefore ו-PageBreakAfter; פיצול שורות ושימור תחילת-הטבלה נשלטים על ידי מודל הטבלה
המתכנן מטמין שורות גלושות במהלך build אחד, כך שחיזוי keep-with-next ופליטת הפקודות הסופית אינם מודדים את אותו טקסט פעמיים
צרו TPdfLayoutPagedPlan מעל TStream ייעודי שניתן ל-seek ולשינוי גודל, ואז קראו ל-BuildPagedPlan או העבירו אותו אל TPdf.GeneratePagedLayout
המתכנן מסדר פקודות מיד, משחרר כל תוצאת טקסט-גלוש שהושלמה, ומשאיר את Plan.Commands ריק תוך שימור הגדרות העמודים, האלמנטים הסמנטיים, הספירות וסכומי העמודים היציבים ב-summary
פקודות הגוף ופקודות הכותרת או הכותרת-התחתונה שמאוחר יותר ממודדות כמקטעי עמוד משורשרים, כך ש-MaterializePage משחזר את העמוד השלם מבלי לסרוק פקודות של עמודים אחרים
MaxCachedPages תוחם רק את מערכי העמודים שהתוכנית מחזיקה; קוראים ששומרים את המערכים שהוחזרו מאריכים את חייהם, ו-PDFium מחזיק עמודים נכתבים מקוריים עד שמסמך היעד נשמר או נסגר
פורמט האחסון הוא מצב הפעלה פרטי ולא פורמט קובץ נייד, אסור לשתף את הזרם או לשנות אותו חיצונית, ואובייקטי המקור שעמודי XObject או צמתים מטמונים מפנים אליהם חייבים לשרוד את התוכנית העמודית
השתמשו ב-TPdfRandomAccessStore כאשר הפקודות צריכות להישאר בזיכרון עד סף נבחר ולהתחלק אחר כך אל אחסון זמני מסוג delete-on-close
צרו TPdfLayoutTable עם track רשת קבועים, שבריים או לפי-תוכן, הוסיפו שורות ותאים, ואז קראו ל-AddTable; המסמך שומר תמונת מצב בבעלותו, כך ששינויים של הקורא לאחר מכן לא יפסלו מטמון תוכניות קיים
שורות כותרת חייבות להיות רצופות בתחילת הטבלה, וחוזרות אחרי מעבר עמוד או עמודה כאשר RepeatHeaderRows הוא true; spans של שורת כותרת אינם יכולים להימשך אל שורות גוף
שורת גוף יכולה להתפצל רק כאשר AllowSplit הוא true והיא אינה שייכת לקבוצת row-spanning; כל התאים בחתיכת פיצול חולקים את אותו פס שורות, padding וגאומטריית גבולות
כתוביות (captions) נשארות עם בלוק הכותרת החוזר ועם תחילת המינימום של קבוצת הגוף הראשונה, ואילו קבוצות row-spanning טרנזיטיביות נעות כיחידה אטומית אחת
המתכנן פולט אלמנט Table אחד, Caption אופציונלי, בני TR, ותאי TH או TD בלי קשר למספר העמודים; פקודות הכותרת החוזרות עושות שימוש חוזר באינדקסים הסמנטיים המקוריים, ותאי TD מקבלים אוטומטית מזהי כותרת חופפים אלא אם סופקו מזהים תקינים מפורשים
גבולות הטבלה הם פקודות plcRectangle מסוג artifact המרונדרות דרך אובייקטי מסלול מקוריים של PDFium, בעוד שטקסט הכתובית והתאים נשארים תוכן מתויג
| Routine | Description |
|---|---|
ResolveLayoutText | מרחיב placeholders של מספרי עמודים תוך שימוש ברוחב הספרות השמורה |
PdfLayoutSemanticRoleName | מחזיר את שם המבנה של tagged-PDF עבור תפקיד סמנטי |
BuildTaggedLayoutPdf | מחיל תוכנית פריסה מושלמת ומבנה מתויג על בתי PDF מקור |
ResolvePdfLayoutGridTracks | פותר track רשת קבועים, שבריים ולפי-תוכן בתוך הרוחב הזמין |