1/* 2 * Copyright 2013 Google Inc. 3 4 * Use of this source code is governed by a BSD-style license that can be 5 * found in the LICENSE file. 6 */ 7 8#include "SkPdfFontDescriptorDictionary_autogen.h" 9#include "SkPdfNativeDoc.h" 10 11SkString SkPdfFontDescriptorDictionary::Type(SkPdfNativeDoc* doc) { 12 SkPdfNativeObject* ret = get("Type", ""); 13 if (doc) {ret = doc->resolveReference(ret);} 14 if ((ret != NULL && ret->isName()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->nameValue2(); 15 // TODO(edisonn): warn about missing required field, assert for known good pdfs 16 return SkString(); 17} 18 19bool SkPdfFontDescriptorDictionary::has_Type() const { 20 return get("Type", "") != NULL; 21} 22 23SkString SkPdfFontDescriptorDictionary::FontName(SkPdfNativeDoc* doc) { 24 SkPdfNativeObject* ret = get("FontName", ""); 25 if (doc) {ret = doc->resolveReference(ret);} 26 if ((ret != NULL && ret->isName()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->nameValue2(); 27 // TODO(edisonn): warn about missing required field, assert for known good pdfs 28 return SkString(); 29} 30 31bool SkPdfFontDescriptorDictionary::has_FontName() const { 32 return get("FontName", "") != NULL; 33} 34 35int64_t SkPdfFontDescriptorDictionary::Flags(SkPdfNativeDoc* doc) { 36 SkPdfNativeObject* ret = get("Flags", ""); 37 if (doc) {ret = doc->resolveReference(ret);} 38 if ((ret != NULL && ret->isInteger()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->intValue(); 39 // TODO(edisonn): warn about missing required field, assert for known good pdfs 40 return 0; 41} 42 43bool SkPdfFontDescriptorDictionary::has_Flags() const { 44 return get("Flags", "") != NULL; 45} 46 47SkRect SkPdfFontDescriptorDictionary::FontBBox(SkPdfNativeDoc* doc) { 48 SkPdfNativeObject* ret = get("FontBBox", ""); 49 if (doc) {ret = doc->resolveReference(ret);} 50 if ((ret != NULL && ret->isRectangle()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->rectangleValue(); 51 // TODO(edisonn): warn about missing required field, assert for known good pdfs 52 return SkRect::MakeEmpty(); 53} 54 55bool SkPdfFontDescriptorDictionary::has_FontBBox() const { 56 return get("FontBBox", "") != NULL; 57} 58 59double SkPdfFontDescriptorDictionary::ItalicAngle(SkPdfNativeDoc* doc) { 60 SkPdfNativeObject* ret = get("ItalicAngle", ""); 61 if (doc) {ret = doc->resolveReference(ret);} 62 if ((ret != NULL && ret->isNumber()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->numberValue(); 63 // TODO(edisonn): warn about missing required field, assert for known good pdfs 64 return 0; 65} 66 67bool SkPdfFontDescriptorDictionary::has_ItalicAngle() const { 68 return get("ItalicAngle", "") != NULL; 69} 70 71double SkPdfFontDescriptorDictionary::Ascent(SkPdfNativeDoc* doc) { 72 SkPdfNativeObject* ret = get("Ascent", ""); 73 if (doc) {ret = doc->resolveReference(ret);} 74 if ((ret != NULL && ret->isNumber()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->numberValue(); 75 // TODO(edisonn): warn about missing required field, assert for known good pdfs 76 return 0; 77} 78 79bool SkPdfFontDescriptorDictionary::has_Ascent() const { 80 return get("Ascent", "") != NULL; 81} 82 83double SkPdfFontDescriptorDictionary::Descent(SkPdfNativeDoc* doc) { 84 SkPdfNativeObject* ret = get("Descent", ""); 85 if (doc) {ret = doc->resolveReference(ret);} 86 if ((ret != NULL && ret->isNumber()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->numberValue(); 87 // TODO(edisonn): warn about missing required field, assert for known good pdfs 88 return 0; 89} 90 91bool SkPdfFontDescriptorDictionary::has_Descent() const { 92 return get("Descent", "") != NULL; 93} 94 95double SkPdfFontDescriptorDictionary::Leading(SkPdfNativeDoc* doc) { 96 SkPdfNativeObject* ret = get("Leading", ""); 97 if (doc) {ret = doc->resolveReference(ret);} 98 if ((ret != NULL && ret->isNumber()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->numberValue(); 99 // TODO(edisonn): warn about missing default value for optional fields 100 return 0; 101} 102 103bool SkPdfFontDescriptorDictionary::has_Leading() const { 104 return get("Leading", "") != NULL; 105} 106 107double SkPdfFontDescriptorDictionary::CapHeight(SkPdfNativeDoc* doc) { 108 SkPdfNativeObject* ret = get("CapHeight", ""); 109 if (doc) {ret = doc->resolveReference(ret);} 110 if ((ret != NULL && ret->isNumber()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->numberValue(); 111 // TODO(edisonn): warn about missing required field, assert for known good pdfs 112 return 0; 113} 114 115bool SkPdfFontDescriptorDictionary::has_CapHeight() const { 116 return get("CapHeight", "") != NULL; 117} 118 119double SkPdfFontDescriptorDictionary::XHeight(SkPdfNativeDoc* doc) { 120 SkPdfNativeObject* ret = get("XHeight", ""); 121 if (doc) {ret = doc->resolveReference(ret);} 122 if ((ret != NULL && ret->isNumber()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->numberValue(); 123 // TODO(edisonn): warn about missing default value for optional fields 124 return 0; 125} 126 127bool SkPdfFontDescriptorDictionary::has_XHeight() const { 128 return get("XHeight", "") != NULL; 129} 130 131double SkPdfFontDescriptorDictionary::StemV(SkPdfNativeDoc* doc) { 132 SkPdfNativeObject* ret = get("StemV", ""); 133 if (doc) {ret = doc->resolveReference(ret);} 134 if ((ret != NULL && ret->isNumber()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->numberValue(); 135 // TODO(edisonn): warn about missing required field, assert for known good pdfs 136 return 0; 137} 138 139bool SkPdfFontDescriptorDictionary::has_StemV() const { 140 return get("StemV", "") != NULL; 141} 142 143double SkPdfFontDescriptorDictionary::StemH(SkPdfNativeDoc* doc) { 144 SkPdfNativeObject* ret = get("StemH", ""); 145 if (doc) {ret = doc->resolveReference(ret);} 146 if ((ret != NULL && ret->isNumber()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->numberValue(); 147 // TODO(edisonn): warn about missing default value for optional fields 148 return 0; 149} 150 151bool SkPdfFontDescriptorDictionary::has_StemH() const { 152 return get("StemH", "") != NULL; 153} 154 155double SkPdfFontDescriptorDictionary::AvgWidth(SkPdfNativeDoc* doc) { 156 SkPdfNativeObject* ret = get("AvgWidth", ""); 157 if (doc) {ret = doc->resolveReference(ret);} 158 if ((ret != NULL && ret->isNumber()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->numberValue(); 159 // TODO(edisonn): warn about missing default value for optional fields 160 return 0; 161} 162 163bool SkPdfFontDescriptorDictionary::has_AvgWidth() const { 164 return get("AvgWidth", "") != NULL; 165} 166 167double SkPdfFontDescriptorDictionary::MaxWidth(SkPdfNativeDoc* doc) { 168 SkPdfNativeObject* ret = get("MaxWidth", ""); 169 if (doc) {ret = doc->resolveReference(ret);} 170 if ((ret != NULL && ret->isNumber()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->numberValue(); 171 // TODO(edisonn): warn about missing default value for optional fields 172 return 0; 173} 174 175bool SkPdfFontDescriptorDictionary::has_MaxWidth() const { 176 return get("MaxWidth", "") != NULL; 177} 178 179double SkPdfFontDescriptorDictionary::MissingWidth(SkPdfNativeDoc* doc) { 180 SkPdfNativeObject* ret = get("MissingWidth", ""); 181 if (doc) {ret = doc->resolveReference(ret);} 182 if ((ret != NULL && ret->isNumber()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->numberValue(); 183 // TODO(edisonn): warn about missing default value for optional fields 184 return 0; 185} 186 187bool SkPdfFontDescriptorDictionary::has_MissingWidth() const { 188 return get("MissingWidth", "") != NULL; 189} 190 191SkPdfStream* SkPdfFontDescriptorDictionary::FontFile(SkPdfNativeDoc* doc) { 192 SkPdfNativeObject* ret = get("FontFile", ""); 193 if (doc) {ret = doc->resolveReference(ret);} 194 if ((ret != NULL && ret->hasStream()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->getStream(); 195 // TODO(edisonn): warn about missing default value for optional fields 196 return NULL; 197} 198 199bool SkPdfFontDescriptorDictionary::has_FontFile() const { 200 return get("FontFile", "") != NULL; 201} 202 203SkPdfStream* SkPdfFontDescriptorDictionary::FontFile2(SkPdfNativeDoc* doc) { 204 SkPdfNativeObject* ret = get("FontFile2", ""); 205 if (doc) {ret = doc->resolveReference(ret);} 206 if ((ret != NULL && ret->hasStream()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->getStream(); 207 // TODO(edisonn): warn about missing default value for optional fields 208 return NULL; 209} 210 211bool SkPdfFontDescriptorDictionary::has_FontFile2() const { 212 return get("FontFile2", "") != NULL; 213} 214 215SkPdfStream* SkPdfFontDescriptorDictionary::FontFile3(SkPdfNativeDoc* doc) { 216 SkPdfNativeObject* ret = get("FontFile3", ""); 217 if (doc) {ret = doc->resolveReference(ret);} 218 if ((ret != NULL && ret->hasStream()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->getStream(); 219 // TODO(edisonn): warn about missing default value for optional fields 220 return NULL; 221} 222 223bool SkPdfFontDescriptorDictionary::has_FontFile3() const { 224 return get("FontFile3", "") != NULL; 225} 226 227SkString SkPdfFontDescriptorDictionary::CharSet(SkPdfNativeDoc* doc) { 228 SkPdfNativeObject* ret = get("CharSet", ""); 229 if (doc) {ret = doc->resolveReference(ret);} 230 if ((ret != NULL && ret->isAnyString()) || (doc == NULL && ret != NULL && ret->isReference())) return ret->stringValue2(); 231 // TODO(edisonn): warn about missing default value for optional fields 232 return SkString(); 233} 234 235bool SkPdfFontDescriptorDictionary::has_CharSet() const { 236 return get("CharSet", "") != NULL; 237} 238