1 /************************************************************************* 2 * 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4 * 5 * Copyright 2000, 2010 Oracle and/or its affiliates. 6 * 7 * OpenOffice.org - a multi-platform office productivity suite 8 * 9 * This file is part of OpenOffice.org. 10 * 11 * OpenOffice.org is free software: you can redistribute it and/or modify 12 * it under the terms of the GNU Lesser General Public License version 3 13 * only, as published by the Free Software Foundation. 14 * 15 * OpenOffice.org is distributed in the hope that it will be useful, 16 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18 * GNU Lesser General Public License version 3 for more details 19 * (a copy is included in the LICENSE file that accompanied this code). 20 * 21 * You should have received a copy of the GNU Lesser General Public License 22 * version 3 along with OpenOffice.org. If not, see 23 * <http://www.openoffice.org/license.html> 24 * for a copy of the LGPLv3 License. 25 * 26 ************************************************************************/ 27 28 // MARKER(update_precomp.py): autogen include statement, do not remove 29 #include "precompiled_vcl.hxx" 30 31 #include "pdfwriter_impl.hxx" 32 #include <rtl/strbuf.hxx> 33 34 using namespace vcl; 35 using namespace rtl; 36 37 OString PDFWriterImpl::BuiltinFont::getNameObject() const 38 { 39 OStringBuffer aBuf( 16 ); 40 aBuf.append( '/' ); 41 const char* pRun = m_pPSName; 42 43 unsigned int nCopied = 0; 44 while( *pRun ) 45 { 46 if( *pRun >= 'A' && *pRun <= 'Z' ) 47 nCopied = 0; 48 if( nCopied++ < 2 ) 49 aBuf.append( *pRun ); 50 pRun++; 51 } 52 return aBuf.makeStringAndClear(); 53 } 54 55 const PDFWriterImpl::BuiltinFont PDFWriterImpl::m_aBuiltinFonts[ 14 ] = { 56 { "Courier", // family name 57 "Normal", // style 58 "Courier", // PSName 59 629, -157, // ascend, descend 60 FAMILY_MODERN, // family style 61 RTL_TEXTENCODING_MS_1252, // charset 62 PITCH_FIXED, // pitch 63 WIDTH_NORMAL, // width type 64 WEIGHT_NORMAL, // weight type 65 ITALIC_NONE, // italic type 66 { 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 7 67 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 15 68 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 23 69 0, 0, 0, 0, 0, 0, 0, 0, // 24 - 31 70 600, 600, 600, 600, 600, 600, 600, 600, // 32 - 39 71 600, 600, 600, 600, 600, 600, 600, 600, // 40 - 47 72 600, 600, 600, 600, 600, 600, 600, 600, // 48 - 55 73 600, 600, 600, 600, 600, 600, 600, 600, // 56 - 63 74 600, 600, 600, 600, 600, 600, 600, 600, // 64 - 71 75 600, 600, 600, 600, 600, 600, 600, 600, // 72 - 79 76 600, 600, 600, 600, 600, 600, 600, 600, // 80 - 87 77 600, 600, 600, 600, 600, 600, 600, 600, // 88 - 95 78 600, 600, 600, 600, 600, 600, 600, 600, // 96 - 103 79 600, 600, 600, 600, 600, 600, 600, 600, // 104 - 111 80 600, 600, 600, 600, 600, 600, 600, 600, // 112 - 119 81 600, 600, 600, 600, 600, 600, 600, 0, // 120 - 127 82 600, 0, 600, 600, 600, 600, 600, 600, // 128 - 135 83 600, 600, 600, 600, 600, 0, 600, 0, // 136 - 143 84 0, 600, 600, 600, 600, 600, 600, 600, // 144 - 151 85 600, 600, 600, 600, 600, 0, 600, 600, // 152 - 159 86 600, 600, 600, 600, 600, 600, 600, 600, // 160 - 167 87 600, 600, 600, 600, 600, 600, 600, 600, // 168 - 175 88 600, 600, 600, 600, 600, 600, 600, 600, // 176 - 183 89 600, 600, 600, 600, 600, 600, 600, 600, // 184 - 191 90 600, 600, 600, 600, 600, 600, 600, 600, // 192 - 199 91 600, 600, 600, 600, 600, 600, 600, 600, // 200 - 207 92 600, 600, 600, 600, 600, 600, 600, 600, // 208 - 215 93 600, 600, 600, 600, 600, 600, 600, 600, // 216 - 223 94 600, 600, 600, 600, 600, 600, 600, 600, // 224 - 231 95 600, 600, 600, 600, 600, 600, 600, 600, // 232 - 239 96 600, 600, 600, 600, 600, 600, 600, 600, // 240 - 247 97 600, 600, 600, 600, 600, 600, 600, 600 // 248 - 255 98 } 99 }, 100 101 { "Courier", // family name 102 "Italic", // style 103 "Courier-Oblique", // PSName 104 629, -157, // ascend, descend 105 FAMILY_MODERN, // family style 106 RTL_TEXTENCODING_MS_1252, // charset 107 PITCH_FIXED, // pitch 108 WIDTH_NORMAL, // width type 109 WEIGHT_NORMAL, // weight type 110 ITALIC_NORMAL, // italic type 111 { 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 7 112 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 15 113 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 23 114 0, 0, 0, 0, 0, 0, 0, 0, // 24 - 31 115 600, 600, 600, 600, 600, 600, 600, 600, // 32 - 39 116 600, 600, 600, 600, 600, 600, 600, 600, // 40 - 47 117 600, 600, 600, 600, 600, 600, 600, 600, // 48 - 55 118 600, 600, 600, 600, 600, 600, 600, 600, // 56 - 63 119 600, 600, 600, 600, 600, 600, 600, 600, // 64 - 71 120 600, 600, 600, 600, 600, 600, 600, 600, // 72 - 79 121 600, 600, 600, 600, 600, 600, 600, 600, // 80 - 87 122 600, 600, 600, 600, 600, 600, 600, 600, // 88 - 95 123 600, 600, 600, 600, 600, 600, 600, 600, // 96 - 103 124 600, 600, 600, 600, 600, 600, 600, 600, // 104 - 111 125 600, 600, 600, 600, 600, 600, 600, 600, // 112 - 119 126 600, 600, 600, 600, 600, 600, 600, 0, // 120 - 127 127 600, 0, 600, 600, 600, 600, 600, 600, // 128 - 135 128 600, 600, 600, 600, 600, 0, 600, 0, // 136 - 143 129 0, 600, 600, 600, 600, 600, 600, 600, // 144 - 151 130 600, 600, 600, 600, 600, 0, 600, 600, // 152 - 159 131 600, 600, 600, 600, 600, 600, 600, 600, // 160 - 167 132 600, 600, 600, 600, 600, 600, 600, 600, // 168 - 175 133 600, 600, 600, 600, 600, 600, 600, 600, // 176 - 183 134 600, 600, 600, 600, 600, 600, 600, 600, // 184 - 191 135 600, 600, 600, 600, 600, 600, 600, 600, // 192 - 199 136 600, 600, 600, 600, 600, 600, 600, 600, // 200 - 207 137 600, 600, 600, 600, 600, 600, 600, 600, // 208 - 215 138 600, 600, 600, 600, 600, 600, 600, 600, // 216 - 223 139 600, 600, 600, 600, 600, 600, 600, 600, // 224 - 231 140 600, 600, 600, 600, 600, 600, 600, 600, // 232 - 239 141 600, 600, 600, 600, 600, 600, 600, 600, // 240 - 247 142 600, 600, 600, 600, 600, 600, 600, 600 // 248 - 255 143 } 144 }, 145 146 { "Courier", // family name 147 "Bold", // style 148 "Courier-Bold", // PSName 149 629, -157, // ascend, descend 150 FAMILY_MODERN, // family style 151 RTL_TEXTENCODING_MS_1252, // charset 152 PITCH_FIXED, // pitch 153 WIDTH_NORMAL, // width type 154 WEIGHT_BOLD, // weight type 155 ITALIC_NONE, // italic type 156 { 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 7 157 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 15 158 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 23 159 0, 0, 0, 0, 0, 0, 0, 0, // 24 - 31 160 600, 600, 600, 600, 600, 600, 600, 600, // 32 - 39 161 600, 600, 600, 600, 600, 600, 600, 600, // 40 - 47 162 600, 600, 600, 600, 600, 600, 600, 600, // 48 - 55 163 600, 600, 600, 600, 600, 600, 600, 600, // 56 - 63 164 600, 600, 600, 600, 600, 600, 600, 600, // 64 - 71 165 600, 600, 600, 600, 600, 600, 600, 600, // 72 - 79 166 600, 600, 600, 600, 600, 600, 600, 600, // 80 - 87 167 600, 600, 600, 600, 600, 600, 600, 600, // 88 - 95 168 600, 600, 600, 600, 600, 600, 600, 600, // 96 - 103 169 600, 600, 600, 600, 600, 600, 600, 600, // 104 - 111 170 600, 600, 600, 600, 600, 600, 600, 600, // 112 - 119 171 600, 600, 600, 600, 600, 600, 600, 0, // 120 - 127 172 600, 0, 600, 600, 600, 600, 600, 600, // 128 - 135 173 600, 600, 600, 600, 600, 0, 600, 0, // 136 - 143 174 0, 600, 600, 600, 600, 600, 600, 600, // 144 - 151 175 600, 600, 600, 600, 600, 0, 600, 600, // 152 - 159 176 600, 600, 600, 600, 600, 600, 600, 600, // 160 - 167 177 600, 600, 600, 600, 600, 600, 600, 600, // 168 - 175 178 600, 600, 600, 600, 600, 600, 600, 600, // 176 - 183 179 600, 600, 600, 600, 600, 600, 600, 600, // 184 - 191 180 600, 600, 600, 600, 600, 600, 600, 600, // 192 - 199 181 600, 600, 600, 600, 600, 600, 600, 600, // 200 - 207 182 600, 600, 600, 600, 600, 600, 600, 600, // 208 - 215 183 600, 600, 600, 600, 600, 600, 600, 600, // 216 - 223 184 600, 600, 600, 600, 600, 600, 600, 600, // 224 - 231 185 600, 600, 600, 600, 600, 600, 600, 600, // 232 - 239 186 600, 600, 600, 600, 600, 600, 600, 600, // 240 - 247 187 600, 600, 600, 600, 600, 600, 600, 600 // 248 - 255 188 } 189 }, 190 191 { "Courier", // family name 192 "Bold Italic", // style 193 "Courier-BoldOblique", // PSName 194 629, -157, // ascend, descend 195 FAMILY_MODERN, // family style 196 RTL_TEXTENCODING_MS_1252, // charset 197 PITCH_FIXED, // pitch 198 WIDTH_NORMAL, // width type 199 WEIGHT_BOLD, // weight type 200 ITALIC_NORMAL, // italic type 201 { 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 7 202 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 15 203 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 23 204 0, 0, 0, 0, 0, 0, 0, 0, // 24 - 31 205 600, 600, 600, 600, 600, 600, 600, 600, // 32 - 39 206 600, 600, 600, 600, 600, 600, 600, 600, // 40 - 47 207 600, 600, 600, 600, 600, 600, 600, 600, // 48 - 55 208 600, 600, 600, 600, 600, 600, 600, 600, // 56 - 63 209 600, 600, 600, 600, 600, 600, 600, 600, // 64 - 71 210 600, 600, 600, 600, 600, 600, 600, 600, // 72 - 79 211 600, 600, 600, 600, 600, 600, 600, 600, // 80 - 87 212 600, 600, 600, 600, 600, 600, 600, 600, // 88 - 95 213 600, 600, 600, 600, 600, 600, 600, 600, // 96 - 103 214 600, 600, 600, 600, 600, 600, 600, 600, // 104 - 111 215 600, 600, 600, 600, 600, 600, 600, 600, // 112 - 119 216 600, 600, 600, 600, 600, 600, 600, 0, // 120 - 127 217 600, 0, 600, 600, 600, 600, 600, 600, // 128 - 135 218 600, 600, 600, 600, 600, 0, 600, 0, // 136 - 143 219 0, 600, 600, 600, 600, 600, 600, 600, // 144 - 151 220 600, 600, 600, 600, 600, 0, 600, 600, // 152 - 159 221 600, 600, 600, 600, 600, 600, 600, 600, // 160 - 167 222 600, 600, 600, 600, 600, 600, 600, 600, // 168 - 175 223 600, 600, 600, 600, 600, 600, 600, 600, // 176 - 183 224 600, 600, 600, 600, 600, 600, 600, 600, // 184 - 191 225 600, 600, 600, 600, 600, 600, 600, 600, // 192 - 199 226 600, 600, 600, 600, 600, 600, 600, 600, // 200 - 207 227 600, 600, 600, 600, 600, 600, 600, 600, // 208 - 215 228 600, 600, 600, 600, 600, 600, 600, 600, // 216 - 223 229 600, 600, 600, 600, 600, 600, 600, 600, // 224 - 231 230 600, 600, 600, 600, 600, 600, 600, 600, // 232 - 239 231 600, 600, 600, 600, 600, 600, 600, 600, // 240 - 247 232 600, 600, 600, 600, 600, 600, 600, 600 // 248 - 255 233 } 234 }, 235 236 { "Helvetica", // family name 237 "Normal", // style 238 "Helvetica", // PSName 239 718, -207, // ascend, descend 240 FAMILY_SWISS, // family style 241 RTL_TEXTENCODING_MS_1252, // charset 242 PITCH_VARIABLE, // pitch 243 WIDTH_NORMAL, // width type 244 WEIGHT_NORMAL, // weight type 245 ITALIC_NONE, // italic type 246 { 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 7 247 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 15 248 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 23 249 0, 0, 0, 0, 0, 0, 0, 0, // 24 - 31 250 278, 278, 355, 556, 556, 889, 667, 191, // 32 - 39 251 333, 333, 389, 584, 278, 333, 278, 278, // 40 - 47 252 556, 556, 556, 556, 556, 556, 556, 556, // 48 - 55 253 556, 556, 278, 278, 584, 584, 584, 556, // 56 - 63 254 1015, 667, 667, 722, 722, 667, 611, 778, // 64 - 71 255 722, 278, 500, 667, 556, 833, 722, 778, // 72 - 79 256 667, 778, 722, 667, 611, 722, 667, 944, // 80 - 87 257 667, 667, 611, 278, 278, 278, 469, 556, // 88 - 95 258 333, 556, 556, 500, 556, 556, 278, 556, // 96 - 103 259 556, 222, 222, 500, 222, 833, 556, 556, // 104 - 111 260 556, 556, 333, 500, 278, 556, 500, 722, // 112 - 119 261 500, 500, 500, 334, 260, 334, 584, 0, // 120 - 127 262 556, 0, 222, 556, 333, 1000, 556, 556, // 128 - 135 263 333, 1000, 667, 333, 1000, 0, 500, 0, // 136 - 143 264 0, 222, 222, 333, 333, 350, 556, 1000, // 144 - 151 265 333, 1000, 500, 333, 944, 0, 500, 667, // 152 - 159 266 278, 333, 556, 556, 556, 556, 260, 556, // 160 - 167 267 333, 737, 370, 556, 584, 333, 737, 333, // 168 - 175 268 400, 584, 333, 333, 333, 556, 537, 278, // 176 - 183 269 333, 333, 365, 556, 834, 834, 834, 611, // 184 - 191 270 667, 667, 667, 667, 667, 667, 1000, 722, // 192 - 199 271 667, 667, 667, 667, 278, 278, 278, 278, // 200 - 207 272 722, 722, 778, 778, 778, 778, 778, 584, // 208 - 215 273 778, 722, 722, 722, 722, 667, 667, 611, // 216 - 223 274 556, 556, 556, 556, 556, 556, 889, 500, // 224 - 231 275 556, 556, 556, 556, 278, 278, 278, 278, // 232 - 239 276 556, 556, 556, 556, 556, 556, 556, 584, // 240 - 247 277 611, 556, 556, 556, 556, 500, 556, 500 // 248 - 255 278 } 279 }, 280 281 { "Helvetica", // family name 282 "Italic", // style 283 "Helvetica-Oblique", // PSName 284 718, -207, // ascend, descend 285 FAMILY_SWISS, // family style 286 RTL_TEXTENCODING_MS_1252, // charset 287 PITCH_VARIABLE, // pitch 288 WIDTH_NORMAL, // width type 289 WEIGHT_NORMAL, // weight type 290 ITALIC_NORMAL, // italic type 291 { 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 7 292 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 15 293 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 23 294 0, 0, 0, 0, 0, 0, 0, 0, // 24 - 31 295 278, 278, 355, 556, 556, 889, 667, 191, // 32 - 39 296 333, 333, 389, 584, 278, 333, 278, 278, // 40 - 47 297 556, 556, 556, 556, 556, 556, 556, 556, // 48 - 55 298 556, 556, 278, 278, 584, 584, 584, 556, // 56 - 63 299 1015, 667, 667, 722, 722, 667, 611, 778, // 64 - 71 300 722, 278, 500, 667, 556, 833, 722, 778, // 72 - 79 301 667, 778, 722, 667, 611, 722, 667, 944, // 80 - 87 302 667, 667, 611, 278, 278, 278, 469, 556, // 88 - 95 303 333, 556, 556, 500, 556, 556, 278, 556, // 96 - 103 304 556, 222, 222, 500, 222, 833, 556, 556, // 104 - 111 305 556, 556, 333, 500, 278, 556, 500, 722, // 112 - 119 306 500, 500, 500, 334, 260, 334, 584, 0, // 120 - 127 307 556, 0, 222, 556, 333, 1000, 556, 556, // 128 - 135 308 333, 1000, 667, 333, 1000, 0, 500, 0, // 136 - 143 309 0, 222, 222, 333, 333, 350, 556, 1000, // 144 - 151 310 333, 1000, 500, 333, 944, 0, 500, 667, // 152 - 159 311 278, 333, 556, 556, 556, 556, 260, 556, // 160 - 167 312 333, 737, 370, 556, 584, 333, 737, 333, // 168 - 175 313 400, 584, 333, 333, 333, 556, 537, 278, // 176 - 183 314 333, 333, 365, 556, 834, 834, 834, 611, // 184 - 191 315 667, 667, 667, 667, 667, 667, 1000, 722, // 192 - 199 316 667, 667, 667, 667, 278, 278, 278, 278, // 200 - 207 317 722, 722, 778, 778, 778, 778, 778, 584, // 208 - 215 318 778, 722, 722, 722, 722, 667, 667, 611, // 216 - 223 319 556, 556, 556, 556, 556, 556, 889, 500, // 224 - 231 320 556, 556, 556, 556, 278, 278, 278, 278, // 232 - 239 321 556, 556, 556, 556, 556, 556, 556, 584, // 240 - 247 322 611, 556, 556, 556, 556, 500, 556, 500 // 248 - 255 323 } 324 }, 325 326 { "Helvetica", // family name 327 "Bold", // style 328 "Helvetica-Bold", // PSName 329 718, -207, // ascend, descend 330 FAMILY_SWISS, // family style 331 RTL_TEXTENCODING_MS_1252, // charset 332 PITCH_VARIABLE, // pitch 333 WIDTH_NORMAL, // width type 334 WEIGHT_BOLD, // weight type 335 ITALIC_NONE, // italic type 336 { 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 7 337 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 15 338 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 23 339 0, 0, 0, 0, 0, 0, 0, 0, // 24 - 31 340 278, 333, 474, 556, 556, 889, 722, 238, // 32 - 39 341 333, 333, 389, 584, 278, 333, 278, 278, // 40 - 47 342 556, 556, 556, 556, 556, 556, 556, 556, // 48 - 55 343 556, 556, 333, 333, 584, 584, 584, 611, // 56 - 63 344 975, 722, 722, 722, 722, 667, 611, 778, // 64 - 71 345 722, 278, 556, 722, 611, 833, 722, 778, // 72 - 79 346 667, 778, 722, 667, 611, 722, 667, 944, // 80 - 87 347 667, 667, 611, 333, 278, 333, 584, 556, // 88 - 95 348 333, 556, 611, 556, 611, 556, 333, 611, // 96 - 103 349 611, 278, 278, 556, 278, 889, 611, 611, // 104 - 111 350 611, 611, 389, 556, 333, 611, 556, 778, // 112 - 119 351 556, 556, 500, 389, 280, 389, 584, 0, // 120 - 127 352 556, 0, 278, 556, 500, 1000, 556, 556, // 128 - 135 353 333, 1000, 667, 333, 1000, 0, 500, 0, // 136 - 143 354 0, 278, 278, 500, 500, 350, 556, 1000, // 144 - 151 355 333, 1000, 556, 333, 944, 0, 500, 667, // 152 - 159 356 278, 333, 556, 556, 556, 556, 280, 556, // 160 - 167 357 333, 737, 370, 556, 584, 333, 737, 333, // 168 - 175 358 400, 584, 333, 333, 333, 611, 556, 278, // 176 - 183 359 333, 333, 365, 556, 834, 834, 834, 611, // 184 - 191 360 722, 722, 722, 722, 722, 722, 1000, 722, // 192 - 199 361 667, 667, 667, 667, 278, 278, 278, 278, // 200 - 207 362 722, 722, 778, 778, 778, 778, 778, 584, // 208 - 215 363 778, 722, 722, 722, 722, 667, 667, 611, // 216 - 223 364 556, 556, 556, 556, 556, 556, 889, 556, // 224 - 231 365 556, 556, 556, 556, 278, 278, 278, 278, // 232 - 239 366 611, 611, 611, 611, 611, 611, 611, 584, // 240 - 247 367 611, 611, 611, 611, 611, 556, 611, 556 // 248 - 255 368 } 369 }, 370 371 { "Helvetica", // family name 372 "Bold Italic", // style 373 "Helvetica-BoldOblique", // PSName 374 718, -207, // ascend, descend 375 FAMILY_SWISS, // family style 376 RTL_TEXTENCODING_MS_1252, // charset 377 PITCH_VARIABLE, // pitch 378 WIDTH_NORMAL, // width type 379 WEIGHT_BOLD, // weight type 380 ITALIC_NORMAL, // italic type 381 { 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 7 382 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 15 383 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 23 384 0, 0, 0, 0, 0, 0, 0, 0, // 24 - 31 385 278, 333, 474, 556, 556, 889, 722, 238, // 32 - 39 386 333, 333, 389, 584, 278, 333, 278, 278, // 40 - 47 387 556, 556, 556, 556, 556, 556, 556, 556, // 48 - 55 388 556, 556, 333, 333, 584, 584, 584, 611, // 56 - 63 389 975, 722, 722, 722, 722, 667, 611, 778, // 64 - 71 390 722, 278, 556, 722, 611, 833, 722, 778, // 72 - 79 391 667, 778, 722, 667, 611, 722, 667, 944, // 80 - 87 392 667, 667, 611, 333, 278, 333, 584, 556, // 88 - 95 393 333, 556, 611, 556, 611, 556, 333, 611, // 96 - 103 394 611, 278, 278, 556, 278, 889, 611, 611, // 104 - 111 395 611, 611, 389, 556, 333, 611, 556, 778, // 112 - 119 396 556, 556, 500, 389, 280, 389, 584, 0, // 120 - 127 397 556, 0, 278, 556, 500, 1000, 556, 556, // 128 - 135 398 333, 1000, 667, 333, 1000, 0, 500, 0, // 136 - 143 399 0, 278, 278, 500, 500, 350, 556, 1000, // 144 - 151 400 333, 1000, 556, 333, 944, 0, 500, 667, // 152 - 159 401 278, 333, 556, 556, 556, 556, 280, 556, // 160 - 167 402 333, 737, 370, 556, 584, 333, 737, 333, // 168 - 175 403 400, 584, 333, 333, 333, 611, 556, 278, // 176 - 183 404 333, 333, 365, 556, 834, 834, 834, 611, // 184 - 191 405 722, 722, 722, 722, 722, 722, 1000, 722, // 192 - 199 406 667, 667, 667, 667, 278, 278, 278, 278, // 200 - 207 407 722, 722, 778, 778, 778, 778, 778, 584, // 208 - 215 408 778, 722, 722, 722, 722, 667, 667, 611, // 216 - 223 409 556, 556, 556, 556, 556, 556, 889, 556, // 224 - 231 410 556, 556, 556, 556, 278, 278, 278, 278, // 232 - 239 411 611, 611, 611, 611, 611, 611, 611, 584, // 240 - 247 412 611, 611, 611, 611, 611, 556, 611, 556 // 248 - 255 413 } 414 }, 415 416 { "Times", // family name 417 "Normal", // style 418 "Times-Roman", // PSName 419 683, -217, // ascend, descend 420 FAMILY_ROMAN, // family style 421 RTL_TEXTENCODING_MS_1252, // charset 422 PITCH_VARIABLE, // pitch 423 WIDTH_NORMAL, // width type 424 WEIGHT_NORMAL, // weight type 425 ITALIC_NONE, // italic type 426 { 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 7 427 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 15 428 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 23 429 0, 0, 0, 0, 0, 0, 0, 0, // 24 - 31 430 250, 333, 408, 500, 500, 833, 778, 180, // 32 - 39 431 333, 333, 500, 564, 250, 333, 250, 278, // 40 - 47 432 500, 500, 500, 500, 500, 500, 500, 500, // 48 - 55 433 500, 500, 278, 278, 564, 564, 564, 444, // 56 - 63 434 921, 722, 667, 667, 722, 611, 556, 722, // 64 - 71 435 722, 333, 389, 722, 611, 889, 722, 722, // 72 - 79 436 556, 722, 667, 556, 611, 722, 722, 944, // 80 - 87 437 722, 722, 611, 333, 278, 333, 469, 500, // 88 - 95 438 333, 444, 500, 444, 500, 444, 333, 500, // 96 - 103 439 500, 278, 278, 500, 278, 778, 500, 500, // 104 - 111 440 500, 500, 333, 389, 278, 500, 500, 722, // 112 - 119 441 500, 500, 444, 480, 200, 480, 541, 0, // 120 - 127 442 500, 0, 333, 500, 444, 1000, 500, 500, // 128 - 135 443 333, 1000, 556, 333, 889, 0, 444, 0, // 136 - 143 444 0, 333, 333, 444, 444, 350, 500, 1000, // 144 - 151 445 333, 980, 389, 333, 722, 0, 444, 722, // 152 - 159 446 250, 333, 500, 500, 500, 500, 200, 500, // 160 - 167 447 333, 760, 276, 500, 564, 333, 760, 333, // 168 - 175 448 400, 564, 300, 300, 333, 500, 453, 250, // 176 - 183 449 333, 300, 310, 500, 750, 750, 750, 444, // 184 - 191 450 722, 722, 722, 722, 722, 722, 889, 667, // 192 - 199 451 611, 611, 611, 611, 333, 333, 333, 333, // 200 - 207 452 722, 722, 722, 722, 722, 722, 722, 564, // 208 - 215 453 722, 722, 722, 722, 722, 722, 556, 500, // 216 - 223 454 444, 444, 444, 444, 444, 444, 667, 444, // 224 - 231 455 444, 444, 444, 444, 278, 278, 278, 278, // 232 - 239 456 500, 500, 500, 500, 500, 500, 500, 564, // 240 - 247 457 500, 500, 500, 500, 500, 500, 500, 500 // 248 - 255 458 } 459 }, 460 461 { "Times", // family name 462 "Italic", // style 463 "Times-Italic", // PSName 464 683, -217, // ascend, descend 465 FAMILY_ROMAN, // family style 466 RTL_TEXTENCODING_MS_1252, // charset 467 PITCH_VARIABLE, // pitch 468 WIDTH_NORMAL, // width type 469 WEIGHT_NORMAL, // weight type 470 ITALIC_NORMAL, // italic type 471 { 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 7 472 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 15 473 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 23 474 0, 0, 0, 0, 0, 0, 0, 0, // 24 - 31 475 250, 333, 420, 500, 500, 833, 778, 214, // 32 - 39 476 333, 333, 500, 675, 250, 333, 250, 278, // 40 - 47 477 500, 500, 500, 500, 500, 500, 500, 500, // 48 - 55 478 500, 500, 333, 333, 675, 675, 675, 500, // 56 - 63 479 920, 611, 611, 667, 722, 611, 611, 722, // 64 - 71 480 722, 333, 444, 667, 556, 833, 667, 722, // 72 - 79 481 611, 722, 611, 500, 556, 722, 611, 833, // 80 - 87 482 611, 556, 556, 389, 278, 389, 422, 500, // 88 - 95 483 333, 500, 500, 444, 500, 444, 278, 500, // 96 - 103 484 500, 278, 278, 444, 278, 722, 500, 500, // 104 - 111 485 500, 500, 389, 389, 278, 500, 444, 667, // 112 - 119 486 444, 444, 389, 400, 275, 400, 541, 0, // 120 - 127 487 500, 0, 333, 500, 556, 889, 500, 500, // 128 - 135 488 333, 1000, 500, 333, 944, 0, 389, 0, // 136 - 143 489 0, 333, 333, 556, 556, 350, 500, 889, // 144 - 151 490 333, 980, 389, 333, 667, 0, 389, 556, // 152 - 159 491 250, 389, 500, 500, 500, 500, 275, 500, // 160 - 167 492 333, 760, 276, 500, 675, 333, 760, 333, // 168 - 175 493 400, 675, 300, 300, 333, 500, 523, 250, // 176 - 183 494 333, 300, 310, 500, 750, 750, 750, 500, // 184 - 191 495 611, 611, 611, 611, 611, 611, 889, 667, // 192 - 199 496 611, 611, 611, 611, 333, 333, 333, 333, // 200 - 207 497 722, 667, 722, 722, 722, 722, 722, 675, // 208 - 215 498 722, 722, 722, 722, 722, 556, 611, 500, // 216 - 223 499 500, 500, 500, 500, 500, 500, 667, 444, // 224 - 231 500 444, 444, 444, 444, 278, 278, 278, 278, // 232 - 239 501 500, 500, 500, 500, 500, 500, 500, 675, // 240 - 247 502 500, 500, 500, 500, 500, 444, 500, 444 // 248 - 255 503 } 504 }, 505 506 { "Times", // family name 507 "Bold", // style 508 "Times-Bold", // PSName 509 683, -217, // ascend, descend 510 FAMILY_ROMAN, // family style 511 RTL_TEXTENCODING_MS_1252, // charset 512 PITCH_VARIABLE, // pitch 513 WIDTH_NORMAL, // width type 514 WEIGHT_BOLD, // weight type 515 ITALIC_NONE, // italic type 516 { 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 7 517 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 15 518 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 23 519 0, 0, 0, 0, 0, 0, 0, 0, // 24 - 31 520 250, 333, 555, 500, 500, 1000, 833, 278, // 32 - 39 521 333, 333, 500, 570, 250, 333, 250, 278, // 40 - 47 522 500, 500, 500, 500, 500, 500, 500, 500, // 48 - 55 523 500, 500, 333, 333, 570, 570, 570, 500, // 56 - 63 524 930, 722, 667, 722, 722, 667, 611, 778, // 64 - 71 525 778, 389, 500, 778, 667, 944, 722, 778, // 72 - 79 526 611, 778, 722, 556, 667, 722, 722, 1000, // 80 - 87 527 722, 722, 667, 333, 278, 333, 581, 500, // 88 - 95 528 333, 500, 556, 444, 556, 444, 333, 500, // 96 - 103 529 556, 278, 333, 556, 278, 833, 556, 500, // 104 - 111 530 556, 556, 444, 389, 333, 556, 500, 722, // 112 - 119 531 500, 500, 444, 394, 220, 394, 520, 0, // 120 - 127 532 500, 0, 333, 500, 500, 1000, 500, 500, // 128 - 135 533 333, 1000, 556, 333, 1000, 0, 444, 0, // 136 - 143 534 0, 333, 333, 500, 500, 350, 500, 1000, // 144 - 151 535 333, 1000, 389, 333, 722, 0, 444, 722, // 152 - 159 536 250, 333, 500, 500, 500, 500, 220, 500, // 160 - 167 537 333, 747, 300, 500, 570, 333, 747, 333, // 168 - 175 538 400, 570, 300, 300, 333, 556, 540, 250, // 176 - 183 539 333, 300, 330, 500, 750, 750, 750, 500, // 184 - 191 540 722, 722, 722, 722, 722, 722, 1000, 722, // 192 - 199 541 667, 667, 667, 667, 389, 389, 389, 389, // 200 - 207 542 722, 722, 778, 778, 778, 778, 778, 570, // 208 - 215 543 778, 722, 722, 722, 722, 722, 611, 556, // 216 - 223 544 500, 500, 500, 500, 500, 500, 722, 444, // 224 - 231 545 444, 444, 444, 444, 278, 278, 278, 278, // 232 - 239 546 500, 556, 500, 500, 500, 500, 500, 570, // 240 - 247 547 500, 556, 556, 556, 556, 500, 556, 500 // 248 - 255 548 } 549 }, 550 551 { "Times", // family name 552 "Bold Italic", // style 553 "Times-BoldItalic", // PSName 554 683, -217, // ascend, descend 555 FAMILY_ROMAN, // family style 556 RTL_TEXTENCODING_MS_1252, // charset 557 PITCH_VARIABLE, // pitch 558 WIDTH_NORMAL, // width type 559 WEIGHT_BOLD, // weight type 560 ITALIC_NORMAL, // italic type 561 { 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 7 562 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 15 563 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 23 564 0, 0, 0, 0, 0, 0, 0, 0, // 24 - 31 565 250, 389, 555, 500, 500, 833, 778, 278, // 32 - 39 566 333, 333, 500, 570, 250, 333, 250, 278, // 40 - 47 567 500, 500, 500, 500, 500, 500, 500, 500, // 48 - 55 568 500, 500, 333, 333, 570, 570, 570, 500, // 56 - 63 569 832, 667, 667, 667, 722, 667, 667, 722, // 64 - 71 570 778, 389, 500, 667, 611, 889, 722, 722, // 72 - 79 571 611, 722, 667, 556, 611, 722, 667, 889, // 80 - 87 572 667, 611, 611, 333, 278, 333, 570, 500, // 88 - 95 573 333, 500, 500, 444, 500, 444, 333, 500, // 96 - 103 574 556, 278, 278, 500, 278, 778, 556, 500, // 104 - 111 575 500, 500, 389, 389, 278, 556, 444, 667, // 112 - 119 576 500, 444, 389, 348, 220, 348, 570, 0, // 120 - 127 577 500, 0, 333, 500, 500, 1000, 500, 500, // 128 - 135 578 333, 1000, 556, 333, 944, 0, 389, 0, // 136 - 143 579 0, 333, 333, 500, 500, 350, 500, 1000, // 144 - 151 580 333, 1000, 389, 333, 722, 0, 389, 611, // 152 - 159 581 250, 389, 500, 500, 500, 500, 220, 500, // 160 - 167 582 333, 747, 266, 500, 606, 333, 747, 333, // 168 - 175 583 400, 570, 300, 300, 333, 576, 500, 250, // 176 - 183 584 333, 300, 300, 500, 750, 750, 750, 500, // 184 - 191 585 667, 667, 667, 667, 667, 667, 944, 667, // 192 - 199 586 667, 667, 667, 667, 389, 389, 389, 389, // 200 - 207 587 722, 722, 722, 722, 722, 722, 722, 570, // 208 - 215 588 722, 722, 722, 722, 722, 611, 611, 500, // 216 - 223 589 500, 500, 500, 500, 500, 500, 722, 444, // 224 - 231 590 444, 444, 444, 444, 278, 278, 278, 278, // 232 - 239 591 500, 556, 500, 500, 500, 500, 500, 570, // 240 - 247 592 500, 556, 556, 556, 556, 444, 500, 444 // 248 - 255 593 } 594 }, 595 596 { "Symbol", // family name 597 "Normal", // style 598 "Symbol", // PSName 599 1010, -293, // ascend, descend 600 FAMILY_DONTKNOW, // family style 601 RTL_TEXTENCODING_ADOBE_SYMBOL, // charset 602 PITCH_VARIABLE, // pitch 603 WIDTH_NORMAL, // width type 604 WEIGHT_NORMAL, // weight type 605 ITALIC_NONE, // italic type 606 { 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 7 607 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 15 608 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 23 609 0, 0, 0, 0, 0, 0, 0, 0, // 24 - 31 610 250, 333, 713, 500, 549, 833, 778, 439, // 32 - 39 611 333, 333, 500, 549, 250, 549, 250, 278, // 40 - 47 612 500, 500, 500, 500, 500, 500, 500, 500, // 48 - 55 613 500, 500, 278, 278, 549, 549, 549, 444, // 56 - 63 614 549, 722, 667, 722, 612, 611, 763, 603, // 64 - 71 615 722, 333, 631, 722, 686, 889, 722, 722, // 72 - 79 616 768, 741, 556, 592, 611, 690, 439, 768, // 80 - 87 617 645, 795, 611, 333, 863, 333, 658, 500, // 88 - 95 618 500, 631, 549, 549, 494, 439, 521, 411, // 96 - 103 619 603, 329, 603, 549, 549, 576, 521, 549, // 104 - 111 620 549, 521, 549, 603, 439, 576, 713, 686, // 112 - 119 621 493, 686, 494, 480, 200, 480, 549, 0, // 120 - 127 622 0, 0, 0, 0, 0, 0, 0, 0, // 128 - 135 623 0, 0, 0, 0, 0, 0, 0, 0, // 136 - 143 624 0, 0, 0, 0, 0, 0, 0, 0, // 144 - 151 625 0, 0, 0, 0, 0, 0, 0, 0, // 152 - 159 626 750, 620, 247, 549, 167, 713, 500, 753, // 160 - 167 627 753, 753, 753, 1042, 987, 603, 987, 603, // 168 - 175 628 400, 549, 411, 549, 549, 713, 494, 460, // 176 - 183 629 549, 549, 549, 549, 1000, 603, 1000, 658, // 184 - 191 630 823, 686, 795, 987, 768, 768, 823, 768, // 192 - 199 631 768, 713, 713, 713, 713, 713, 713, 713, // 200 - 207 632 768, 713, 790, 790, 890, 823, 549, 250, // 208 - 215 633 713, 603, 603, 1042, 987, 603, 987, 603, // 216 - 223 634 494, 329, 790, 790, 786, 713, 384, 384, // 224 - 231 635 384, 384, 384, 384, 494, 494, 494, 494, // 232 - 239 636 0, 329, 274, 686, 686, 686, 384, 384, // 240 - 247 637 384, 384, 384, 384, 494, 494, 494, 0 // 248 - 255 638 } 639 }, 640 641 { "ZapfDingbats", // family name 642 "Normal", // style 643 "ZapfDingbats", // PSName 644 820, -143, // ascend, descend 645 FAMILY_DONTKNOW, // family style 646 RTL_TEXTENCODING_ADOBE_DINGBATS, // charset 647 PITCH_VARIABLE, // pitch 648 WIDTH_NORMAL, // width type 649 WEIGHT_NORMAL, // weight type 650 ITALIC_NONE, // italic type 651 { 0, 0, 0, 0, 0, 0, 0, 0, // 0 - 7 652 0, 0, 0, 0, 0, 0, 0, 0, // 8 - 15 653 0, 0, 0, 0, 0, 0, 0, 0, // 16 - 23 654 0, 0, 0, 0, 0, 0, 0, 0, // 24 - 31 655 278, 974, 961, 974, 980, 719, 789, 790, // 32 - 39 656 791, 690, 960, 939, 549, 855, 911, 933, // 40 - 47 657 911, 945, 974, 755, 846, 762, 761, 571, // 48 - 55 658 677, 763, 760, 759, 754, 494, 552, 537, // 56 - 63 659 577, 692, 786, 788, 788, 790, 793, 794, // 64 - 71 660 816, 823, 789, 841, 823, 833, 816, 831, // 72 - 79 661 923, 744, 723, 749, 790, 792, 695, 776, // 80 - 87 662 768, 792, 759, 707, 708, 682, 701, 826, // 88 - 95 663 815, 789, 789, 707, 687, 696, 689, 786, // 96 - 103 664 787, 713, 791, 785, 791, 873, 761, 762, // 104 - 111 665 762, 759, 759, 892, 892, 788, 784, 438, // 112 - 119 666 138, 277, 415, 392, 392, 668, 668, 0, // 120 - 127 667 390, 390, 317, 317, 276, 276, 509, 509, // 128 - 135 668 410, 410, 234, 234, 334, 334, 0, 0, // 136 - 143 669 0, 0, 0, 0, 0, 0, 0, 0, // 144 - 151 670 0, 0, 0, 0, 0, 0, 0, 0, // 152 - 159 671 0, 732, 544, 544, 910, 667, 760, 760, // 160 - 167 672 776, 595, 694, 626, 788, 788, 788, 788, // 168 - 175 673 788, 788, 788, 788, 788, 788, 788, 788, // 176 - 183 674 788, 788, 788, 788, 788, 788, 788, 788, // 184 - 191 675 788, 788, 788, 788, 788, 788, 788, 788, // 192 - 199 676 788, 788, 788, 788, 788, 788, 788, 788, // 200 - 207 677 788, 788, 788, 788, 894, 838, 1016, 458, // 208 - 215 678 748, 924, 748, 918, 927, 928, 928, 834, // 216 - 223 679 873, 828, 924, 924, 917, 930, 931, 463, // 224 - 231 680 883, 836, 836, 867, 867, 696, 696, 874, // 232 - 239 681 0, 874, 760, 946, 771, 865, 771, 888, // 240 - 247 682 967, 888, 831, 873, 927, 970, 918, 0 // 248 - 255 683 } 684 } 685 686 }; 687 688