OLD | NEW |
1 #ifndef __DEFINED__SkPdfType1HalftoneDictionary | 1 #ifndef __DEFINED__SkPdfType1HalftoneDictionary |
2 #define __DEFINED__SkPdfType1HalftoneDictionary | 2 #define __DEFINED__SkPdfType1HalftoneDictionary |
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 // Entries in a type 1 halftone dictionary |
8 class SkPdfType1HalftoneDictionary : public SkPdfDictionary { | 9 class SkPdfType1HalftoneDictionary : public SkPdfDictionary { |
9 public: | 10 public: |
10 virtual SkPdfObjectType getType() const { return kType1HalftoneDictionary_SkPd
fObjectType;} | 11 virtual SkPdfObjectType getType() const { return kType1HalftoneDictionary_SkPd
fObjectType;} |
11 virtual SkPdfObjectType getTypeEnd() const { return (SkPdfObjectType)(kType1Ha
lftoneDictionary_SkPdfObjectType + 1);} | 12 virtual SkPdfObjectType getTypeEnd() const { return (SkPdfObjectType)(kType1Ha
lftoneDictionary_SkPdfObjectType + 1);} |
12 public: | 13 public: |
13 virtual SkPdfType1HalftoneDictionary* asType1HalftoneDictionary() {return this
;} | 14 virtual SkPdfType1HalftoneDictionary* asType1HalftoneDictionary() {return this
;} |
14 virtual const SkPdfType1HalftoneDictionary* asType1HalftoneDictionary() const
{return this;} | 15 virtual const SkPdfType1HalftoneDictionary* asType1HalftoneDictionary() 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 SkPdfType1HalftoneDictionary(const PdfMemDocument* podofoDoc = NULL, const Pdf
Object* podofoObj = NULL) : SkPdfDictionary(podofoDoc, podofoObj) {} | 519 SkPdfType1HalftoneDictionary(const PdfMemDocument* podofoDoc = NULL, const Pdf
Object* podofoObj = NULL) : SkPdfDictionary(podofoDoc, podofoObj) {} |
519 | 520 |
520 virtual bool valid() const {return true;} | 521 virtual bool valid() const {return true;} |
521 | 522 |
522 SkPdfType1HalftoneDictionary& operator=(const SkPdfType1HalftoneDictionary& fr
om) {this->fPodofoDoc = from.fPodofoDoc; this->fPodofoObj = from.fPodofoObj; ret
urn *this;} | 523 SkPdfType1HalftoneDictionary& operator=(const SkPdfType1HalftoneDictionary& fr
om) {this->fPodofoDoc = from.fPodofoDoc; this->fPodofoObj = from.fPodofoObj; ret
urn *this;} |
523 | 524 |
| 525 /** (Optional) The type of PDF object that this dictionary describes; if |
| 526 * present, must be Halftone for a halftone dictionary. |
| 527 **/ |
| 528 bool has_Type() const { |
| 529 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Type"
, "", NULL)); |
| 530 } |
| 531 |
524 std::string Type() const { | 532 std::string Type() const { |
525 std::string ret; | 533 std::string ret; |
526 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Type", "",
&ret)) return ret; | 534 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Type", "",
&ret)) return ret; |
527 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 535 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
528 return ""; | 536 return ""; |
529 } | 537 } |
530 | 538 |
| 539 /** (Required) A code identifying the halftone type that this dictionary |
| 540 * describes; must be 1 for this type of halftone. |
| 541 **/ |
| 542 bool has_HalftoneType() const { |
| 543 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Halft
oneType", "", NULL)); |
| 544 } |
| 545 |
531 long HalftoneType() const { | 546 long HalftoneType() const { |
532 long ret; | 547 long ret; |
533 if (LongFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "HalftoneTyp
e", "", &ret)) return ret; | 548 if (LongFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "HalftoneTyp
e", "", &ret)) return ret; |
534 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 549 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
535 return 0; | 550 return 0; |
536 } | 551 } |
537 | 552 |
| 553 /** (Optional) The name of the halftone dictionary. |
| 554 **/ |
| 555 bool has_HalftoneName() const { |
| 556 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Halft
oneName", "", NULL)); |
| 557 } |
| 558 |
538 std::string HalftoneName() const { | 559 std::string HalftoneName() const { |
539 std::string ret; | 560 std::string ret; |
540 if (StringFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "HalftoneN
ame", "", &ret)) return ret; | 561 if (StringFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "HalftoneN
ame", "", &ret)) return ret; |
541 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 562 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
542 return ""; | 563 return ""; |
543 } | 564 } |
544 | 565 |
| 566 /** (Required) The screen frequency, measured in halftone cells per inch in |
| 567 * device space. |
| 568 **/ |
| 569 bool has_Frequency() const { |
| 570 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Frequ
ency", "", NULL)); |
| 571 } |
| 572 |
545 double Frequency() const { | 573 double Frequency() const { |
546 double ret; | 574 double ret; |
547 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Frequency
", "", &ret)) return ret; | 575 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Frequency
", "", &ret)) return ret; |
548 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 576 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
549 return 0; | 577 return 0; |
550 } | 578 } |
551 | 579 |
| 580 /** (Required) The screen angle, in degrees of rotation counterclockwise |
| 581 * with respect to the device coordinate system. (Note that most output |
| 582 * devices have left-handed device spaces; on such devices, a counter- |
| 583 * clockwise angle in device space will correspond to a clockwise angle in |
| 584 * default user space and on the physical medium.) |
| 585 **/ |
| 586 bool has_Angle() const { |
| 587 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Angle
", "", NULL)); |
| 588 } |
| 589 |
552 double Angle() const { | 590 double Angle() const { |
553 double ret; | 591 double ret; |
554 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Angle", "
", &ret)) return ret; | 592 if (DoubleFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Angle", "
", &ret)) return ret; |
555 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 593 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
556 return 0; | 594 return 0; |
557 } | 595 } |
558 | 596 |
| 597 /** (Required) A function object defining the order in which device pixels |
| 598 * within a screen cell are adjusted for different gray levels, or the name of |
| 599 * one of the predefined spot functions (see Table 6.1 on page 385). |
| 600 **/ |
| 601 bool has_SpotFunction() const { |
| 602 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "SpotF
unction", "", NULL)); |
| 603 } |
| 604 |
559 bool isSpotFunctionAFunction() const { | 605 bool isSpotFunctionAFunction() const { |
560 SkPdfObject* ret = NULL; | 606 SkPdfObject* ret = NULL; |
561 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "SpotFunc
tion", "", &ret)) return false; | 607 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "SpotFunc
tion", "", &ret)) return false; |
562 return ret->podofo()->GetDataType() == ePdfDataType_Reference; | 608 return ret->podofo()->GetDataType() == ePdfDataType_Reference; |
563 } | 609 } |
564 | 610 |
565 SkPdfFunction getSpotFunctionAsFunction() const { | 611 SkPdfFunction getSpotFunctionAsFunction() const { |
566 SkPdfFunction ret = SkPdfFunction(); | 612 SkPdfFunction ret = SkPdfFunction(); |
567 if (FunctionFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "SpotFun
ction", "", &ret)) return ret; | 613 if (FunctionFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "SpotFun
ction", "", &ret)) return ret; |
568 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 614 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
569 return SkPdfFunction(); | 615 return SkPdfFunction(); |
570 } | 616 } |
571 | 617 |
572 bool isSpotFunctionAName() const { | 618 bool isSpotFunctionAName() const { |
573 SkPdfObject* ret = NULL; | 619 SkPdfObject* ret = NULL; |
574 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "SpotFunc
tion", "", &ret)) return false; | 620 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "SpotFunc
tion", "", &ret)) return false; |
575 return ret->podofo()->GetDataType() == ePdfDataType_Name; | 621 return ret->podofo()->GetDataType() == ePdfDataType_Name; |
576 } | 622 } |
577 | 623 |
578 std::string getSpotFunctionAsName() const { | 624 std::string getSpotFunctionAsName() const { |
579 std::string ret = ""; | 625 std::string ret = ""; |
580 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "SpotFunctio
n", "", &ret)) return ret; | 626 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "SpotFunctio
n", "", &ret)) return ret; |
581 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 627 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
582 return ""; | 628 return ""; |
583 } | 629 } |
584 | 630 |
| 631 /** (Optional) A flag specifying whether to invoke a special halftone al- |
| 632 * gorithm that is extremely precise, but computationally expensive; see |
| 633 * below for further discussion. Default value: false. |
| 634 **/ |
| 635 bool has_AccurateScreens() const { |
| 636 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Accur
ateScreens", "", NULL)); |
| 637 } |
| 638 |
585 bool AccurateScreens() const { | 639 bool AccurateScreens() const { |
586 bool ret; | 640 bool ret; |
587 if (BoolFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "AccurateScr
eens", "", &ret)) return ret; | 641 if (BoolFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "AccurateScr
eens", "", &ret)) return ret; |
588 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 642 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
589 return false; | 643 return false; |
590 } | 644 } |
591 | 645 |
| 646 /** (Optional) A transfer function, which overrides the current transfer |
| 647 * function in the graphics state for the same component. This entry is |
| 648 * required if the dictionary is a component of a type 5 halftone (see |
| 649 * "Type 5 Halftones" on page 400) and represents either a nonprimary |
| 650 * or nonstandard primary color component (see Section 6.3, "Transfer |
| 651 * Functions"). The name Identity may be used to specify the identity |
| 652 * function. |
| 653 **/ |
| 654 bool has_TransferFunction() const { |
| 655 return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Trans
ferFunction", "", NULL)); |
| 656 } |
| 657 |
592 bool isTransferFunctionAFunction() const { | 658 bool isTransferFunctionAFunction() const { |
593 SkPdfObject* ret = NULL; | 659 SkPdfObject* ret = NULL; |
594 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Transfer
Function", "", &ret)) return false; | 660 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Transfer
Function", "", &ret)) return false; |
595 return ret->podofo()->GetDataType() == ePdfDataType_Reference; | 661 return ret->podofo()->GetDataType() == ePdfDataType_Reference; |
596 } | 662 } |
597 | 663 |
598 SkPdfFunction getTransferFunctionAsFunction() const { | 664 SkPdfFunction getTransferFunctionAsFunction() const { |
599 SkPdfFunction ret = SkPdfFunction(); | 665 SkPdfFunction ret = SkPdfFunction(); |
600 if (FunctionFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Transfe
rFunction", "", &ret)) return ret; | 666 if (FunctionFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Transfe
rFunction", "", &ret)) return ret; |
601 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 667 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
602 return SkPdfFunction(); | 668 return SkPdfFunction(); |
603 } | 669 } |
604 | 670 |
605 bool isTransferFunctionAName() const { | 671 bool isTransferFunctionAName() const { |
606 SkPdfObject* ret = NULL; | 672 SkPdfObject* ret = NULL; |
607 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Transfer
Function", "", &ret)) return false; | 673 if (!ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Transfer
Function", "", &ret)) return false; |
608 return ret->podofo()->GetDataType() == ePdfDataType_Name; | 674 return ret->podofo()->GetDataType() == ePdfDataType_Name; |
609 } | 675 } |
610 | 676 |
611 std::string getTransferFunctionAsName() const { | 677 std::string getTransferFunctionAsName() const { |
612 std::string ret = ""; | 678 std::string ret = ""; |
613 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "TransferFun
ction", "", &ret)) return ret; | 679 if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "TransferFun
ction", "", &ret)) return ret; |
614 // TODO(edisonn): warn about missing required field, assert for known good p
dfs | 680 // TODO(edisonn): warn about missing required field, assert for known good p
dfs |
615 return ""; | 681 return ""; |
616 } | 682 } |
617 | 683 |
618 }; | 684 }; |
619 | 685 |
620 #endif // __DEFINED__SkPdfType1HalftoneDictionary | 686 #endif // __DEFINED__SkPdfType1HalftoneDictionary |
OLD | NEW |