| Index: experimental/PdfViewer/autogen/SkPdfType1FormDictionary_autogen.h
|
| ===================================================================
|
| --- experimental/PdfViewer/autogen/SkPdfType1FormDictionary_autogen.h (revision 0)
|
| +++ experimental/PdfViewer/autogen/SkPdfType1FormDictionary_autogen.h (revision 0)
|
| @@ -0,0 +1,282 @@
|
| +#ifndef __DEFINED__SkPdfType1FormDictionary
|
| +#define __DEFINED__SkPdfType1FormDictionary
|
| +
|
| +#include "SkPdfUtils.h"
|
| +#include "SkPdfEnums_autogen.h"
|
| +#include "SkPdfArray_autogen.h"
|
| +#include "SkPdfXObjectDictionary_autogen.h"
|
| +
|
| +// Additional entries specific to a type 1 form dictionary
|
| +class SkPdfType1FormDictionary : public SkPdfXObjectDictionary {
|
| +public:
|
| + virtual SkPdfObjectType getType() const { return kType1FormDictionary_SkPdfObjectType;}
|
| + virtual SkPdfObjectType getTypeEnd() const { return (SkPdfObjectType)(kType1FormDictionary_SkPdfObjectType + 1);}
|
| +public:
|
| + virtual SkPdfType1FormDictionary* asType1FormDictionary() {return this;}
|
| + virtual const SkPdfType1FormDictionary* asType1FormDictionary() const {return this;}
|
| +
|
| +private:
|
| + virtual SkPdfImageDictionary* asImageDictionary() {return NULL;}
|
| + virtual const SkPdfImageDictionary* asImageDictionary() const {return NULL;}
|
| +
|
| +public:
|
| +private:
|
| +public:
|
| + SkPdfType1FormDictionary(const PdfMemDocument* podofoDoc = NULL, const PdfObject* podofoObj = NULL) : SkPdfXObjectDictionary(podofoDoc, podofoObj) {}
|
| +
|
| + SkPdfType1FormDictionary(const SkPdfType1FormDictionary& from) : SkPdfXObjectDictionary(from.fPodofoDoc, from.fPodofoObj) {}
|
| +
|
| + virtual bool valid() const {return true;}
|
| +
|
| + SkPdfType1FormDictionary& operator=(const SkPdfType1FormDictionary& from) {this->fPodofoDoc = from.fPodofoDoc; this->fPodofoObj = from.fPodofoObj; return *this;}
|
| +
|
| +/** (Optional) The type of PDF object that this dictionary describes; if present,
|
| + * must be XObject for a form XObject.
|
| +**/
|
| + bool has_Type() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Type", "", NULL));
|
| + }
|
| +
|
| + std::string Type() const {
|
| + std::string ret;
|
| + if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Type", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return "";
|
| + }
|
| +
|
| +/** (Required) The type of XObject that this dictionary describes; must be Form
|
| + * for a form XObject.
|
| +**/
|
| + bool has_Subtype() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Subtype", "", NULL));
|
| + }
|
| +
|
| + std::string Subtype() const {
|
| + std::string ret;
|
| + if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Subtype", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return "";
|
| + }
|
| +
|
| +/** (Optional) A code identifying the type of form XObject that this dictionary
|
| + * describes. The only valid value defined at the time of publication is 1. Default
|
| + * value: 1.
|
| +**/
|
| + bool has_FormType() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "FormType", "", NULL));
|
| + }
|
| +
|
| + long FormType() const {
|
| + long ret;
|
| + if (LongFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "FormType", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return 0;
|
| + }
|
| +
|
| +/** (Required in PDF 1.0; optional otherwise) The name by which this form
|
| + * XObject is referenced in the XObject subdictionary of the current resource
|
| + * dictionary (see Section 3.7.2, "Resource Dictionaries").
|
| + * Note: This entry is obsolescent and its use is no longer recommended. (See
|
| + * implementation note 38 in Appendix H.)
|
| +**/
|
| + bool has_Name() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Name", "", NULL));
|
| + }
|
| +
|
| + std::string Name() const {
|
| + std::string ret;
|
| + if (NameFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Name", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return "";
|
| + }
|
| +
|
| +/** (Required if PieceInfo is present; optional otherwise; PDF 1.3) The date and
|
| + * time (see Section 3.8.2, "Dates") when the form XObject's contents were
|
| + * most recently modified. If a page-piece dictionary (PieceInfo) is present, the
|
| + * modification date is used to ascertain which of the application data diction-
|
| + * aries it contains correspond to the current content of the form (see Section
|
| + * 9.4, "Page-Piece Dictionaries").
|
| +**/
|
| + bool has_LastModified() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "LastModified", "", NULL));
|
| + }
|
| +
|
| + SkPdfDate LastModified() const {
|
| + SkPdfDate ret;
|
| + if (DateFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "LastModified", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return SkPdfDate();
|
| + }
|
| +
|
| +/** (Required) An array of four numbers in the form coordinate system (see
|
| + * below), giving the coordinates of the left, bottom, right, and top edges,
|
| + * respectively, of the form XObject's bounding box. These boundaries are used
|
| + * to clip the form XObject and to determine its size for caching.
|
| +**/
|
| + bool has_BBox() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "BBox", "", NULL));
|
| + }
|
| +
|
| + SkRect* BBox() const {
|
| + SkRect* ret;
|
| + if (SkRectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "BBox", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return NULL;
|
| + }
|
| +
|
| +/** (Optional) An array of six numbers specifying the form matrix, which maps
|
| + * form space into user space (see Section 4.2.3, "Transformation Matrices").
|
| + * Default value: the identity matrix [1 0 0 1 0 0].
|
| +**/
|
| + bool has_Matrix() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Matrix", "", NULL));
|
| + }
|
| +
|
| + SkMatrix* Matrix() const {
|
| + SkMatrix* ret;
|
| + if (SkMatrixFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Matrix", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return NULL;
|
| + }
|
| +
|
| +/** (Optional but strongly recommended; PDF 1.2) A dictionary specifying any
|
| + * resources (such as fonts and images) required by the form XObject (see Sec-
|
| + * tion 3.7, "Content Streams and Resources").
|
| + * In PDF 1.1 and earlier, all named resources used in the form XObject must be
|
| + * included in the resource dictionary of each page object on which the form
|
| + * XObject appears, whether or not they also appear in the resource dictionary
|
| + * of the form XObject itself. It can be useful to specify these resources in the
|
| + * form XObject's own resource dictionary as well, in order to determine which
|
| + * resources are used inside the form XObject. If a resource is included in both
|
| + * dictionaries, it should have the same name in both locations.
|
| + * In PDF 1.2 and later versions, form XObjects can be independent of the
|
| + * content streams in which they appear, and this is strongly recommended
|
| + * although not required. In an independent form XObject, the resource dic-
|
| + * tionary of the form XObject is required and contains all named resources
|
| + * used by the form XObject. These resources are not "promoted" to the outer
|
| + * content stream's resource dictionary, although that stream's resource diction-
|
| + * ary will refer to the form XObject itself.
|
| +**/
|
| + bool has_Resources() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Resources", "", NULL));
|
| + }
|
| +
|
| + SkPdfResourceDictionary* Resources() const {
|
| + SkPdfResourceDictionary* ret;
|
| + if (DictionaryFromDictionary2(fPodofoDoc, fPodofoObj->GetDictionary(), "Resources", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return NULL;
|
| + }
|
| +
|
| +/** (Optional; PDF 1.4) A group attributes dictionary indicating that the contents
|
| + * of the form XObject are to be treated as a group and specifying the attributes
|
| + * of that group (see Section 4.9.2, "Group XObjects").
|
| + * Note: If a Ref entry (see below) is present, the group attributes also apply to the
|
| + * external page imported by that entry. This allows such an imported page to be
|
| + * treated as a group without further modification.
|
| +**/
|
| + bool has_Group() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Group", "", NULL));
|
| + }
|
| +
|
| + SkPdfDictionary* Group() const {
|
| + SkPdfDictionary* ret;
|
| + if (DictionaryFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Group", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return NULL;
|
| + }
|
| +
|
| +/** (Optional; PDF 1.4) A reference dictionary identifying a page to be imported
|
| + * from another PDF file, and for which the form XObject serves as a proxy (see
|
| + * Section 4.9.3, "Reference XObjects").
|
| +**/
|
| + bool has_Ref() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Ref", "", NULL));
|
| + }
|
| +
|
| + SkPdfDictionary* Ref() const {
|
| + SkPdfDictionary* ret;
|
| + if (DictionaryFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Ref", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return NULL;
|
| + }
|
| +
|
| +/** (Optional; PDF 1.4) A metadata stream containing metadata for the form
|
| + * XObject (see Section 9.2.2, "Metadata Streams").
|
| +**/
|
| + bool has_Metadata() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Metadata", "", NULL));
|
| + }
|
| +
|
| + SkPdfStream* Metadata() const {
|
| + SkPdfStream* ret;
|
| + if (StreamFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "Metadata", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return NULL;
|
| + }
|
| +
|
| +/** (Optional; PDF 1.3) A page-piece dictionary associated with the form
|
| + * XObject (see Section 9.4, "Page-Piece Dictionaries").
|
| +**/
|
| + bool has_PieceInfo() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "PieceInfo", "", NULL));
|
| + }
|
| +
|
| + SkPdfDictionary* PieceInfo() const {
|
| + SkPdfDictionary* ret;
|
| + if (DictionaryFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "PieceInfo", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return NULL;
|
| + }
|
| +
|
| +/** (Required if the form XObject is a structural content item; PDF 1.3) The integer
|
| + * key of the form XObject's entry in the structural parent tree (see "Finding
|
| + * Structure Elements from Content Items" on page 600).
|
| +**/
|
| + bool has_StructParent() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "StructParent", "", NULL));
|
| + }
|
| +
|
| + long StructParent() const {
|
| + long ret;
|
| + if (LongFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "StructParent", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return 0;
|
| + }
|
| +
|
| +/** (Required if the form XObject contains marked-content sequences that are struc-
|
| + * tural content items; PDF 1.3) The integer key of the form XObject's entry in
|
| + * the structural parent tree (see "Finding Structure Elements from Content
|
| + * Items" on page 600).
|
| + * Note: At most one of the entries StructParent or StructParents may be present. A
|
| + * form XObject can be either a content item in its entirety or a container for
|
| + * marked-content sequences that are content items, but not both.
|
| +**/
|
| + bool has_StructParents() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "StructParents", "", NULL));
|
| + }
|
| +
|
| + long StructParents() const {
|
| + long ret;
|
| + if (LongFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "StructParents", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return 0;
|
| + }
|
| +
|
| +/** (Optional; PDF 1.2) An OPI version dictionary for the form XObject (see
|
| + * Section 9.10.6, "Open Prepress Interface (OPI)").
|
| +**/
|
| + bool has_OPI() const {
|
| + return (ObjectFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "OPI", "", NULL));
|
| + }
|
| +
|
| + SkPdfDictionary* OPI() const {
|
| + SkPdfDictionary* ret;
|
| + if (DictionaryFromDictionary(fPodofoDoc, fPodofoObj->GetDictionary(), "OPI", "", &ret)) return ret;
|
| + // TODO(edisonn): warn about missing required field, assert for known good pdfs
|
| + return NULL;
|
| + }
|
| +
|
| +};
|
| +
|
| +#endif // __DEFINED__SkPdfType1FormDictionary
|
|
|