Foxit PDF SDK

fs_layoutrecognition.h
Go to the documentation of this file.
1
15 #ifndef FS_LAYOUTRECOGNITION_H_
16 #define FS_LAYOUTRECOGNITION_H_
17
18 #include "common/fs_common.h"
19 #include "pdf/fs_pdfdoc.h"
20 #include "pdf/fs_pdfpage.h"
21
27 namespace foxit {
31 namespace addon {
35 namespace layoutrecognition {
39 class LRElement : public Base {
40 public:
47 typedef enum _ElementType {
49 e_ElementTypeDocument = 0x0000,
51 e_ElementTypeDocumentFragment = 0x0001,
53 e_ElementTypePart = 0x0002,
58 e_ElementTypeArt = 0x0101,
63 e_ElementTypeSect = 0x0102,
68 e_ElementTypeDiv = 0x0100,
74 e_ElementTypeBlockQuote = 0x0103,
79 e_ElementTypeCaption = 0x0104,
85 e_ElementTypeTOC = 0x0105,
90 e_ElementTypeTOCI = 0x0106,
96 e_ElementTypeIndex = 0x0107,
101 e_ElementTypeAside = 0x0108,
103 e_ElementTypeTitle = 0x0109,
106 e_ElementTypeFENote = 0x010A,
112 e_ElementTypeNonStruct = 0x010F,
117 e_ElementTypePrivate = 0x0110,
119 e_ElementTypeParagraph = 0x0200,
125 e_ElementTypeHeading = 0x0201,
127 e_ElementTypeHeading1 = 0x0202,
129 e_ElementTypeHeading2 = 0x0203,
131 e_ElementTypeHeading3 = 0x0204,
133 e_ElementTypeHeading4 = 0x0205,
135 e_ElementTypeHeading5 = 0x0206,
137 e_ElementTypeHeading6 = 0x0207,
139 e_ElementTypeHeadingN = 0x0208,
144 e_ElementTypeList = 0x0209,
146 e_ElementTypeListItem = 0x020A,
151 e_ElementTypeListLabel = 0x020B,
156 e_ElementTypeListBody = 0x020C,
161 e_ElementTypeTable = 0x020D,
166 e_ElementTypeTableRow = 0x020E,
172 e_ElementTypeTableHeaderCell = 0x020F,
177 e_ElementTypeTableDataCell = 0x0210,
182 e_ElementTypeTableHeaderGroup = 0x0211,
187 e_ElementTypeTableBodyGroup = 0x0212,
192 e_ElementTypeTableFootGroup = 0x0213,
197 e_ElementTypeSpan = 0x0300,
203 e_ElementTypeQuote = 0x0301,
209 e_ElementTypeNote = 0x0302,
214 e_ElementTypeReference = 0x0303,
219 e_ElementTypeBibEntry = 0x0304,
221 e_ElementTypeCode = 0x0305,
226 e_ElementTypeLink = 0x0306,
232 e_ElementTypeAnnot = 0x0307,
234 e_ElementTypeRuby = 0x0308,
239 e_ElementTypeRubyBase = 0x0309,
244 e_ElementTypeRubyAnnot = 0x030A,
249 e_ElementTypeRubyPunc = 0x030B,
254 e_ElementTypeWarichu = 0x030C,
260 e_ElementTypeWarichuText = 0x030D,
265 e_ElementTypeWarichuPunc = 0x030E,
270 e_ElementTypeEm = 0x030F,
275 e_ElementTypeStrong = 0x0310,
280 e_ElementTypeSub = 0x0311,
282 e_ElementTypeFigure = 0x0400,
284 e_ElementTypeFormula = 0x0401,
289 e_ElementTypeForm = 0x0402,
294 e_ElementTypeArtifact = 0x1000,
296 e_ElementTypeTextObject = 0x80000001,
298 e_ElementTypePathObject = 0x80000002,
300 e_ElementTypeImageObject = 0x80000003,
302 e_ElementTypeShadingObject = 0x80000004,
304 e_ElementTypeFormObject = 0x80000005,
306 e_ElementTypeContainerObject = 0x8000000C,
308 e_ElementTypeAnnotObject = 0x8000000E,
310 e_ElementTypePageObject = 0x8000000F,
312 e_ElementTypeTextContent = 0xC0000001,
314 e_ElementTypePathContent = 0xC0000002,
316 e_ElementTypeImageContent = 0xC0000003,
318 e_ElementTypeShadingContent = 0xC0000004,
320 e_ElementTypeComplexContent = 0xC000000D,
322 e_ElementTypeAnnotContent = 0xC000000E
323 } ElementType;
324
325
327 LRElement() {}
328
334 LRElement(const LRElement& other);
335
336 // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
337 explicit LRElement(FS_HANDLE handle);
338
340 ~LRElement();
341
349 LRElement& operator = (const LRElement& other);
350
358 bool operator == (const LRElement& other) const;
359
367 bool operator != (const LRElement& other) const;
368
376 bool IsEmpty() const;
377
384 ElementType GetElementType();
385
392 bool IsContentElement() const;
393
400 bool IsGraphicsObjectElement() const;
401
408 bool IsStructureElement() const;
409
416 String StringifyType() const;
417
428 static String StringifyElementType(ElementType type);
429 };
430
435 class LRStructureElement FS_FINAL : public LRElement {
436 public:
443 typedef enum _AttributeType {
445 e_AttributeTypeInvalid = 0x0,
452 e_AttributeTypeRole = 0x524f4c45,
466 e_AttributeTypePlacement = 0x504c4143,
472 e_AttributeTypeRotation = 0x524f5441,
485 e_AttributeTypeWritingMode = 0x574d4f44,
491 e_AttributeTypeDestination = 0x44455354,
499 e_AttributeTypeBBox = 0x42424f58,
505 e_AttributeTypeWidth = 0x57445448,
511 e_AttributeTypeHeight = 0x48474854,
518 e_AttributeTypeBackgroundColor = 0x424b4743,
525 e_AttributeTypeBorderColor = 0x42445243,
544 e_AttributeTypeBorderStyle = 0x42445253,
553 e_AttributeTypeBorderThickness = 0x42445254,
567 e_AttributeTypeAttached = 0x41545448,
584 e_AttributeTypeSubType = 0x53554254,
591 e_AttributeTypePadding = 0x50414447,
598 e_AttributeTypeColor = 0x434f4c52,
605 e_AttributeTypeSpaceBefore = 0x53504246,
612 e_AttributeTypeSpaceAfter = 0x53504146,
619 e_AttributeTypeStartIndent = 0x53494e44,
626 e_AttributeTypeEndIndent = 0x45494e44,
635 e_AttributeTypeTextIndent = 0x54494e44,
648 e_AttributeTypeTextAlign = 0x54414c4e,
661 e_AttributeTypeBlockAlign = 0x42414c4e,
673 e_AttributeTypeInlineAlign = 0x49414c4e,
693 e_AttributeTypeTBorderStyle = 0x54424453,
702 e_AttributeTypeTPadding = 0x54504144,
709 e_AttributeTypeBaselineShift = 0x42534846,
719 e_AttributeTypeLineHeight = 0x4c484754,
726 e_AttributeTypeTextDecorationColor = 0x5444434c,
733 e_AttributeTypeTextDecorationThickness = 0x54445448,
747 e_AttributeTypeTextDecorationType = 0x54445459,
761 e_AttributeTypeRubyAlign = 0x5242414c,
774 e_AttributeTypeRubyPosition = 0x52425053,
782 e_AttributeTypeGlyphOrientationVertical = 0x474f5654,
789 e_AttributeTypeColumnCount = 0x434c434e,
804 e_AttributeTypeColumnGap = 0x434c4750,
817 e_AttributeTypeColumnWidths = 0x434c5744,
838 e_AttributeTypeListNumbering = 0x4c4e554d,
851 e_AttributeTypeFieldRole = 0x46524f4c,
863 e_AttributeTypeFieldChecked = 0x43484b44,
871 e_AttributeTypeFieldDesc = 0x46445343,
878 e_AttributeTypeRowSpan = 0x5253504e,
885 e_AttributeTypeColSpan = 0x4353504e,
891 e_AttributeTypeTableHeaders = 0x54484453,
904 e_AttributeTypeTableHeaderScope = 0x54485343,
911 e_AttributeTypeTableSummary = 0x5442534d,
918 e_AttributeTypeShort = 0x53484f52,
931 e_AttributeTypeDirection = 0x44495245,
937 e_AttributeTypeABox = 0x414c4258,
943 e_AttributeTypeVersion = 0x5645534e
944 } AttributeType;
945
952 typedef enum _AttributeValueEnum {
954 e_AttributeValueEnumInvalid = 0x0,
961 e_AttributeValueEnumBlock = 0x424c434b,
975 e_AttributeValueEnumInline = 0x494e4c4e,
982 e_AttributeValueEnumWarichu = 0x57415249,
1000 e_AttributeValueEnumBefore = 0x42454652,
1014 e_AttributeValueEnumAfter = 0x41465445,
1035 e_AttributeValueEnumStart = 0x53545254,
1056 e_AttributeValueEnumEnd = 0x454e4400,
1063 e_AttributeValueEnumLrTb = 0x4c525442,
1070 e_AttributeValueEnumRlTb = 0x524c5442,
1077 e_AttributeValueEnumTbRl = 0x5442524c,
1084 e_AttributeValueEnumTbLr = 0x54424c52,
1093 e_AttributeValueEnumNone = 0x4e4f4e45,
1101 e_AttributeValueEnumHidden = 0x4849444e,
1108 e_AttributeValueEnumDotted = 0x444f5444,
1115 e_AttributeValueEnumDashed = 0x44534844,
1122 e_AttributeValueEnumSolid = 0x534f4c44,
1129 e_AttributeValueEnumDouble = 0x44424c45,
1136 e_AttributeValueEnumGroove = 0x41525459,
1143 e_AttributeValueEnumRidge = 0x52444745,
1151 e_AttributeValueEnumInset = 0x494e5354,
1159 e_AttributeValueEnumOutset = 0x4f545354,
1166 e_AttributeValueEnumNormal = 0x4e524d4c,
1183 e_AttributeValueEnumAuto = 0x4155544f,
1198 e_AttributeValueEnumCenter = 0x434e5452,
1216 e_AttributeValueEnumJustify = 0x4a535459,
1222 e_AttributeValueEnumMiddle = 0x4d49444c,
1228 e_AttributeValueEnumUnderline = 0x55444c4e,
1234 e_AttributeValueEnumOverline = 0x4f564c4e,
1240 e_AttributeValueEnumLineThrough = 0x4c4e5448,
1247 e_AttributeValueEnumDistribute = 0x44535442,
1253 e_AttributeValueEnumDisc = 0x44495343,
1259 e_AttributeValueEnumCircle = 0x4352434c,
1265 e_AttributeValueEnumSquare = 0x53515552,
1271 e_AttributeValueEnumDecimal = 0x44434d4c,
1277 e_AttributeValueEnumUpperRoman = 0x5550524d,
1283 e_AttributeValueEnumLowerRoman = 0x4c57524d,
1289 e_AttributeValueEnumUpperAlpha = 0x5550414c,
1295 e_AttributeValueEnumLowerAlpha = 0x4c57414c,
1301 e_AttributeValueEnumUnordered = 0x554e4f52,
1307 e_AttributeValueEnumOrdered = 0x4f524445,
1309 e_AttributeValueEnumFloat = 0x464c4f54,
1315 e_AttributeValueEnumRB = 0x52420000,
1321 e_AttributeValueEnumCB = 0x43420000,
1327 e_AttributeValueEnumPB = 0x50440000,
1333 e_AttributeValueEnumTV = 0x54560000,
1339 e_AttributeValueEnumOn = 0x4f4e0000,
1345 e_AttributeValueEnumOff = 0x4f464600,
1351 e_AttributeValueEnumNeutral = 0x4e555452,
1357 e_AttributeValueEnumRow = 0x524f5700,
1363 e_AttributeValueEnumColumn = 0x434c4d4e,
1369 e_AttributeValueEnumBoth = 0x424f5448,
1375 e_AttributeValueEnumLeft = 0x4c454654,
1381 e_AttributeValueEnumTop = 0x544f5000,
1387 e_AttributeValueEnumBottom = 0x42544f4d,
1393 e_AttributeValueEnumRight = 0x52474854,
1400 e_AttributeValueEnumPagination = 0x5041474e,
1407 e_AttributeValueEnumLayout = 0x4c41594f,
1414 e_AttributeValueEnumPage = 0x50414745,
1422 e_AttributeValueEnumBackground = 0x424b474e,
1424 e_AttributeValueEnumHeader = 0x48454144,
1426 e_AttributeValueEnumFooter = 0x464f4f54,
1428 e_AttributeValueEnumWatermark = 0x57544d4b,
1430 e_AttributeValueEnumPageNum = 0x504e554d,
1432 e_AttributeValueEnumBates = 0x42415445,
1438 e_AttributeValueEnumOther = 0x4f544845
1439 } AttributeValueEnum;
1440
1446 typedef enum _AttributeValueType {
1448 e_AttributeValueTypeEmpty = 0x0,
1450 e_AttributeValueTypeEnum = 0x1,
1452 e_AttributeValueTypeInt32 = 0x2,
1454 e_AttributeValueTypeFloat = 0x3,
1456 e_AttributeValueTypeARGB = 0x4,
1458 e_AttributeValueTypeWStr = 0x5,
1460 e_AttributeValueTypeElement = 0x6,
1462 e_AttributeValueTypeEnumArray = 0x101,
1464 e_AttributeValueTypeInt32Array = 0x102,
1466 e_AttributeValueTypeFloatArray = 0x103,
1468 e_AttributeValueTypeARGBArray = 0x104,
1470 e_AttributeValueTypeWStrArray = 0x105,
1472 e_AttributeValueTypeElementArray = 0x106
1473 } AttributeValueType;
1474
1475
1477 LRStructureElement() {}
1478
1484 LRStructureElement(const LRStructureElement& other);
1485
1491 LRStructureElement(const LRElement& element);
1492
1493 // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
1494 explicit LRStructureElement(FS_HANDLE handle);
1495
1497 ~LRStructureElement() {}
1498
1509 static String StringifyAttributeType(AttributeType type);
1510
1519 static AttributeType ParseAttributeType(String type_string);
1520
1531 static String StringifyEnumVariant(AttributeValueEnum type);
1532
1541 static bool IsArrayAttributeValueType(AttributeValueType type);
1542
1548 int GetSupportedAttributeCount();
1549
1558 AttributeType GetSupportedAttribute(int index);
1559
1573 int GetAttributeValueCount(AttributeType type);
1574
1584 AttributeValueType GetAttributeValueType(AttributeType type);
1585
1601 AttributeValueEnum GetAttributeValueEnum(AttributeType type, int index);
1602
1616 int32 GetAttributeValueInt32(AttributeType type, int index);
1617
1631 float GetAttributeValueFloat(AttributeType type, int index);
1632
1646 ARGB GetAttributeValueARGB(AttributeType type, int index);
1647
1661 WString GetAttributeValueString(AttributeType type, int index);
1662
1677 LRStructureElement GetAttributeValueElement(AttributeType type, int index);
1678
1685 LRStructureElement GetParentElement() const;
1686
1692 int GetChildCount();
1693
1702 LRElement GetChild(int index);
1703
1709 RectF GetBBox() const;
1710 };
1711
1715 class LRGraphicsObjectElement FS_FINAL : public LRElement {
1716 public:
1718 LRGraphicsObjectElement() {}
1719
1725 LRGraphicsObjectElement(const LRGraphicsObjectElement& other);
1726
1732 LRGraphicsObjectElement(const LRElement& element);
1733
1734 // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
1735 explicit LRGraphicsObjectElement(FS_HANDLE handle);
1736
1738 ~LRGraphicsObjectElement() {}
1739
1746 LRGraphicsObjectElement GetParentGraphicsObjectElement() const;
1747
1753 pdf::graphics::GraphicsObject* GetGraphicsObject() const;
1754
1763 pdf::objects::PDFDictionary* GetDict() const;
1764
1770 int GetGraphicsObjectIndex() const;
1771
1777 RectF GetBBox() const;
1778
1784 Matrix GetMatrix() const;
1785 };
1786
1790 class LRContentElement FS_FINAL : public LRElement {
1791 public:
1793 LRContentElement() {}
1794
1800 LRContentElement(const LRContentElement& other);
1801
1807 LRContentElement(const LRElement& element);
1808
1809 // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
1810 explicit LRContentElement(FS_HANDLE handle);
1811
1813 ~LRContentElement() {}
1814
1821 LRStructureElement GetParentElement() const;
1822
1829 LRGraphicsObjectElement GetGraphicsObjectElement() const;
1830
1838 common::Range GetGraphicsObjectRange();
1839
1845 RectF GetBBox() const;
1846
1852 Matrix GetMatrix() const;
1853 };
1854
1858 class LRContext FS_FINAL : public Base {
1859 public:
1868 LRContext(const pdf::PDFPage& page);
1869
1875 LRContext(const LRContext& other);
1876
1877 // User is strongly recommended NOT to use this method; otherwise unknown situation may occur.
1878 explicit LRContext(FS_HANDLE handle);
1879
1881 ~LRContext();
1882
1890 LRContext& operator=(const LRContext& other);
1891
1899 bool operator==(const LRContext& other) const;
1900
1908 bool operator!=(const LRContext& other) const;
1909
1917 bool IsEmpty() const;
1918
1935 common::Progressive StartParse(common::PauseCallback* pause = NULL);
1936
1945 LRStructureElement GetRootElement();
1946 };
1947 } // namespace layoutrecognition
1948 } // namespace addon
1949 } // namespace foxit
1950 #endif // FS_LAYOUTRECOGNITION_H_
1951
foxit::addon::layoutrecognition::LRElement::e_ElementTypeArtifact
Structure element type: Artifact, which includes other Pagination, Layout, Page and Background artifa...
Definition: fs_layoutrecognition.h:294
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumHidden
Enum value: Hidden, which is same as None except in terms of border conflict resolution for table ele...
Definition: fs_layoutrecognition.h:1101
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeStartIndent
Attribute type: StartIndent, which represents the distance from the start edge of the reference area ...
Definition: fs_layoutrecognition.h:619
foxit::addon::layoutrecognition::LRElement::e_ElementTypeAnnot
Structure element type: Annot, which means "Annotation" and represents an association between a porti...
Definition: fs_layoutrecognition.h:232
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumColumn
Enum value: Row, which means column of a table.
Definition: fs_layoutrecognition.h:1363
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumRow
Enum value: Row, which means row of a table.
Definition: fs_layoutrecognition.h:1357
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumCenter
Enum value: Center, which means the alignment for attributes TextAlign/InlineAlign/RubyAlign.
Definition: fs_layoutrecognition.h:1198
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumPage
Enum value: Page, which means page artifacts. Production aids extraneous to the document itself,...
Definition: fs_layoutrecognition.h:1414
foxit::addon::layoutrecognition::LRElement::ElementType
ElementType
Enumeration for standard structure types.
Definition: fs_layoutrecognition.h:47
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeColor
Attribute type: Color, which represents the color to be used for drawing text and the default value f...
Definition: fs_layoutrecognition.h:598
foxit::addon::layoutrecognition::LRContentElement::GetBBox
RectF GetBBox() const
Get bounding box.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumSolid
Enum value: Solid, which means the border is a single line segment.
Definition: fs_layoutrecognition.h:1122
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumLayout
Enum value: Layout, which means layout artifacts. Purely cosmetic typographical or design elements su...
Definition: fs_layoutrecognition.h:1407
foxit::addon::layoutrecognition::LRContext::StartParse
common::Progressive StartParse(common::PauseCallback *pause=0)
Start to parse layout recognition for related PDF page.
foxit::addon::layoutrecognition::LRElement::e_ElementTypePart
Structure element type: Part, which represents a large-scale division of a document.
Definition: fs_layoutrecognition.h:53
foxit::FS_HANDLE
void * FS_HANDLE
Handle type.
Definition: fs_basictypes.h:213
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeTableHeaders
(Currently, unsupported) Attribute type only for Table: Headers, which represents an array of element...
Definition: fs_layoutrecognition.h:891
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumFooter
Enum value: Footer.
Definition: fs_layoutrecognition.h:1426
foxit::addon::layoutrecognition::LRElement::e_ElementTypeCode
Structure element type: Code, which represents a fragment of computer program text.
Definition: fs_layoutrecognition.h:221
foxit::addon::layoutrecognition::LRElement::IsContentElement
bool IsContentElement() const
Check whether current object is content element or not.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumRidge
Enum value: Ridge, which means the border looks as though it were coming out of the canvas (the oppos...
Definition: fs_layoutrecognition.h:1143
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumDistribute
Enum value: Distribute, which means the content is to be expanded to fill the available width in the ...
Definition: fs_layoutrecognition.h:1247
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeTextDecorationThickness
Attribute type: TextDecorationThickness, which represents the thickness of each line drawn as part of...
Definition: fs_layoutrecognition.h:733
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumRight
Enum value: Right, which means right edge of the page.
Definition: fs_layoutrecognition.h:1393
foxit::addon::layoutrecognition::LRElement::e_ElementTypeHeading5
Structure element type: H5, which represents heading with level 5.
Definition: fs_layoutrecognition.h:135
foxit::addon::layoutrecognition::LRElement::e_ElementTypeShadingContent
Structure element type: ShadingContent, which means shading content element.
Definition: fs_layoutrecognition.h:318
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeColumnCount
Attribute type: ColumnCount, which represents the number of columns in the content of the grouping el...
Definition: fs_layoutrecognition.h:789
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumLrTb
Enum value: LtTb, which means inline progression from left to right; block progression from top to bo...
Definition: fs_layoutrecognition.h:1063
foxit::addon::layoutrecognition::LRElement::e_ElementTypeComplexContent
Structure element type: ComplexContent, which means complex content element.
Definition: fs_layoutrecognition.h:320
foxit::addon::layoutrecognition::LRStructureElement::StringifyEnumVariant
static String StringifyEnumVariant(AttributeValueEnum type)
Convert the enum value of a specified attribute value enum to a short and memorable string (text) rep...
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueTypeEnum
Value type: enum.
Definition: fs_layoutrecognition.h:1450
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumAuto
Enum value: Auto.
Definition: fs_layoutrecognition.h:1183
foxit::addon::layoutrecognition::LRElement::e_ElementTypeImageContent
Structure element type: ImageContent, which means image content element.
Definition: fs_layoutrecognition.h:316
foxit::addon::layoutrecognition::LRGraphicsObjectElement::GetMatrix
Matrix GetMatrix() const
Get matrix.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumOrdered
Enum value: Ordered (PDF 2.0), which means ordered lists with unspecified numbering.
Definition: fs_layoutrecognition.h:1307
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeSpaceBefore
Attribute type: SpaceBefore, which represents the amount of extra space preceding the before edge of ...
Definition: fs_layoutrecognition.h:605
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeFieldChecked
Attribute type only for PrintField: checked, which represents the state of a radio button or check bo...
Definition: fs_layoutrecognition.h:863
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumEnd
Enum value: End, which means the place for attribute Placement, or the alignment for attributes TextA...
Definition: fs_layoutrecognition.h:1056
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueTypeWStrArray
Value type: an array of wide strings.
Definition: fs_layoutrecognition.h:1470
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumLeft
Enum value: Left, which means left edge of the page.
Definition: fs_layoutrecognition.h:1375
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeTableSummary
Attribute type only for Table: Summary, which represents a summary of the table's purpose and structu...
Definition: fs_layoutrecognition.h:911
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeTBorderStyle
Attribute type: TBorderStyle, which represents the style of the border drawn on each edge of a table ...
Definition: fs_layoutrecognition.h:693
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeWidth
Attribute type: Width, which represents the width of the element's content rectangle.
Definition: fs_layoutrecognition.h:505
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueTypeARGBArray
Value type: an array of ARGB values.
Definition: fs_layoutrecognition.h:1468
foxit::addon::layoutrecognition::LRStructureElement::GetAttributeValueInt32
int32 GetAttributeValueInt32(AttributeType type, int index)
Get an integer value (specified by index) for specified attribute type.
foxit::addon::layoutrecognition::LRElement::e_ElementTypeHeading2
Structure element type: H2, which represents heading with level 2.
Definition: fs_layoutrecognition.h:129
foxit::common::Progressive
Definition: fs_common.h:373
foxit::addon::layoutrecognition::LRElement::e_ElementTypeFormula
Structure element type: Formula, which represents a mathematical formula.
Definition: fs_layoutrecognition.h:284
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeBBox
Attribute type: BBox, which represents the element's bounding box (the rectangle that completely encl...
Definition: fs_layoutrecognition.h:499
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeRole
Attribute type: role, which means strings of structure element meaning and standard type it maps to.
Definition: fs_layoutrecognition.h:452
foxit::addon::layoutrecognition::LRStructureElement::GetSupportedAttribute
AttributeType GetSupportedAttribute(int index)
Get a supported attribute type by index.
foxit::addon::layoutrecognition::LRElement::e_ElementTypeStrong
Structure element type: Strong (PDF 2.0), which represents content for the purpose of strong importan...
Definition: fs_layoutrecognition.h:275
foxit::addon::layoutrecognition::LRContext::IsEmpty
bool IsEmpty() const
Check whether current object is empty or not.
foxit::addon::layoutrecognition::LRElement::e_ElementTypeRuby
Structure element type: Ruby, which represents the wrapper around the entire ruby assembly.
Definition: fs_layoutrecognition.h:234
foxit::addon::layoutrecognition::LRElement::operator!=
bool operator!=(const LRElement &other) const
Not equal operator.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumPagination
Enum value: Pagination, which means pagination artifacts. Ancillary page features such as running hea...
Definition: fs_layoutrecognition.h:1400
foxit::addon::layoutrecognition::LRElement::e_ElementTypeList
Structure element type: L, which means "List" and represents a sequence of items of like meaning and ...
Definition: fs_layoutrecognition.h:144
foxit::addon::layoutrecognition::LRElement::e_ElementTypeAnnotContent
Structure element type: AnnotContent, which means annotation content element.
Definition: fs_layoutrecognition.h:322
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumJustify
Enum value: Justify, which means the alignment for attributes TextAlign/BlockAlign/RubyAlign.
Definition: fs_layoutrecognition.h:1216
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumLowerRoman
Enum value: LowerRoman, which means lowercase roman numerals (i, ii, iii, iv, ...).
Definition: fs_layoutrecognition.h:1283
foxit::addon::layoutrecognition::LRElement::e_ElementTypeTOC
Structure element type: TOC, which means "Table of contents" and represents a list made up of table o...
Definition: fs_layoutrecognition.h:85
foxit::addon::layoutrecognition::LRElement::e_ElementTypeSpan
Structure element type: Span, which represents a generic inline portion of text having no particular ...
Definition: fs_layoutrecognition.h:197
fs_common.h
Header file for common definitions and classes.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueTypeInt32
Value type: 32-bit signed integer.
Definition: fs_layoutrecognition.h:1452
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeBorderColor
Attribute type: BorderColor, which represents the color of the border drawn on the edges of a table c...
Definition: fs_layoutrecognition.h:525
foxit::addon::layoutrecognition::LRContentElement::GetMatrix
Matrix GetMatrix() const
Get matrix.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeDirection
(Reserved) Attribute type: Direction.
Definition: fs_layoutrecognition.h:931
foxit::addon::layoutrecognition::LRGraphicsObjectElement::GetGraphicsObject
pdf::graphics::GraphicsObject * GetGraphicsObject() const
Get related graphics object.
foxit::addon::layoutrecognition::LRElement::e_ElementTypeListBody
Structure element type: LBody, which means "List body" and reprsents the descriptive content of a lis...
Definition: fs_layoutrecognition.h:156
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumOn
Enum value: on, which means the state is on.
Definition: fs_layoutrecognition.h:1339
foxit::addon::layoutrecognition::LRGraphicsObjectElement::GetGraphicsObjectIndex
int GetGraphicsObjectIndex() const
Get index of related graphics object.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumDashed
Enum value: Dashed, which means the border is a series of short line segments.
Definition: fs_layoutrecognition.h:1115
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumCB
Enum value: cb, which means check box.
Definition: fs_layoutrecognition.h:1321
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeRubyAlign
Attribute type: RubyAlign, which represents the justification of the lines within a ruby assembly.
Definition: fs_layoutrecognition.h:761
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueTypeElement
Value type: element.
Definition: fs_layoutrecognition.h:1460
foxit::addon::layoutrecognition::LRContentElement::GetGraphicsObjectRange
common::Range GetGraphicsObjectRange()
Get the range of current content element in current graphics object.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeColSpan
Attribute type only for Table: ColSpan, which represents the number of columns in the enclosing table...
Definition: fs_layoutrecognition.h:885
foxit::addon::layoutrecognition::LRContext::GetRootElement
LRStructureElement GetRootElement()
Get the root element of structure tree.
foxit::addon::layoutrecognition::LRElement::e_ElementTypeBlockQuote
Structure element type: BlockQuote, which means "Block quotation" and represents a portion of text co...
Definition: fs_layoutrecognition.h:74
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeInlineAlign
Attribute type: InlineAlign, which represents the alignment, in the inline-progression direction,...
Definition: fs_layoutrecognition.h:673
foxit::addon::layoutrecognition::LRElement::e_ElementTypeSect
Structure element type: Sect, which means "Section" and represents a container for grouping related c...
Definition: fs_layoutrecognition.h:63
foxit::addon::layoutrecognition::LRElement::e_ElementTypeHeading4
Structure element type: H4, which represents heading with level 4.
Definition: fs_layoutrecognition.h:133
foxit::addon::layoutrecognition::LRElement::e_ElementTypeTextContent
Structure element type: TextContent, which means text content element.
Definition: fs_layoutrecognition.h:312
foxit::ARGB
uint32 ARGB
ARGB color type, 32 bits, ((b) | ((g) << 8) | ((r) << 16)) | ((a) << 24)
Definition: fs_basictypes.h:209
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumCircle
Enum value: Circle, which means open circular bullet.
Definition: fs_layoutrecognition.h:1259
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumAfter
Enum value: After, which means the alignment for attribute BlockAlign or the placement for attribute ...
Definition: fs_layoutrecognition.h:1014
foxit::addon::layoutrecognition::LRElement::e_ElementTypeDocument
Structure element type: Document, which represents a complete document.
Definition: fs_layoutrecognition.h:49
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumTbLr
Enum value: TbLr (PDF 2.0), which means inline progression from top to bottom; block progression from...
Definition: fs_layoutrecognition.h:1084
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumGroove
Enum value: Groove, which means the border looks as though it were carved into the canvas.
Definition: fs_layoutrecognition.h:1136
foxit::addon::layoutrecognition::LRElement::GetElementType
ElementType GetElementType()
Get element type.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumTbRl
Enum value: TbRl, which means inline progression from top to bottom; block progression from right to ...
Definition: fs_layoutrecognition.h:1077
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueTypeInt32Array
Value type: an array of integer values.
Definition: fs_layoutrecognition.h:1464
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumDecimal
Enum value: Decimal, which means decimal arabic numerals (1-9, 10-99, ...).
Definition: fs_layoutrecognition.h:1271
foxit::addon::layoutrecognition::LRElement::e_ElementTypeWarichu
Structure element type: Warichu, which represents the wrapper around the entire warichu assembly.
Definition: fs_layoutrecognition.h:254
foxit::addon::layoutrecognition::LRStructureElement::GetChild
LRElement GetChild(int index)
Get a child element by index.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumWarichu
Enum value: Warichu, which means the RT and associated RP elements are to be formatted as a warichu,...
Definition: fs_layoutrecognition.h:982
foxit::addon::layoutrecognition::LRContentElement::LRContentElement
LRContentElement()
Constructor.
Definition: fs_layoutrecognition.h:1793
foxit::addon::layoutrecognition::LRElement::e_ElementTypeListLabel
Structure element type: Lbl, which means "Label" and represents a name or number that distinguishes a...
Definition: fs_layoutrecognition.h:151
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeColumnGap
Attribute type: ColumnGap, which represents the desired space between adjacent columns,...
Definition: fs_layoutrecognition.h:804
foxit::addon::layoutrecognition::LRContext::operator!=
bool operator!=(const LRContext &other) const
Not equal operator.
foxit::addon::layoutrecognition::LRStructureElement::AttributeType
AttributeType
Enumeration for element general layout attribute types.
Definition: fs_layoutrecognition.h:443
foxit::addon::layoutrecognition::LRElement::IsGraphicsObjectElement
bool IsGraphicsObjectElement() const
Check whether current object is graphics object element or not.
foxit::addon::layoutrecognition::LRGraphicsObjectElement::GetDict
pdf::objects::PDFDictionary * GetDict() const
Get PDF dictionary of related graphics object.
foxit::addon::layoutrecognition::LRElement::e_ElementTypeAside
Structure element type: Aside (PDF 2.0), which represents content that is distinct from other content...
Definition: fs_layoutrecognition.h:101
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumBackground
Enum value: Background, which means background artifacts. Background artifacts typically serve as a b...
Definition: fs_layoutrecognition.h:1422
foxit::addon::layoutrecognition::LRStructureElement
Definition: fs_layoutrecognition.h:435
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeRubyPosition
Attribute type: RubyPosition, which represents the placement of the RT structure element relative to ...
Definition: fs_layoutrecognition.h:774
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumSquare
Enum value: Square, which means solid square bullet.
Definition: fs_layoutrecognition.h:1265
foxit::addon::layoutrecognition::LRElement::e_ElementTypeTableHeaderGroup
Structure element type: THead, which means "Table header row group" and represents a group of rows th...
Definition: fs_layoutrecognition.h:182
foxit::addon::layoutrecognition::LRElement::e_ElementTypePrivate
Structure element type: Private, which means "Private element" and represents a grouping element cont...
Definition: fs_layoutrecognition.h:117
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeFieldRole
Attribute type only for PrintField: Role, which represents the type of form field represented by this...
Definition: fs_layoutrecognition.h:851
foxit::addon::layoutrecognition::LRGraphicsObjectElement::GetParentGraphicsObjectElement
LRGraphicsObjectElement GetParentGraphicsObjectElement() const
Get the parent graphics object element.
foxit::addon::layoutrecognition::LRElement::IsStructureElement
bool IsStructureElement() const
Check whether current object is structure element or not.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeVersion
(Reserved) Attribute type: Version, which represents schema version of layout recognition engine.
Definition: fs_layoutrecognition.h:943
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumOther
Enum value: Other (PDF 2.0).
Definition: fs_layoutrecognition.h:1438
foxit::addon::layoutrecognition::LRElement::e_ElementTypeRubyBase
Structure element type: RB, which means "Ruby base text" and represents the full-size text to which t...
Definition: fs_layoutrecognition.h:239
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumInvalid
Invalid enum value.
Definition: fs_layoutrecognition.h:954
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueTypeEmpty
Empty value type.
Definition: fs_layoutrecognition.h:1448
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeBaselineShift
Attribute type: BaselineShift, which means the distance by which the element's baseline is shifted re...
Definition: fs_layoutrecognition.h:709
foxit::addon::layoutrecognition::LRStructureElement::~LRStructureElement
~LRStructureElement()
Destructor.
Definition: fs_layoutrecognition.h:1497
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeBlockAlign
Attribute type: BlockAlign, which represents the alignment, in the block-progression direction,...
Definition: fs_layoutrecognition.h:661
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumWatermark
Enum value: Watermark.
Definition: fs_layoutrecognition.h:1428
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumPageNum
Enum value: PageNum (PDF2.0).
Definition: fs_layoutrecognition.h:1430
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumRlTb
Enum value: RlTb, which means inline progression from right to left; block progression from top to bo...
Definition: fs_layoutrecognition.h:1070
CFX_ByteString
BYTE STRING CLASS.
Definition: fx_string.h:317
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueTypeFloat
Value type: float.
Definition: fs_layoutrecognition.h:1454
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumUpperAlpha
Enum value: UpperAlpha, which means uppercase letters (A, B, C, ...).
Definition: fs_layoutrecognition.h:1289
foxit::addon::layoutrecognition::LRStructureElement::GetParentElement
LRStructureElement GetParentElement() const
Get the parent element.
foxit::addon::layoutrecognition::LRElement::e_ElementTypeDiv
Structure element type: Div, which means "Division" and represents a generic block-level element or g...
Definition: fs_layoutrecognition.h:68
foxit::addon::layoutrecognition::LRElement::e_ElementTypeHeading
Structure element type: H, which means "Heading" and represents a label for a subdivision of a docume...
Definition: fs_layoutrecognition.h:125
foxit::addon::layoutrecognition::LRContentElement
Definition: fs_layoutrecognition.h:1790
foxit::addon::layoutrecognition::LRElement::e_ElementTypeHeading1
Structure element type: H1, which represents heading with level 1.
Definition: fs_layoutrecognition.h:127
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumBottom
Enum value: Bottom, which means bottom edge of the page.
Definition: fs_layoutrecognition.h:1387
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeSubType
Attribute type: Subtype, which means the subtype of annotation or artifact.
Definition: fs_layoutrecognition.h:584
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumBefore
Enum value: Before, which means the placement for attributes Placement/RubyPosition or alignment for ...
Definition: fs_layoutrecognition.h:1000
foxit::addon::layoutrecognition::LRElement::e_ElementTypeTableBodyGroup
Structure element type: TBody, which means "Table body row group" and represents a group of rows that...
Definition: fs_layoutrecognition.h:187
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueTypeARGB
Value type: ARGB color type, 32 bits, ((b) | ((g) << 8) | ((r) << 16)) | ((a) << 24).
Definition: fs_layoutrecognition.h:1456
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumUnderline
Enum value: Underline, which means a line below the text.
Definition: fs_layoutrecognition.h:1228
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeHeight
Attribute type: Height, which represents the height of the element's content rectangle.
Definition: fs_layoutrecognition.h:511
foxit::addon::layoutrecognition::LRElement::e_ElementTypeNonStruct
Structure element type: NonStruct, which means "Nonstructural element" and represents a grouping elem...
Definition: fs_layoutrecognition.h:112
foxit::addon::layoutrecognition::LRStructureElement::GetAttributeValueARGB
ARGB GetAttributeValueARGB(AttributeType type, int index)
Get an ARGB value (specified by index) for specified attribute type.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeEndIndent
Attribute type: EndIndent, which represents the distance from the end edge of the BLSE to that of the...
Definition: fs_layoutrecognition.h:626
foxit::addon::layoutrecognition::LRElement::e_ElementTypeWarichuPunc
Structure element type: WP, which means "Warichu punctuation" and represents the punctuation that sur...
Definition: fs_layoutrecognition.h:265
foxit::addon::layoutrecognition::LRElement::e_ElementTypeForm
Structure element type: Form, which represents a widget annotation representing an interactive form f...
Definition: fs_layoutrecognition.h:289
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeAttached
Attribute type: Attached, which specifies the edges of the page, if any, to which the artifact is log...
Definition: fs_layoutrecognition.h:567
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypePlacement
Attribute type: Placement, which means the positioning of the element with respect to the enclosing r...
Definition: fs_layoutrecognition.h:466
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeRowSpan
Attribute type only for Table: RowSpan, which represents the number of rows in the enclosing table th...
Definition: fs_layoutrecognition.h:878
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumTop
Enum value: Top, which means top edge of the page.
Definition: fs_layoutrecognition.h:1381
foxit::addon::layoutrecognition::LRElement::IsEmpty
bool IsEmpty() const
Check whether current object is empty or not.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeFieldDesc
Attribute type only for PrintField: Desc, which represents the alternate name of the field,...
Definition: fs_layoutrecognition.h:871
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeBorderThickness
Attribute type: BorderThickness, which represents the thickness of the border drawn on the edges of a...
Definition: fs_layoutrecognition.h:553
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeTextAlign
Attribute type: TextAlign, which represents the alignment of text and other content within lines of t...
Definition: fs_layoutrecognition.h:648
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeWritingMode
Attribute type: WritingMode, which means the directions of layout progression for packing of ILSEs (i...
Definition: fs_layoutrecognition.h:485
foxit::addon::layoutrecognition::LRStructureElement::LRStructureElement
LRStructureElement()
Constructor.
Definition: fs_layoutrecognition.h:1477
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeTextIndent
Attribute type: TextIndent, which represents the additional distance from the start edge of the BLSE,...
Definition: fs_layoutrecognition.h:635
foxit::addon::layoutrecognition::LRElement::e_ElementTypeHeading6
Structure element type: H6, which represents heading with level 6.
Definition: fs_layoutrecognition.h:137
foxit::pdf::graphics::GraphicsObject
Definition: fs_pdfgraphicsobject.h:241
foxit::addon::layoutrecognition::LRElement::StringifyType
String StringifyType() const
Convert type (enum value) of current element to a short and memorable string (text) representation.
foxit::addon::layoutrecognition::LRElement::operator=
LRElement & operator=(const LRElement &other)
Assign operator.
foxit::addon::layoutrecognition::LRStructureElement::GetAttributeValueFloat
float GetAttributeValueFloat(AttributeType type, int index)
Get a float value (specified by index) for specified attribute type.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumBates
Enum value: Bates (PDF2.0).
Definition: fs_layoutrecognition.h:1432
foxit::addon::layoutrecognition::LRElement::LRElement
LRElement()
Constructor.
Definition: fs_layoutrecognition.h:327
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumStart
Enum value: Start, which means the place for attribute Placement, or the alignment for attributes Tex...
Definition: fs_layoutrecognition.h:1035
foxit::addon::layoutrecognition::LRElement::e_ElementTypeImageObject
Structure element type: ImageObject, which means image graphics object element.
Definition: fs_layoutrecognition.h:300
fs_pdfpage.h
Header file for PDF page related definitions and classes.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumTV
Enum value: tv, which means text-value field.
Definition: fs_layoutrecognition.h:1333
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeColumnWidths
Attribute type: ColumnWidths, which represents the desired width of the columns, measured in the inli...
Definition: fs_layoutrecognition.h:817
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeSpaceAfter
Attribute type: SpaceAfter, which represents the amount of extra space following the after edge of th...
Definition: fs_layoutrecognition.h:612
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumRB
Enum value: rb, which means radio button.
Definition: fs_layoutrecognition.h:1315
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeInvalid
Attribute type: invalid.
Definition: fs_layoutrecognition.h:445
foxit::addon::layoutrecognition::LRStructureElement::GetChildCount
int GetChildCount()
Get the count of children elements.
foxit::addon::layoutrecognition::LRStructureElement::GetAttributeValueString
WString GetAttributeValueString(AttributeType type, int index)
Get a string value (specified by index) for specified attribute type.
foxit
Foxit namespace.
Definition: fs_taggedpdf.h:27
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeRotation
Attribute type: Rotation.
Definition: fs_layoutrecognition.h:472
foxit::addon::layoutrecognition::LRContentElement::GetGraphicsObjectElement
LRGraphicsObjectElement GetGraphicsObjectElement() const
Get the related graphics object element.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypePadding
Attribute type: Padding, which specifies an offset to account for the separation between the element'...
Definition: fs_layoutrecognition.h:591
foxit::addon::layoutrecognition::LRContext
Definition: fs_layoutrecognition.h:1858
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumNormal
Definition: fs_layoutrecognition.h:1166
foxit::addon::layoutrecognition::LRStructureElement::GetAttributeValueType
AttributeValueType GetAttributeValueType(AttributeType type)
Get attribute value type for a specified attribute type.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeTextDecorationType
Attribute type: TextDecorationType, which represents the text decoration, if any, to be applied to th...
Definition: fs_layoutrecognition.h:747
foxit::addon::layoutrecognition::LRElement::e_ElementTypeAnnotObject
Structure element type: AnnotObject, which means annotation object element.
Definition: fs_layoutrecognition.h:308
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumPB
Enum value: pb, which means push button.
Definition: fs_layoutrecognition.h:1327
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeABox
(Reserved) Attribute type: ABox.
Definition: fs_layoutrecognition.h:937
IFX_Pause
Definition: fx_basic.h:3758
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeTextDecorationColor
Attribute type: TextDecorationColor, which represents the color to be used for drawing text decoratio...
Definition: fs_layoutrecognition.h:726
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumDouble
Enum value: Double, which means the border is two solid lines.
Definition: fs_layoutrecognition.h:1129
foxit::pdf::objects::PDFDictionary
Definition: fs_pdfobject.h:850
foxit::addon::layoutrecognition::LRElement::e_ElementTypePathContent
Structure element type: PathContent, which means path content element.
Definition: fs_layoutrecognition.h:314
foxit::addon::layoutrecognition::LRElement::e_ElementTypeFormObject
Structure element type: FormObject, which means form XObject graphics object element.
Definition: fs_layoutrecognition.h:304
foxit::addon::layoutrecognition::LRGraphicsObjectElement
Definition: fs_layoutrecognition.h:1715
foxit::addon::layoutrecognition::LRContext::operator=
LRContext & operator=(const LRContext &other)
Assign operator.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumOverline
Enum value: Overline, which means a line above the text.
Definition: fs_layoutrecognition.h:1234
foxit::addon::layoutrecognition::LRElement::e_ElementTypeFENote
Structure element type: FENote (PDF 2.0), which is used to markup footnotes and endnotes.
Definition: fs_layoutrecognition.h:106
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumHeader
Enum value: Header.
Definition: fs_layoutrecognition.h:1424
fs_pdfdoc.h
Header file for PDF document related definitions and classes.
foxit::addon::layoutrecognition::LRElement::e_ElementTypeLink
Structure element type: Link, which represents an association between a portion of the ILSE's content...
Definition: fs_layoutrecognition.h:226
foxit::addon::layoutrecognition::LRElement::e_ElementTypeQuote
Structure element type: Quote, which means "Quotation" and represents an inline portion of text attri...
Definition: fs_layoutrecognition.h:203
foxit::addon::layoutrecognition::LRStructureElement::GetAttributeValueElement
LRStructureElement GetAttributeValueElement(AttributeType type, int index)
Get an structure element object (specified by index) for specified attribute type.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumDisc
Enum value: Disc, which means solid circular bullet.
Definition: fs_layoutrecognition.h:1253
foxit::addon::layoutrecognition::LRElement::e_ElementTypeTableFootGroup
Structure element type: TFoot, which means "Table footer row group" and represents a group of rows th...
Definition: fs_layoutrecognition.h:192
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumBlock
Enum value: Block, which means to be stacked in the block-progression direction within an enclosing r...
Definition: fs_layoutrecognition.h:961
foxit::addon::layoutrecognition::LRElement::e_ElementTypeBibEntry
Structure element type: BibEntry, which means "Bibliography entry" and represents a reference identif...
Definition: fs_layoutrecognition.h:219
foxit::addon::layoutrecognition::LRElement::e_ElementTypeWarichuText
Structure element type: WT, which means "Warichu text" and represents the smaller-size text of a wari...
Definition: fs_layoutrecognition.h:260
foxit::addon::layoutrecognition::LRElement::e_ElementTypeHeading3
Structure element type: H3, which represents heading with level 3.
Definition: fs_layoutrecognition.h:131
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumOff
Enum value: off, which means the state is off.
Definition: fs_layoutrecognition.h:1345
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumNone
Enum value: None, which means no such attribute.
Definition: fs_layoutrecognition.h:1093
foxit::addon::layoutrecognition::LRElement::e_ElementTypePageObject
Structure element type: PageObject, which means page object element.
Definition: fs_layoutrecognition.h:310
foxit::addon::layoutrecognition::LRContext::~LRContext
~LRContext()
Destructor.
foxit::addon::layoutrecognition::LRStructureElement::AttributeValueType
AttributeValueType
Enumeration for value type of element general layout attribute.
Definition: fs_layoutrecognition.h:1446
foxit::addon::layoutrecognition::LRElement::e_ElementTypeIndex
Structure element type: Index, which represents a sequence of entries containing identifying text acc...
Definition: fs_layoutrecognition.h:96
NULL
#define NULL
The null-pointer value.
Definition: fx_system.h:792
CFX_FloatRect
Definition: fx_coordinates.h:771
foxit::addon::layoutrecognition::LRElement::e_ElementTypeListItem
Structure element type: LI, which means "List item" and represents an individual member of a list.
Definition: fs_layoutrecognition.h:146
foxit::addon::layoutrecognition::LRElement::e_ElementTypePathObject
Structure element type: PathObject, which means path graphics object element.
Definition: fs_layoutrecognition.h:298
foxit::addon::layoutrecognition::LRContext::LRContext
LRContext(const pdf::PDFPage &page)
Constructor, from a PDF Page object.
foxit::addon::layoutrecognition::LRStructureElement::GetSupportedAttributeCount
int GetSupportedAttributeCount()
Get supported attribute count.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumDotted
Enum value: Dotten, which means the border is a series of dots.
Definition: fs_layoutrecognition.h:1108
foxit::addon::layoutrecognition::LRContentElement::GetParentElement
LRStructureElement GetParentElement() const
Get the parent element.
foxit::addon::layoutrecognition::LRStructureElement::GetAttributeValueEnum
AttributeValueEnum GetAttributeValueEnum(AttributeType type, int index)
Get an enum value (specified by index) for specified attribute type.
foxit::pdf::PDFPage
Definition: fs_pdfpage.h:412
foxit::addon::layoutrecognition::LRStructureElement::GetBBox
RectF GetBBox() const
Get bounding box.
foxit::addon::layoutrecognition::LRElement::e_ElementTypeRubyAnnot
Structure element type: RT, which means "Ruby annotation text" and represents the smaller-size text t...
Definition: fs_layoutrecognition.h:244
foxit::addon::layoutrecognition::LRElement::e_ElementTypeArt
Structure element type: Art, which means "Article" and represents a relatively self-contained body of...
Definition: fs_layoutrecognition.h:58
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumOutset
Enum value: Outset, which means the border makes the entire box look as though it were coming out of ...
Definition: fs_layoutrecognition.h:1159
foxit::addon::layoutrecognition::LRElement::e_ElementTypeTOCI
Structure element type: TOCI, which means "Table of contents item" and represents an individual membe...
Definition: fs_layoutrecognition.h:90
foxit::int32
FX_INT32 int32
32-bit signed integer.
Definition: fs_basictypes.h:193
foxit::addon::layoutrecognition::LRElement::e_ElementTypeDocumentFragment
Structure element type: DocumentFragment (PDF 2.0), which represents a part of an original complete d...
Definition: fs_layoutrecognition.h:51
foxit::addon::layoutrecognition::LRElement::e_ElementTypeTextObject
Structure element type: TextObject, which means text graphics object element.
Definition: fs_layoutrecognition.h:296
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeShort
Attribute type: Short (PDF 2.0), which contains a short form of the content of a TH structure element...
Definition: fs_layoutrecognition.h:918
foxit::addon::layoutrecognition::LRElement::e_ElementTypeTableHeaderCell
Structure element type: TH, which means "Table header cell" and represents a table cell containing he...
Definition: fs_layoutrecognition.h:172
foxit::addon::layoutrecognition::LRElement::e_ElementTypeReference
Structure element type: Reference, which represents a citation to content elsewhere in the document.
Definition: fs_layoutrecognition.h:214
foxit::addon::layoutrecognition::LRGraphicsObjectElement::~LRGraphicsObjectElement
~LRGraphicsObjectElement()
Destructor.
Definition: fs_layoutrecognition.h:1738
foxit::addon::layoutrecognition::LRElement::e_ElementTypeEm
Structure element type: Em (PDF 2.0), which means "Emphasis" and represents content for the purpose o...
Definition: fs_layoutrecognition.h:270
foxit::addon::layoutrecognition::LRElement::operator==
bool operator==(const LRElement &other) const
Equal operator.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueTypeWStr
Value type: wide string.
Definition: fs_layoutrecognition.h:1458
foxit::addon::layoutrecognition::LRElement::e_ElementTypeFigure
Structure element type: Figure, which represents an item of graphical content.
Definition: fs_layoutrecognition.h:282
foxit::addon::layoutrecognition::LRElement::e_ElementTypeSub
Structure element type: Sub (PDF 2.0), which means "Sub-division of a block level element" and repres...
Definition: fs_layoutrecognition.h:280
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeBorderStyle
Attribute type: BorderStyle, which represents the style of an element's border.
Definition: fs_layoutrecognition.h:544
foxit::addon::layoutrecognition::LRElement
Definition: fs_layoutrecognition.h:39
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumLineThrough
Enum value: LineThrough, which means a line through the middle of the text.
Definition: fs_layoutrecognition.h:1240
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumInset
Enum value: Inset, which means the border makes the entire box look as though it were embedded in the...
Definition: fs_layoutrecognition.h:1151
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeListNumbering
Attribute type only for List: ListNumbering, which represents the numbering system to be used to gene...
Definition: fs_layoutrecognition.h:838
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeLineHeight
Attribute type: LineHeight, which means the element's preferred height, in the block-progression dire...
Definition: fs_layoutrecognition.h:719
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumInline
Enum value: Inline, which means the placement for attributes Placement/RubyPosition.
Definition: fs_layoutrecognition.h:975
CFX_Matrix
Definition: fx_coordinates.h:1076
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeTableHeaderScope
Attribute type only for Table: Scope, which indicates whether the header cell applies to the rest of ...
Definition: fs_layoutrecognition.h:904
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeDestination
Attribute type: Destination (PDF 2.0), which provides a means to access content.
Definition: fs_layoutrecognition.h:491
foxit::addon::layoutrecognition::LRElement::e_ElementTypeCaption
Structure element type: Caption, which represents a brief portion of text describing a table or figur...
Definition: fs_layoutrecognition.h:79
foxit::addon::layoutrecognition::LRElement::e_ElementTypeContainerObject
Structure element type: ContainerObject, which means container object element.
Definition: fs_layoutrecognition.h:306
foxit::addon::layoutrecognition::LRElement::StringifyElementType
static String StringifyElementType(ElementType type)
Convert enum value of a specified element type to a short and memorable string (text) representation.
foxit::addon::layoutrecognition::LRStructureElement::IsArrayAttributeValueType
static bool IsArrayAttributeValueType(AttributeValueType type)
Check whether input attribute value type represents an array.
foxit::addon::layoutrecognition::LRElement::~LRElement
~LRElement()
Destructor.
CFX_WideString
WIDE STRING CLASS.
Definition: fx_string.h:1461
foxit::addon::layoutrecognition::LRElement::e_ElementTypeTitle
Structure element type: Title (PDF 2.0), which represents content that is usually referred to as the ...
Definition: fs_layoutrecognition.h:103
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeTPadding
Attribute type: TPadding, which specifies an offset to account for the separation between the table c...
Definition: fs_layoutrecognition.h:702
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueTypeFloatArray
Value type: an array of float values.
Definition: fs_layoutrecognition.h:1466
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueTypeEnumArray
Value type: an array of enum values.
Definition: fs_layoutrecognition.h:1462
foxit::common::Range
Definition: fs_common.h:1368
foxit::addon::layoutrecognition::LRStructureElement::GetAttributeValueCount
int GetAttributeValueCount(AttributeType type)
Get value count of a specified attribute type.
foxit::addon::layoutrecognition::LRElement::e_ElementTypeTableDataCell
Structure element type: TD, which means "Table data cell" and represents a table cell containing data...
Definition: fs_layoutrecognition.h:177
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumLowerAlpha
Enum value: LowerAlpha, which means lowercase letters (a, b, c, ...).
Definition: fs_layoutrecognition.h:1295
foxit::addon::layoutrecognition::LRStructureElement::ParseAttributeType
static AttributeType ParseAttributeType(String type_string)
Parse a string representation for attribute type and retrieve the enum value for this attribute type.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumFloat
Enum value: float.
Definition: fs_layoutrecognition.h:1309
foxit::addon::layoutrecognition::LRElement::e_ElementTypeRubyPunc
Structure element type: RP, which means "Ruby punctuation" and represents punctuation surrounding the...
Definition: fs_layoutrecognition.h:249
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeGlyphOrientationVertical
Attribute type: GlyphOrientationVertical, which specifies the orientation of glyphs when the inline-p...
Definition: fs_layoutrecognition.h:782
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumBoth
Enum value: Row, which means both row and column of a table.
Definition: fs_layoutrecognition.h:1369
foxit::addon::layoutrecognition::LRElement::e_ElementTypeParagraph
Structure element type: P, which means "Paragraph" and represents a low-level division of text.
Definition: fs_layoutrecognition.h:119
foxit::addon::layoutrecognition::LRGraphicsObjectElement::GetBBox
RectF GetBBox() const
Get bounding box.
foxit::addon::layoutrecognition::LRElement::e_ElementTypeTableRow
Structure element type: TR, which means "Table row" and represents a row of headings or data in a tab...
Definition: fs_layoutrecognition.h:166
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumUnordered
Enum value: Unordered (PDF 2.0), which means unordered list with unspecified bullets.
Definition: fs_layoutrecognition.h:1301
foxit::addon::layoutrecognition::LRStructureElement::AttributeValueEnum
AttributeValueEnum
Enumeration for element general layout attribute enum values.
Definition: fs_layoutrecognition.h:952
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumNeutral
Enum value: neutral, which means the state is neutral.
Definition: fs_layoutrecognition.h:1351
foxit::addon::layoutrecognition::LRElement::e_ElementTypeShadingObject
Structure element type: ShadingObject, which means shading graphics object element.
Definition: fs_layoutrecognition.h:302
foxit::addon::layoutrecognition::LRElement::e_ElementTypeTable
Structure element type: Table, which represents a two-dimensional layout of rectangular data cells,...
Definition: fs_layoutrecognition.h:161
foxit::Base
Definition: fs_basictypes.h:451
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumUpperRoman
Enum value: UpperRoman, which means uppercase roman numerals (I, II, III, IV, ...).
Definition: fs_layoutrecognition.h:1277
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueEnumMiddle
Enum value: Middle, which means children are centered within the table cell.
Definition: fs_layoutrecognition.h:1222
foxit::addon::layoutrecognition::LRStructureElement::StringifyAttributeType
static String StringifyAttributeType(AttributeType type)
Convert the enum value of a specified attribute type to a short and memorable string (text) represent...
foxit::addon::layoutrecognition::LRContentElement::~LRContentElement
~LRContentElement()
Destructor.
Definition: fs_layoutrecognition.h:1813
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeTypeBackgroundColor
Attribute type: BackgroundColor, which represents the color to be used to fill the background of a ta...
Definition: fs_layoutrecognition.h:518
foxit::addon::layoutrecognition::LRElement::e_ElementTypeNote
Structure element type: Note, which represents an item of explanatory text, such as a footnote or an ...
Definition: fs_layoutrecognition.h:209
foxit::addon::layoutrecognition::LRGraphicsObjectElement::LRGraphicsObjectElement
LRGraphicsObjectElement()
Constructor.
Definition: fs_layoutrecognition.h:1718
foxit::addon::layoutrecognition::LRElement::e_ElementTypeHeadingN
Structure element type: Hn (PDF 2.0), which represents heading with level 7 or more.
Definition: fs_layoutrecognition.h:139
foxit::addon::layoutrecognition::LRContext::operator==
bool operator==(const LRContext &other) const
Equal operator.
foxit::addon::layoutrecognition::LRStructureElement::e_AttributeValueTypeElementArray
Value type: an array of elements.
Definition: fs_layoutrecognition.h:1472