OLD | NEW |
1 #ifndef __DEFINED__SkPdfBlockLevelStructureElementsDictionary | 1 #ifndef __DEFINED__SkPdfBlockLevelStructureElementsDictionary |
2 #define __DEFINED__SkPdfBlockLevelStructureElementsDictionary | 2 #define __DEFINED__SkPdfBlockLevelStructureElementsDictionary |
3 | 3 |
4 #include "SkPdfEnums_autogen.h" | 4 #include "SkPdfEnums_autogen.h" |
5 #include "SkPdfArray_autogen.h" | 5 #include "SkPdfArray_autogen.h" |
6 #include "SkPdfDictionary_autogen.h" | 6 #include "SkPdfDictionary_autogen.h" |
7 | 7 |
| 8 // Additional standard layout attributes specific to block-level structure eleme
nts |
8 class SkPdfBlockLevelStructureElementsDictionary : public SkPdfDictionary { | 9 class SkPdfBlockLevelStructureElementsDictionary : public SkPdfDictionary { |
9 public: | 10 public: |
10 virtual SkPdfObjectType getType() const { return kBlockLevelStructureElementsD
ictionary_SkPdfObjectType;} | 11 virtual SkPdfObjectType getType() const { return kBlockLevelStructureElementsD
ictionary_SkPdfObjectType;} |
11 virtual SkPdfObjectType getTypeEnd() const { return (SkPdfObjectType)(kBlockLe
velStructureElementsDictionary_SkPdfObjectType + 1);} | 12 virtual SkPdfObjectType getTypeEnd() const { return (SkPdfObjectType)(kBlockLe
velStructureElementsDictionary_SkPdfObjectType + 1);} |
12 public: | 13 public: |
13 virtual SkPdfBlockLevelStructureElementsDictionary* asBlockLevelStructureEleme
ntsDictionary() {return this;} | 14 virtual SkPdfBlockLevelStructureElementsDictionary* asBlockLevelStructureEleme
ntsDictionary() {return this;} |
14 virtual const SkPdfBlockLevelStructureElementsDictionary* asBlockLevelStructur
eElementsDictionary() const {return this;} | 15 virtual const SkPdfBlockLevelStructureElementsDictionary* asBlockLevelStructur
eElementsDictionary() const {return this;} |
15 | 16 |
16 private: | 17 private: |
17 virtual SkPdfALinkAnnotationDictionary* asALinkAnnotationDictionary() {return
NULL;} | 18 virtual SkPdfALinkAnnotationDictionary* asALinkAnnotationDictionary() {return
NULL;} |
(...skipping 496 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
514 | 515 |
515 public: | 516 public: |
516 private: | 517 private: |
517 public: | 518 public: |
518 SkPdfBlockLevelStructureElementsDictionary(const PdfMemDocument* podofoDoc = N
ULL, const PdfObject* podofoObj = NULL) : SkPdfDictionary(podofoDoc, podofoObj)
{} | 519 SkPdfBlockLevelStructureElementsDictionary(const PdfMemDocument* podofoDoc = N
ULL, const PdfObject* podofoObj = NULL) : SkPdfDictionary(podofoDoc, podofoObj)
{} |
519 | 520 |
520 virtual bool valid() const {return true;} | 521 virtual bool valid() const {return true;} |
521 | 522 |
522 SkPdfBlockLevelStructureElementsDictionary& operator=(const SkPdfBlockLevelStr
uctureElementsDictionary& from) {this->fPodofoDoc = from.fPodofoDoc; this->fPodo
foObj = from.fPodofoObj; return *this;} | 523 SkPdfBlockLevelStructureElementsDictionary& operator=(const SkPdfBlockLevelStr
uctureElementsDictionary& from) {this->fPodofoDoc = from.fPodofoDoc; this->fPodo
foObj = from.fPodofoObj; return *this;} |
523 | 524 |
| 525 /** (Optional) The amount of extra space preceding the before edge of the BLSE, |
| 526 * measured in default user space units in the block-progression direction. Thi
s |
| 527 * value is added to any adjustments induced by the LineHeight attributes of |
| 528 * ILSEs within the first line of the BLSE (see "Layout Attributes for ILSEs" o
n |
| 529 * page 646). If the preceding BLSE has a SpaceAfter attribute, the greater of
the |
| 530 * two attribute values is used. Default value: 0. |
| 531 * Note: This attribute is disregarded for the first BLSE placed in a given ref
erence |
| 532 * area. |
| 533 **/ |
| 534 bool has_SpaceBefore() const { |
| 535 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Space
Before", "", NULL)); |
| 536 } |
| 537 |
524 double SpaceBefore() const { | 538 double SpaceBefore() const { |
525 double ret; | 539 double ret; |
526 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "SpaceBefo
re", "", &ret)) return ret; | 540 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "SpaceBefo
re", "", &ret)) return ret; |
527 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 541 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
528 return 0; | 542 return 0; |
529 } | 543 } |
530 | 544 |
| 545 /** (Optional) The amount of extra space following the after edge of the BLSE, |
| 546 * measured in default user space units in the block-progression direction. Thi
s |
| 547 * value is added to any adjustments induced by the LineHeight attributes of |
| 548 * ILSEs within the last line of the BLSE (see "Layout Attributes for ILSEs" on |
| 549 * page 646). If the following BLSE has a SpaceBefore attribute, the greater of |
| 550 * the two attribute values is used. Default value: 0. |
| 551 * Note: This attribute is disregarded for the last BLSE placed in a given refe
rence |
| 552 * area. |
| 553 **/ |
| 554 bool has_SpaceAfter() const { |
| 555 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Space
After", "", NULL)); |
| 556 } |
| 557 |
531 double SpaceAfter() const { | 558 double SpaceAfter() const { |
532 double ret; | 559 double ret; |
533 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "SpaceAfte
r", "", &ret)) return ret; | 560 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "SpaceAfte
r", "", &ret)) return ret; |
534 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 561 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
535 return 0; | 562 return 0; |
536 } | 563 } |
537 | 564 |
| 565 /** (Optional) The distance from the start edge of the reference area to that of
the |
| 566 * BLSE, measured in default user space units in the inline-progression direc- |
| 567 * tion. This attribute applies only to structure elements with a Placement |
| 568 * attribute of Block or Start (see "General Layout Attributes" on page 640); i
t is |
| 569 * disregarded for those with other Placement values. Default value: 0. |
| 570 * Note: A negative value for this attribute places the start edge of the BLSE
out- |
| 571 * side that of the reference area. The results are implementation-dependent an
d |
| 572 * may not be supported by all Tagged PDF consumer applications or export |
| 573 * formats. |
| 574 * Note: If a structure element with a StartIndent attribute is placed adjacent
to a |
| 575 * floating element with a Placement attribute of Start, the actual value used
for |
| 576 * the element's starting indent will be its own StartIndent attribute or the i
nline |
| 577 * extent of the adjacent floating element, whichever is greater. This value ma
y |
| 578 * then be further adjusted by the element's TextIndent attribute, if any. |
| 579 **/ |
| 580 bool has_StartIndent() const { |
| 581 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Start
Indent", "", NULL)); |
| 582 } |
| 583 |
538 double StartIndent() const { | 584 double StartIndent() const { |
539 double ret; | 585 double ret; |
540 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "StartInde
nt", "", &ret)) return ret; | 586 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "StartInde
nt", "", &ret)) return ret; |
541 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 587 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
542 return 0; | 588 return 0; |
543 } | 589 } |
544 | 590 |
| 591 /** (Optional) The distance from the end edge of the BLSE to that of the ref- |
| 592 * erence area, measured in default user space units in the inline-progression |
| 593 * direction. This attribute applies only to structure elements with a Placemen
t |
| 594 * attribute of Block or End (see "General Layout Attributes" on page 640); it
is |
| 595 * disregarded for those with other Placement values. Default value: 0. |
| 596 * Note: A negative value for this attribute places the end edge of the BLSE ou
tside |
| 597 * that of the reference area. The results are implementation-dependent and may |
| 598 * not be supported by all Tagged PDF consumer applications or export formats. |
| 599 * Note: If a structure element with an EndIndent attribute is placed adjacent
to a |
| 600 * floating element with a Placement attribute of End, the actual value used fo
r the |
| 601 * element's ending indent will be its own EndIndent attribute or the inline ex
tent |
| 602 * of the adjacent floating element, whichever is greater. |
| 603 **/ |
| 604 bool has_EndIndent() const { |
| 605 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "EndIn
dent", "", NULL)); |
| 606 } |
| 607 |
545 double EndIndent() const { | 608 double EndIndent() const { |
546 double ret; | 609 double ret; |
547 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "EndIndent
", "", &ret)) return ret; | 610 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "EndIndent
", "", &ret)) return ret; |
548 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 611 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
549 return 0; | 612 return 0; |
550 } | 613 } |
551 | 614 |
| 615 /** (Optional; applies only to some BLSEs, as described below) The additional |
| 616 * distance, measured in default user space units in the inline-progression |
| 617 * direction, from the start edge of the BLSE, as specified by StartIndent |
| 618 * (above), to that of the first line of text. A negative value indicates a han
ging |
| 619 * indent. Default value: 0. |
| 620 * This attribute applies only to paragraphlike BLSEs and those of structure |
| 621 * types Lbl (Label), LBody (List body), TH (Table header), and TD (Table data)
, |
| 622 * provided that they contain content other than nested BLSEs. |
| 623 **/ |
| 624 bool has_TextIndent() const { |
| 625 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "TextI
ndent", "", NULL)); |
| 626 } |
| 627 |
552 double TextIndent() const { | 628 double TextIndent() const { |
553 double ret; | 629 double ret; |
554 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "TextInden
t", "", &ret)) return ret; | 630 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "TextInden
t", "", &ret)) return ret; |
555 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 631 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
556 return 0; | 632 return 0; |
557 } | 633 } |
558 | 634 |
| 635 /** (Optional; applies only to BLSEs containing text) The alignment, in the inli
ne- |
| 636 * progression direction, of text and other content within lines of the BLSE: |
| 637 * Start Aligned with the start edge. |
| 638 * Center Centered between the start and end edges. |
| 639 * End Aligned with the end edge. |
| 640 * Justify Aligned with both the start and end edges, with internal |
| 641 * spacing within each line expanded, if necessary, to achieve |
| 642 * such alignment. The last (or only) line is aligned with the |
| 643 * start edge only, as for Start (above). |
| 644 * Default value: Start. |
| 645 **/ |
| 646 bool has_TextAlign() const { |
| 647 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "TextA
lign", "", NULL)); |
| 648 } |
| 649 |
559 std::string TextAlign() const { | 650 std::string TextAlign() const { |
560 std::string ret; | 651 std::string ret; |
561 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "TextAlign",
"", &ret)) return ret; | 652 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "TextAlign",
"", &ret)) return ret; |
562 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 653 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
563 return ""; | 654 return ""; |
564 } | 655 } |
565 | 656 |
| 657 /** (Illustrations and tables only; required if the element appears in its entir
ety on a |
| 658 * single page) An array of four numbers in default user space units giving the |
| 659 * coordinates of the left, bottom, right, and top edges, respectively, of the
ele- |
| 660 * ment's bounding box (the rectangle that completely encloses its visible con- |
| 661 * tent). This attribute applies only to elements of structure type Figure, |
| 662 * Formula, Form, or Table. |
| 663 **/ |
| 664 bool has_BBox() const { |
| 665 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "BBox"
, "", NULL)); |
| 666 } |
| 667 |
566 SkRect BBox() const { | 668 SkRect BBox() const { |
567 SkRect ret; | 669 SkRect ret; |
568 if (SkRectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "BBox", ""
, &ret)) return ret; | 670 if (SkRectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "BBox", ""
, &ret)) return ret; |
569 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 671 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
570 return SkRect(); | 672 return SkRect(); |
571 } | 673 } |
572 | 674 |
| 675 /** (Optional; illustrations, tables, table headers, and table cells only; stron
gly |
| 676 * recommended for table cells) The desired width of the element's content |
| 677 * rectangle (see "Content and Allocation Rectangles" on page 648), measured |
| 678 * in default user space units in the inline-progression direction. This attrib
ute |
| 679 * applies only to elements of structure type Figure, Formula, Form, Table, TH |
| 680 * (Table header), or TD (Table data). |
| 681 * The name Auto in place of a numeric value indicates that no specific width |
| 682 * constraint is to be imposed; the element's width is determined by the intrin
- |
| 683 * sic width of its content. Default value: Auto. |
| 684 **/ |
| 685 bool has_Width() const { |
| 686 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Width
", "", NULL)); |
| 687 } |
| 688 |
573 bool isWidthANumber() const { | 689 bool isWidthANumber() const { |
574 SkPdfObject* ret = NULL; | 690 SkPdfObject* ret = NULL; |
575 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Width",
"", &ret)) return false; | 691 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Width",
"", &ret)) return false; |
576 return ret->podofo()->GetDataType() == ePdfDataType_Real || ret->podofo()->G
etDataType() == ePdfDataType_Number; | 692 return ret->podofo()->GetDataType() == ePdfDataType_Real || ret->podofo()->G
etDataType() == ePdfDataType_Number; |
577 } | 693 } |
578 | 694 |
579 double getWidthAsNumber() const { | 695 double getWidthAsNumber() const { |
580 double ret = 0; | 696 double ret = 0; |
581 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Width", "
", &ret)) return ret; | 697 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Width", "
", &ret)) return ret; |
582 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 698 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
583 return 0; | 699 return 0; |
584 } | 700 } |
585 | 701 |
586 bool isWidthAName() const { | 702 bool isWidthAName() const { |
587 SkPdfObject* ret = NULL; | 703 SkPdfObject* ret = NULL; |
588 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Width",
"", &ret)) return false; | 704 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Width",
"", &ret)) return false; |
589 return ret->podofo()->GetDataType() == ePdfDataType_Name; | 705 return ret->podofo()->GetDataType() == ePdfDataType_Name; |
590 } | 706 } |
591 | 707 |
592 std::string getWidthAsName() const { | 708 std::string getWidthAsName() const { |
593 std::string ret = ""; | 709 std::string ret = ""; |
594 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Width", "",
&ret)) return ret; | 710 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Width", "",
&ret)) return ret; |
595 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 711 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
596 return ""; | 712 return ""; |
597 } | 713 } |
598 | 714 |
| 715 /** (Optional; illustrations, tables, table headers, and table cells only) The d
esired |
| 716 * height of the element's content rectangle (see "Content and Allocation |
| 717 * Rectangles" on page 648), measured in default user space units in the block- |
| 718 * progression direction. This attribute applies only to elements of structure |
| 719 * type Figure, Formula, Form, Table, TH (Table header), or TD (Table data). |
| 720 * The name Auto in place of a numeric value indicates that no specific height |
| 721 * constraint is to be imposed; the element's height is determined by the intri
n- |
| 722 * sic height of its content. Default value: Auto. |
| 723 **/ |
| 724 bool has_Height() const { |
| 725 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Heigh
t", "", NULL)); |
| 726 } |
| 727 |
599 bool isHeightANumber() const { | 728 bool isHeightANumber() const { |
600 SkPdfObject* ret = NULL; | 729 SkPdfObject* ret = NULL; |
601 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Height",
"", &ret)) return false; | 730 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Height",
"", &ret)) return false; |
602 return ret->podofo()->GetDataType() == ePdfDataType_Real || ret->podofo()->G
etDataType() == ePdfDataType_Number; | 731 return ret->podofo()->GetDataType() == ePdfDataType_Real || ret->podofo()->G
etDataType() == ePdfDataType_Number; |
603 } | 732 } |
604 | 733 |
605 double getHeightAsNumber() const { | 734 double getHeightAsNumber() const { |
606 double ret = 0; | 735 double ret = 0; |
607 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Height",
"", &ret)) return ret; | 736 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Height",
"", &ret)) return ret; |
608 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 737 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
609 return 0; | 738 return 0; |
610 } | 739 } |
611 | 740 |
612 bool isHeightAName() const { | 741 bool isHeightAName() const { |
613 SkPdfObject* ret = NULL; | 742 SkPdfObject* ret = NULL; |
614 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Height",
"", &ret)) return false; | 743 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Height",
"", &ret)) return false; |
615 return ret->podofo()->GetDataType() == ePdfDataType_Name; | 744 return ret->podofo()->GetDataType() == ePdfDataType_Name; |
616 } | 745 } |
617 | 746 |
618 std::string getHeightAsName() const { | 747 std::string getHeightAsName() const { |
619 std::string ret = ""; | 748 std::string ret = ""; |
620 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Height", ""
, &ret)) return ret; | 749 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Height", ""
, &ret)) return ret; |
621 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 750 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
622 return ""; | 751 return ""; |
623 } | 752 } |
624 | 753 |
| 754 /** (Optional; table cells only) The alignment, in the block-progression directi
on, |
| 755 * of content within the table cell: |
| 756 * Before Before edge of the first child's allocation rectangle ali
gned |
| 757 * with that of the table cell's content rectangle. |
| 758 * Middle Children centered within the table cell, so that the dist
ance |
| 759 * between the before edge of the first child's allocation r
ec- |
| 760 * tangle and that of the table cell's content rectangle is
the same |
| 761 * as the distance between the after edge of the last child'
s allo- |
| 762 * cation rectangle and that of the table cell's content rec
tangle. |
| 763 * After After edge of the last child's allocation rectangle align
ed with |
| 764 * that of the table cell's content rectangle. |
| 765 * Justify Children aligned with both the before and after edges of
the |
| 766 * table cell's content rectangle. The first child is placed
as |
| 767 * described above for Before and the last child as describe
d for |
| 768 * After, with equal spacing between the children. If there
is only |
| 769 * one child, it is aligned with the before edge only, as fo
r Before. |
| 770 * This attribute applies only to elements of structure type TH (Table header)
or |
| 771 * TD (Table data), and controls the placement of all BLSEs that are children
of |
| 772 * the given element. The table cell's content rectangle (see "Content and All
o- |
| 773 * cation Rectangles" on page 648) becomes the reference area for all of its |
| 774 * descendants. Default value: Before. |
| 775 **/ |
| 776 bool has_BlockAlign() const { |
| 777 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Block
Align", "", NULL)); |
| 778 } |
| 779 |
625 std::string BlockAlign() const { | 780 std::string BlockAlign() const { |
626 std::string ret; | 781 std::string ret; |
627 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "BlockAlign"
, "", &ret)) return ret; | 782 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "BlockAlign"
, "", &ret)) return ret; |
628 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 783 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
629 return ""; | 784 return ""; |
630 } | 785 } |
631 | 786 |
| 787 /** (Optional; table cells only) The alignment, in the inline-progression direct
ion, |
| 788 * of content within the table cell: |
| 789 * Start Start edge of each child's allocation rectangle aligned wit
h |
| 790 * that of the table cell's content rectangle |
| 791 * Center Each child centered within the table cell, so that the dist
ance |
| 792 * between the start edges of the child's allocation rectangle
and |
| 793 * the table cell's content rectangle is the same as the dista
nce |
| 794 * between their end edges |
| 795 * End End edge of each child's allocation rectangle aligned with |
| 796 * that of the table cell's content rectangle |
| 797 * This attribute applies only to elements of structure type TH (Table header)
or |
| 798 * TD (Table data), and controls the placement of all BLSEs that are children o
f |
| 799 * the given element. The table cell's content rectangle (see "Content and Allo
- |
| 800 * cation Rectangles" on page 648) becomes the reference area for all of its |
| 801 * descendants. Default value: Start. |
| 802 **/ |
| 803 bool has_InlineAlign() const { |
| 804 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Inlin
eAlign", "", NULL)); |
| 805 } |
| 806 |
632 std::string InlineAlign() const { | 807 std::string InlineAlign() const { |
633 std::string ret; | 808 std::string ret; |
634 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "InlineAlign
", "", &ret)) return ret; | 809 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "InlineAlign
", "", &ret)) return ret; |
635 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 810 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
636 return ""; | 811 return ""; |
637 } | 812 } |
638 | 813 |
639 }; | 814 }; |
640 | 815 |
641 #endif // __DEFINED__SkPdfBlockLevelStructureElementsDictionary | 816 #endif // __DEFINED__SkPdfBlockLevelStructureElementsDictionary |
OLD | NEW |