| #ifndef _RTF | |
| #define _RTF | |
| #include <stdarg.h> | |
| #include <stdio.h> | |
| #include "windef.h" | |
| #include "winbase.h" | |
| #include "wingdi.h" | |
| #include "winuser.h" | |
| #include "richedit.h" | |
| /* The following defines are automatically generated. Do not edit. */ | |
| /* These must be sequential beginning from zero */ | |
| #define rtfSC_nothing 0 | |
| #define rtfSC_space 1 | |
| #define rtfSC_exclam 2 | |
| #define rtfSC_quotedbl 3 | |
| #define rtfSC_numbersign 4 | |
| #define rtfSC_dollar 5 | |
| #define rtfSC_percent 6 | |
| #define rtfSC_ampersand 7 | |
| #define rtfSC_quoteright 8 | |
| #define rtfSC_parenleft 9 | |
| #define rtfSC_parenright 10 | |
| #define rtfSC_asterisk 11 | |
| #define rtfSC_plus 12 | |
| #define rtfSC_comma 13 | |
| #define rtfSC_hyphen 14 | |
| #define rtfSC_period 15 | |
| #define rtfSC_slash 16 | |
| #define rtfSC_zero 17 | |
| #define rtfSC_one 18 | |
| #define rtfSC_two 19 | |
| #define rtfSC_three 20 | |
| #define rtfSC_four 21 | |
| #define rtfSC_five 22 | |
| #define rtfSC_six 23 | |
| #define rtfSC_seven 24 | |
| #define rtfSC_eight 25 | |
| #define rtfSC_nine 26 | |
| #define rtfSC_colon 27 | |
| #define rtfSC_semicolon 28 | |
| #define rtfSC_less 29 | |
| #define rtfSC_equal 30 | |
| #define rtfSC_greater 31 | |
| #define rtfSC_question 32 | |
| #define rtfSC_at 33 | |
| #define rtfSC_A 34 | |
| #define rtfSC_B 35 | |
| #define rtfSC_C 36 | |
| #define rtfSC_D 37 | |
| #define rtfSC_E 38 | |
| #define rtfSC_F 39 | |
| #define rtfSC_G 40 | |
| #define rtfSC_H 41 | |
| #define rtfSC_I 42 | |
| #define rtfSC_J 43 | |
| #define rtfSC_K 44 | |
| #define rtfSC_L 45 | |
| #define rtfSC_M 46 | |
| #define rtfSC_N 47 | |
| #define rtfSC_O 48 | |
| #define rtfSC_P 49 | |
| #define rtfSC_Q 50 | |
| #define rtfSC_R 51 | |
| #define rtfSC_S 52 | |
| #define rtfSC_T 53 | |
| #define rtfSC_U 54 | |
| #define rtfSC_V 55 | |
| #define rtfSC_W 56 | |
| #define rtfSC_X 57 | |
| #define rtfSC_Y 58 | |
| #define rtfSC_Z 59 | |
| #define rtfSC_bracketleft 60 | |
| #define rtfSC_backslash 61 | |
| #define rtfSC_bracketright 62 | |
| #define rtfSC_asciicircum 63 | |
| #define rtfSC_underscore 64 | |
| #define rtfSC_quoteleft 65 | |
| #define rtfSC_a 66 | |
| #define rtfSC_b 67 | |
| #define rtfSC_c 68 | |
| #define rtfSC_d 69 | |
| #define rtfSC_e 70 | |
| #define rtfSC_f 71 | |
| #define rtfSC_g 72 | |
| #define rtfSC_h 73 | |
| #define rtfSC_i 74 | |
| #define rtfSC_j 75 | |
| #define rtfSC_k 76 | |
| #define rtfSC_l 77 | |
| #define rtfSC_m 78 | |
| #define rtfSC_n 79 | |
| #define rtfSC_o 80 | |
| #define rtfSC_p 81 | |
| #define rtfSC_q 82 | |
| #define rtfSC_r 83 | |
| #define rtfSC_s 84 | |
| #define rtfSC_t 85 | |
| #define rtfSC_u 86 | |
| #define rtfSC_v 87 | |
| #define rtfSC_w 88 | |
| #define rtfSC_x 89 | |
| #define rtfSC_y 90 | |
| #define rtfSC_z 91 | |
| #define rtfSC_braceleft 92 | |
| #define rtfSC_bar 93 | |
| #define rtfSC_braceright 94 | |
| #define rtfSC_asciitilde 95 | |
| #define rtfSC_exclamdown 96 | |
| #define rtfSC_cent 97 | |
| #define rtfSC_sterling 98 | |
| #define rtfSC_fraction 99 | |
| #define rtfSC_yen 100 | |
| #define rtfSC_florin 101 | |
| #define rtfSC_section 102 | |
| #define rtfSC_currency 103 | |
| #define rtfSC_quotedblleft 104 | |
| #define rtfSC_guillemotleft 105 | |
| #define rtfSC_guilsinglleft 106 | |
| #define rtfSC_guilsinglright 107 | |
| #define rtfSC_fi 108 | |
| #define rtfSC_fl 109 | |
| #define rtfSC_endash 110 | |
| #define rtfSC_dagger 111 | |
| #define rtfSC_daggerdbl 112 | |
| #define rtfSC_periodcentered 113 | |
| #define rtfSC_paragraph 114 | |
| #define rtfSC_bullet 115 | |
| #define rtfSC_quotesinglbase 116 | |
| #define rtfSC_quotedblbase 117 | |
| #define rtfSC_quotedblright 118 | |
| #define rtfSC_guillemotright 119 | |
| #define rtfSC_ellipsis 120 | |
| #define rtfSC_perthousand 121 | |
| #define rtfSC_questiondown 122 | |
| #define rtfSC_grave 123 | |
| #define rtfSC_acute 124 | |
| #define rtfSC_circumflex 125 | |
| #define rtfSC_tilde 126 | |
| #define rtfSC_macron 127 | |
| #define rtfSC_breve 128 | |
| #define rtfSC_dotaccent 129 | |
| #define rtfSC_dieresis 130 | |
| #define rtfSC_ring 131 | |
| #define rtfSC_cedilla 132 | |
| #define rtfSC_hungarumlaut 133 | |
| #define rtfSC_ogonek 134 | |
| #define rtfSC_caron 135 | |
| #define rtfSC_emdash 136 | |
| #define rtfSC_AE 137 | |
| #define rtfSC_ordfeminine 138 | |
| #define rtfSC_Lslash 139 | |
| #define rtfSC_Oslash 140 | |
| #define rtfSC_OE 141 | |
| #define rtfSC_ordmasculine 142 | |
| #define rtfSC_ae 143 | |
| #define rtfSC_dotlessi 144 | |
| #define rtfSC_lslash 145 | |
| #define rtfSC_oslash 146 | |
| #define rtfSC_oe 147 | |
| #define rtfSC_germandbls 148 | |
| #define rtfSC_Aacute 149 | |
| #define rtfSC_Acircumflex 150 | |
| #define rtfSC_Adieresis 151 | |
| #define rtfSC_Agrave 152 | |
| #define rtfSC_Aring 153 | |
| #define rtfSC_Atilde 154 | |
| #define rtfSC_Ccedilla 155 | |
| #define rtfSC_Eacute 156 | |
| #define rtfSC_Ecircumflex 157 | |
| #define rtfSC_Edieresis 158 | |
| #define rtfSC_Egrave 159 | |
| #define rtfSC_Eth 160 | |
| #define rtfSC_Iacute 161 | |
| #define rtfSC_Icircumflex 162 | |
| #define rtfSC_Idieresis 163 | |
| #define rtfSC_Igrave 164 | |
| #define rtfSC_Ntilde 165 | |
| #define rtfSC_Oacute 166 | |
| #define rtfSC_Ocircumflex 167 | |
| #define rtfSC_Odieresis 168 | |
| #define rtfSC_Ograve 169 | |
| #define rtfSC_Otilde 170 | |
| #define rtfSC_Scaron 171 | |
| #define rtfSC_Thorn 172 | |
| #define rtfSC_Uacute 173 | |
| #define rtfSC_Ucircumflex 174 | |
| #define rtfSC_Udieresis 175 | |
| #define rtfSC_Ugrave 176 | |
| #define rtfSC_Yacute 177 | |
| #define rtfSC_Ydieresis 178 | |
| #define rtfSC_aacute 179 | |
| #define rtfSC_acircumflex 180 | |
| #define rtfSC_adieresis 181 | |
| #define rtfSC_agrave 182 | |
| #define rtfSC_aring 183 | |
| #define rtfSC_atilde 184 | |
| #define rtfSC_brokenbar 185 | |
| #define rtfSC_ccedilla 186 | |
| #define rtfSC_copyright 187 | |
| #define rtfSC_degree 188 | |
| #define rtfSC_divide 189 | |
| #define rtfSC_eacute 190 | |
| #define rtfSC_ecircumflex 191 | |
| #define rtfSC_edieresis 192 | |
| #define rtfSC_egrave 193 | |
| #define rtfSC_eth 194 | |
| #define rtfSC_iacute 195 | |
| #define rtfSC_icircumflex 196 | |
| #define rtfSC_idieresis 197 | |
| #define rtfSC_igrave 198 | |
| #define rtfSC_logicalnot 199 | |
| #define rtfSC_minus 200 | |
| #define rtfSC_multiply 201 | |
| #define rtfSC_ntilde 202 | |
| #define rtfSC_oacute 203 | |
| #define rtfSC_ocircumflex 204 | |
| #define rtfSC_odieresis 205 | |
| #define rtfSC_ograve 206 | |
| #define rtfSC_onehalf 207 | |
| #define rtfSC_onequarter 208 | |
| #define rtfSC_onesuperior 209 | |
| #define rtfSC_otilde 210 | |
| #define rtfSC_plusminus 211 | |
| #define rtfSC_registered 212 | |
| #define rtfSC_thorn 213 | |
| #define rtfSC_threequarters 214 | |
| #define rtfSC_threesuperior 215 | |
| #define rtfSC_trademark 216 | |
| #define rtfSC_twosuperior 217 | |
| #define rtfSC_uacute 218 | |
| #define rtfSC_ucircumflex 219 | |
| #define rtfSC_udieresis 220 | |
| #define rtfSC_ugrave 221 | |
| #define rtfSC_yacute 222 | |
| #define rtfSC_ydieresis 223 | |
| #define rtfSC_Alpha 224 | |
| #define rtfSC_Beta 225 | |
| #define rtfSC_Chi 226 | |
| #define rtfSC_Delta 227 | |
| #define rtfSC_Epsilon 228 | |
| #define rtfSC_Phi 229 | |
| #define rtfSC_Gamma 230 | |
| #define rtfSC_Eta 231 | |
| #define rtfSC_Iota 232 | |
| #define rtfSC_Kappa 233 | |
| #define rtfSC_Lambda 234 | |
| #define rtfSC_Mu 235 | |
| #define rtfSC_Nu 236 | |
| #define rtfSC_Omicron 237 | |
| #define rtfSC_Pi 238 | |
| #define rtfSC_Theta 239 | |
| #define rtfSC_Rho 240 | |
| #define rtfSC_Sigma 241 | |
| #define rtfSC_Tau 242 | |
| #define rtfSC_Upsilon 243 | |
| #define rtfSC_varUpsilon 244 | |
| #define rtfSC_Omega 245 | |
| #define rtfSC_Xi 246 | |
| #define rtfSC_Psi 247 | |
| #define rtfSC_Zeta 248 | |
| #define rtfSC_alpha 249 | |
| #define rtfSC_beta 250 | |
| #define rtfSC_chi 251 | |
| #define rtfSC_delta 252 | |
| #define rtfSC_epsilon 253 | |
| #define rtfSC_phi 254 | |
| #define rtfSC_varphi 255 | |
| #define rtfSC_gamma 256 | |
| #define rtfSC_eta 257 | |
| #define rtfSC_iota 258 | |
| #define rtfSC_kappa 259 | |
| #define rtfSC_lambda 260 | |
| #define rtfSC_mu 261 | |
| #define rtfSC_nu 262 | |
| #define rtfSC_omicron 263 | |
| #define rtfSC_pi 264 | |
| #define rtfSC_varpi 265 | |
| #define rtfSC_theta 266 | |
| #define rtfSC_vartheta 267 | |
| #define rtfSC_rho 268 | |
| #define rtfSC_sigma 269 | |
| #define rtfSC_varsigma 270 | |
| #define rtfSC_tau 271 | |
| #define rtfSC_upsilon 272 | |
| #define rtfSC_omega 273 | |
| #define rtfSC_xi 274 | |
| #define rtfSC_psi 275 | |
| #define rtfSC_zeta 276 | |
| #define rtfSC_nobrkspace 277 | |
| #define rtfSC_nobrkhyphen 278 | |
| #define rtfSC_lessequal 279 | |
| #define rtfSC_greaterequal 280 | |
| #define rtfSC_infinity 281 | |
| #define rtfSC_integral 282 | |
| #define rtfSC_notequal 283 | |
| #define rtfSC_radical 284 | |
| #define rtfSC_radicalex 285 | |
| #define rtfSC_approxequal 286 | |
| #define rtfSC_apple 287 | |
| #define rtfSC_partialdiff 288 | |
| #define rtfSC_opthyphen 289 | |
| #define rtfSC_formula 290 | |
| #define rtfSC_lozenge 291 | |
| #define rtfSC_universal 292 | |
| #define rtfSC_existential 293 | |
| #define rtfSC_suchthat 294 | |
| #define rtfSC_congruent 295 | |
| #define rtfSC_therefore 296 | |
| #define rtfSC_perpendicular 297 | |
| #define rtfSC_minute 298 | |
| #define rtfSC_club 299 | |
| #define rtfSC_diamond 300 | |
| #define rtfSC_heart 301 | |
| #define rtfSC_spade 302 | |
| #define rtfSC_arrowboth 303 | |
| #define rtfSC_arrowleft 304 | |
| #define rtfSC_arrowup 305 | |
| #define rtfSC_arrowright 306 | |
| #define rtfSC_arrowdown 307 | |
| #define rtfSC_second 308 | |
| #define rtfSC_proportional 309 | |
| #define rtfSC_equivalence 310 | |
| #define rtfSC_arrowvertex 311 | |
| #define rtfSC_arrowhorizex 312 | |
| #define rtfSC_carriagereturn 313 | |
| #define rtfSC_aleph 314 | |
| #define rtfSC_Ifraktur 315 | |
| #define rtfSC_Rfraktur 316 | |
| #define rtfSC_weierstrass 317 | |
| #define rtfSC_circlemultiply 318 | |
| #define rtfSC_circleplus 319 | |
| #define rtfSC_emptyset 320 | |
| #define rtfSC_intersection 321 | |
| #define rtfSC_union 322 | |
| #define rtfSC_propersuperset 323 | |
| #define rtfSC_reflexsuperset 324 | |
| #define rtfSC_notsubset 325 | |
| #define rtfSC_propersubset 326 | |
| #define rtfSC_reflexsubset 327 | |
| #define rtfSC_element 328 | |
| #define rtfSC_notelement 329 | |
| #define rtfSC_angle 330 | |
| #define rtfSC_gradient 331 | |
| #define rtfSC_product 332 | |
| #define rtfSC_logicaland 333 | |
| #define rtfSC_logicalor 334 | |
| #define rtfSC_arrowdblboth 335 | |
| #define rtfSC_arrowdblleft 336 | |
| #define rtfSC_arrowdblup 337 | |
| #define rtfSC_arrowdblright 338 | |
| #define rtfSC_arrowdbldown 339 | |
| #define rtfSC_angleleft 340 | |
| #define rtfSC_registersans 341 | |
| #define rtfSC_copyrightsans 342 | |
| #define rtfSC_trademarksans 343 | |
| #define rtfSC_angleright 344 | |
| #define rtfSC_mathplus 345 | |
| #define rtfSC_mathminus 346 | |
| #define rtfSC_mathasterisk 347 | |
| #define rtfSC_mathnumbersign 348 | |
| #define rtfSC_dotmath 349 | |
| #define rtfSC_mathequal 350 | |
| #define rtfSC_mathtilde 351 | |
| #define rtfSC_MaxChar 352 | |
| /* | |
| * rtf.h - RTF document processing stuff. Release 1.10. | |
| */ | |
| /* | |
| * Twentieths of a point (twips) per inch (Many RTF measurements | |
| * are in twips per inch (tpi) units). Assumes 72 points/inch. | |
| */ | |
| # define rtfTpi 1440 | |
| /* | |
| * RTF buffer size (avoids BUFSIZ, which differs across systems) | |
| */ | |
| # define rtfBufSiz 1024 | |
| /* | |
| * Tokens are associated with up to three classification numbers: | |
| * | |
| * Class number: Broadest (least detailed) breakdown. For programs | |
| * that only care about gross token distinctions. | |
| * Major/minor numbers: Within their class, tokens have a major | |
| * number, and may also have a minor number to further | |
| * distinquish tokens with the same major number. | |
| * | |
| * *** Class, major and minor token numbers are all >= 0 *** | |
| * | |
| * Tokens that can't be classified are put in the "unknown" class. | |
| * For such, the major and minor numbers are meaningless, although | |
| * rtfTextBuf may be of interest then. | |
| * | |
| * Text tokens are a single character, and the major number indicates | |
| * the character value (note: can be non-ascii, i.e., greater than 127). | |
| * There is no minor number. | |
| * | |
| * Control symbols may have a parameter value, which will be found in | |
| * rtfParam. If no parameter was given, rtfParam = rtfNoParam. | |
| * | |
| * RTFGetToken() return value is the class number, but it sets all the | |
| * global token vars. | |
| * | |
| * rtfEOF is a fake token used by the reader; the writer never sees | |
| * it (except in the token reader hook, if it installs one). | |
| */ | |
| # ifdef THINK_C | |
| # define rtfNoParam (-32768) /* 16-bit max. neg. value */ | |
| # endif | |
| # ifndef rtfNoParam | |
| # define rtfNoParam (-1000000) | |
| # endif | |
| /* | |
| * For some reason, the no-style number is 222 | |
| */ | |
| # define rtfNoStyleNum 222 | |
| # define rtfNormalStyleNum 0 | |
| /* | |
| * Token classes (must be zero-based and sequential) | |
| */ | |
| # define rtfUnknown 0 | |
| # define rtfGroup 1 | |
| # define rtfText 2 | |
| # define rtfControl 3 | |
| # define rtfEOF 4 | |
| # define rtfMaxClass 5 /* highest class + 1 */ | |
| /* | |
| * Group class major numbers | |
| */ | |
| # define rtfBeginGroup 0 | |
| # define rtfEndGroup 1 | |
| /* | |
| * Control class major and minor numbers. | |
| */ | |
| # define rtfVersion 0 | |
| # define rtfDefFont 1 | |
| # define rtfCharSet 2 | |
| # define rtfAnsiCharSet 0 | |
| # define rtfMacCharSet 1 | |
| # define rtfPcCharSet 2 | |
| # define rtfPcaCharSet 3 | |
| /* destination minor numbers should be zero-based and sequential */ | |
| # define rtfDestination 3 | |
| # define rtfFontTbl 0 | |
| # define rtfFontAltName 1 /* new in 1.10 */ | |
| # define rtfEmbeddedFont 2 /* new in 1.10 */ | |
| # define rtfFontFile 3 /* new in 1.10 */ | |
| # define rtfFileTbl 4 /* new in 1.10 */ | |
| # define rtfFileInfo 5 /* new in 1.10 */ | |
| # define rtfColorTbl 6 | |
| # define rtfStyleSheet 7 | |
| # define rtfKeyCode 8 | |
| # define rtfRevisionTbl 9 /* new in 1.10 */ | |
| # define rtfInfo 10 | |
| # define rtfITitle 11 | |
| # define rtfISubject 12 | |
| # define rtfIAuthor 13 | |
| # define rtfIOperator 14 | |
| # define rtfIKeywords 15 | |
| # define rtfIComment 16 | |
| # define rtfIVersion 17 | |
| # define rtfIDoccomm 18 | |
| # define rtfIVerscomm 19 | |
| # define rtfNextFile 20 /* reclassified in 1.10 */ | |
| # define rtfTemplate 21 /* reclassified in 1.10 */ | |
| # define rtfFNSep 22 | |
| # define rtfFNContSep 23 | |
| # define rtfFNContNotice 24 | |
| # define rtfENSep 25 /* new in 1.10 */ | |
| # define rtfENContSep 26 /* new in 1.10 */ | |
| # define rtfENContNotice 27 /* new in 1.10 */ | |
| # define rtfPageNumLevel 28 /* new in 1.10 */ | |
| # define rtfParNumLevelStyle 29 /* new in 1.10 */ | |
| # define rtfHeader 30 | |
| # define rtfFooter 31 | |
| # define rtfHeaderLeft 32 | |
| # define rtfHeaderRight 33 | |
| # define rtfHeaderFirst 34 | |
| # define rtfFooterLeft 35 | |
| # define rtfFooterRight 36 | |
| # define rtfFooterFirst 37 | |
| # define rtfParNumText 38 /* new in 1.10 */ | |
| # define rtfParNumbering 39 /* new in 1.10 */ | |
| # define rtfParNumTextAfter 40 /* new in 1.10 */ | |
| # define rtfParNumTextBefore 41 /* new in 1.10 */ | |
| # define rtfBookmarkStart 42 | |
| # define rtfBookmarkEnd 43 | |
| # define rtfPict 44 | |
| # define rtfObject 45 | |
| # define rtfObjClass 46 | |
| # define rtfObjName 47 | |
| # define rtfObjTime 48 /* new in 1.10 */ | |
| # define rtfObjData 49 | |
| # define rtfObjAlias 50 | |
| # define rtfObjSection 51 | |
| # define rtfObjResult 52 | |
| # define rtfObjItem 53 /* new in 1.10 */ | |
| # define rtfObjTopic 54 /* new in 1.10 */ | |
| # define rtfDrawObject 55 /* new in 1.10 */ | |
| # define rtfFootnote 56 | |
| # define rtfAnnotRefStart 57 /* new in 1.10 */ | |
| # define rtfAnnotRefEnd 58 /* new in 1.10 */ | |
| # define rtfAnnotID 59 /* reclassified in 1.10 */ | |
| # define rtfAnnotAuthor 60 /* new in 1.10 */ | |
| # define rtfAnnotation 61 /* reclassified in 1.10 */ | |
| # define rtfAnnotRef 62 /* new in 1.10 */ | |
| # define rtfAnnotTime 63 /* new in 1.10 */ | |
| # define rtfAnnotIcon 64 /* new in 1.10 */ | |
| # define rtfField 65 | |
| # define rtfFieldInst 66 | |
| # define rtfFieldResult 67 | |
| # define rtfDataField 68 /* new in 1.10 */ | |
| # define rtfIndex 69 | |
| # define rtfIndexText 70 | |
| # define rtfIndexRange 71 | |
| # define rtfTOC 72 | |
| # define rtfNeXTGraphic 73 | |
| # define rtfMaxDestination 74 /* highest dest + 1 */ | |
| # define rtfFontFamily 4 | |
| # define rtfFFNil 0 | |
| # define rtfFFRoman 1 | |
| # define rtfFFSwiss 2 | |
| # define rtfFFModern 3 | |
| # define rtfFFScript 4 | |
| # define rtfFFDecor 5 | |
| # define rtfFFTech 6 | |
| # define rtfFFBidirectional 7 /* new in 1.10 */ | |
| # define rtfColorName 5 | |
| # define rtfRed 0 | |
| # define rtfGreen 1 | |
| # define rtfBlue 2 | |
| # define rtfSpecialChar 6 | |
| /* special chars seen in \info destination */ | |
| # define rtfIIntVersion 0 | |
| # define rtfICreateTime 1 | |
| # define rtfIRevisionTime 2 | |
| # define rtfIPrintTime 3 | |
| # define rtfIBackupTime 4 | |
| # define rtfIEditTime 5 | |
| # define rtfIYear 6 | |
| # define rtfIMonth 7 | |
| # define rtfIDay 8 | |
| # define rtfIHour 9 | |
| # define rtfIMinute 10 | |
| # define rtfISecond 11 /* new in 1.10 */ | |
| # define rtfINPages 12 | |
| # define rtfINWords 13 | |
| # define rtfINChars 14 | |
| # define rtfIIntID 15 | |
| /* other special chars */ | |
| # define rtfCurHeadDate 16 | |
| # define rtfCurHeadDateLong 17 | |
| # define rtfCurHeadDateAbbrev 18 | |
| # define rtfCurHeadTime 19 | |
| # define rtfCurHeadPage 20 | |
| # define rtfSectNum 21 /* new in 1.10 */ | |
| # define rtfCurFNote 22 | |
| # define rtfCurAnnotRef 23 | |
| # define rtfFNoteSep 24 | |
| # define rtfFNoteCont 25 | |
| # define rtfCell 26 | |
| # define rtfRow 27 | |
| # define rtfPar 28 | |
| # define rtfSect 29 | |
| # define rtfPage 30 | |
| # define rtfColumn 31 | |
| # define rtfLine 32 | |
| # define rtfSoftPage 33 /* new in 1.10 */ | |
| # define rtfSoftColumn 34 /* new in 1.10 */ | |
| # define rtfSoftLine 35 /* new in 1.10 */ | |
| # define rtfSoftLineHt 36 /* new in 1.10 */ | |
| # define rtfTab 37 | |
| # define rtfEmDash 38 | |
| # define rtfEnDash 39 | |
| # define rtfEmSpace 40 /* new in 1.10 */ | |
| # define rtfEnSpace 41 /* new in 1.10 */ | |
| # define rtfBullet 42 | |
| # define rtfLQuote 43 | |
| # define rtfRQuote 44 | |
| # define rtfLDblQuote 45 | |
| # define rtfRDblQuote 46 | |
| # define rtfFormula 47 | |
| # define rtfNoBrkSpace 49 | |
| # define rtfNoReqHyphen 50 | |
| # define rtfNoBrkHyphen 51 | |
| # define rtfOptDest 52 | |
| # define rtfLTRMark 53 /* new in 1.10 */ | |
| # define rtfRTLMark 54 /* new in 1.10 */ | |
| # define rtfNoWidthJoiner 55 /* new in 1.10 */ | |
| # define rtfNoWidthNonJoiner 56 /* new in 1.10 */ | |
| # define rtfCurHeadPict 57 /* valid? */ | |
| /*# define rtfCurAnnot 58*/ /* apparently not used */ | |
| # define rtfStyleAttr 7 | |
| # define rtfAdditive 0 /* new in 1.10 */ | |
| # define rtfBasedOn 1 | |
| # define rtfNext 2 | |
| # define rtfDocAttr 8 | |
| # define rtfDefTab 0 | |
| # define rtfHyphHotZone 1 | |
| # define rtfHyphConsecLines 2 /* new in 1.10 */ | |
| # define rtfHyphCaps 3 /* new in 1.10 */ | |
| # define rtfHyphAuto 4 /* new in 1.10 */ | |
| # define rtfLineStart 5 | |
| # define rtfFracWidth 6 | |
| # define rtfMakeBackup 7 | |
| # define rtfRTFDefault 8 | |
| # define rtfPSOverlay 9 | |
| # define rtfDocTemplate 10 /* new in 1.10 */ | |
| # define rtfDefLanguage 11 | |
| # define rtfFENoteType 12 /* new in 1.10 */ | |
| # define rtfFNoteEndSect 13 | |
| # define rtfFNoteEndDoc 14 | |
| # define rtfFNoteText 15 | |
| # define rtfFNoteBottom 16 | |
| # define rtfENoteEndSect 17 /* new in 1.10 */ | |
| # define rtfENoteEndDoc 18 /* new in 1.10 */ | |
| # define rtfENoteText 19 /* new in 1.10 */ | |
| # define rtfENoteBottom 20 /* new in 1.10 */ | |
| # define rtfFNoteStart 21 | |
| # define rtfENoteStart 22 /* new in 1.10 */ | |
| # define rtfFNoteRestartPage 23 /* new in 1.10 */ | |
| # define rtfFNoteRestart 24 | |
| # define rtfFNoteRestartCont 25 /* new in 1.10 */ | |
| # define rtfENoteRestart 26 /* new in 1.10 */ | |
| # define rtfENoteRestartCont 27 /* new in 1.10 */ | |
| # define rtfFNoteNumArabic 28 /* new in 1.10 */ | |
| # define rtfFNoteNumLLetter 29 /* new in 1.10 */ | |
| # define rtfFNoteNumULetter 30 /* new in 1.10 */ | |
| # define rtfFNoteNumLRoman 31 /* new in 1.10 */ | |
| # define rtfFNoteNumURoman 32 /* new in 1.10 */ | |
| # define rtfFNoteNumChicago 33 /* new in 1.10 */ | |
| # define rtfENoteNumArabic 34 /* new in 1.10 */ | |
| # define rtfENoteNumLLetter 35 /* new in 1.10 */ | |
| # define rtfENoteNumULetter 36 /* new in 1.10 */ | |
| # define rtfENoteNumLRoman 37 /* new in 1.10 */ | |
| # define rtfENoteNumURoman 38 /* new in 1.10 */ | |
| # define rtfENoteNumChicago 39 /* new in 1.10 */ | |
| # define rtfPaperWidth 40 | |
| # define rtfPaperHeight 41 | |
| # define rtfPaperSize 42 /* new in 1.10 */ | |
| # define rtfLeftMargin 43 | |
| # define rtfRightMargin 44 | |
| # define rtfTopMargin 45 | |
| # define rtfBottomMargin 46 | |
| # define rtfFacingPage 47 | |
| # define rtfGutterWid 48 | |
| # define rtfMirrorMargin 49 | |
| # define rtfLandscape 50 | |
| # define rtfPageStart 51 | |
| # define rtfWidowCtrl 52 | |
| # define rtfLinkStyles 53 /* new in 1.10 */ | |
| # define rtfNoAutoTabIndent 54 /* new in 1.10 */ | |
| # define rtfWrapSpaces 55 /* new in 1.10 */ | |
| # define rtfPrintColorsBlack 56 /* new in 1.10 */ | |
| # define rtfNoExtraSpaceRL 57 /* new in 1.10 */ | |
| # define rtfNoColumnBalance 58 /* new in 1.10 */ | |
| # define rtfCvtMailMergeQuote 59 /* new in 1.10 */ | |
| # define rtfSuppressTopSpace 60 /* new in 1.10 */ | |
| # define rtfSuppressPreParSpace 61 /* new in 1.10 */ | |
| # define rtfCombineTblBorders 62 /* new in 1.10 */ | |
| # define rtfTranspMetafiles 63 /* new in 1.10 */ | |
| # define rtfSwapBorders 64 /* new in 1.10 */ | |
| # define rtfShowHardBreaks 65 /* new in 1.10 */ | |
| # define rtfFormProtected 66 /* new in 1.10 */ | |
| # define rtfAllProtected 67 /* new in 1.10 */ | |
| # define rtfFormShading 68 /* new in 1.10 */ | |
| # define rtfFormDisplay 69 /* new in 1.10 */ | |
| # define rtfPrintData 70 /* new in 1.10 */ | |
| # define rtfRevProtected 71 /* new in 1.10 */ | |
| # define rtfRevisions 72 | |
| # define rtfRevDisplay 73 | |
| # define rtfRevBar 74 | |
| # define rtfAnnotProtected 75 /* new in 1.10 */ | |
| # define rtfRTLDoc 76 /* new in 1.10 */ | |
| # define rtfLTRDoc 77 /* new in 1.10 */ | |
| # define rtfSectAttr 9 | |
| # define rtfSectDef 0 | |
| # define rtfENoteHere 1 | |
| # define rtfPrtBinFirst 2 | |
| # define rtfPrtBin 3 | |
| # define rtfSectStyleNum 4 /* new in 1.10 */ | |
| # define rtfNoBreak 5 | |
| # define rtfColBreak 6 | |
| # define rtfPageBreak 7 | |
| # define rtfEvenBreak 8 | |
| # define rtfOddBreak 9 | |
| # define rtfColumns 10 | |
| # define rtfColumnSpace 11 | |
| # define rtfColumnNumber 12 /* new in 1.10 */ | |
| # define rtfColumnSpRight 13 /* new in 1.10 */ | |
| # define rtfColumnWidth 14 /* new in 1.10 */ | |
| # define rtfColumnLine 15 | |
| # define rtfLineModulus 16 | |
| # define rtfLineDist 17 | |
| # define rtfLineStarts 18 | |
| # define rtfLineRestart 19 | |
| # define rtfLineRestartPg 20 | |
| # define rtfLineCont 21 | |
| # define rtfSectPageWid 22 | |
| # define rtfSectPageHt 23 | |
| # define rtfSectMarginLeft 24 | |
| # define rtfSectMarginRight 25 | |
| # define rtfSectMarginTop 26 | |
| # define rtfSectMarginBottom 27 | |
| # define rtfSectMarginGutter 28 | |
| # define rtfSectLandscape 29 | |
| # define rtfTitleSpecial 30 | |
| # define rtfHeaderY 31 | |
| # define rtfFooterY 32 | |
| # define rtfPageStarts 33 | |
| # define rtfPageCont 34 | |
| # define rtfPageRestart 35 | |
| # define rtfPageNumRight 36 /* renamed in 1.10 */ | |
| # define rtfPageNumTop 37 | |
| # define rtfPageDecimal 38 | |
| # define rtfPageURoman 39 | |
| # define rtfPageLRoman 40 | |
| # define rtfPageULetter 41 | |
| # define rtfPageLLetter 42 | |
| # define rtfPageNumHyphSep 43 /* new in 1.10 */ | |
| # define rtfPageNumSpaceSep 44 /* new in 1.10 */ | |
| # define rtfPageNumColonSep 45 /* new in 1.10 */ | |
| # define rtfPageNumEmdashSep 46 /* new in 1.10 */ | |
| # define rtfPageNumEndashSep 47 /* new in 1.10 */ | |
| # define rtfTopVAlign 48 | |
| # define rtfBottomVAlign 49 | |
| # define rtfCenterVAlign 50 | |
| # define rtfJustVAlign 51 | |
| # define rtfRTLSect 52 /* new in 1.10 */ | |
| # define rtfLTRSect 53 /* new in 1.10 */ | |
| # define rtfTblAttr 10 | |
| # define rtfRowDef 0 | |
| # define rtfRowGapH 1 | |
| # define rtfCellPos 2 | |
| # define rtfMergeRngFirst 3 | |
| # define rtfMergePrevious 4 | |
| # define rtfRowLeft 5 | |
| # define rtfRowRight 6 | |
| # define rtfRowCenter 7 | |
| # define rtfRowLeftEdge 8 | |
| # define rtfRowHt 9 | |
| # define rtfRowHeader 10 /* new in 1.10 */ | |
| # define rtfRowKeep 11 /* new in 1.10 */ | |
| # define rtfRTLRow 12 /* new in 1.10 */ | |
| # define rtfLTRRow 13 /* new in 1.10 */ | |
| # define rtfRowBordTop 14 /* new in 1.10 */ | |
| # define rtfRowBordLeft 15 /* new in 1.10 */ | |
| # define rtfRowBordBottom 16 /* new in 1.10 */ | |
| # define rtfRowBordRight 17 /* new in 1.10 */ | |
| # define rtfRowBordHoriz 18 /* new in 1.10 */ | |
| # define rtfRowBordVert 19 /* new in 1.10 */ | |
| # define rtfCellBordBottom 20 | |
| # define rtfCellBordTop 21 | |
| # define rtfCellBordLeft 22 | |
| # define rtfCellBordRight 23 | |
| # define rtfCellShading 24 | |
| # define rtfCellBgPatH 25 | |
| # define rtfCellBgPatV 26 | |
| # define rtfCellFwdDiagBgPat 27 | |
| # define rtfCellBwdDiagBgPat 28 | |
| # define rtfCellHatchBgPat 29 | |
| # define rtfCellDiagHatchBgPat 30 | |
| # define rtfCellDarkBgPatH 31 | |
| # define rtfCellDarkBgPatV 32 | |
| # define rtfCellFwdDarkBgPat 33 | |
| # define rtfCellBwdDarkBgPat 34 | |
| # define rtfCellDarkHatchBgPat 35 | |
| # define rtfCellDarkDiagHatchBgPat 36 | |
| # define rtfCellBgPatLineColor 37 | |
| # define rtfCellBgPatColor 38 | |
| # define rtfParAttr 11 | |
| # define rtfParDef 0 | |
| # define rtfStyleNum 1 | |
| # define rtfHyphenate 2 /* new in 1.10 */ | |
| # define rtfInTable 3 | |
| # define rtfKeep 4 | |
| # define rtfNoWidowControl 5 /* new in 1.10 */ | |
| # define rtfKeepNext 6 | |
| # define rtfOutlineLevel 7 /* new in 1.10 */ | |
| # define rtfNoLineNum 8 | |
| # define rtfPBBefore 9 | |
| # define rtfSideBySide 10 | |
| # define rtfQuadLeft 11 | |
| # define rtfQuadRight 12 | |
| # define rtfQuadJust 13 | |
| # define rtfQuadCenter 14 | |
| # define rtfFirstIndent 15 | |
| # define rtfLeftIndent 16 | |
| # define rtfRightIndent 17 | |
| # define rtfSpaceBefore 18 | |
| # define rtfSpaceAfter 19 | |
| # define rtfSpaceBetween 20 | |
| # define rtfSpaceMultiply 21 /* new in 1.10 */ | |
| # define rtfSubDocument 22 /* new in 1.10 */ | |
| # define rtfRTLPar 23 /* new in 1.10 */ | |
| # define rtfLTRPar 24 /* new in 1.10 */ | |
| # define rtfTabPos 25 | |
| # define rtfTabLeft 26 /* new in 1.10 */ | |
| # define rtfTabRight 27 | |
| # define rtfTabCenter 28 | |
| # define rtfTabDecimal 29 | |
| # define rtfTabBar 30 | |
| # define rtfLeaderDot 31 | |
| # define rtfLeaderHyphen 32 | |
| # define rtfLeaderUnder 33 | |
| # define rtfLeaderThick 34 | |
| # define rtfLeaderEqual 35 | |
| # define rtfParLevel 36 /* new in 1.10 */ | |
| # define rtfParBullet 37 /* new in 1.10 */ | |
| # define rtfParSimple 38 /* new in 1.10 */ | |
| # define rtfParNumCont 39 /* new in 1.10 */ | |
| # define rtfParNumOnce 40 /* new in 1.10 */ | |
| # define rtfParNumAcross 41 /* new in 1.10 */ | |
| # define rtfParHangIndent 42 /* new in 1.10 */ | |
| # define rtfParNumRestart 43 /* new in 1.10 */ | |
| # define rtfParNumCardinal 44 /* new in 1.10 */ | |
| # define rtfParNumDecimal 45 /* new in 1.10 */ | |
| # define rtfParNumULetter 46 /* new in 1.10 */ | |
| # define rtfParNumURoman 47 /* new in 1.10 */ | |
| # define rtfParNumLLetter 48 /* new in 1.10 */ | |
| # define rtfParNumLRoman 49 /* new in 1.10 */ | |
| # define rtfParNumOrdinal 50 /* new in 1.10 */ | |
| # define rtfParNumOrdinalText 51 /* new in 1.10 */ | |
| # define rtfParNumBold 52 /* new in 1.10 */ | |
| # define rtfParNumItalic 53 /* new in 1.10 */ | |
| # define rtfParNumAllCaps 54 /* new in 1.10 */ | |
| # define rtfParNumSmallCaps 55 /* new in 1.10 */ | |
| # define rtfParNumUnder 56 /* new in 1.10 */ | |
| # define rtfParNumDotUnder 57 /* new in 1.10 */ | |
| # define rtfParNumDbUnder 58 /* new in 1.10 */ | |
| # define rtfParNumNoUnder 59 /* new in 1.10 */ | |
| # define rtfParNumWordUnder 60 /* new in 1.10 */ | |
| # define rtfParNumStrikethru 61 /* new in 1.10 */ | |
| # define rtfParNumForeColor 62 /* new in 1.10 */ | |
| # define rtfParNumFont 63 /* new in 1.10 */ | |
| # define rtfParNumFontSize 64 /* new in 1.10 */ | |
| # define rtfParNumIndent 65 /* new in 1.10 */ | |
| # define rtfParNumSpacing 66 /* new in 1.10 */ | |
| # define rtfParNumInclPrev 67 /* new in 1.10 */ | |
| # define rtfParNumCenter 68 /* new in 1.10 */ | |
| # define rtfParNumLeft 69 /* new in 1.10 */ | |
| # define rtfParNumRight 70 /* new in 1.10 */ | |
| # define rtfParNumStartAt 71 /* new in 1.10 */ | |
| # define rtfBorderTop 72 | |
| # define rtfBorderBottom 73 | |
| # define rtfBorderLeft 74 | |
| # define rtfBorderRight 75 | |
| # define rtfBorderBetween 76 | |
| # define rtfBorderBar 77 | |
| # define rtfBorderBox 78 | |
| # define rtfBorderSingle 79 | |
| # define rtfBorderThick 80 | |
| # define rtfBorderShadow 81 | |
| # define rtfBorderDouble 82 | |
| # define rtfBorderDot 83 | |
| # define rtfBorderDash 84 /* new in 1.10 */ | |
| # define rtfBorderHair 85 | |
| # define rtfBorderWidth 86 | |
| # define rtfBorderColor 87 | |
| # define rtfBorderSpace 88 | |
| # define rtfShading 89 | |
| # define rtfBgPatH 90 | |
| # define rtfBgPatV 91 | |
| # define rtfFwdDiagBgPat 92 | |
| # define rtfBwdDiagBgPat 93 | |
| # define rtfHatchBgPat 94 | |
| # define rtfDiagHatchBgPat 95 | |
| # define rtfDarkBgPatH 96 | |
| # define rtfDarkBgPatV 97 | |
| # define rtfFwdDarkBgPat 98 | |
| # define rtfBwdDarkBgPat 99 | |
| # define rtfDarkHatchBgPat 100 | |
| # define rtfDarkDiagHatchBgPat 101 | |
| # define rtfBgPatLineColor 102 | |
| # define rtfBgPatColor 103 | |
| # define rtfCharAttr 12 | |
| # define rtfPlain 0 | |
| # define rtfBold 1 | |
| # define rtfAllCaps 2 | |
| # define rtfDeleted 3 | |
| # define rtfSubScript 4 | |
| # define rtfSubScrShrink 5 /* new in 1.10 */ | |
| # define rtfNoSuperSub 6 /* new in 1.10 */ | |
| # define rtfExpand 7 | |
| # define rtfExpandTwips 8 /* new in 1.10 */ | |
| # define rtfKerning 9 /* new in 1.10 */ | |
| # define rtfFontNum 10 | |
| # define rtfFontSize 11 | |
| # define rtfItalic 12 | |
| # define rtfOutline 13 | |
| # define rtfRevised 14 | |
| # define rtfRevAuthor 15 /* new in 1.10 */ | |
| # define rtfRevDTTM 16 /* new in 1.10 */ | |
| # define rtfSmallCaps 17 | |
| # define rtfShadow 18 | |
| # define rtfStrikeThru 19 | |
| # define rtfUnderline 20 | |
| # define rtfDotUnderline 21 /* renamed in 1.10 */ | |
| # define rtfDbUnderline 22 | |
| # define rtfNoUnderline 23 | |
| # define rtfWordUnderline 24 /* renamed in 1.10 */ | |
| # define rtfSuperScript 25 | |
| # define rtfSuperScrShrink 26 /* new in 1.10 */ | |
| # define rtfInvisible 27 | |
| # define rtfForeColor 28 | |
| # define rtfBackColor 29 | |
| # define rtfRTLChar 30 /* new in 1.10 */ | |
| # define rtfLTRChar 31 /* new in 1.10 */ | |
| # define rtfCharStyleNum 32 /* new in 1.10 */ | |
| # define rtfCharCharSet 33 /* new in 1.10 */ | |
| # define rtfLanguage 34 | |
| # define rtfGray 35 | |
| # define rtfPictAttr 13 | |
| # define rtfMacQD 0 | |
| # define rtfPMMetafile 1 | |
| # define rtfWinMetafile 2 | |
| # define rtfDevIndBitmap 3 | |
| # define rtfWinBitmap 4 | |
| # define rtfPixelBits 5 | |
| # define rtfBitmapPlanes 6 | |
| # define rtfBitmapWid 7 | |
| # define rtfPicWid 8 | |
| # define rtfPicHt 9 | |
| # define rtfPicGoalWid 10 | |
| # define rtfPicGoalHt 11 | |
| # define rtfPicScaleX 12 | |
| # define rtfPicScaleY 13 | |
| # define rtfPicScaled 14 | |
| # define rtfPicCropTop 15 | |
| # define rtfPicCropBottom 16 | |
| # define rtfPicCropLeft 17 | |
| # define rtfPicCropRight 18 | |
| # define rtfPicMFHasBitmap 19 /* new in 1.10 */ | |
| # define rtfPicMFBitsPerPixel 20 /* new in 1.10 */ | |
| # define rtfPicBinary 21 | |
| # define rtfBookmarkAttr 14 | |
| # define rtfBookmarkFirstCol 0 | |
| # define rtfBookmarkLastCol 1 | |
| # define rtfNeXTGrAttr 15 | |
| # define rtfNeXTGWidth 0 | |
| # define rtfNeXTGHeight 1 | |
| # define rtfFieldAttr 16 | |
| # define rtfFieldDirty 0 | |
| # define rtfFieldEdited 1 | |
| # define rtfFieldLocked 2 | |
| # define rtfFieldPrivate 3 | |
| # define rtfFieldAlt 4 /* new in 1.10 */ | |
| # define rtfTOCAttr 17 | |
| # define rtfTOCType 0 | |
| # define rtfTOCLevel 1 | |
| # define rtfPosAttr 18 | |
| # define rtfAbsWid 0 | |
| # define rtfAbsHt 1 | |
| # define rtfRPosMargH 2 | |
| # define rtfRPosPageH 3 | |
| # define rtfRPosColH 4 | |
| # define rtfPosX 5 | |
| # define rtfPosNegX 6 /* new in 1.10 */ | |
| # define rtfPosXCenter 7 | |
| # define rtfPosXInside 8 | |
| # define rtfPosXOutSide 9 | |
| # define rtfPosXRight 10 | |
| # define rtfPosXLeft 11 | |
| # define rtfRPosMargV 12 | |
| # define rtfRPosPageV 13 | |
| # define rtfRPosParaV 14 | |
| # define rtfPosY 15 | |
| # define rtfPosNegY 16 /* new in 1.10 */ | |
| # define rtfPosYInline 17 | |
| # define rtfPosYTop 18 | |
| # define rtfPosYCenter 19 | |
| # define rtfPosYBottom 20 | |
| # define rtfNoWrap 21 | |
| # define rtfDistFromTextAll 22 /* renamed in 1.10 */ | |
| # define rtfDistFromTextX 23 /* new in 1.10 */ | |
| # define rtfDistFromTextY 24 /* new in 1.10 */ | |
| # define rtfTextDistY 25 | |
| # define rtfDropCapLines 26 /* new in 1.10 */ | |
| # define rtfDropCapType 27 /* new in 1.10 */ | |
| # define rtfObjAttr 19 | |
| # define rtfObjEmb 0 | |
| # define rtfObjLink 1 | |
| # define rtfObjAutoLink 2 | |
| # define rtfObjSubscriber 3 | |
| # define rtfObjPublisher 4 /* new in 1.10 */ | |
| # define rtfObjICEmb 5 | |
| # define rtfObjLinkSelf 6 | |
| # define rtfObjLock 7 | |
| # define rtfObjUpdate 8 /* new in 1.10 */ | |
| # define rtfObjHt 9 | |
| # define rtfObjWid 10 | |
| # define rtfObjSetSize 11 | |
| # define rtfObjAlign 12 /* new in 1.10 */ | |
| # define rtfObjTransposeY 13 | |
| # define rtfObjCropTop 14 | |
| # define rtfObjCropBottom 15 | |
| # define rtfObjCropLeft 16 | |
| # define rtfObjCropRight 17 | |
| # define rtfObjScaleX 18 | |
| # define rtfObjScaleY 19 | |
| # define rtfObjResRTF 20 | |
| # define rtfObjResPict 21 | |
| # define rtfObjResBitmap 22 | |
| # define rtfObjResText 23 | |
| # define rtfObjResMerge 24 | |
| # define rtfObjBookmarkPubObj 25 | |
| # define rtfObjPubAutoUpdate 26 | |
| # define rtfFNoteAttr 20 /* new in 1.10 */ | |
| # define rtfFNAlt 0 /* new in 1.10 */ | |
| # define rtfKeyCodeAttr 21 /* new in 1.10 */ | |
| # define rtfAltKey 0 /* new in 1.10 */ | |
| # define rtfShiftKey 1 /* new in 1.10 */ | |
| # define rtfControlKey 2 /* new in 1.10 */ | |
| # define rtfFunctionKey 3 /* new in 1.10 */ | |
| # define rtfACharAttr 22 /* new in 1.10 */ | |
| # define rtfACBold 0 /* new in 1.10 */ | |
| # define rtfACAllCaps 1 /* new in 1.10 */ | |
| # define rtfACForeColor 2 /* new in 1.10 */ | |
| # define rtfACSubScript 3 /* new in 1.10 */ | |
| # define rtfACExpand 4 /* new in 1.10 */ | |
| # define rtfACFontNum 5 /* new in 1.10 */ | |
| # define rtfACFontSize 6 /* new in 1.10 */ | |
| # define rtfACItalic 7 /* new in 1.10 */ | |
| # define rtfACLanguage 8 /* new in 1.10 */ | |
| # define rtfACOutline 9 /* new in 1.10 */ | |
| # define rtfACSmallCaps 10 /* new in 1.10 */ | |
| # define rtfACShadow 11 /* new in 1.10 */ | |
| # define rtfACStrikeThru 12 /* new in 1.10 */ | |
| # define rtfACUnderline 13 /* new in 1.10 */ | |
| # define rtfACDotUnderline 14 /* new in 1.10 */ | |
| # define rtfACDbUnderline 15 /* new in 1.10 */ | |
| # define rtfACNoUnderline 16 /* new in 1.10 */ | |
| # define rtfACWordUnderline 17 /* new in 1.10 */ | |
| # define rtfACSuperScript 18 /* new in 1.10 */ | |
| # define rtfFontAttr 23 /* new in 1.10 */ | |
| # define rtfFontCharSet 0 /* new in 1.10 */ | |
| # define rtfFontPitch 1 /* new in 1.10 */ | |
| # define rtfFontCodePage 2 /* new in 1.10 */ | |
| # define rtfFTypeNil 3 /* new in 1.10 */ | |
| # define rtfFTypeTrueType 4 /* new in 1.10 */ | |
| # define rtfFileAttr 24 /* new in 1.10 */ | |
| # define rtfFileNum 0 /* new in 1.10 */ | |
| # define rtfFileRelPath 1 /* new in 1.10 */ | |
| # define rtfFileOSNum 2 /* new in 1.10 */ | |
| # define rtfFileSource 25 /* new in 1.10 */ | |
| # define rtfSrcMacintosh 0 /* new in 1.10 */ | |
| # define rtfSrcDOS 1 /* new in 1.10 */ | |
| # define rtfSrcNTFS 2 /* new in 1.10 */ | |
| # define rtfSrcHPFS 3 /* new in 1.10 */ | |
| # define rtfSrcNetwork 4 /* new in 1.10 */ | |
| /* | |
| * Drawing attributes | |
| */ | |
| # define rtfDrawAttr 26 /* new in 1.10 */ | |
| # define rtfDrawLock 0 /* new in 1.10 */ | |
| # define rtfDrawPageRelX 1 /* new in 1.10 */ | |
| # define rtfDrawColumnRelX 2 /* new in 1.10 */ | |
| # define rtfDrawMarginRelX 3 /* new in 1.10 */ | |
| # define rtfDrawPageRelY 4 /* new in 1.10 */ | |
| # define rtfDrawColumnRelY 5 /* new in 1.10 */ | |
| # define rtfDrawMarginRelY 6 /* new in 1.10 */ | |
| # define rtfDrawHeight 7 /* new in 1.10 */ | |
| # define rtfDrawBeginGroup 8 /* new in 1.10 */ | |
| # define rtfDrawGroupCount 9 /* new in 1.10 */ | |
| # define rtfDrawEndGroup 10 /* new in 1.10 */ | |
| # define rtfDrawArc 11 /* new in 1.10 */ | |
| # define rtfDrawCallout 12 /* new in 1.10 */ | |
| # define rtfDrawEllipse 13 /* new in 1.10 */ | |
| # define rtfDrawLine 14 /* new in 1.10 */ | |
| # define rtfDrawPolygon 15 /* new in 1.10 */ | |
| # define rtfDrawPolyLine 16 /* new in 1.10 */ | |
| # define rtfDrawRect 17 /* new in 1.10 */ | |
| # define rtfDrawTextBox 18 /* new in 1.10 */ | |
| # define rtfDrawOffsetX 19 /* new in 1.10 */ | |
| # define rtfDrawSizeX 20 /* new in 1.10 */ | |
| # define rtfDrawOffsetY 21 /* new in 1.10 */ | |
| # define rtfDrawSizeY 22 /* new in 1.10 */ | |
| # define rtfCOAngle 23 /* new in 1.10 */ | |
| # define rtfCOAccentBar 24 /* new in 1.10 */ | |
| # define rtfCOBestFit 25 /* new in 1.10 */ | |
| # define rtfCOBorder 26 /* new in 1.10 */ | |
| # define rtfCOAttachAbsDist 27 /* new in 1.10 */ | |
| # define rtfCOAttachBottom 28 /* new in 1.10 */ | |
| # define rtfCOAttachCenter 29 /* new in 1.10 */ | |
| # define rtfCOAttachTop 30 /* new in 1.10 */ | |
| # define rtfCOLength 31 /* new in 1.10 */ | |
| # define rtfCONegXQuadrant 32 /* new in 1.10 */ | |
| # define rtfCONegYQuadrant 33 /* new in 1.10 */ | |
| # define rtfCOOffset 34 /* new in 1.10 */ | |
| # define rtfCOAttachSmart 35 /* new in 1.10 */ | |
| # define rtfCODoubleLine 36 /* new in 1.10 */ | |
| # define rtfCORightAngle 37 /* new in 1.10 */ | |
| # define rtfCOSingleLine 38 /* new in 1.10 */ | |
| # define rtfCOTripleLine 39 /* new in 1.10 */ | |
| # define rtfDrawTextBoxMargin 40 /* new in 1.10 */ | |
| # define rtfDrawTextBoxText 41 /* new in 1.10 */ | |
| # define rtfDrawRoundRect 42 /* new in 1.10 */ | |
| # define rtfDrawPointX 43 /* new in 1.10 */ | |
| # define rtfDrawPointY 44 /* new in 1.10 */ | |
| # define rtfDrawPolyCount 45 /* new in 1.10 */ | |
| # define rtfDrawArcFlipX 46 /* new in 1.10 */ | |
| # define rtfDrawArcFlipY 47 /* new in 1.10 */ | |
| # define rtfDrawLineBlue 48 /* new in 1.10 */ | |
| # define rtfDrawLineGreen 49 /* new in 1.10 */ | |
| # define rtfDrawLineRed 50 /* new in 1.10 */ | |
| # define rtfDrawLinePalette 51 /* new in 1.10 */ | |
| # define rtfDrawLineDashDot 52 /* new in 1.10 */ | |
| # define rtfDrawLineDashDotDot 53 /* new in 1.10 */ | |
| # define rtfDrawLineDash 54 /* new in 1.10 */ | |
| # define rtfDrawLineDot 55 /* new in 1.10 */ | |
| # define rtfDrawLineGray 56 /* new in 1.10 */ | |
| # define rtfDrawLineHollow 57 /* new in 1.10 */ | |
| # define rtfDrawLineSolid 58 /* new in 1.10 */ | |
| # define rtfDrawLineWidth 59 /* new in 1.10 */ | |
| # define rtfDrawHollowEndArrow 60 /* new in 1.10 */ | |
| # define rtfDrawEndArrowLength 61 /* new in 1.10 */ | |
| # define rtfDrawSolidEndArrow 62 /* new in 1.10 */ | |
| # define rtfDrawEndArrowWidth 63 /* new in 1.10 */ | |
| # define rtfDrawHollowStartArrow 64 /* new in 1.10 */ | |
| # define rtfDrawStartArrowLength 65 /* new in 1.10 */ | |
| # define rtfDrawSolidStartArrow 66 /* new in 1.10 */ | |
| # define rtfDrawStartArrowWidth 67 /* new in 1.10 */ | |
| # define rtfDrawBgFillBlue 68 /* new in 1.10 */ | |
| # define rtfDrawBgFillGreen 69 /* new in 1.10 */ | |
| # define rtfDrawBgFillRed 70 /* new in 1.10 */ | |
| # define rtfDrawBgFillPalette 71 /* new in 1.10 */ | |
| # define rtfDrawBgFillGray 72 /* new in 1.10 */ | |
| # define rtfDrawFgFillBlue 73 /* new in 1.10 */ | |
| # define rtfDrawFgFillGreen 74 /* new in 1.10 */ | |
| # define rtfDrawFgFillRed 75 /* new in 1.10 */ | |
| # define rtfDrawFgFillPalette 76 /* new in 1.10 */ | |
| # define rtfDrawFgFillGray 77 /* new in 1.10 */ | |
| # define rtfDrawFillPatIndex 78 /* new in 1.10 */ | |
| # define rtfDrawShadow 79 /* new in 1.10 */ | |
| # define rtfDrawShadowXOffset 80 /* new in 1.10 */ | |
| # define rtfDrawShadowYOffset 81 /* new in 1.10 */ | |
| /* | |
| * index entry attributes | |
| */ | |
| # define rtfIndexAttr 27 /* new in 1.10 */ | |
| # define rtfIndexNumber 0 /* new in 1.10 */ | |
| # define rtfIndexBold 1 /* reclassified in 1.10 */ | |
| # define rtfIndexItalic 2 /* reclassified in 1.10 */ | |
| /* | |
| * \wmetafile argument values | |
| */ | |
| # define rtfWmMmText 1 | |
| # define rtfWmMmLometric 2 | |
| # define rtfWmMmHimetric 3 | |
| # define rtfWmMmLoenglish 4 | |
| # define rtfWmMmHienglish 5 | |
| # define rtfWmMmTwips 6 | |
| # define rtfWmMmIsotropic 7 | |
| # define rtfWmMmAnisotropic 8 | |
| /* | |
| * \pmmetafile argument values | |
| */ | |
| # define rtfPmPuArbitrary 4 | |
| # define rtfPmPuPels 8 | |
| # define rtfPmPuLometric 12 | |
| # define rtfPmPuHimetric 16 | |
| # define rtfPmPuLoenglish 20 | |
| # define rtfPmPuHienglish 24 | |
| # define rtfPmPuTwips 28 | |
| /* | |
| * \lang argument values | |
| */ | |
| # define rtfLangNoLang 0x0400 | |
| # define rtfLangAlbanian 0x041c | |
| # define rtfLangArabic 0x0401 | |
| # define rtfLangBahasa 0x0421 | |
| # define rtfLangBelgianDutch 0x0813 | |
| # define rtfLangBelgianFrench 0x080c | |
| # define rtfLangBrazilianPortuguese 0x0416 | |
| # define rtfLangBulgarian 0x0402 | |
| # define rtfLangCatalan 0x0403 | |
| # define rtfLangLatinCroatoSerbian 0x041a | |
| # define rtfLangCzech 0x0405 | |
| # define rtfLangDanish 0x0406 | |
| # define rtfLangDutch 0x0413 | |
| # define rtfLangAustralianEnglish 0x0c09 | |
| # define rtfLangUKEnglish 0x0809 | |
| # define rtfLangUSEnglish 0x0409 | |
| # define rtfLangFinnish 0x040b | |
| # define rtfLangFrench 0x040c | |
| # define rtfLangCanadianFrench 0x0c0c | |
| # define rtfLangGerman 0x0407 | |
| # define rtfLangGreek 0x0408 | |
| # define rtfLangHebrew 0x040d | |
| # define rtfLangHungarian 0x040e | |
| # define rtfLangIcelandic 0x040f | |
| # define rtfLangItalian 0x0410 | |
| # define rtfLangJapanese 0x0411 | |
| # define rtfLangKorean 0x0412 | |
| # define rtfLangBokmalNorwegian 0x0414 | |
| # define rtfLangNynorskNorwegian 0x0814 | |
| # define rtfLangPolish 0x0415 | |
| # define rtfLangPortuguese 0x0816 | |
| # define rtfLangRhaetoRomanic 0x0417 | |
| # define rtfLangRomanian 0x0418 | |
| # define rtfLangRussian 0x0419 | |
| # define rtfLangCyrillicSerboCroatian 0x081a | |
| # define rtfLangSimplifiedChinese 0x0804 | |
| # define rtfLangSlovak 0x041b | |
| # define rtfLangCastilianSpanish 0x040a | |
| # define rtfLangMexicanSpanish 0x080a | |
| # define rtfLangSwedish 0x041d | |
| # define rtfLangSwissFrench 0x100c | |
| # define rtfLangSwissGerman 0x0807 | |
| # define rtfLangSwissItalian 0x0810 | |
| # define rtfLangThai 0x041e | |
| # define rtfLangTraditionalChinese 0x0404 | |
| # define rtfLangTurkish 0x041f | |
| # define rtfLangUrdu 0x0420 | |
| /* | |
| * CharSet indices | |
| */ | |
| # define rtfCSGeneral 0 /* general (default) charset */ | |
| # define rtfCSSymbol 1 /* symbol charset */ | |
| /* | |
| * Flags for auto-charset-processing. Both are on by default. | |
| */ | |
| # define rtfReadCharSet 0x01 /* auto-read charset files */ | |
| # define rtfSwitchCharSet 0x02 /* auto-switch charset maps */ | |
| /* | |
| * Style types | |
| */ | |
| # define rtfParStyle 0 /* the default */ | |
| # define rtfCharStyle 1 | |
| # define rtfSectStyle 2 | |
| /* | |
| * RTF font, color and style structures. Used for font table, | |
| * color table, and stylesheet processing. | |
| */ | |
| typedef struct RTFFont RTFFont; | |
| typedef struct RTFColor RTFColor; | |
| typedef struct RTFStyle RTFStyle; | |
| typedef struct RTFStyleElt RTFStyleElt; | |
| struct RTFFont | |
| { | |
| char *rtfFName; /* font name */ | |
| char *rtfFAltName; /* font alternate name */ | |
| int rtfFNum; /* font number */ | |
| int rtfFFamily; /* font family */ | |
| int rtfFCharSet; /* font charset */ | |
| int rtfFPitch; /* font pitch */ | |
| int rtfFType; /* font type */ | |
| int rtfFCodePage; /* font code page */ | |
| RTFFont *rtfNextFont; /* next font in list */ | |
| }; | |
| /* | |
| * Color values are -1 if the default color for the the color | |
| * number should be used. The default color is writer-dependent. | |
| */ | |
| struct RTFColor | |
| { | |
| int rtfCNum; /* color number */ | |
| int rtfCRed; /* red value */ | |
| int rtfCGreen; /* green value */ | |
| int rtfCBlue; /* blue value */ | |
| RTFColor *rtfNextColor; /* next color in list */ | |
| }; | |
| struct RTFStyle | |
| { | |
| char *rtfSName; /* style name */ | |
| int rtfSType; /* style type */ | |
| int rtfSAdditive; /* whether or not style is additive */ | |
| int rtfSNum; /* style number */ | |
| int rtfSBasedOn; /* style this one's based on */ | |
| int rtfSNextPar; /* style next paragraph style */ | |
| RTFStyleElt *rtfSSEList; /* list of style words */ | |
| int rtfExpanding; /* non-zero = being expanded */ | |
| RTFStyle *rtfNextStyle; /* next style in style list */ | |
| }; | |
| struct RTFStyleElt | |
| { | |
| int rtfSEClass; /* token class */ | |
| int rtfSEMajor; /* token major number */ | |
| int rtfSEMinor; /* token minor number */ | |
| int rtfSEParam; /* control symbol parameter */ | |
| char *rtfSEText; /* text of symbol */ | |
| RTFStyleElt *rtfNextSE; /* next element in style */ | |
| }; | |
| /* | |
| * Return pointer to new element of type t, or NULL | |
| * if no memory available. | |
| */ | |
| # define New(t) ((t *) RTFAlloc ((int) sizeof (t))) | |
| /* maximum number of character values representable in a byte */ | |
| # define charSetSize 256 | |
| /* charset stack size */ | |
| # define maxCSStack 10 | |
| struct _RTF_Info; | |
| typedef struct _RTF_Info RTF_Info; | |
| typedef void (*RTFFuncPtr) (RTF_Info *); /* generic function pointer */ | |
| struct _RTF_Info { | |
| /* | |
| * Public variables (listed in rtf.h) | |
| */ | |
| /* | |
| * Information pertaining to last token read by RTFToken. The | |
| * text is exactly as it occurs in the input file, e.g., "\{" | |
| * will be found in rtfTextBuf as "\{", even though it means "{". | |
| * These variables are also set when styles are reprocessed. | |
| */ | |
| int rtfClass; | |
| int rtfMajor; | |
| int rtfMinor; | |
| int rtfParam; | |
| int rtfFormat; | |
| char *rtfTextBuf; | |
| int rtfTextLen; | |
| long rtfLineNum; | |
| int rtfLinePos; | |
| /* | |
| * Private stuff | |
| */ | |
| int pushedChar; /* pushback char if read too far */ | |
| int pushedClass; /* pushed token info for RTFUngetToken() */ | |
| int pushedMajor; | |
| int pushedMinor; | |
| int pushedParam; | |
| char *pushedTextBuf; | |
| int prevChar; | |
| int bumpLine; | |
| RTFFont *fontList; /* these lists MUST be */ | |
| RTFColor *colorList; /* initialized to NULL */ | |
| RTFStyle *styleList; | |
| char *inputName; | |
| char *outputName; | |
| EDITSTREAM editstream; | |
| char InputBuffer[0x1000]; | |
| DWORD dwInputSize; | |
| DWORD dwInputUsed; | |
| /* edit window to output to */ | |
| HWND hwndEdit; | |
| /* | |
| * These arrays are used to map RTF input character values onto the standard | |
| * character names represented by the values. Input character values are | |
| * used as indices into the arrays to produce standard character codes. | |
| */ | |
| char *genCharSetFile ; | |
| int genCharCode[charSetSize]; /* general */ | |
| int haveGenCharSet; | |
| char *symCharSetFile; | |
| int symCharCode[charSetSize]; /* symbol */ | |
| int haveSymCharSet; | |
| int curCharSet; | |
| int *curCharCode; | |
| /* | |
| * By default, the reader is configured to handle charset mapping invisibly, | |
| * including reading the charset files and switching charset maps as necessary | |
| * for Symbol font. | |
| */ | |
| int autoCharSetFlags; | |
| /* | |
| * Stack for keeping track of charset map on group begin/end. This is | |
| * necessary because group termination reverts the font to the previous | |
| * value, which may implicitly change it. | |
| */ | |
| int csStack[maxCSStack]; | |
| int csTop; | |
| RTFFuncPtr ccb[rtfMaxClass]; /* class callbacks */ | |
| RTFFuncPtr dcb[rtfMaxDestination]; /* destination callbacks */ | |
| RTFFuncPtr readHook; | |
| RTFFuncPtr panicProc; | |
| FILE *(*libFileOpen) (); | |
| char *outMap[rtfSC_MaxChar]; | |
| DWORD dwOutputCount; | |
| char OutputBuffer[0x1000]; | |
| }; | |
| /* | |
| * Public RTF reader routines | |
| */ | |
| void RTFInit (RTF_Info *); | |
| void RTFSetInputName (RTF_Info *, char *); | |
| char *RTFGetInputName (RTF_Info *); | |
| void RTFSetOutputName (RTF_Info *, char *); | |
| char *RTFGetOutputName (RTF_Info *); | |
| void RTFSetClassCallback (RTF_Info *, int, RTFFuncPtr); | |
| RTFFuncPtr RTFGetClassCallback (RTF_Info *, int); | |
| void RTFSetDestinationCallback (RTF_Info *, int, RTFFuncPtr); | |
| RTFFuncPtr RTFGetDestinationCallback (RTF_Info *, int); | |
| void RTFRead (RTF_Info *); | |
| int RTFGetToken (RTF_Info *); /* writer should rarely need this */ | |
| void RTFUngetToken (RTF_Info *); | |
| int RTFPeekToken (RTF_Info *); | |
| void RTFSetToken (RTF_Info *, int, int, int, int, char *); | |
| void RTFSetReadHook (RTF_Info *, RTFFuncPtr); | |
| RTFFuncPtr RTFGetReadHook (RTF_Info *); | |
| void RTFRouteToken (RTF_Info *); | |
| void RTFSkipGroup (RTF_Info *); | |
| void RTFExpandStyle (RTF_Info *, int); | |
| int RTFCheckCM (RTF_Info *, int, int); | |
| int RTFCheckCMM (RTF_Info *, int, int, int); | |
| int RTFCheckMM (RTF_Info *, int, int); | |
| RTFFont *RTFGetFont (RTF_Info *, int); | |
| RTFColor *RTFGetColor (RTF_Info *, int); | |
| RTFStyle *RTFGetStyle (RTF_Info *, int); | |
| # define RTFAlloc(size) _RTFAlloc ((int) size) | |
| char *_RTFAlloc (int); | |
| char *RTFStrSave (char *); | |
| void RTFFree (char *); | |
| int RTFCharToHex ( char); | |
| int RTFHexToChar ( int ); | |
| void RTFSetMsgProc ( RTFFuncPtr ); | |
| void RTFSetPanicProc ( RTF_Info *, RTFFuncPtr); | |
| /* | |
| * The following messing around is used to allow RTFMsg() and RTFPanic() | |
| * to be variable-argument functions that are declared publicly but | |
| * without generating prototype-mismatch errors on systems that have | |
| * stdarg.h. | |
| */ | |
| void RTFMsg (RTF_Info *, char *fmt, ...); | |
| void RTFPanic (RTF_Info *, char *fmt, ...); | |
| int RTFReadOutputMap ( RTF_Info *, char *[], int); | |
| int RTFReadCharSetMap ( RTF_Info *, int); | |
| void RTFSetCharSetMap ( RTF_Info *, char *, int); | |
| int RTFStdCharCode ( RTF_Info *, char *); | |
| char *RTFStdCharName ( RTF_Info *, int); | |
| int RTFMapChar ( RTF_Info *, int); | |
| int RTFGetCharSet( RTF_Info * ); | |
| void RTFSetCharSet( RTF_Info *, int); | |
| /*char *RTFGetLibPrefix();*/ | |
| void RTFSetOpenLibFileProc ( RTF_Info *, FILE *(*)()); | |
| FILE *RTFOpenLibFile ( RTF_Info *, char *, char *); | |
| void RTFFlushOutputBuffer( RTF_Info *info ); | |
| void RTFSetEditStream(RTF_Info *, EDITSTREAM *es); | |
| #endif |