00001 /** 00002 * @file xfoifc.h 00003 * @brief AH Formatter C++ Interface 00004 * 00005 * @author Antenna House, Inc. 00006 * 00007 * 00008 * Copyright (C) 2002-2011 Antenna House, Inc. All rights reserved. 00009 */ 00010 00011 #ifndef XFOIFC_H__ 00012 #define XFOIFC_H__ 00013 00014 #ifndef __cplusplus 00015 #error This is a header for C++ compiler. 00016 #endif 00017 00018 #include <iostream> 00019 #include "xfoifc_c.h" /* include common definitions */ 00020 00021 namespace XfoInterface { 00022 00023 class XfoCppIfObject; 00024 00025 /*************************************************************** 00026 * Event class that returns the error information in the formatting process. 00027 */ 00028 class XFOINTERFACE_API MessageListener 00029 { 00030 public: 00031 MessageListener() {} 00032 virtual ~MessageListener() {} 00033 00034 /** 00035 * Event that returns the error information(error level, error code, error message) in the formatting process. 00036 * 00037 * errLevel - Returns the errorlevel 00038 * errCode - Returns the errorcode 00039 * errMessage - Returns the errormessage 00040 */ 00041 virtual void onMessage(XfoIfErrorLevel errLevel, XfoIfErrorCode errCode, const char* errMessage) {} 00042 virtual void onMessageW(XfoIfErrorLevel errLevel, XfoIfErrorCode errCode, const wchar_t* errMessage) {} 00043 00044 #if !defined(_DOXYGEN) && defined(_MSC_VER) 00045 /* Please do not use following methods directly. */ 00046 #ifdef _NATIVE_WCHAR_T_DEFINED 00047 virtual void onMessageW(XfoIfErrorLevel errLevel, XfoIfErrorCode errCode, const unsigned short* errMessage) {} 00048 #else 00049 virtual void onMessageW(XfoIfErrorLevel errLevel, XfoIfErrorCode errCode, const __wchar_t* errMessage) {} 00050 #endif 00051 #endif 00052 }; 00053 00054 /*************************************************************** 00055 * Event class that returns the page number in the formatting process. 00056 */ 00057 class XFOINTERFACE_API FormatPageListener 00058 { 00059 public: 00060 FormatPageListener() {} 00061 virtual ~FormatPageListener() {} 00062 00063 /** 00064 * Returns the formatted page number that occurred during the formatting process. 00065 * More than or equal to 1 : Page number when formatting finished. 00066 * 0 : All page formatting has finished. 00067 * -1 : Start of the first pass of 2 pass formatting. 00068 * -2 : Start of the second pass of 2 pass formatting. 00069 * 00070 * pageNo - Returns the page number 00071 */ 00072 virtual void onFormatPage(long pageNo) {} 00073 }; 00074 00075 /*************************************************************** 00076 * AH Formatter C++ Interface Object Class 00077 */ 00078 class XFOINTERFACE_API XfoObj 00079 { 00080 private: 00081 XfoCppIfObject* m_pXfoObj; /* instance of XfoObj */ 00082 00083 public: 00084 /** 00085 * Constructor 00086 */ 00087 XfoObj(); 00088 00089 /** 00090 * Destructor 00091 */ 00092 virtual ~XfoObj(); 00093 00094 /** 00095 * Get instance of XfoObj 00096 * 00097 * @return pointer to XfoObj instance. 00098 */ 00099 XfoCppIfObject* getXfoObj() const { return m_pXfoObj; } 00100 00101 /** 00102 * Get formatter type. 00103 * only after Formatter 5. 00104 * 00105 * @return type of formatter. 00106 */ 00107 XfoFORMATTERTYPE getFormatterType() const; 00108 00109 /** 00110 * Set formatter type. 00111 * only after Formatter 5. 00112 * 00113 * @param newVal type of formatter. 00114 */ 00115 void setFormatterType(XfoFORMATTERTYPE newVal); 00116 00117 /** 00118 * Get html default charset. 00119 * only after Formatter 5. 00120 * 00121 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00122 * the string is truncated and terminated with a NULL character. 00123 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00124 * @return Returns the 'pVal'. 00125 */ 00126 char* getHtmlDefaultCharset(char* pVal, int size) const; 00127 00128 /** 00129 * Get html default charset. 00130 * only after Formatter 5. 00131 * 00132 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00133 * the string is truncated and terminated with a NULL character. 00134 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00135 * @return Returns the 'pVal'. 00136 */ 00137 wchar_t* getHtmlDefaultCharsetW(wchar_t* pVal, int size) const; 00138 00139 /** 00140 * Set html default charset. 00141 * 00142 * @param newVal Pointer to a null-terminated string to be used as the html default charset. 00143 */ 00144 void setHtmlDefaultCharset(const char* newVal); 00145 00146 /** 00147 * Set html default charset. 00148 * 00149 * @param newVal Pointer to a null-terminated string to be used as the html default charset. 00150 */ 00151 void setHtmlDefaultCharsetW(const wchar_t* newVal); 00152 00153 /** 00154 * Get the URL of XML document you will format. 00155 * 00156 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00157 * the string is truncated and terminated with a NULL character. 00158 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00159 * @return Returns the 'pVal'. 00160 */ 00161 char* getDocumentURI(char* pVal, int size) const; 00162 /** 00163 * Get the URL of XML document you will format. 00164 * 00165 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00166 * the string is truncated and terminated with a NULL character. 00167 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00168 * @return Returns the 'pVal'. 00169 */ 00170 wchar_t* getDocumentURIW(wchar_t* pVal, int size) const; 00171 00172 /** 00173 * Specifies the URL of XML document you will format. 00174 * If it is omitted or "\@STDIN" is specified, XML document is loaded from stdin. 00175 * The document loaded from stdin are supposed to be FO files. 00176 * 00177 * @param newVal Pointer to a null-terminated string to be used as the URL of XML document. 00178 */ 00179 void setDocumentURI(const char* newVal); 00180 00181 /** 00182 * Specifies the URL of XML document you will format. 00183 * If it is omitted or "\@STDIN" is specified, XML document is loaded from stdin. 00184 * The document loaded from stdin are supposed to be FO files. 00185 * 00186 * @param newVal Pointer to a null-terminated string to be used as the URL of XML document. 00187 */ 00188 void setDocumentURIW(const wchar_t* newVal); 00189 00190 /** 00191 * Get the URI of XSL stylesheet for formatting. 00192 * 00193 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00194 * the string is truncated and terminated with a NULL character. 00195 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00196 * @return Returns the 'pVal'. 00197 */ 00198 char* getStylesheetURI(char* pVal, int size) const; 00199 /** 00200 * Get the URI of XSL stylesheet for formatting. 00201 * 00202 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00203 * the string is truncated and terminated with a NULL character. 00204 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00205 * @return Returns the 'pVal'. 00206 */ 00207 wchar_t* getStylesheetURIW(wchar_t* pVal, int size) const; 00208 00209 /** 00210 * Specifies the URI of XSL stylesheet for formatting. 00211 * If the specified XML document is FO, or the XML file contains the processing instruction 00212 * <?xml-stylesheet ...?> and the XSL stylesheet is specified, this setting is ignored. 00213 * Otherwise if there is no setting of this property, an error occurs. 00214 * 00215 * @param newVal Pointer to a null-terminated string to be used as the URL of XSL stylesheet. 00216 */ 00217 void setStylesheetURI(const char* newVal); 00218 00219 /** 00220 * Specifies the URI of XSL stylesheet for formatting. 00221 * If the specified XML document is FO, or the XML file contains the processing instruction 00222 * <?xml-stylesheet ...?> and the XSL stylesheet is specified, this setting is ignored. 00223 * Otherwise if there is no setting of this property, an error occurs. 00224 * 00225 * @param newVal Pointer to a null-terminated string to be used as the URL of XSL stylesheet. 00226 */ 00227 void setStylesheetURIW(const wchar_t* newVal); 00228 00229 /** 00230 * Append the path name of user stylesheet file which describes AH Formatter options. 00231 * @since 5.0 00232 * 00233 * @param newVal Pointer to a null-terminated string to be used as the path name of HTML user stylesheet file. 00234 */ 00235 void addUserStylesheetURI(const char* newVal); 00236 /** 00237 * Append the path name of user stylesheet file which describes AH Formatter options. 00238 * @since 5.0 00239 * 00240 * @param newVal Pointer to a null-terminated string to be used as the path name of HTML user stylesheet file. 00241 */ 00242 void addUserStylesheetURIW(const wchar_t* newVal); 00243 00244 /** 00245 * Get the prior stylesheet title. 00246 * 00247 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00248 * the string is truncated and terminated with a NULL character. 00249 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00250 * @return Returns the 'pVal'. 00251 */ 00252 char* getStylesheetTitle(char* pVal, int size) const; 00253 /** 00254 * Get the prior stylesheet title. 00255 * 00256 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00257 * the string is truncated and terminated with a NULL character. 00258 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00259 * @return Returns the 'pVal'. 00260 */ 00261 wchar_t* getStylesheetTitleW(wchar_t* pVal, int size) const; 00262 00263 /** 00264 * Set the prior stylesheet title. 00265 * 00266 * @param newVal Pointer to a null-terminated string to be used as the priority title. 00267 */ 00268 void setStylesheetTitle(const char* newVal); 00269 00270 /** 00271 * Set the prior stylesheet title. 00272 * 00273 * @param newVal Pointer to a null-terminated string to be used as the priority title. 00274 */ 00275 void setStylesheetTitleW(const wchar_t* newVal); 00276 00277 /** 00278 * Get the path name of the output file. 00279 * 00280 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00281 * the string is truncated and terminated with a NULL character. 00282 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00283 * @return Returns the 'pVal'. 00284 */ 00285 char* getOutputFilePath(char* pVal, int size) const; 00286 /** 00287 * Get the path name of the output file. 00288 * 00289 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00290 * the string is truncated and terminated with a NULL character. 00291 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00292 * @return Returns the 'pVal'. 00293 */ 00294 wchar_t* getOutputFilePathW(wchar_t* pVal, int size) const; 00295 00296 /** 00297 * Specifies the path name of the output file. When "\@STDOUT" is specified, it is considered as stdout. 00298 * If both the printer name and this property are specified, the formatted result will be stored in 00299 * the file by the printer driver. 00300 * When "\@PDF" is specified as output, the PDF is stored in the file specified by this property. 00301 * If the property is not specified, it is considered as stdout. 00302 * 00303 * @param newVal Pointer to a null-terminated string to be used as the path name of the output file. 00304 */ 00305 void setOutputFilePath(const char* newVal); 00306 /** 00307 * Specifies the path name of the output file. When "\@STDOUT" is specified, it is considered as stdout. 00308 * If both the printer name and this property are specified, the formatted result will be stored in 00309 * the file by the printer driver. 00310 * When "\@PDF" is specified as output, the PDF is stored in the file specified by this property. 00311 * If the property is not specified, it is considered as stdout. 00312 * 00313 * @param newVal Pointer to a null-terminated string to be used as the path name of the output file. 00314 */ 00315 void setOutputFilePathW(const wchar_t* newVal); 00316 00317 /** 00318 * Get the path name of XML-format Option setting file which describes AH Formatter options. 00319 * 00320 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00321 * the string is truncated and terminated with a NULL character. 00322 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00323 * @param n Specifies to get n-th URI. 0 means first URI. 00324 * @return Returns the 'pVal'. 00325 */ 00326 char* getOptionFileURI(char* pVal, int size, int n=0) const; 00327 /** 00328 * Get the path name of XML-format Option setting file which describes AH Formatter options. 00329 * 00330 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00331 * the string is truncated and terminated with a NULL character. 00332 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00333 * @param n Specifies to get n-th URI. 0 means first URI. 00334 * @return Returns the 'pVal'. 00335 */ 00336 wchar_t* getOptionFileURIW(wchar_t* pVal, int size, int n=0) const; 00337 00338 /** 00339 * Specifies the path name of XML-format Option setting file which describes AH Formatter options. 00340 * The set of former URIs is thrown away. 00341 * 00342 * @param newVal Pointer to a null-terminated string to be used as the path name of XML-format Option setting file. 00343 */ 00344 void setOptionFileURI(const char* newVal); 00345 /** 00346 * Specifies the path name of XML-format Option setting file which describes AH Formatter options. 00347 * The set of former URIs is thrown away. 00348 * 00349 * @param newVal Pointer to a null-terminated string to be used as the path name of XML-format Option setting file. 00350 */ 00351 void setOptionFileURIW(const wchar_t* newVal); 00352 00353 /** 00354 * Append the path name of XML-format Option setting file which describes AH Formatter options. 00355 * @since 3.1 00356 * 00357 * @param newVal Pointer to a null-terminated string to be used as the path name of XML-format Option setting file. 00358 */ 00359 void addOptionFileURI(const char* newVal); 00360 /** 00361 * Append the path name of XML-format Option setting file which describes AH Formatter options. 00362 * @since 3.1 00363 * 00364 * @param newVal Pointer to a null-terminated string to be used as the path name of XML-format Option setting file. 00365 */ 00366 void addOptionFileURIW(const wchar_t* newVal); 00367 00368 /** 00369 * Get the number of URIs of XML-format Option setting file which describes AH Formatter options. 00370 * @since 3.1 00371 * 00372 * @return Returns the number of URIs. 00373 */ 00374 int getOptionFileCount() const; 00375 00376 /** 00377 * Get the output FO file as the result of XSLT when the input files are an XML document and XSL stylesheet. 00378 * 00379 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00380 * the string is truncated and terminated with a NULL character. 00381 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00382 * @return Returns the 'pVal'. 00383 */ 00384 char* getOutputFOPath(char* pVal, int size) const; 00385 /** 00386 * Get the output FO file as the result of XSLT when the input files are an XML document and XSL stylesheet. 00387 * 00388 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00389 * the string is truncated and terminated with a NULL character. 00390 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00391 * @return Returns the 'pVal'. 00392 */ 00393 wchar_t* getOutputFOPathW(wchar_t* pVal, int size) const; 00394 00395 /** 00396 * Specifies the output FO file as the result of XSLT when the input files are an XML document and XSL stylesheet. 00397 * If the input file is FO, no file is outputted. When "\@STDOUT" is specified, it is considered as stdout. 00398 * If the setting is omitted, nothing outputs. 00399 * 00400 * @param newVal Pointer to a null-terminated string to be used as the path name of output FO file. 00401 */ 00402 void setOutputFOPath(const char* newVal); 00403 /** 00404 * Specifies the output FO file as the result of XSLT when the input files are an XML document and XSL stylesheet. 00405 * If the input file is FO, no file is outputted. When "\@STDOUT" is specified, it is considered as stdout. 00406 * If the setting is omitted, nothing outputs. 00407 * 00408 * @param newVal Pointer to a null-terminated string to be used as the path name of output FO file. 00409 */ 00410 void setOutputFOPathW(const wchar_t* newVal); 00411 00412 /** 00413 * Get the command line of External XSLT Processor. 00414 * 00415 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00416 * the string is truncated and terminated with a NULL character. 00417 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00418 * @return Returns the 'pVal'. 00419 */ 00420 char* getExternalXSLT(char* pVal, int size) const; 00421 /** 00422 * Get the command line of External XSLT Processor. 00423 * 00424 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00425 * the string is truncated and terminated with a NULL character. 00426 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00427 * @return Returns the 'pVal'. 00428 */ 00429 wchar_t* getExternalXSLTW(wchar_t* pVal, int size) const; 00430 00431 /** 00432 * Specifies the command line of External XSLT Processor. 00433 * If this is omitted, default MSXML3 will be used. For example: 00434 * <pre> 00435 * xslt \%param -o \%3 \%1 \%2</pre> 00436 * 00437 * These meanings are as follows.<pre> 00438 * \%1 : XML Document 00439 * \%2 : XSL Stylesheet 00440 * \%3 : XSLT Output File 00441 * \%param : xsl:param</pre> 00442 * \%1 to \%3 are used to express only parameter positions. Do not replace them actual file names. 00443 * In case you use XSL:param for external XSLT processor, set the parameter in XSLTParamFormat and SetXSLTParam. 00444 * 00445 * @param newVal Pointer to a null-terminated string to be used as the command line of External XSLT Processor. 00446 */ 00447 void setExternalXSLT(const char* newVal); 00448 /** 00449 * Specifies the command line of External XSLT Processor. 00450 * If this is omitted, default MSXML3 will be used. For example: 00451 * <pre> 00452 * xslt \%param -o \%3 \%1 \%2</pre> 00453 * 00454 * These meanings are as follows.<pre> 00455 * \%1 : XML Document 00456 * \%2 : XSL Stylesheet 00457 * \%3 : XSLT Output File 00458 * \%param : xsl:param</pre> 00459 * \%1 to \%3 are used to express only parameter positions. Do not replace them actual file names. 00460 * In case you use XSL:param for external XSLT processor, set the parameter in XSLTParamFormat and SetXSLTParam. 00461 * 00462 * @param newVal Pointer to a null-terminated string to be used as the command line of External XSLT Processor. 00463 */ 00464 void setExternalXSLTW(const wchar_t* newVal); 00465 00466 /** 00467 * Get the default base URI. 00468 * 00469 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00470 * the string is truncated and terminated with a NULL character. 00471 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00472 * @return Returns the 'pVal'. 00473 */ 00474 char* getBaseURI(char* pVal, int size) const; 00475 /** 00476 * Get the default base URI. 00477 * 00478 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00479 * the string is truncated and terminated with a NULL character. 00480 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00481 * @return Returns the 'pVal'. 00482 */ 00483 wchar_t* getBaseURIW(wchar_t* pVal, int size) const; 00484 00485 /** 00486 * Specifies the default base URI. 00487 * 00488 * @param newVal Pointer to a null-terminated string to be used as the default base URI. 00489 */ 00490 void setBaseURI(const char* newVal); 00491 /** 00492 * Specifies the default base URI. 00493 * 00494 * @param newVal Pointer to a null-terminated string to be used as the default base URI. 00495 */ 00496 void setBaseURIW(const wchar_t* newVal); 00497 00498 /** 00499 * Get the parameter format of xsl:param when using External XSLT Processor. 00500 * 00501 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00502 * the string is truncated and terminated with a NULL character. 00503 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00504 * @return Returns the 'pVal'. 00505 */ 00506 char* getXSLTParamFormat(char* pVal, int size) const; 00507 /** 00508 * Get the parameter format of xsl:param when using External XSLT Processor. 00509 * 00510 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 00511 * the string is truncated and terminated with a NULL character. 00512 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00513 * @return Returns the 'pVal'. 00514 */ 00515 wchar_t* getXSLTParamFormatW(wchar_t* pVal, int size); 00516 00517 /** 00518 * Specifies the parameter format of xsl:param when using External XSLT Processor. For example: 00519 * <pre> 00520 * -p \%p \%v</pre> 00521 * 00522 * These meanings are as follows.<pre> 00523 * \%p : Parameter Name 00524 * \%v : Parameter Value</pre> 00525 * 00526 * @param newVal Pointer to a null-terminated string to be used as the parameter format of xsl:param when using External XSLT Processor. 00527 */ 00528 void setXSLTParamFormat(const char* newVal); 00529 /** 00530 * Specifies the parameter format of xsl:param when using External XSLT Processor. For example: 00531 * <pre> 00532 * -p \%p \%v</pre> 00533 * 00534 * These meanings are as follows.<pre> 00535 * \%p : Parameter Name 00536 * \%v : Parameter Value</pre> 00537 * 00538 * @param newVal Pointer to a null-terminated string to be used as the parameter format of xsl:param when using External XSLT Processor. 00539 */ 00540 void setXSLTParamFormatW(const wchar_t* newVal); 00541 00542 /** 00543 * Get the start page number of document to output. 00544 * 00545 * @return start page number of document to output. 00546 */ 00547 long getStartPage() const; 00548 00549 /** 00550 * Specifies the start page number of document to output. 00551 * If the start page is omitted or the specified value is 0 or less, the start page is 00552 * considered from the first page. 00553 * If the setting is inconsistent, (for example, StartPage=5 EndPage=3) an error occurs. 00554 * 00555 * @param newVal start page number of output. 00556 */ 00557 void setStartPage(long newVal); 00558 00559 /** 00560 * Get the end page number of document to output. 00561 * 00562 * @return end page number of output. 00563 */ 00564 long getEndPage() const; 00565 00566 /** 00567 * Specifies the end page number of document to output. 00568 * If the end page is omitted or the specified value exceeds the actual page number, the end page 00569 * is considered as the last page. 00570 * If the setting is inconsistent, (for example, StartPage=5 EndPage=3) an error occurs. 00571 * 00572 * @param newVal end page number of output. 00573 */ 00574 void setEndPage(long newVal); 00575 00576 /** 00577 * @deprecated 00578 * Effective when outputting to PDF. 00579 * Specifies the master password for PDF. The password must be within 32 bytes. 00580 * @since 3.1 00581 * 00582 * @param newVal Pointer to a null-terminated string to be used as the master password. 00583 */ 00584 void setPdfMasterPassword(const char* newVal); 00585 00586 /** 00587 * @deprecated 00588 * Effective when outputting to PDF. 00589 * Specifies the master password for PDF. The password must be within 32 bytes. 00590 * @since 3.1 00591 * 00592 * @param newVal Pointer to a null-terminated string to be used as the master password. 00593 */ 00594 void setPdfMasterPasswordW(const wchar_t* newVal); 00595 00596 /** 00597 * Effective when outputting to PDF. 00598 * Specifies the owner password for PDF. The password must be within 32 bytes. 00599 * @since 3.1 00600 * 00601 * @param newVal Pointer to a null-terminated string to be used as the owner password. 00602 */ 00603 void setPdfOwnerPassword(const char* newVal); 00604 00605 /** 00606 * Effective when outputting to PDF. 00607 * Specifies the owner password for PDF. The password must be within 32 bytes. 00608 * @since 3.1 00609 * 00610 * @param newVal Pointer to a null-terminated string to be used as the owner password. 00611 */ 00612 void setPdfOwnerPasswordW(const wchar_t* newVal); 00613 00614 /** 00615 * Effective when outputting to PDF. 00616 * Specifies the user password for PDF. The password must be within 32 bytes. 00617 * @since 3.1 00618 * 00619 * @param newVal Pointer to a null-terminated string to be used as the user password. 00620 */ 00621 void setPdfUserPassword(const char* newVal); 00622 00623 /** 00624 * Effective when outputting to PDF. 00625 * Specifies the user password for PDF. The password must be within 32 bytes. 00626 * @since 3.1 00627 * 00628 * @param newVal Pointer to a null-terminated string to be used as the user password. 00629 */ 00630 void setPdfUserPasswordW(const wchar_t* newVal); 00631 00632 /** 00633 * Effective when outputting to PDF. 00634 * Disables printing the PDF file. 00635 * @since 3.1 00636 * 00637 * @param newVal If nonezero is specified, Disables printing the PDF file. 00638 */ 00639 void setPdfNoPrinting(long newVal); 00640 00641 /** 00642 * Effective when outputting to PDF. 00643 * Get disables printing the PDF file. 00644 * @since 3.1 00645 * 00646 * @return If zero is returned, Enables printing the PDF file. 00647 * If nonezero is returned, Disables printing the PDF file. 00648 */ 00649 long getPdfNoPrinting() const; 00650 00651 /** 00652 * Effective when outputting to PDF. 00653 * Disables making changes of the PDF file. 00654 * @since 3.1 00655 * 00656 * @param newVal If nonezero is specified, Disables making changes of the PDF file. 00657 */ 00658 void setPdfNoChanging(long newVal); 00659 00660 /** 00661 * Effective when outputting to PDF. 00662 * Get disables making changes of the PDF file. 00663 * @since 3.1 00664 * 00665 * @return If zero is returned, Enables making changes of the PDF file. 00666 * If nonezero is returned, Disables making changes of the PDF file. 00667 */ 00668 long getPdfNoChanging() const; 00669 00670 /** 00671 * Effective when outputting to PDF. 00672 * Disables copying the content of the PDF file. 00673 * @since 3.1 00674 * 00675 * @param newVal If nonezero is specified, Disables copying the content of the PDF file. 00676 */ 00677 void setPdfNoContentCopying(long newVal); 00678 00679 /** 00680 * Effective when outputting to PDF. 00681 * Get disables copying the content of the PDF file. 00682 * @since 3.1 00683 * 00684 * @return If zero is returned, Enables copying the content of the PDF file. 00685 * If nonezero is returned, Disables copying the content of the PDF file. 00686 */ 00687 long getPdfNoContentCopying() const; 00688 00689 /** 00690 * Effective when outputting to PDF. 00691 * Disables adding comments and form fields to the PDF file. 00692 * @since 3.1 00693 * 00694 * @param newVal If nonezero is specified, Disables adding comments and form fields to the PDF file. 00695 */ 00696 void setPdfNoAddingOrChangingComments(long newVal); 00697 00698 /** 00699 * Effective when outputting to PDF. 00700 * Get disables adding comments and form fields to the PDF file. 00701 * @since 3.1 00702 * 00703 * @return If zero is returned, Enables adding comments and form fields to the PDF file. 00704 * If nonezero is returned, Disables adding comments and form fields to the PDF file. 00705 */ 00706 long getPdfNoAddingOrChangingComments() const; 00707 00708 /** 00709 * Effective when outputting to PDF. 00710 * Set the version of PDF. 00711 * @since 3.1 00712 * 00713 * @param newVal Specifies the version of PDF. 00714 */ 00715 void setPdfVersion(XfoPDFVERSION newVal); 00716 00717 /** 00718 * Effective when outputting to PDF. 00719 * Get the version of PDF. 00720 * @since 3.1 00721 * 00722 * @return the version of PDF. 00723 */ 00724 XfoPDFVERSION getPdfVersion() const; 00725 00726 /** 00727 * Effective when outputting to PDF. 00728 * Disables filling in of form fields and signing of the PDF file. 00729 * This parameter is effective only when you specify PDF1.4 or later to PDF version. 00730 * @since 3.1 00731 * 00732 * @param newVal If nonezero is specified, Disables filling in of form fields and signing of the PDF file. 00733 */ 00734 void setPdfNoFillForm(long newVal); 00735 00736 /** 00737 * Effective when outputting to PDF. 00738 * Get disables filling in of form fields and signing of the PDF file. 00739 * @since 3.1 00740 * 00741 * @return If zero is returned, Enables filling in of form fields and signing of the PDF file. 00742 * If nonezero is returned, Disables filling in of form fields and signing of the PDF file. 00743 */ 00744 long getPdfNoFillForm() const; 00745 00746 /** 00747 * Effective when outputting to PDF. 00748 * Disables text access for screen reader devices of the PDF file. 00749 * This parameter is effective only when you specify 1.4 or later with PDF version. 00750 * @since 3.1 00751 * 00752 * @param newVal If nonezero is specified, Disables text access for screen reader devices of the PDF file. 00753 */ 00754 void setPdfNoAccessibility(long newVal); 00755 00756 /** 00757 * Effective when outputting to PDF. 00758 * Get disables text access for screen reader devices of the PDF file. 00759 * @since 3.1 00760 * 00761 * @return If zero is returned, Enables text access for screen reader devices of the PDF file. 00762 * If nonezero is returned, Disables text access for screen reader devices of the PDF file. 00763 */ 00764 long getPdfNoAccessibility() const; 00765 00766 /** 00767 * Effective when outputting to PDF. 00768 * Disables inserting, deleting and rotating the PDF pages. 00769 * This parameter is effective only when you specify 1.4 or later with PDF version 00770 * @since 3.1 00771 * 00772 * @param newVal If nonezero is specified, Disables inserting, deleting and rotating the PDF pages. 00773 */ 00774 void setPdfNoAssembleDoc(long newVal); 00775 00776 /** 00777 * Effective when outputting to PDF. 00778 * Get disables inserting, deleting and rotating the PDF pages. 00779 * @since 3.1 00780 * 00781 * @return If zero is returned, Enables inserting, deleting and rotating the PDF pages. 00782 * If nonezero is returned, Disables inserting, deleting and rotating the PDF pages. 00783 */ 00784 long getPdfNoAssembleDoc() const; 00785 00786 /** 00787 * Effective when outputting to PDF. 00788 * Specifies the key length when encrypting the PDF file during outputting. 00789 * The key length can be specified as either 40 or 128 (bit). 00790 * This parameter is effective only when you specify PDF1.4 or later with PDF version 00791 * @since 3.1 00792 * 00793 * @param newVal Specifies the key length. 00794 */ 00795 void setPdfEncryptLevel(XfoPDFENCRYPTLEVEL newVal); 00796 00797 /** 00798 * Effective when outputting to PDF. 00799 * Get the key length when encrypting the PDF file during outputting. 00800 * @since 3.1 00801 * 00802 * @return the key length. 00803 */ 00804 XfoPDFENCRYPTLEVEL getPdfEncryptLevel() const; 00805 00806 /** 00807 * Effective when outputting to PDF. 00808 * Gets the value of whether to embed all embeddable fonts in PDF. 00809 * @since 3.1 00810 * 00811 * @return the value of whether to embed all embeddable fonts 00812 */ 00813 long getPdfEmbedAllFonts() const; 00814 00815 /** 00816 * Effective when outputting to PDF. 00817 * Embeds all embeddable fonts in PDF to create. 00818 * @since 3.1 00819 * 00820 * @param newVal If the value is 'true' is specified, Embeds all embeddable fonts 00821 */ 00822 void setPdfEmbedAllFonts(long newVal); 00823 00824 /** 00825 * Effective when outputting to PDF. 00826 * Gets the font specified to be embedded in PDF. 00827 * @since 3.1 00828 * 00829 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, the string is truncated and terminated with a NULL character. 00830 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00831 * @return the font specified to be embedded 00832 */ 00833 char* getPdfEmbedFonts(char* pVal, int size) const; 00834 00835 /** 00836 * Effective when outputting to PDF. 00837 * Gets the font specified to be embedded in PDF. 00838 * @since 3.1 00839 * 00840 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, the string is truncated and terminated with a NULL character. 00841 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 00842 * @return the font specified to be embedded 00843 */ 00844 wchar_t* getPdfEmbedFontsW(wchar_t* pVal, int size) const; 00845 00846 /** 00847 * Effective when outputting to PDF. 00848 * Embeds the specified font in PDF to create. If you want to specify plural fonts, put commas between fonts. 00849 * @since 3.1 00850 * 00851 * @param newVal fonts specified to embed 00852 */ 00853 void setPdfEmbedFonts(const char* newVal); 00854 00855 /** 00856 * Effective when outputting to PDF. 00857 * Embeds the specified font in PDF to create. If you want to specify plural fonts, put commas between fonts. 00858 * @since 3.1 00859 * 00860 * @param newVal fonts specified to embed 00861 */ 00862 void setPdfEmbedFontsW(const wchar_t* newVal); 00863 00864 /** 00865 * Effective when outputting to PDF. 00866 * Gets the value of whether to issues the error when failing to embed fonts. 00867 * @since 3.1 00868 * 00869 * @return the value of whether to issues the error 00870 */ 00871 long getPdfErrorOnEmbedFault() const; 00872 00873 /** 00874 * Effective when outputting to PDF. 00875 * An error is issued in case of failing to embed fonts. 00876 * @since 3.1 00877 * 00878 * @param newVal If the value is 'true' is specified, an error is issued. 00879 */ 00880 void setPdfErrorOnEmbedFault(long newVal); 00881 00882 /** 00883 * Effective when outputting to PDF. 00884 * Gets the value of whether to issues the error when missing glyph. 00885 * @since 3.3 00886 * 00887 * @return the value of whether to issues the error 00888 */ 00889 long getPdfErrorOnMissingGlyph() const; 00890 00891 /** 00892 * Effective when outputting to PDF. 00893 * An error is issued in case of missing glyph. 00894 * @since 3.3 00895 * 00896 * @param newVal If the value is 'true' is specified, an error is issued. 00897 */ 00898 void setPdfErrorOnMissingGlyph(long newVal); 00899 00900 /** 00901 * Effective when outputting to PDF. 00902 * Subset embedded fonts when percent of characters used is less than. 00903 * @since 5.2 00904 * 00905 * @return the value of percent to embeds subset font 00906 */ 00907 long getPdfEmbedSubsetFontPercentage() const; 00908 00909 /** 00910 * Effective when outputting to PDF. 00911 * Subset embedded fonts when percent of characters used is less than. 00912 * @since 5.2 00913 * 00914 * @param newVal percent to embeds subset font 00915 */ 00916 void setPdfEmbedSubsetFontPercentage(long newVal); 00917 00918 /** 00919 * Effective when outputting to PDF. 00920 * Gets the value of whether to print the resulting PDF file or not. 00921 * @since 3.1 00922 * 00923 * <table border="0" cellspacing="0" cellpadding="0"> 00924 * <tr><td>PRALLOW_NONE </td><td>= 0 Not Allowed</td></tr> 00925 * <tr><td>PRALLOW_LOW </td><td>= 1 Low Resolution Printing</td></tr> 00926 * <tr><td>PRALLOW_HIGH </td><td>= 2 High Resolution Printing</td></tr> 00927 * </table> 00928 * 00929 * @return the value of printing allowed 00930 */ 00931 XfoPDFPRINTALLOW getPdfPrintingAllowed() const; 00932 00933 /** 00934 * Effective when outputting to PDF. 00935 * Spesifies whether to permit printing PDF to create with one of the following values. 00936 * This parameter is effective only when you specify PDF1.4 or later to PDF version (setPdfVersion). 00937 * @since 3.1 00938 * 00939 * <table border="0" cellspacing="0" cellpadding="0"> 00940 * <tr><td>PRALLOW_NONE </td><td>= 0 Not Allowed</td></tr> 00941 * <tr><td>PRALLOW_LOW </td><td>= 1 Low Resolution Printing</td></tr> 00942 * <tr><td>PRALLOW_HIGH </td><td>= 2 High Resolution Printing</td></tr> 00943 * </table> 00944 * 00945 * @param newVal the value of printing allowed 00946 */ 00947 void setPdfPrintingAllowed(XfoPDFPRINTALLOW newVal); 00948 00949 /** 00950 * Effective when outputting to PDF. 00951 * Gets the value of how to compress the color images embedded in PDF. 00952 * @since 3.1 00953 * 00954 * <table border="0" cellspacing="0" cellpadding="0"> 00955 * <tr><td>IMGCMPR_AUTO </td><td>= 0 JPEG or ZLIB compression</td></tr> 00956 * <tr><td>IMGCMPR_JPEG </td><td>= 1 JPEG compression</td></tr> 00957 * <tr><td>IMGCMPR_ZLIB </td><td>= 2 ZLIB compression</td></tr> 00958 * <tr><td>IMGCMPR_JPEG2K </td><td>= 3 JPEG 2000 compression (PDF1.5 or later)</td></tr> 00959 * <tr><td>IMGCMPR_KEEPLZW </td><td>= 4 LZW or JPEG or ZLIB compression</td></tr> 00960 * <tr><td>IMGCMPR_AUTO2K </td><td>= 5 JPEG 2000 or JPEG or ZLIB compression (PDF1.5 or later)</td></tr> 00961 * <tr><td>IMGCMPR_KEEPLZW2K</td><td>= 6 LZW or JPEG 2000 or JPEG or ZLIB compression (PDF1.5 or later)</td></tr> 00962 * </table> 00963 * 00964 * @return the value of how raster graphics are compressed and stored 00965 */ 00966 XfoPDFIMAGECOMPRESSION getPdfImageCompression() const; 00967 00968 /** 00969 * Effective when outputting to PDF. 00970 * When the color image format cannot be stored directly in PDF, the image is stored after being transformed into the bit map format which is compatible with PDF. The compression method of the data stored in a PDF file is then specified by one of the following values.<BR> 00971 * When IMGCMPR_AUTO is selected, the process is automatically done and creates the image data according to the setting of setPdfJPEGQuality and setPdfRasterizeResolution. Whichever has the smaller compressed size, JPEG or ZLIB, is selected. <BR> 00972 This is the setting for the color image. Spesify setPdfGrayscaleImageCompression for the grayscale image, and setPdfMonochromeImageCompression for the monochrome image. 00973 * @since 3.1 00974 * 00975 * <table border="0" cellspacing="0" cellpadding="0"> 00976 * <tr><td>IMGCMPR_AUTO </td><td>= 0 JPEG or ZLIB compression</td></tr> 00977 * <tr><td>IMGCMPR_JPEG </td><td>= 1 JPEG compression</td></tr> 00978 * <tr><td>IMGCMPR_ZLIB </td><td>= 2 ZLIB compression</td></tr> 00979 * <tr><td>IMGCMPR_JPEG2K </td><td>= 3 JPEG 2000 compression (PDF1.5 or later)</td></tr> 00980 * <tr><td>IMGCMPR_KEEPLZW </td><td>= 4 LZW or JPEG or ZLIB compression</td></tr> 00981 * <tr><td>IMGCMPR_AUTO2K </td><td>= 5 JPEG 2000 or JPEG or ZLIB compression (PDF1.5 or later)</td></tr> 00982 * <tr><td>IMGCMPR_KEEPLZW2K</td><td>= 6 LZW or JPEG 2000 or JPEG or ZLIB compression (PDF1.5 or later)</td></tr> 00983 * </table> 00984 * 00985 * @param newVal the value of how raster graphics are compressed and stored 00986 */ 00987 void setPdfImageCompression(XfoPDFIMAGECOMPRESSION newVal); 00988 00989 /** 00990 * Gets the value of the quality of JPEG format that is specified by xfo_setPdfImageCompression() stored in PDF. 00991 * @since 3.1 00992 * 00993 * @return the value of the quality of JPEG format 00994 */ 00995 int getPdfJPEGQuality() const; 00996 00997 /** 00998 * Effective when outputting to PDF. 00999 * For the color image format that can not be stored directly in PDF, specifies the image quality by the numerical value within the range of 1-100 when IMGCMPR_JPEG is specified by setPdfImageCompression. The quality becomes higher in proportion to the increase in the number; however the file size also becomes larger.<BR> 01000 * CAUTION: It is not for changing the quality of a JPEG format image.<BR> 01001 * This is the setting for the color image. Spesify setPdfGrayscaleJPEGQuality for the grayscale image. 01002 * @since 3.1 01003 * 01004 * @param newVal the value of the quality of JPEG format 01005 */ 01006 void setPdfJPEGQuality(int newVal); 01007 01008 /** 01009 * Effective when outputting to PDF. 01010 * Gets the value of whether the text and the line art in PDF are compressed in order to make the size of PDF smaller or not. 01011 * @since 3.1 01012 * 01013 * @return the value of whether make the size of PDF smaller or not 01014 */ 01015 long getPdfCompressContentStream() const; 01016 01017 /** 01018 * Effective when outputting to PDF. 01019 * Specifies whether the text and the line art in PDF are compressed in order to make the size of PDF smaller or not. 01020 * @since 3.1 01021 * 01022 * @param newVal If the value is 'true' is specified, make the PDF compress 01023 */ 01024 void setPdfCompressContentStream(long newVal); 01025 01026 /** 01027 * Effective when outputting to PDF. 01028 * Gets the value of how to transform external link specified by the relative address in the PDF link. 01029 * @since 3.1 01030 * 01031 * @return the value of how to transform external link 01032 */ 01033 long getPdfUseLaunchForRelativeURI() const; 01034 01035 /** 01036 * Effective when outputting to PDF. 01037 * Specifies whether the external link specified by the relative address is transformed into 'Open the file' or into 'World Wide Web link' in the PDF link properties. 01038 * @since 3.1 01039 * 01040 * @param newVal If nonezero is specified, it is transformed to 'Open the file'. If zero is specified, it is transformed to 'World Wide Web link' 01041 */ 01042 void setPdfUseLaunchForRelativeURI(long newVal); 01043 01044 /** 01045 * Effective when outputting to PDF. 01046 * Gets the value of how to convert the RGB color space (DebiceRGB) to DeviceGray. 01047 * @since 3.1 01048 * 01049 * <table border="0" cellspacing="0" cellpadding="0"> 01050 * <tr><td>RGBCONV_NONE </td><td>= 0 No Conversion</td></tr> 01051 * <tr><td>RGBCONV_BLACK </td><td>= 1 Black to DeviceGray</td></tr> 01052 * <tr><td>RGBCONV_GRAY </td><td>= 2 Gray to DeviceGray</td></tr> 01053 * <tr><td>RGBCONV_ALL </td><td>= 3 All RGB to DeviceGray</td></tr> 01054 * </table> 01055 * 01056 * @return the value of how to convert 01057 */ 01058 XfoPDFRGBCONVERSION getPdfRGBConversion() const; 01059 01060 /** 01061 * Effective when outputting to PDF. 01062 * Specifies how to convert the RGB color space (DeviceRGB) to DeviceGray. 01063 * @since 3.1 01064 * 01065 * <table border="0" cellspacing="0" cellpadding="0"> 01066 * <tr><td>RGBCONV_NONE </td><td>= 0 No Conversion</td></tr> 01067 * <tr><td>RGBCONV_BLACK </td><td>= 1 Black to DeviceGray</td></tr> 01068 * <tr><td>RGBCONV_GRAY </td><td>= 2 Gray to DeviceGray</td></tr> 01069 * <tr><td>RGBCONV_ALL </td><td>= 3 All RGB to DeviceGray</td></tr> 01070 * </table> 01071 * 01072 * @param newVal the value of how to convert 01073 */ 01074 void setPdfRGBConversion(XfoPDFRGBCONVERSION newVal); 01075 01076 #if defined(_DOXYGEN) || (defined(_MSC_VER) && defined(_WIN32)) 01077 01078 /** 01079 * Effective when outputting to PDF. 01080 * Gets the value of the rasterised-resolution of the transformed raster images. 01081 * @since 3.1 01082 * 01083 * @return Rasterised-resolution 01084 */ 01085 int getPdfRasterizeResolution() const; 01086 01087 /** 01088 * Effective when outputting to PDF. 01089 * Specifies the value of the rasterised-resolution of the transformed raster images in the range from 70 to 500(dpi). SVG, EMF and WMF are drawn in PDF as vectors without being transformed to raster images. 01090 * This setting is effective only with Windows version. 01091 * @since 3.1 01092 * 01093 * @param newVal Rasterised-resolution (70 to 500) 01094 */ 01095 void setPdfRasterizeResolution(int newVal); 01096 01097 #endif 01098 01099 /** 01100 * Effective when outputting to PDF. 01101 * Gets the value of whether to output linearize PDF or not. 01102 * @since 3.3 01103 * 01104 * @return the value of whether to output linearize pdf or not. 01105 */ 01106 long getPdfLinearize() const; 01107 01108 /** 01109 * Effective when outputting to PDF. 01110 * Specifies whether to output linearize PDF or not. 01111 * @since 3.3 01112 * 01113 * @param newVal If the value is 'true' is specified, output linearlize PDF. 01114 */ 01115 void setPdfLinearize(long newVal); 01116 01117 #if defined(_DOXYGEN) || (defined(_MSC_VER) && defined(_WIN32)) 01118 01119 /** 01120 * Effective when outputting to PDF. 01121 * Gets the value of whether to sign a signature to PDF or not. 01122 * @since 4.2 01123 * 01124 * @return the value of whether to sign a signature to PDF or not. 01125 */ 01126 long getPdfSignature() const; 01127 01128 /** 01129 * Effective when outputting to PDF. 01130 * Specifies whether to sign a signature to PDF or not. 01131 * @since 4.2 01132 * 01133 * @param newVal If the value is 'true' is specified, sign a signature to PDF. 01134 */ 01135 void setPdfSignature(long newVal); 01136 01137 /** 01138 * Effective when outputting to PDF. 01139 * Gets the value of a signature information name. 01140 * @since 4.2 01141 * 01142 * @return the value of a signature information name. 01143 */ 01144 char* getPdfSignatureName(char* pVal, int size) const; 01145 01146 /** 01147 * Effective when outputting to PDF. 01148 * Gets the value of a signature information name. 01149 * @since 4.2 01150 * 01151 * @return the value of a signature information name. 01152 */ 01153 wchar_t* getPdfSignatureNameW(wchar_t* pVal, int size) const; 01154 01155 /** 01156 * Effective when outputting to PDF. 01157 * Sets a signature information name. 01158 * @since 4.2 01159 * 01160 * @param newVal the value of a signature information name. 01161 */ 01162 void setPdfSignatureName(const char* newVal); 01163 01164 /** 01165 * Effective when outputting to PDF. 01166 * Sets a signature information name. 01167 * @since 4.2 01168 * 01169 * @param newVal the value of a signature information name. 01170 */ 01171 void setPdfSignatureNameW(const wchar_t* newVal); 01172 01173 /** 01174 * Effective when outputting to PDF. 01175 * Gets the value of a certificate information name. 01176 * @since 4.2 01177 * 01178 * @return the value of a certificate information name. 01179 */ 01180 char* getPdfCertificateName(char* pVal, int size) const; 01181 01182 /** 01183 * Effective when outputting to PDF. 01184 * Gets the value of a certificate information name. 01185 * @since 4.2 01186 * 01187 * @return the value of a certificate information name. 01188 */ 01189 wchar_t* getPdfCertificateNameW(wchar_t* pVal, int size) const; 01190 01191 /** 01192 * Effective when outputting to PDF. 01193 * Sets a certificate information name. 01194 * @since 4.2 01195 * 01196 * @param newVal the value of a certificate information name. 01197 */ 01198 void setPdfCertificateName(const char* newVal); 01199 01200 /** 01201 * Effective when outputting to PDF. 01202 * Sets a certificate information name. 01203 * @since 4.2 01204 * 01205 * @param newVal the value of a certificate information name. 01206 */ 01207 void setPdfCertificateNameW(const wchar_t* newVal); 01208 01209 #endif 01210 01211 /** 01212 * Effective when outputting to PDF. 01213 * Gets the value of whether to embed all embeddable fonts 01214 * @since 3.3 01215 * 01216 * <table border="0" cellspacing="0" cellpadding="0"> 01217 * <tr><td>EMBALLFONT_PART </td><td>= 0 Specified fonts </td></tr> 01218 * <tr><td>EMBALLFONT_ALL </td><td>= 1 All fonts except Base14 fonts</td></tr> 01219 * <tr><td>EMBALLFONT_BASE14 </td><td>= 2 All fonts</td></tr> 01220 * </table> 01221 * 01222 * @return the value of whether to embed all embeddable fonts 01223 */ 01224 XfoEMBEDALLFONT getPdfEmbedAllFontsEx(void) const; 01225 01226 /** 01227 * Effective when outputting to PDF. 01228 * Specifies whether to embed the all outline data of fonts in PDF or not with one of the following values, which are True type fonts and Type1 Fonts and are embeddable in the formatted result. 01229 * @since 3.3 01230 * 01231 * <table border="0" cellspacing="0" cellpadding="0"> 01232 * <tr><td>EMBALLFONT_PART </td><td>= 0 Specified fonts </td></tr> 01233 * <tr><td>EMBALLFONT_ALL </td><td>= 1 All fonts except Base14 fonts</td></tr> 01234 * <tr><td>EMBALLFONT_BASE14 </td><td>= 2 All fonts</td></tr> 01235 * </table> 01236 * 01237 *If the value is EMBALLFONT_PART, only fonts specified in setPdfEmbedFonts are embedded. If the value is EMBALLFONT_ALL, all fonts that can be embedded except Base 14 fonts will be embedded. If the value is EMBALLFONT_BASE14, all fonts including Base 14 fonts that can be embedded will be embedded. 01238 * 01239 * @param newVal the value of whether to embed all embeddable fonts 01240 */ 01241 void setPdfEmbedAllFontsEx(XfoEMBEDALLFONT newVal); 01242 01243 /** 01244 * Effective when outputting to PDF. 01245 * Gets the value of method to downsample the color image 01246 * @since 3.3 01247 * 01248 * @return the value of method to downsample the color image 01249 */ 01250 XfoIMAGEDOWNSAMPLING getPdfImageDownSampling(void) const; 01251 01252 /** 01253 * Effective when outputting to PDF. 01254 * Specifies the following either of method to downsample the color image that is put into PDF. 01255 * @since 3.3 01256 * 01257 * <table border="0" cellspacing="0" cellpadding="0"> 01258 * <tr><td>IMGDOWNSAMPLING_NONE </td><td>= 0 No downsampling </td></tr> 01259 * <tr><td>IMGDOWNSAMPLING_AVERAGE </td><td>= 1 Average downsamplin</td></tr> 01260 * <tr><td>IMGDOWNSAMPLING_BICUBIC </td><td>= 2 Bicubic downsampling</td></tr> 01261 * <tr><td>IMGDOWNSAMPLING_SUBSAMPLING </td><td>= 3 Subsampling</td></tr> 01262 * </table> 01263 * 01264 * When the value except IMGDOWNSAMPLING_NONE is specified, the image that has the resolution larger than the one specified by setPdfImageDownSamplingDPI will be downsampled into the resolution specified by setPdfImageDownSamplingTarget. 01265 This is the setting for the color image. Spesify setPdfGrayscaleImageDownSampling for the grayscale image, and setPdfMonochromeImageDownSampling for the monochrome image. 01266 * 01267 * @param newVal the value of method to downsample the color image 01268 */ 01269 void setPdfImageDownSampling(XfoIMAGEDOWNSAMPLING newVal); 01270 01271 /** 01272 * Effective when outputting to PDF. 01273 * Gets resolution when the color image is downsampled. 01274 * @since 3.3 01275 * 01276 * @return the value of resolution. 01277 */ 01278 int getPdfImageDownSamplingTarget(void) const; 01279 01280 /** 01281 * Effective when outputting to PDF. 01282 * Set resolution when the color image is downsampled. 01283 * @since 3.3 01284 * 01285 * @param newVal the value of resolution. 01286 */ 01287 void setPdfImageDownSamplingTarget(int newVal); 01288 01289 /** 01290 * Effective when outputting to PDF. 01291 * Gets resolution of the color image which performs a downsampling. 01292 * @since 3.3 01293 * 01294 * @return the value of resolution. 01295 */ 01296 int getPdfImageDownSamplingDPI(void) const; 01297 01298 /** 01299 * Effective when outputting to PDF. 01300 * Set resolution of the color image which performs a downsampling. 01301 * @since 3.3 01302 * 01303 * @param newVal the value of resolution. 01304 */ 01305 void setPdfImageDownSamplingDPI(int newVal); 01306 01307 /** 01308 * Effective when outputting to PDF. 01309 * Gets specification whether to embed to PDF the color profile of the color image that will be embedded to PDF. 01310 * @since 3.3 01311 * 01312 * @return If nonezero is specified, it is embedded. If zero is specified, it is not embedded. 01313 */ 01314 long getPdfPutImageColorProfile(void) const; 01315 01316 /** 01317 * Effective when outputting to PDF. 01318 * Specifies whether to embed to PDF the color profile of the color image that will be embedded to PDF. 01319 * @since 3.3 01320 * 01321 * @param newVal If nonezero is specified, it is embedded. If zero is specified, it is not embedded. 01322 */ 01323 void setPdfPutImageColorProfile(long newVal); 01324 01325 /** 01326 * Effective when outputting to PDF. 01327 * Gets the value of how to compress the grayscale images embedded in PDF. 01328 * @since 3.3 01329 * 01330 * <table border="0" cellspacing="0" cellpadding="0"> 01331 * <tr><td>IMGCMPR_AUTO </td><td>= 0 JPEG or ZLIB compression</td></tr> 01332 * <tr><td>IMGCMPR_JPEG </td><td>= 1 JPEG compression</td></tr> 01333 * <tr><td>IMGCMPR_ZLIB </td><td>= 2 ZLIB compression</td></tr> 01334 * <tr><td>IMGCMPR_JPEG2K </td><td>= 3 JPEG 2000 compression (PDF1.5 or later)</td></tr> 01335 * <tr><td>IMGCMPR_KEEPLZW </td><td>= 4 LZW or JPEG or ZLIB compression</td></tr> 01336 * <tr><td>IMGCMPR_AUTO2K </td><td>= 5 JPEG 2000 or JPEG or ZLIB compression (PDF1.5 or later)</td></tr> 01337 * <tr><td>IMGCMPR_KEEPLZW2K</td><td>= 6 LZW or JPEG 2000 or JPEG or ZLIB compression (PDF1.5 or later)</td></tr> 01338 * </table> 01339 * 01340 * @return the value of how raster graphics are compressed and stored 01341 */ 01342 XfoPDFIMAGECOMPRESSION getPdfGrayscaleImageCompression(void) const; 01343 01344 /** 01345 * Effective when outputting to PDF. 01346 * When the grayscale image format cannot be stored directly in PDF, the image is stored after being transformed into the bit map format which is compatible with PDF. The compression method of the data stored in a PDF file is then specified by one of the following values.<BR> 01347 * When IMGCMPR_AUTO is selected, the process is automatically done and creates the image data according to the setting of setPdfGrayscaleJPEGQuality and setPdfRasterizeResolution. Whichever has the smaller compressed size, JPEG or ZLIB, is selected. <BR> 01348 This is the setting for the grayscale image. Spesify setPdfImageCompression for the color image, and setPdfMonochromeImageCompression for the monochrome image. 01349 * @since 3.3 01350 * 01351 * <table border="0" cellspacing="0" cellpadding="0"> 01352 * <tr><td>IMGCMPR_AUTO </td><td>= 0 JPEG or ZLIB compression</td></tr> 01353 * <tr><td>IMGCMPR_JPEG </td><td>= 1 JPEG compression</td></tr> 01354 * <tr><td>IMGCMPR_ZLIB </td><td>= 2 ZLIB compression</td></tr> 01355 * <tr><td>IMGCMPR_JPEG2K </td><td>= 3 JPEG 2000 compression (PDF1.5 or later)</td></tr> 01356 * <tr><td>IMGCMPR_KEEPLZW </td><td>= 4 LZW or JPEG or ZLIB compression</td></tr> 01357 * <tr><td>IMGCMPR_AUTO2K </td><td>= 5 JPEG 2000 or JPEG or ZLIB compression (PDF1.5 or later)</td></tr> 01358 * <tr><td>IMGCMPR_KEEPLZW2K</td><td>= 6 LZW or JPEG 2000 or JPEG or ZLIB compression (PDF1.5 or later)</td></tr> 01359 * </table> 01360 * 01361 * @param newVal the value of how raster graphics are compressed and stored 01362 */ 01363 void setPdfGrayscaleImageCompression(XfoPDFIMAGECOMPRESSION newVal); 01364 01365 /** 01366 * Effective when outputting to PDF. 01367 * Gets the value of the quality of JPEG format that is specified by xfo_setPdfGrayscaleImageCompression stored in PDF. 01368 * @since 3.3 01369 * 01370 * @return the value of the quality of JPEG format 01371 */ 01372 int getPdfGrayscaleJPEGQuality(void) const; 01373 01374 /** 01375 * Effective when outputting to PDF. 01376 * For the grayscale image format that can not be stored directly in PDF, specifies the image quality by the numerical value within the range of 1-100 when IMGCMPR_JPEG is specified by setPdfGrayscaleImageCompression. The quality becomes higher in proportion to the increase in the number; however the file size also becomes larger.<BR> 01377 * CAUTION: It is not for changing the quality of a JPEG format image.<BR> 01378 * This is the setting for the grayscale image. Spesify setPdfJPEGQuality for the color image. 01379 * @since 3.3 01380 * 01381 * @param newVal the value of the quality of JPEG format 01382 */ 01383 void setPdfGrayscaleJPEGQuality(int newVal); 01384 01385 /** 01386 * Effective when outputting to PDF. 01387 * Gets the value of method to downsample the grayscale image 01388 * @since 3.3 01389 * 01390 * @return the value of method to downsample the grayscale image 01391 */ 01392 XfoIMAGEDOWNSAMPLING getPdfGrayscaleImageDownSampling(void) const; 01393 01394 /** 01395 * Effective when outputting to PDF. 01396 * Specifies the following either of method to downsample the grayscale image that is put into PDF. 01397 * @since 3.3 01398 * 01399 * <table border="0" cellspacing="0" cellpadding="0"> 01400 * <tr><td>IMGDOWNSAMPLING_NONE </td><td>= 0 No downsampling </td></tr> 01401 * <tr><td>IMGDOWNSAMPLING_AVERAGE </td><td>= 1 Average downsamplin</td></tr> 01402 * <tr><td>IMGDOWNSAMPLING_BICUBIC </td><td>= 2 Bicubic downsampling</td></tr> 01403 * <tr><td>IMGDOWNSAMPLING_SUBSAMPLING </td><td>= 3 Subsampling</td></tr> 01404 * </table> 01405 * 01406 * When the value except IMGDOWNSAMPLING_NONE is specified, the image that has the resolution larger than the one specified by setPdfGrayscaleImageDownSamplingDPI will be downsampled into the resolution specified by setPdfGrayscaleImageDownSamplingTarget. 01407 This is the setting for the grayscale image. Spesify setPdfImageDownSampling for the color image, and setPdfMonochromeImageDownSampling for the monochrome image. 01408 * 01409 * @param newVal the value of method to downsample the grayscale image 01410 */ 01411 void setPdfGrayscaleImageDownSampling(XfoIMAGEDOWNSAMPLING newVal); 01412 01413 /** 01414 * Effective when outputting to PDF. 01415 * Gets resolution when the grayscale image is downsampled. 01416 * @since 3.3 01417 * 01418 * @return the value of resolution. 01419 */ 01420 int getPdfGrayscaleImageDownSamplingTarget(void) const; 01421 01422 /** 01423 * Effective when outputting to PDF. 01424 * Set resolution when the grayscale image is downsampled. 01425 * @since 3.3 01426 * 01427 * @param newVal the value of resolution. 01428 */ 01429 void setPdfGrayscaleImageDownSamplingTarget(int newVal); 01430 01431 /** 01432 * Effective when outputting to PDF. 01433 * Gets resolution of the grayscale image which performs a downsampling. 01434 * @since 3.3 01435 * 01436 * @return the value of resolution. 01437 */ 01438 int getPdfGrayscaleImageDownSamplingDPI(void) const; 01439 01440 /** 01441 * Effective when outputting to PDF. 01442 * Set resolution of the grayscale image which performs a downsampling. 01443 * @since 3.3 01444 * 01445 * @param newVal the value of resolution. 01446 */ 01447 void setPdfGrayscaleImageDownSamplingDPI(int newVal); 01448 01449 /** 01450 * Effective when outputting to PDF. 01451 * Gets the value of how to compress the monochrome images embedded in PDF. 01452 * @since 3.3 01453 * 01454 * <table border="0" cellspacing="0" cellpadding="0"> 01455 * <tr><td>MONOCMPR_CCITT4 </td><td>= 0 CCITTFaxDecode group 4 filter,default value</td></tr> 01456 * <tr><td>MONOCMPR_CCITT3 </td><td>= 1 CCITTFaxDecode group 3 filter</td></tr> 01457 * <tr><td>MONOCMPR_RUNLENGTH </td><td>= 2 RunLengthDecode filter</td></tr> 01458 * <tr><td>MONOCMPR_ZLIB </td><td>= 3 FlateDecode filter</td></tr> 01459 * <tr><td>MONOCMPR_OFF </td><td>= 4 no filter</td></tr> 01460 * </table> 01461 * 01462 * @return the value of how raster graphics are compressed and stored 01463 */ 01464 XfoMONOCHROMECOMPRESSION getPdfMonochromeImageCompression(void) const; 01465 01466 /** 01467 * Effective when outputting to PDF. 01468 * When the monochrome image format cannot be stored directly in PDF, the image is stored after being transformed into the bit map format which is compatible with PDF. The compression method of the data stored in a PDF file is then specified by one of the following values.<BR> 01469 This is the setting for the monochrome image. Spesify setPdfGrayscaleImageCompression for the grayscale image, and setPdfImageCompression for the color image. 01470 * @since 3.3 01471 * 01472 * <table border="0" cellspacing="0" cellpadding="0"> 01473 * <tr><td>MONOCMPR_CCITT4 </td><td>= 0 CCITTFaxDecode group 4 filter,default value</td></tr> 01474 * <tr><td>MONOCMPR_CCITT3 </td><td>= 1 CCITTFaxDecode group 3 filter</td></tr> 01475 * <tr><td>MONOCMPR_RUNLENGTH </td><td>= 2 RunLengthDecode filter</td></tr> 01476 * <tr><td>MONOCMPR_ZLIB </td><td>= 3 FlateDecode filter</td></tr> 01477 * <tr><td>MONOCMPR_OFF </td><td>= 4 no filter</td></tr> 01478 * </table> 01479 * 01480 * @param newVal the value of how raster graphics are compressed and stored 01481 */ 01482 void setPdfMonochromeImageCompression(XfoMONOCHROMECOMPRESSION newVal); 01483 01484 /** 01485 * Effective when outputting to PDF. 01486 * Gets the value of method to downsample the monochrome image 01487 * @since 3.3 01488 * 01489 * @return the value of method to downsample the monochrome image 01490 */ 01491 XfoIMAGEDOWNSAMPLING getPdfMonochromeImageDownSampling(void) const; 01492 01493 /** 01494 * Effective when outputting to PDF. 01495 * Specifies the following either of method to downsample the monochrome image that is put into PDF. 01496 * @since 3.3 01497 * 01498 * <table border="0" cellspacing="0" cellpadding="0"> 01499 * <tr><td>IMGDOWNSAMPLING_NONE </td><td>= 0 No downsampling </td></tr> 01500 * <tr><td>IMGDOWNSAMPLING_AVERAGE </td><td>= 1 Average downsamplin</td></tr> 01501 * <tr><td>IMGDOWNSAMPLING_BICUBIC </td><td>= 2 Bicubic downsampling</td></tr> 01502 * <tr><td>IMGDOWNSAMPLING_SUBSAMPLING </td><td>= 3 Subsampling</td></tr> 01503 * </table> 01504 * 01505 * When the value except IMGDOWNSAMPLING_NONE is specified, the image that has the resolution larger than the one specified by setPdfMonochromeImageDownSamplingDPI will be downsampled into the resolution specified by setPdfMonochromeImageDownSamplingTarget. 01506 This is the setting for the monochrome image. Spesify setPdfImageDownSampling for the color image, and setPdfGrayscaleImageDownSampling for the grayscale image. 01507 * 01508 * @param newVal the value of method to downsample the monochrome image 01509 */ 01510 void setPdfMonochromeImageDownSampling(XfoIMAGEDOWNSAMPLING newVal); 01511 01512 /** 01513 * Effective when outputting to PDF. 01514 * Gets resolution when the monochrome image is downsampled. 01515 * @since 3.3 01516 * 01517 * @return the value of resolution. 01518 */ 01519 int getPdfMonochromeImageDownSamplingTarget(void) const; 01520 01521 /** 01522 * Effective when outputting to PDF. 01523 * Set resolution when the monochrome image is downsampled. 01524 * @since 3.3 01525 * 01526 * @param newVal the value of resolution. 01527 */ 01528 void setPdfMonochromeImageDownSamplingTarget(int newVal); 01529 01530 /** 01531 * Effective when outputting to PDF. 01532 * Gets resolution of the monochrome image which performs a downsampling. 01533 * @since 3.3 01534 * 01535 * @return the value of resolution. 01536 */ 01537 int getPdfMonochromeImageDownSamplingDPI(void) const; 01538 01539 /** 01540 * Effective when outputting to PDF. 01541 * Set resolution of the monochrome image which performs a downsampling. 01542 * @since 3.3 01543 * 01544 * @param newVal the value of resolution. 01545 */ 01546 void setPdfMonochromeImageDownSamplingDPI(int newVal); 01547 01548 /** 01549 * Gets the specification of two pass format. 01550 * @since 4.1 01551 * 01552 * @return the specification of two pass format. 01553 */ 01554 long getTwoPassFormatting() const; 01555 01556 /** 01557 * Set the specification of two pass format. 01558 * @since 4.1 01559 * 01560 * @param newVal the specification of two pass format. 01561 */ 01562 void setTwoPassFormatting(long newVal); 01563 01564 /** 01565 * Effective when outputting to PDF. 01566 * Gets the value of whether to output Tagged PDF or not. 01567 * @since 4.0 01568 * 01569 * @return the value of whether to output Tagged pdf or not. 01570 */ 01571 long getPdfTag() const; 01572 01573 /** 01574 * Effective when outputting to PDF. 01575 * Generates Tagged PDF. Ignored if PDF cannot be tagged depending on the PDF versions. 01576 * @since 4.0 01577 * 01578 * @param newVal If the value is 'true' is specified, output Tagged PDF. 01579 */ 01580 void setPdfTag(long newVal); 01581 01582 /** 01583 * Effective when outputting to PDF. 01584 * Gets the width of PDF to output. 01585 * @since 4.0 01586 * 01587 * @param pVal Pointer to the buffer that will receive the width of PDF. If the string is as long or longer than the buffer, 01588 * the string is truncated and terminated with a NULL character. 01589 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 01590 * @return Returns the 'pVal'. 01591 */ 01592 char* getPdfOutputWidth(char* pVal, int size) const; 01593 01594 /** 01595 * Effective when outputting to PDF. 01596 * Gets the width of PDF to output. 01597 * @since 4.0 01598 * 01599 * @param pVal Pointer to the buffer that will receive the width of PDF. If the string is as long or longer than the buffer, 01600 * the string is truncated and terminated with a NULL character. 01601 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 01602 * @return Returns the 'pVal'. 01603 */ 01604 wchar_t* getPdfOutputWidthW(wchar_t* pVal, int size) const; 01605 01606 /** 01607 * Effective when outputting to PDF. 01608 * Scales the width of PDF to output. A value with a unit or % value can be specified as length. 01609 * @since 4.0 01610 * 01611 * @param newVal Pointer to a null-terminated string to be used as the width of PDF to output. 01612 */ 01613 void setPdfOutputWidth(const char* newVal); 01614 01615 /** 01616 * Effective when outputting to PDF. 01617 * Scales the width of PDF to output. A value with a unit or % value can be specified as length. 01618 * @since 4.0 01619 * 01620 * @param newVal Pointer to a null-terminated string to be used as the width of PDF to output. 01621 */ 01622 void setPdfOutputWidthW(const wchar_t* newVal); 01623 01624 /** 01625 * Effective when outputting to PDF. 01626 * Gets the height of PDF to output. 01627 * @since 4.0 01628 * 01629 * @param pVal Pointer to the buffer that will receive the height of PDF. If the string is as long or longer than the buffer, 01630 * the string is truncated and terminated with a NULL character. 01631 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 01632 * @return Returns the 'pVal'. 01633 */ 01634 char* getPdfOutputHeight(char* pVal, int size) const; 01635 01636 /** 01637 * Effective when outputting to PDF. 01638 * Gets the height of PDF to output. 01639 * @since 4.0 01640 * 01641 * @param pVal Pointer to the buffer that will receive the height of PDF. If the string is as long or longer than the buffer, 01642 * the string is truncated and terminated with a NULL character. 01643 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 01644 * @return Returns the 'pVal'. 01645 */ 01646 wchar_t* getPdfOutputHeightW(wchar_t* pVal, int size) const; 01647 01648 /** 01649 * Effective when outputting to PDF. 01650 * Scales the height of PDF to output. A value with a unit or % value can be specified as length. 01651 * @since 4.0 01652 * 01653 * @param newVal Pointer to a null-terminated string to be used as the width of PDF to output. 01654 */ 01655 void setPdfOutputHeight(const char* newVal); 01656 01657 /** 01658 * Effective when outputting to PDF. 01659 * Scales the height of PDF to output. A value with a unit or % value can be specified as length. 01660 * @since 4.0 01661 * 01662 * @param newVal Pointer to a null-terminated string to be used as the width of PDF to output. 01663 */ 01664 void setPdfOutputHeightW(const wchar_t* newVal); 01665 01666 /** 01667 * Specifies the scaling ratio of the PDF to output. 01668 * A value with a unit or % value can be specified as length. 01669 * Effective when outputting to PDF. 01670 * 01671 * @param newVal the scaling ratio of the PDF 01672 */ 01673 void setPdfOutputScale(const char* newVal); 01674 01675 /** 01676 * Specifies the scaling ratio of the PDF to output. 01677 * A value with a unit or % value can be specified as length. 01678 * Effective when outputting to PDF. 01679 * 01680 * @param newVal the scaling ratio of the PDF 01681 */ 01682 #if defined(_NATIVE_WCHAR_T_DEFINED) 01683 void setPdfOutputScaleW(const unsigned short* newVal); 01684 #endif 01685 void setPdfOutputScaleW(const wchar_t* newVal); 01686 01687 /** 01688 * Effective when outputting to PDF. 01689 * Gets the value of whether to issue error or not when PDF/X is generating. 01690 * @since 4.0 01691 * 01692 * @return the value of whether to issue error. 01693 */ 01694 long getPdfErrorOnPDFXFault(); 01695 01696 /** 01697 * Effective when outputting to PDF. 01698 * An error is not issued when PDF/X is generating. 01699 * @since 4.0 01700 * 01701 * @param newVal If the value is 'true' is specified, no error is issued. 01702 */ 01703 void setPdfErrorOnPDFXFault(long newVal); 01704 01705 /** 01706 * Effective when outputting to PDF. 01707 * Output reverse page or not. 01708 * @since 5.2 01709 * 01710 * @return the value of whether to output reverse page or not. 01711 */ 01712 bool getPdfReversePage() const; 01713 01714 /** 01715 * Effective when outputting to PDF. 01716 * Output reverse page or not. 01717 * @since 5.2 01718 * 01719 * @param newVal If the value is 'true' is reverse page. 01720 */ 01721 void setPdfReversePage(bool newVal); 01722 01723 /** 01724 * Effective when outputting to PDF. 01725 * Import 3D annotations or not. 01726 * @since 5.2 01727 * 01728 * @return the value of whether to import 3D annotations or not. 01729 */ 01730 bool getPdfImport3DAnnotation() const; 01731 01732 /** 01733 * Effective when outputting to PDF. 01734 * Import 3D annotations or not. 01735 * @since 5.2 01736 * 01737 * @param newVal If the value is 'true' is import 3D annotations. 01738 */ 01739 void setPdfImport3DAnnotation(bool newVal); 01740 01741 /** 01742 * Effective when outputting to PDF. 01743 * Convert image color space or not. 01744 * @since 5.2 01745 * 01746 * @return the value of whether to convert image color space or not. 01747 */ 01748 bool getPdfConvertImageColorSpace() const; 01749 01750 /** 01751 * Effective when outputting to PDF. 01752 * Convert image color space or not. 01753 * @since 5.2 01754 * 01755 * @param newVal If the value is 'true' is convert image color space. 01756 */ 01757 void setPdfConvertImageColorSpace(bool newVal); 01758 01759 /** 01760 * Effective when outputting to SVG. 01761 * Get the version of SVG. 01762 * @since 3.3 01763 * 01764 * @return the version of SVG. 01765 */ 01766 XfoSVGVERSION getSvgVersion() const; 01767 01768 /** 01769 * Effective when outputting to SVG. 01770 * Enables specifying whether the version of SVG is 1.1, Basic or Tiny. 01771 * @since 3.3 01772 * 01773 * @param newVal Specifies the version of SVG. 01774 */ 01775 void setSvgVersion(XfoSVGVERSION newVal); 01776 01777 /** 01778 * Effective when outputting to SVG. 01779 * Gets the setting indicating whether to compress the outputted SVG into gzip format or not. 01780 * @since 3.3 01781 * 01782 * @return whether gzip compression or not. 01783 */ 01784 long getSvgGzipCompression() const; 01785 01786 /** 01787 * Effective when outputting to SVG. 01788 * Specifies whether to compress the outputted SVG into gzip format or not. 01789 * @since 3.3 01790 * 01791 * @param newVal If the value is 'true' is specified, enables to compress data into gzip format. 01792 */ 01793 void setSvgGzipCompression(long newVal); 01794 01795 /** 01796 * Effective when outputting to SVG. 01797 * Gets the setting indicating whether to embed fonts in the outputted SVG. 01798 * @since 3.3 01799 * 01800 * @return whether embeds fonts or not. 01801 */ 01802 long getSvgEmbedAllFonts() const; 01803 01804 /** 01805 * Effective when outputting to SVG. 01806 * Specifies whether to embed fonts in the outputted SVG. 01807 * @since 3.3 01808 * 01809 * @param newVal If the value is 'true' is specified, embeds fonts. 01810 */ 01811 void setSvgEmbedAllFonts(long newVal); 01812 01813 /** 01814 * Effective when outputting to SVG. 01815 * Gets the format for naming files when the outputted SVG becomes multiple. 01816 * @since 3.3 01817 * 01818 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, the string is truncated and terminated with a NULL character. 01819 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 01820 * @return Returns the 'pVal'. 01821 */ 01822 char* getSvgFormat(char* pVal, int size) const; 01823 01824 /** 01825 * Effective when outputting to SVG. 01826 * Gets the format for naming files when the outputted SVG becomes multiple. 01827 * @since 3.3 01828 * 01829 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, the string is truncated and terminated with a NULL character. 01830 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 01831 * @return Returns the 'pVal'. 01832 */ 01833 wchar_t* getSvgFormatW(wchar_t* pVal, int size) const; 01834 01835 /** 01836 * Effective when outputting to SVG. 01837 * Specifies the format for naming files when the outputted SVG becomes multiple. 01838 * @since 3.3 01839 * 01840 * @param newVal Pointer to a null-terminated string to be used as the SVG file name format. 01841 */ 01842 void setSvgFormat(const char* newVal); 01843 01844 /** 01845 * Effective when outputting to SVG. 01846 * Specifies the format for naming files when the outputted SVG becomes multiple. 01847 * @since 3.3 01848 * 01849 * @param newVal Pointer to a null-terminated string to be used as the SVG file name format. 01850 */ 01851 void setSvgFormatW(const wchar_t* newVal); 01852 01853 /** 01854 * Effective when outputting to SVG. 01855 * Gets the font specified to be embedded in SVG. 01856 * @since 3.3 01857 * 01858 * @param pVal Pointer to the buffer that will receive the fontnames. If the string is as long or longer than the buffer, 01859 * the string is truncated and terminated with a NULL character. 01860 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 01861 * @return Returns the 'pVal'. 01862 */ 01863 char* getSvgEmbedFonts(char* pVal, int size) const; 01864 01865 /** 01866 * Effective when outputting to SVG. 01867 * Gets the font specified to be embedded in SVG. 01868 * @since 3.3 01869 * 01870 * @param pVal Pointer to the buffer that will receive the fontnames. If the string is as long or longer than the buffer, 01871 * the string is truncated and terminated with a NULL character. 01872 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 01873 * @return Returns the 'pVal'. 01874 */ 01875 wchar_t* getSvgEmbedFontsW(wchar_t* pVal, int size) const; 01876 01877 /** 01878 * Effective when outputting to SVG. 01879 * Embeds the specified font in SVG to create. If you want to specify plural fonts, put commas between fonts. 01880 * @since 3.3 01881 * 01882 * @param newVal fonts specified to embed 01883 */ 01884 void setSvgEmbedFonts(const char* newVal); 01885 01886 /** 01887 * Effective when outputting to SVG. 01888 * Embeds the specified font in SVG to create. If you want to specify plural fonts, put commas between fonts. 01889 * @since 3.3 01890 * 01891 * @param newVal fonts specified to embed 01892 */ 01893 void setSvgEmbedFontsW(const wchar_t* newVal); 01894 01895 /** 01896 * Effective when outputting to SVG. 01897 * Gets the value of whether to issues the error when failing to embed fonts. 01898 * @since 3.3 01899 * 01900 * @return the value of whether to issues the error 01901 */ 01902 long getSvgErrorOnEmbedFault() const; 01903 01904 /** 01905 * Effective when outputting to SVG. 01906 * An error is issued in case of failing to embed fonts. 01907 * @since 3.3 01908 * 01909 * @param newVal If the value is 'true' is specified, an error is issued. 01910 */ 01911 void setSvgErrorOnEmbedFault(long newVal); 01912 01913 /** 01914 * Effective when outputting to SVG. 01915 * Gets the value of how to compress the images embedded in SVG. 01916 * @since 3.3 01917 * 01918 * <table border="0" cellspacing="0" cellpadding="0"> 01919 * <tr><td>IMGCMPR_AUTO </td><td>= 0 Auto conversion</td></tr> 01920 * <tr><td>IMGCMPR_JPEG </td><td>= 1 JPEG conversion</td></tr> 01921 * <tr><td>IMGCMPR_PNG </td><td>= 2 PNG conversion</td></tr> 01922 * </table> 01923 * 01924 * @return the value of how raster graphics are compressed and stored 01925 */ 01926 XfoIMAGECONVERSION getSvgImageConversion() const; 01927 01928 /** 01929 * Effective when outputting to SVG. 01930 * Selects how to compress the images embedded in SVG to create from the following. 01931 * @since 3.3 01932 * 01933 * <table border="0" cellspacing="0" cellpadding="0"> 01934 * <tr><td>IMGCMPR_AUTO </td><td>= 0 Auto conversion</td></tr> 01935 * <tr><td>IMGCMPR_JPEG </td><td>= 1 JPEG conversion</td></tr> 01936 * <tr><td>IMGCMPR_PNG </td><td>= 2 PNG conversion</td></tr> 01937 * </table> 01938 * 01939 * @param newVal the value of how raster graphics are compressed and stored 01940 */ 01941 void setSvgImageConversion(XfoIMAGECONVERSION newVal); 01942 01943 /** 01944 * Gets the value of the quality of JPEG format that is specified by setSvgImageConversion() stored in SVG. 01945 * @since 3.3 01946 * 01947 * @return the value of the quality 01948 */ 01949 int getSvgJPEGQuality() const; 01950 01951 /** 01952 * Effective when outputting to SVG. 01953 * Specifies the quality of the Raster graphics when stored in JPEG format using the range of 1-100. 01954 * The quality becomes higher in proportion to the increase in the number; however the file size also becomes larger. 01955 * The initial value is 80. 01956 * @since 3.3 01957 * 01958 * @param newVal JPEG quality (1 to 100) 01959 */ 01960 void setSvgJPEGQuality(int newVal); 01961 01962 /** 01963 * Effective when outputting to SVG. 01964 * Gets specification how to treat the referred image. 01965 * @since 3.3 01966 * 01967 * <table border="0" cellspacing="0" cellpadding="0"> 01968 * <tr><td>IMGPT_EMBED_ALL </td><td>= 0 Embeds all images to SVG.</td></tr> 01969 * <tr><td>IMGPT_COPY_ALL </td><td>= 1 Copies all image files to the destination that is specified by setSvgImageCopyPath, and then links.</td></tr> 01970 * <tr><td>IMGPT_LINK </td><td>= 2 Links images that have been linked, and embeds the embedded image. However, the raster images other than JPEG and PNG are always embedded.</td></tr> 01971 * <tr><td>IMGPT_COPY </td><td>= 3 Copies images that have been linked to the destination that is specified by setSvgImageCopyPath, and links. The embedded image are embedded.</td></tr> 01972 * </table> 01973 * 01974 * @return specification how to treat the referred image. 01975 */ 01976 XfoIMAGEPROCTYPE getSvgImageProcessingType() const; 01977 01978 /** 01979 * Effective when outputting to SVG. 01980 * Specifies how to treat the referred image. 01981 * @since 3.3 01982 * 01983 * <table border="0" cellspacing="0" cellpadding="0"> 01984 * <tr><td>IMGPT_EMBED_ALL </td><td>= 0 Embeds all images to SVG.</td></tr> 01985 * <tr><td>IMGPT_COPY_ALL </td><td>= 1 Copies all image files to the destination that is specified by setSvgImageCopyPath, and then links.</td></tr> 01986 * <tr><td>IMGPT_LINK </td><td>= 2 Links images that have been linked, and embeds the embedded image. However, the raster images other than JPEG and PNG are always embedded.</td></tr> 01987 * <tr><td>IMGPT_COPY </td><td>= 3 Copies images that have been linked to the destination that is specified by setSvgImageCopyPath, and links. The embedded image are embedded.</td></tr> 01988 * </table> 01989 * 01990 * @param newVal specification how to treat the referred image. 01991 */ 01992 void setSvgImageProcessingType(XfoIMAGEPROCTYPE newVal); 01993 01994 /** 01995 * Effective when outputting to SVG. 01996 * Gets the copy destination of image as specifying IMGPT_COPY_ALL or IMGPT_COPY by setSvgImageProcessingType. 01997 * @since 3.3 01998 * 01999 * @param pVal Pointer to the buffer that will receive the image copy path. If the string is as long or longer than the buffer, 02000 * the string is truncated and terminated with a NULL character. 02001 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02002 * @return Returns the 'pVal'. 02003 */ 02004 char* getSvgImageCopyPath(char* pVal, int size) const; 02005 02006 /** 02007 * Effective when outputting to SVG. 02008 * Specifies the copy destination of image as specifying IMGPT_COPY_ALL or IMGPT_COPY by setSvgImageProcessingType. 02009 * @since 3.3 02010 * 02011 * @param newVal Pointer to a null-terminated string to be used as image copy path 02012 */ 02013 void setSvgImageCopyPath(const char* newVal); 02014 02015 /** 02016 * Effective when outputting to SVG. 02017 * Gets the copy destination of image as specifying IMGPT_COPY_ALL or IMGPT_COPY by setSvgImageProcessingType. 02018 * @since 3.3 02019 * 02020 * @param pVal Pointer to the buffer that will receive the image copy path. If the string is as long or longer than the buffer, 02021 * the string is truncated and terminated with a NULL character. 02022 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02023 * @return Returns the 'pVal'. 02024 */ 02025 wchar_t* getSvgImageCopyPathW(wchar_t* pVal, int size) const; 02026 02027 /** 02028 * Effective when outputting to SVG. 02029 * Specifies the copy destination of image as specifying IMGPT_COPY_ALL or IMGPT_COPY by setSvgImageProcessingType. 02030 * @since 3.3 02031 * 02032 * @param newVal Pointer to a null-terminated string to be used as image copy path 02033 */ 02034 void setSvgImageCopyPathW(const wchar_t* newVal); 02035 02036 /** 02037 * Effective when outputting to SVG. 02038 * Gets specification whether to divide into multiple SVG or to output as one SVG when the formatted result extends to multiple pages. <BR> 02039 * @since 3.3 02040 * 02041 * @return specification whether to divide into multiple SVG or to output as one SVG when the formatted result extends to multiple pages. 02042 */ 02043 long getSvgSingleFile() const; 02044 02045 /** 02046 * Effective when outputting to SVG. 02047 * Specifies whether to divide into multiple SVG or to output as one SVG when the formatted result extends to multiple pages. <BR> 02048 * If the value is true, outputs one SVG. If the value is false, outputs multiple SVG. When multiple SVG is output, the file name is modified by specifying format. <BR> 02049 * Effective only when outputting to the file. It is invalid in the output without the file name like the stream etc. 02050 * @since 3.3 02051 * 02052 * @param newVal specification whether to divide into multiple SVG or to output as one SVG when the formatted result extends to multiple pages. 02053 */ 02054 void setSvgSingleFile(long newVal); 02055 02056 #if !defined(_DOXYGEN) 02057 /** 02058 * @deprecated 02059 */ 02060 char* getSvgSingleFileMaxHeight(char* pVal, int size) const; 02061 02062 /** 02063 * @deprecated 02064 */ 02065 wchar_t* getSvgSingleFileMaxHeightW(wchar_t* pVal, int size) const; 02066 02067 /** 02068 * @deprecated 02069 */ 02070 void setSvgSingleFileMaxHeight(const char* newVal); 02071 02072 /** 02073 * @deprecated 02074 */ 02075 void setSvgSingleFileMaxHeightW(const wchar_t* newVal); 02076 02077 /** 02078 * @deprecated 02079 */ 02080 int getSvgSingleFileMaxPages() const; 02081 02082 /** 02083 * @deprecated 02084 */ 02085 void setSvgSingleFileMaxPages(int newVal); 02086 02087 /** 02088 * @deprecated 02089 */ 02090 int getSvgImageDownsamplingDPI() const; 02091 02092 /** 02093 * @deprecated 02094 */ 02095 void setSvgImageDownsamplingDPI(int dpi); 02096 02097 /** 02098 * @deprecated 02099 */ 02100 int getSvgImageDownsamplingMethod() const; 02101 02102 /** 02103 * @deprecated 02104 */ 02105 void setSvgImageDownsamplingMethod(int type); 02106 #endif 02107 02108 /** 02109 * Effective when outputting to SVG. 02110 * Gets specification whether to rename all file name to prefix specified by setSvgImagePrefix, or use original name. 02111 * @since 3.3 02112 * 02113 * @return specification whether to rename all file name to prefix specified by setSvgImagePrefix, or use original name. 02114 */ 02115 long getSvgImageRename() const; 02116 02117 /** 02118 * Effective when outputting to SVG. 02119 * When images are copied to the directory specified by setSvgImageCopyPath etc. and processed, specifies whether to rename all file name to prefix specified by setSvgImagePrefix, or use original name. When the file name overlaps, sequential number is added. When true is specified, all files are renamed. 02120 * @since 3.3 02121 * 02122 * @param newVal specification whether to rename all file name to prefix specified by xfo_setSvgImagePrefix, or use original nam 02123 */ 02124 void setSvgImageRename(long newVal); 02125 02126 /** 02127 * Effective when outputting to SVG. 02128 * Gets the prefix of the file name when images are copied to the directory specified by setSvgImageCopyPath and processed. 02129 * @since 3.3 02130 * 02131 * @param pVal Pointer to the buffer that will receive the prefix. If the string is as long or longer than the buffer, 02132 * the string is truncated and terminated with a NULL character. 02133 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02134 * @return Returns the 'pVal'. 02135 */ 02136 char* getSvgImagePrefix(char* pVal, int size) const; 02137 02138 /** 02139 * Effective when outputting to SVG. 02140 * When images are copied to the directory specified by setSvgImageCopyPath and processed, specifies the prefix of the file name. The file name will be prefix with sequence numbers. Default is empty character string with only sequential numbers. 02141 * @since 3.3 02142 * 02143 * @param newVal the prefix of the file name. 02144 */ 02145 void setSvgImagePrefix(const char* newVal); 02146 02147 /** 02148 * Effective when outputting to SVG. 02149 * Gets the prefix of the file name when images are copied to the directory specified by setSvgImageCopyPath and processed. 02150 * @since 3.3 02151 * 02152 * @param pVal Pointer to the buffer that will receive the prefix. If the string is as long or longer than the buffer, 02153 * the string is truncated and terminated with a NULL character. 02154 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02155 * @return Returns the 'pVal'. 02156 */ 02157 wchar_t* getSvgImagePrefixW(wchar_t* pVal, int size) const; 02158 02159 /** 02160 * Effective when outputting to SVG. 02161 * When images are copied to the directory specified by setSvgImageCopyPath and processed, specifies the prefix of the file name. The file name will be prefix with sequence numbers. Default is empty character string with only sequential numbers. 02162 * @since 3.3 02163 * 02164 * @param newVal the prefix of the file name. 02165 */ 02166 void setSvgImagePrefixW(const wchar_t* newVal); 02167 02168 /** 02169 * Effective when outputting to SVG. 02170 * Gets specification whether to add sequential number to the output SVG even if it has only one-page. 02171 * @since 3.3 02172 * 02173 * @return specification whether to add sequential number to the output SVG even if it has only one-page. 02174 */ 02175 long getSvgSinglePageNumber() const; 02176 02177 /** 02178 * Effective when outputting to SVG. 02179 * When xfo_setSvgSingleFile = 0 is specified, specifies whether to add sequential number to the output SVG even if it has only one-page. It is not added in case of false. 02180 * @since 3.3 02181 * 02182 * @param newVal specification whether to add sequential number to the output SVG even if it has only one-page. 02183 */ 02184 void setSvgSinglePageNumber(long newVal); 02185 02186 02187 #if defined(_DOXYGEN) || (defined(_MSC_VER) && defined(_WIN32)) 02188 /** 02189 * Effective when outputting to SVG. 02190 * Gets the value of the rasterised-resolution of the transformed raster images. 02191 * @since 3.3 02192 * 02193 * @return Rasterised-resolution 02194 */ 02195 int getSvgRasterizeResolution() const; 02196 02197 /** 02198 * Effective when outputting to SVG. 02199 * Specifies the value of the rasterised-resolution of the transformed raster images in the range from 70 to 500(dpi). SVG, EMF and WMF are drawn in SVG as vectors without being transformed to raster images. 02200 * This setting is effective only with Windows version. 02201 * @since 3.3 02202 * 02203 * @param newVal Rasterised-resolution (70 to 500) 02204 */ 02205 void setSvgRasterizeResolution(int newVal); 02206 #endif 02207 02208 /** 02209 * Get INX output mode. 02210 * @since 4.3 02211 * 02212 * @return output mode of INX. 02213 */ 02214 XfoINXOUTPUTMODE getInxOutputMode() const; 02215 02216 /** 02217 * Set INX output mode. 02218 * @since 4.3 02219 * 02220 * @param newVal Output mode of INX. 02221 */ 02222 void setInxOutputMode(XfoINXOUTPUTMODE newVal); 02223 02224 /** 02225 * Get MIF output mode. 02226 * @since 4.3 02227 * 02228 * @return Output mode of MIF. 02229 */ 02230 XfoMIFOUTPUTMODE getMifOutputMode() const; 02231 02232 /** 02233 * Set MIF output mode. 02234 * @since 4.3 02235 * 02236 * @param newVal Output mode of MIF. 02237 */ 02238 void setMifOutputMode(XfoMIFOUTPUTMODE newVal); 02239 02240 /** 02241 * Get MIF image processing mode. 02242 * @since 5.2 02243 * 02244 * @return Image processing mode. 02245 */ 02246 XfoMIFIMAGEPROCMODE getMifIpMode(); 02247 02248 /** 02249 * Set MIF image processing mode 02250 * @since 5.2 02251 * 02252 * @param mode Image processing mode 02253 */ 02254 void setMifIpMode(XfoMIFIMAGEPROCMODE mode); 02255 02256 /** 02257 * Get specifies of the FlashPartiallyOutput. 02258 * @since 6.0 02259 * 02260 * @return specifies of FlashPartiallyOutput. 02261 */ 02262 long getFlashPartiallyOutput() const; 02263 02264 /** 02265 * When an error occurs within the document, the flash file in process will be outputted. 02266 * Effective when outputting to Flash. 02267 * @since 6.0 02268 * 02269 * @param newVal Specifies zero or nonzero. 02270 */ 02271 void setFlashPartiallyOutput(long newVal); 02272 02273 /** 02274 * Get specifies of the FlashHidePageButton. 02275 * @since 6.0 02276 * 02277 * @return specifies of FlashHidePageButton. 02278 */ 02279 long getFlashHidePageButton() const; 02280 02281 /** 02282 * Output a no page button. Effective when outputting to Flash. 02283 * @since 6.0 02284 * 02285 * @param newVal If the value is 'true' is specified, output a no page button. 02286 */ 02287 void setFlashHidePageButton(long newVal); 02288 02289 /** 02290 * Get the start volume of document to output. 02291 * @since 3.2 02292 * 02293 * @return start volume of document to output. 02294 */ 02295 long getStartVolume() const; 02296 02297 /** 02298 * Specifies the start volume of document to output. 02299 * If the start volume is omitted or the specified value is 0 or less, the start volume is 02300 * considered from the first volume. 02301 * If the setting is inconsistent, (for example, StartVolume=5 EndVolume=3) an error occurs. 02302 * @since 3.2 02303 * 02304 * @param newVal start volume of output. 02305 */ 02306 void setStartVolume(long newVal); 02307 02308 /** 02309 * Get the end volume of document to output. 02310 * @since 3.2 02311 * 02312 * @return end volume of output. 02313 */ 02314 long getEndVolume() const; 02315 02316 /** 02317 * Specifies the end volume of document to output. 02318 * If the end volume is omitted or the specified value exceeds the actual volume, the end volume 02319 * is considered as the last volume. 02320 * If the setting is inconsistent, (for example, StartVolume=5 EndVolume=3) an error occurs. 02321 * @since 3.2 02322 * 02323 * @param newVal end volume of output. 02324 */ 02325 void setEndVolume(long newVal); 02326 02327 /** 02328 * Get multiple volume of PDF output. 02329 * @since 3.2 02330 * 02331 * @return If zero is returned, multiple volume don't specified. 02332 * If nonezero is returned, multiple volume specified. 02333 */ 02334 long getMultiVolume() const; 02335 02336 /** 02337 * Specifies multiple volume of PDF output. 02338 * @since 3.2 02339 * 02340 * @param newVal Specifies zero or nonzero. 02341 */ 02342 void setMultiVolume(long newVal); 02343 02344 /** 02345 * Gets the number of all the separate volumes when outputting PDF to multiple separate volumes. 02346 * @since 3.2 02347 * 02348 * @return Returns total volume count. 02349 */ 02350 long getTotalVolumeCount() const; 02351 02352 /** 02353 * Gets the number of the actual separate volumes when outputting PDF to multiple separate volumes. 02354 * @since 3.2 02355 * 02356 * @return Returns output volume count. 02357 */ 02358 long getOutputVolumeCount() const; 02359 02360 /** 02361 * Gets the split-by-pages setting 02362 * @since 6.1 02363 * 02364 * @return split-by-pages setting (0:No split 1:Split by each page) 02365 */ 02366 int getSplitPages() const; 02367 02368 /** 02369 * Sets the split-by-pages setting 02370 * @since 6.1 02371 * 02372 * @param newVal split-by-pages setting (0:No split 1:Split by each page) 02373 */ 02374 void setSplitPages(int newVal); 02375 02376 /** 02377 * Gets the initial page number. 02378 * @since 6.1 02379 * 02380 * @return initial page number 02381 */ 02382 int getInitialPageNumber() const; 02383 02384 /** 02385 * Sets the initial page number. 02386 * @since 6.1 02387 * 02388 * @param newVal initial page number 02389 */ 02390 void setInitialPageNumber(int newVal); 02391 02392 /** 02393 * Gets the initial volume number. 02394 * @since 6.1 02395 * 02396 * @return initial volume number 02397 */ 02398 int getInitialVolumeNumber() const; 02399 02400 /** 02401 * Sets the initial volume number. 02402 * @since 6.1 02403 * 02404 * @param newVal initial volume number 02405 */ 02406 void setInitialVolumeNumber(int newVal); 02407 02408 /** 02409 * Gets the partial volume mode. 02410 * @since 6.1 02411 * 02412 * @return partial volume mode 02413 */ 02414 bool getPartialVolume() const; 02415 02416 /** 02417 * Sets the partial volume mode. 02418 * @since 6.1 02419 * 02420 * @param newVal partial volume mode 02421 */ 02422 void setPartialVolume(bool newVal); 02423 02424 /** 02425 * Get the error level to abort formatting process. 02426 * 02427 * @return Returns the error level. 02428 */ 02429 XfoIfErrorLevel getExitLevel() const; 02430 02431 /** 02432 * Error level to abort formatting process. AH Formatter will stop formatting when the detected 02433 * error level is equal to ExitLevel property or higher. The default value is 2 (Warning). 02434 * Thus if an error occurred and error level is 2 (Warning) or higher, formatting process will be 02435 * aborted. Please use the value from 1 to 4. When the value of 5 or more specified, it is considered 02436 * to be the value of 4. If a error-level:4 (fatal error) occurs, the formatting process will be 02437 * aborted unconditionally. 02438 * BTW : An error is not displayed no matter what value may be specified to be this property. 02439 * 02440 * <table border="0" cellspacing="0" cellpadding="0"> 02441 * <tr><td>ELVL_INFORMATION </td><td>= 1 Information</td></tr> 02442 * <tr><td>ELVL_WARNING </td><td>= 2 Warning</td></tr> 02443 * <tr><td>ELVL_RECOVERABLE </td><td>= 3 Recoveable Error</td></tr> 02444 * <tr><td>ELVL_FATAL </td><td>= 4 Fatal Error</td></tr> 02445 * </table> 02446 * 02447 * @param newVal error level to abort formatting process. 02448 */ 02449 void setExitLevel(XfoIfErrorLevel newVal); 02450 02451 /** 02452 * Returns the error level of the error that occurred during the formatting process. 02453 * 02454 * <table border="0" cellspacing="0" cellpadding="0"> 02455 * <tr><td>ELVL_INFORMATION </td><td>= 1 Information</td></tr> 02456 * <tr><td>ELVL_WARNING </td><td>= 2 Warning</td></tr> 02457 * <tr><td>ELVL_RECOVERABLE </td><td>= 3 Recoveable Error</td></tr> 02458 * <tr><td>ELVL_FATAL </td><td>= 4 Fatal Error</td></tr> 02459 * </table> 02460 * 02461 * @return Returns the error level. 02462 */ 02463 XfoIfErrorLevel getErrorLevel() const; 02464 02465 /** 02466 * Returns the error code of the error that occurred during the formatting process. 02467 * Zero means no error. Non-zero indicates any error occurred. 02468 * 02469 * @return Returns the error code. 02470 */ 02471 XfoIfErrorCode getErrorCode() const; 02472 02473 /** 02474 * Returns the error message of the error that occurred during the formatting process. 02475 * 02476 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, the string is truncated and terminated with a NULL character. 02477 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02478 * @return Returns the 'pVal'. 02479 */ 02480 char* getErrorMessage(char* pVal, int size) const; 02481 /** 02482 * Returns the error message of the error that occurred during the formatting process. 02483 * 02484 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, the string is truncated and terminated with a NULL character. 02485 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02486 * @return Returns the 'pVal'. 02487 */ 02488 wchar_t* getErrorMessageW(wchar_t* pVal, int size) const; 02489 02490 /** 02491 * Sets the substitution of font name. This substitution acts on the font names existing in FO. 02492 * The font name 'fontName' is replaced to 'aliasName'. 02493 * 02494 * @param src Specifies the font name which is replaced. 02495 * @param dst Specifies the aliasName. 02496 */ 02497 void setFontAlias(const char* src, const char* dst); 02498 /** 02499 * Sets the substitution of font name. This substitution acts on the font names existing in FO. 02500 * The font name 'fontName' is replaced to 'aliasName'. 02501 * 02502 * @param src Specifies the font name which is replaced. 02503 * @param dst Specifies the aliasName. 02504 */ 02505 void setFontAliasW(const wchar_t* src, const wchar_t* dst); 02506 02507 /** 02508 * Clear all substitutions of font name. 02509 * 02510 */ 02511 void clearFontAlias(); 02512 02513 /** 02514 * Erase the substitution of font name 'fontName'. 02515 * 02516 * @param src Specifies the font name which is replaced. 02517 */ 02518 void eraseFontAlias(const char* src); 02519 /** 02520 * Erase the substitution of font name 'fontName'. 02521 * 02522 * @param src Specifies the font name which is replaced. 02523 */ 02524 void eraseFontAliasW(const wchar_t* src); 02525 02526 /** 02527 * Execute formatting and output to a PDF specified in OutputFilePath or printer specified in PrinterName. 02528 * 02529 * @return Returns the error code. Zero means no error. Non-zero indicates any error occurred. 02530 */ 02531 XfoIfErrorCode execute(bool bNoThrow=false); 02532 02533 /** 02534 * Executes the formatting of XSL-FO document specified for inputStream, and outputs it to outputStream in the output form specified for setPrinterName. 02535 * @since 3.3 02536 * 02537 * @param src Specifies XSL-FO document. 02538 * @param out the output destination of the formatting result. 02539 */ 02540 void render(std::istream& src, std::ostream& out); 02541 02542 /** 02543 * Initialize formatting engine. 02544 * 02545 */ 02546 void clear(); 02547 02548 /** 02549 * Set parameter name and value for xsl:param. 02550 * 02551 * @param paramName name. 02552 * @param value parameter value. 02553 */ 02554 void setXSLTParam(const char* paramName, const char* value); 02555 /** 02556 * Set parameter name and value for xsl:param. 02557 * 02558 * @param paramName name. 02559 * @param value parameter value. 02560 */ 02561 void setXSLTParamW(const wchar_t* paramName, const wchar_t* value); 02562 02563 /** 02564 * Clear all parameter name and value for xsl:param. 02565 * 02566 */ 02567 void clearXSLTParam(); 02568 02569 /** 02570 * Register the MessageListener interface to the instance of implemented class 02571 * The error that occurred during the formatting process can be received as the event. 02572 * 02573 * @param listener Pointer of the MessageListener instance. 02574 */ 02575 void setMessageListener(MessageListener* listener); 02576 02577 /** 02578 * Register the FormatPageListener interface to the instance of implemented class 02579 * The page number that formatted during the formatting process can be received as the event. 02580 * 02581 * @param listener Pointer of the FormatPageListener instance. 02582 */ 02583 void setFormatPageListener(FormatPageListener* listener); 02584 02585 /** 02586 * Get the error output type. 02587 * 02588 * @return Error output type. 02589 */ 02590 XfoErrorStreamType getErrorStreamType() const; 02591 02592 /** 02593 * Set the error output type. 02594 * 02595 * @param type Error output type. 02596 * <table border="0" cellspacing="0" cellpadding="0"> 02597 * <tr><td>OST_NONE </td><td>: No error output</td></tr> 02598 * <tr><td>OST_STDOUT </td><td>: Error output to stdout</td></tr> 02599 * <tr><td>OST_STDERR </td><td>: Error output to stderr</td></tr> 02600 * </table> 02601 */ 02602 void setErrorStreamType(XfoErrorStreamType type); 02603 02604 /** 02605 * Get the printer name where the formatted result is outputted. 02606 * 02607 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 02608 * the string is truncated and terminated with a NULL character. 02609 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02610 * @return Returns the 'pVal'. 02611 */ 02612 char* getPrinterName(char* pVal, int size) const; 02613 /** 02614 * Get the printer name where the formatted result is outputted. 02615 * 02616 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 02617 * the string is truncated and terminated with a NULL character. 02618 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02619 * @return Returns the 'pVal'. 02620 */ 02621 wchar_t* getPrinterNameW(wchar_t* pVal, int size) const; 02622 /** 02623 * Specifies the output format or the printer name to output. 02624 * When a printer name is specified, the formatted result is outputted to that printer. 02625 * When "\@STDPRN" is specified, the formatted result is outputted to the currently used printer. 02626 * When "\@PDF" is specified, the formatted result is outputted to PDF. 02627 * When "\@SVG" is specified, the formatted result is outputted to SVG. 02628 * When "\@PS" is specified, the formatted result is outputted to PostScript. 02629 * When "\@INX" is specified, the formatted result is outputted to INX. 02630 * When "\@MIF" is specified, the formatted result is outputted to MIF. 02631 * When "\@TEXT" is specified, the formatted result is outputted to a text format file. 02632 * When "\@DOCX" is specified, the formatted result is outputted to a docx format file. 02633 * When "\@AreaTree" is specified, the AreaTree will be outputted. 02634 * When omitted, it is considered as "\@PDF" was specified. 02635 * It's impossible to output to the printer with any OS's other than Windows. 02636 * 02637 * @param newVal Pointer to a null-terminated string to be used as the printer name. 02638 */ 02639 void setPrinterName(const char* newVal); 02640 02641 02642 /** 02643 * Specifies the output format or the printer name to output. 02644 * When a printer name is specified, the formatted result is outputted to that printer. 02645 * When "\@STDPRN" is specified, the formatted result is outputted to the currently used printer. 02646 * When "\@PDF" is specified, the formatted result is outputted to PDF. 02647 * When "\@SVG" is specified, the formatted result is outputted to SVG. 02648 * When "\@PS" is specified, the formatted result is outputted to PostScript. 02649 * When "\@INX" is specified, the formatted result is outputted to INX. 02650 * When "\@MIF" is specified, the formatted result is outputted to MIF. 02651 * When "\@TEXT" is specified, the formatted result is outputted to a text format file. 02652 * When "\@DOCX" is specified, the formatted result is outputted to a docx format file. 02653 * When "\@AreaTree" is specified, the AreaTree will be outputted. 02654 * When omitted, it is considered as "\@PDF" was specified. 02655 * It's impossible to output to the printer with any OS's other than Windows. 02656 * 02657 * @param newVal Pointer to a null-terminated string to be used as the printer name. 02658 */ 02659 void setPrinterNameW(const wchar_t* newVal); 02660 02661 /** 02662 * Get formatted total pages. 02663 * @since 3.2 02664 * 02665 * @return the value of formatted total pages. 02666 */ 02667 long getFormattedPages() const; 02668 02669 #if defined(_DOXYGEN) || (defined(_MSC_VER) && defined(_WIN32)) 02670 02671 /** 02672 * Get the printer setting file URI. 02673 * 02674 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 02675 * the string is truncated and terminated with a NULL character. 02676 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02677 * @return Returns the 'pVal'. 02678 */ 02679 char* getPrinterSettingURI(char* pVal, int size) const; 02680 /** 02681 * Get the printer setting file URI. 02682 * 02683 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 02684 * the string is truncated and terminated with a NULL character. 02685 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02686 * @return Returns the 'pVal'. 02687 */ 02688 wchar_t* getPrinterSettingURIW(wchar_t* pVal, int size) const; 02689 02690 /** 02691 * Specifies the printer setting file URI. 02692 * This setting is effective only with Windows version. 02693 * 02694 * @param newVal Pointer to a null-terminated string to be used as the printer name. 02695 */ 02696 void setPrinterSettingURI(const char* newVal); 02697 /** 02698 * Specifies the printer setting file URI. 02699 * This setting is effective only with Windows version. 02700 * 02701 * @param newVal Pointer to a null-terminated string to be used as the printer name. 02702 */ 02703 void setPrinterSettingURIW(const wchar_t* newVal); 02704 02705 /** 02706 * Get the number of copies. Effective when outputting to printer. 02707 * 02708 * @return Returns the number of copies. 02709 */ 02710 long getPrnCopies() const; 02711 02712 /** 02713 * Specifies the number of copies. Effective when outputting to printer. 02714 * If nothing is specified, the value is considered as 1. 02715 * This setting is effective only with Windows version. 02716 * 02717 * @param newVal the number of copies. 02718 */ 02719 void setPrnCopies(long newVal); 02720 02721 /** 02722 * Get collation of multiple copies. 02723 * 02724 * @return If zero is returned, the same page is multi-copied continuously. 02725 * If nonezero is returned, the pages specified from start to end are printed repeatedly. 02726 */ 02727 long getPrnCollate() const; 02728 02729 /** 02730 * Specifies collation of multiple copies. Effective when outputting to printer and the number of 02731 * copies is plural. If it is not specified or the value zero is specified, the same page is 02732 * multi-copied continuously. 02733 * If nonezero is specified, the pages specified from start to end are printed repeatedly. 02734 * This setting is effective only with Windows version. 02735 * 02736 * @param newVal Zpecifies zero or nonzero. 02737 */ 02738 void setPrnCollate(long newVal); 02739 02740 /** 02741 * Get the setting of whether print dialog box is displayed or not when printing 02742 * 02743 * @return If zero, the print dialog box is displayed. If nonezero, the print dialog box is not displayed. 02744 */ 02745 long getBatchPrint() const; 02746 02747 /** 02748 * When the value 'false' is specified, the print dialog box is displayed when printing. 02749 * If the setting is omitted or the value 'true' is specified, the print dialog is not displayed. 02750 * This setting is effective only with Windows version. 02751 * 02752 * @param newVal If zero, the print dialog box is displayed. If nonezero, the print dialog box is not displayed. 02753 */ 02754 void setBatchPrint(long newVal); 02755 02756 #if !defined(_DOXYGEN) 02757 /** 02758 * @deprecated 02759 * Get the text of XML document you will format. 02760 * the use of this method is not recommended, use render method. 02761 * @since 3.1 02762 * 02763 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 02764 * the string is truncated and terminated with a NULL character. 02765 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02766 * @return Returns the 'pVal'. 02767 */ 02768 char* getDocumentText(char* pVal, int size) const; 02769 02770 /** 02771 * @deprecated 02772 * Get the text of XML document you will format. 02773 * the use of this method is not recommended, use render method. 02774 * @since 3.1 02775 * 02776 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 02777 * the string is truncated and terminated with a NULL character. 02778 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02779 * @return Returns the 'pVal'. 02780 */ 02781 wchar_t* getDocumentTextW(wchar_t* pVal, int size) const; 02782 02783 /** 02784 * @deprecated 02785 * Specifies the XML document you will format. 02786 * MSXML3/MSXML4 is required when formatting. 02787 * This setting is effective only with Windows version. 02788 * the use of this method is not recommended, use render method. 02789 * @since 3.1 02790 * 02791 * @param newVal Pointer to a null-terminated string to be used as the text of XML document. 02792 */ 02793 void setDocumentText(const char* newVal); 02794 02795 /** 02796 * @deprecated 02797 * Specifies the XML document you will format. 02798 * MSXML3/MSXML4 is required when formatting. 02799 * This setting is effective only with Windows version. 02800 * the use of this method is not recommended, use render method. 02801 * @since 3.1 02802 * 02803 * @param newVal Pointer to a null-terminated string to be used as the text of XML document. 02804 */ 02805 void setDocumentTextW(const wchar_t* newVal); 02806 #endif 02807 02808 /** 02809 * Get the text of XSL stylesheet for formatting. 02810 * @since 3.1 02811 * 02812 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 02813 * the string is truncated and terminated with a NULL character. 02814 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02815 * @return Returns the 'pVal'. 02816 */ 02817 char* getStylesheetText(char* pVal, int size) const; 02818 02819 /** 02820 * Get the text of XSL stylesheet for formatting. 02821 * @since 3.1 02822 * 02823 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 02824 * the string is truncated and terminated with a NULL character. 02825 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02826 * @return Returns the 'pVal'. 02827 */ 02828 wchar_t* getStylesheetTextW(wchar_t* pVal, int size) const; 02829 02830 /** 02831 * Specifies the text of XSL stylesheet for formatting. 02832 * If the specified XML document is FO, or the XML file contains the processing instruction 02833 * <?xml-stylesheet ...?> and the XSL stylesheet is specified, this setting is ignored. 02834 * Otherwise if there is no setting of this property, an error occurs. 02835 * MSXML3/MSXML4 is required when formatting. 02836 * This setting is effective only with Windows version. 02837 * @since 3.1 02838 * 02839 * @param newVal Pointer to a null-terminated string to be used as the text of XSL stylesheet. 02840 */ 02841 void setStylesheetText(const char* newVal); 02842 02843 /** 02844 * Specifies the text of XSL stylesheet for formatting. 02845 * If the specified XML document is FO, or the XML file contains the processing instruction 02846 * <?xml-stylesheet ...?> and the XSL stylesheet is specified, this setting is ignored. 02847 * Otherwise if there is no setting of this property, an error occurs. 02848 * MSXML3/MSXML4 is required when formatting. 02849 * This setting is effective only with Windows version. 02850 * @since 3.1 02851 * 02852 * @param newVal Pointer to a null-terminated string to be used as the text of XSL stylesheet. 02853 */ 02854 void setStylesheetTextW(const wchar_t* newVal); 02855 02856 #endif /* WIN32 */ 02857 02858 /** 02859 * Get the version string of AH Formatter. 02860 * @since 4.0MR4 02861 * 02862 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 02863 * the string is truncated and terminated with a NULL character. 02864 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02865 * @return Returns the 'pVal'. 02866 */ 02867 char* getVersion(char* pVal, int size) const; 02868 02869 /** 02870 * Get the version string of AH Formatter. 02871 * @since 4.0MR4 02872 * 02873 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 02874 * the string is truncated and terminated with a NULL character. 02875 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 02876 * @return Returns the 'pVal'. 02877 */ 02878 wchar_t* getVersionW(wchar_t* pVal, int size) const; 02879 02880 #if defined(_DOXYGEN) || (defined(_MSC_VER) && defined(_WIN32)) 02881 /** 02882 * Acquires the setting of the smoothing processing to text. 02883 * This setting is effective only with Windows XP or later / Windows Server2003 or later. 02884 * 02885 * @return Specify whether to perform the smoothing processing to text. 02886 */ 02887 bool getGdiTextAntialias() const; 02888 02889 /** 02890 * Performs the smoothing processing to text. 02891 * Effective only when printing and outputting images. 02892 * This setting is effective only with Windows XP or later / Windows Server2003 or later. 02893 * 02894 * @param newVal Smoothing value. 02895 */ 02896 void setGdiTextAntialias(bool newVal); 02897 02898 /** 02899 * Acquires the setting of the smoothing processing to borders. 02900 * This setting is effective only with Windows XP or later / Windows Server2003 or later. 02901 * 02902 * @return Specify whether to perform the smoothing processing to borders. 02903 */ 02904 bool getGdiLineartSmoothing() const; 02905 02906 /** 02907 * Performs the smoothing processing to borders. 02908 * Effective only when printing and outputting images. 02909 * This setting is effective only with Windows XP or later / Windows Server2003 or later. 02910 * 02911 * @param newVal Smoothing value. 02912 */ 02913 void setGdiLineartSmoothing(bool newVal); 02914 02915 /** 02916 * Acquires the setting of the smoothing processing to images. 02917 * This setting is effective only with Windows XP or later / Windows Server2003 or later. 02918 * 02919 * @return Specify whether to perform the smoothing processing to images. 02920 */ 02921 bool getGdiImageSmoothing() const; 02922 02923 /** 02924 * Performs the smoothing processing to images. 02925 * Effective only when printing and outputting images. 02926 * This setting is effective only with Windows XP or later / Windows Server2003 or later. 02927 * 02928 * @param newVal Smoothing value. 02929 */ 02930 void setGdiImageSmoothing(bool newVal); 02931 #endif 02932 02933 /** 02934 * Get the watermark text on each page. 02935 * 02936 * @param pVal 02937 * Pointer to the buffer that will receive the text. 02938 * If the string is as long or longer than the buffer, 02939 * the string is truncated and terminated with a NULL character. 02940 * @param size 02941 * Specifies the number of the 'pVal' buffer, including the NULL character. 02942 * If the text exceeds this limit, it is truncated. 02943 * @return Returns the 'pVal'. 02944 */ 02945 char* getWatermarkText(char* pVal, int size) const; 02946 02947 /** 02948 * Get watermark text on each page. 02949 * 02950 * @param pVal 02951 * Pointer to the buffer that will receive the text. 02952 * If the string is as long or longer than the buffer, 02953 * the string is truncated and terminated with a NULL character. 02954 * @param size 02955 * Specifies the number of the 'pVal' buffer, including the NULL character. 02956 * If the text exceeds this limit, it is truncated. 02957 * @return Returns the 'pVal'. 02958 */ 02959 wchar_t* getWatermarkTextW(wchar_t* pVal, int size) const; 02960 02961 /** 02962 * Displays the specified watermark text on each page. 02963 * Possible to make it multiple lines by delimiting with the line feed \n. 02964 * This setting is invalid with the evaluation version. 02965 * 02966 * @param newVal 02967 * Pointer to a null-terminated string. 02968 */ 02969 void setWatermarkText(const char* newVal); 02970 02971 /** 02972 * Displays the specified watermark text on each page. 02973 * Possible to make it multiple lines by delimiting with the line feed \n. 02974 * This setting is invalid with the evaluation version. 02975 * 02976 * @param newVal 02977 * Pointer to a null-terminated string. 02978 */ 02979 void setWatermarkTextW(const wchar_t* newVal); 02980 02981 /** 02982 * Get the font family of the watermark text. 02983 * 02984 * @param pVal 02985 * Pointer to the buffer that will receive the text. 02986 * If the string is as long or longer than the buffer, 02987 * the string is truncated and terminated with a NULL character. 02988 * @param size 02989 * Specifies the number of the 'pVal' buffer, including the NULL character. 02990 * If the text exceeds this limit, it is truncated. 02991 * @return Returns the 'pVal'. 02992 */ 02993 char* getWatermarkFontFamily(char* pVal, int size) const; 02994 02995 /** 02996 * Get the font family of the watermark text. 02997 * 02998 * @param pVal 02999 * Pointer to the buffer that will receive the text. 03000 * If the string is as long or longer than the buffer, 03001 * the string is truncated and terminated with a NULL character. 03002 * @param size 03003 * Specifies the number of the 'pVal' buffer, including the NULL character. 03004 * If the text exceeds this limit, it is truncated. 03005 * @return Returns the 'pVal'. 03006 */ 03007 wchar_t* getWatermarkFontFamilyW(wchar_t* pVal, int size) const; 03008 03009 /** 03010 * Specifies the font family to the character string which you set to watermark-text. 03011 * 03012 * @param newVal 03013 * Pointer to a null-terminated string. 03014 */ 03015 void setWatermarkFontFamily(const char* newVal); 03016 03017 /** 03018 * Specifies the font family to the character string which you set to watermark-text. 03019 * 03020 * @param newVal 03021 * Pointer to a null-terminated string. 03022 */ 03023 void setWatermarkFontFamilyW(const wchar_t* newVal); 03024 03025 /** 03026 * Get the font weight of the watermark text. 03027 * 03028 * @param pVal 03029 * Pointer to the buffer that will receive the text. 03030 * If the string is as long or longer than the buffer, 03031 * the string is truncated and terminated with a NULL character. 03032 * @param size 03033 * Specifies the number of the 'pVal' buffer, including the NULL character. 03034 * If the text exceeds this limit, it is truncated. 03035 * @return Returns the 'pVal'. 03036 */ 03037 char* getWatermarkFontWeight(char* pVal, int size) const; 03038 03039 /** 03040 * Get the font weight of the watermark text. 03041 * 03042 * @param pVal 03043 * Pointer to the buffer that will receive the text. 03044 * If the string is as long or longer than the buffer, 03045 * the string is truncated and terminated with a NULL character. 03046 * @param size 03047 * Specifies the number of the 'pVal' buffer, including the NULL character. 03048 * If the text exceeds this limit, it is truncated. 03049 * @return Returns the 'pVal'. 03050 */ 03051 wchar_t* getWatermarkFontWeightW(wchar_t* pVal, int size) const; 03052 03053 /** 03054 * Specifies the font weight to the character string which you set to watermark-text. 03055 * Possible to specify normal, bold or the numerical value from 100 to 900. 03056 * 03057 * @param newVal 03058 * Pointer to a null-terminated string. 03059 */ 03060 void setWatermarkFontWeight(const char* newVal); 03061 03062 /** 03063 * Specifies the font weight to the character string which you set to watermark-text. 03064 * Possible to specify normal, bold or the numerical value from 100 to 900. 03065 * 03066 * @param newVal 03067 * Pointer to a null-terminated string. 03068 */ 03069 void setWatermarkFontWeightW(const wchar_t* newVal); 03070 03071 /** 03072 * Get the font style of the watermark text. 03073 * 03074 * @param pVal 03075 * Pointer to the buffer that will receive the text. 03076 * If the string is as long or longer than the buffer, 03077 * the string is truncated and terminated with a NULL character. 03078 * @param size 03079 * Specifies the number of the 'pVal' buffer, including the NULL character. 03080 * If the text exceeds this limit, it is truncated. 03081 * @return Returns the 'pVal'. 03082 */ 03083 char* getWatermarkFontStyle(char* pVal, int size) const; 03084 03085 /** 03086 * Get the font style of the watermark text. 03087 * 03088 * @param pVal 03089 * Pointer to the buffer that will receive the text. 03090 * If the string is as long or longer than the buffer, 03091 * the string is truncated and terminated with a NULL character. 03092 * @param size 03093 * Specifies the number of the 'pVal' buffer, including the NULL character. 03094 * If the text exceeds this limit, it is truncated. 03095 * @return Returns the 'pVal'. 03096 */ 03097 wchar_t* getWatermarkFontStyleW(wchar_t* pVal, int size) const; 03098 03099 /** 03100 * Specifies the font style to the character string which you set to watermark-text. 03101 * 03102 * @param newVal 03103 * Pointer to a null-terminated string. 03104 */ 03105 void setWatermarkFontStyle(const char* newVal); 03106 03107 /** 03108 * Specifies the font style to the character string which you set to watermark-text. 03109 * 03110 * @param newVal 03111 * Pointer to a null-terminated string. 03112 */ 03113 void setWatermarkFontStyleW(const wchar_t* newVal); 03114 03115 /** 03116 * Get the opacity of the watermark text. 03117 * 03118 * @param pVal 03119 * Pointer to the buffer that will receive the text. 03120 * If the string is as long or longer than the buffer, 03121 * the string is truncated and terminated with a NULL character. 03122 * @param size 03123 * Specifies the number of the 'pVal' buffer, including the NULL character. 03124 * If the text exceeds this limit, it is truncated. 03125 * @return Returns the 'pVal'. 03126 */ 03127 char* getWatermarkOpacity(char* pVal, int size) const; 03128 03129 /** 03130 * Get the opacity of the watermark text. 03131 * 03132 * @param pVal 03133 * Pointer to the buffer that will receive the text. 03134 * If the string is as long or longer than the buffer, 03135 * the string is truncated and terminated with a NULL character. 03136 * @param size 03137 * Specifies the number of the 'pVal' buffer, including the NULL character. 03138 * If the text exceeds this limit, it is truncated. 03139 * @return Returns the 'pVal'. 03140 */ 03141 wchar_t* getWatermarkOpacityW(wchar_t* pVal, int size) const; 03142 03143 /** 03144 * Specifies the opacity to the character string which you set to watermark-text. 03145 * 03146 * @param newVal 03147 * Pointer to a null-terminated string. 03148 */ 03149 void setWatermarkOpacity(const char* newVal); 03150 03151 /** 03152 * Specifies the opacity to the character string which you set to watermark-text. 03153 * 03154 * @param newVal 03155 * Pointer to a null-terminated string. 03156 */ 03157 void setWatermarkOpacityW(const wchar_t* newVal); 03158 03159 }; 03160 03161 03162 /*************************************************************** 03163 * Exception class that returns the error information in the formatting process. 03164 */ 03165 class XFOINTERFACE_API XfoException 03166 { 03167 public: 03168 /** 03169 * Constructor 03170 */ 03171 XfoException(XfoIfErrorLevel errorLevel, XfoIfErrorCode errorCode, const wchar_t* errorMessage); 03172 03173 /** 03174 * Copy constructor 03175 */ 03176 XfoException(const XfoException &e); 03177 03178 /** 03179 * Destructor 03180 */ 03181 ~XfoException(); 03182 03183 private: 03184 XfoIfErrorLevel m_errorLevel; /* Error level */ 03185 XfoIfErrorCode m_errorCode; /* Error code */ 03186 wchar_t* m_errorMessage; /* Error message */ 03187 03188 public: 03189 /** 03190 * Get the error level. 03191 * 03192 * @return Returns the error level. 03193 */ 03194 XfoIfErrorLevel getErrorLevel() const; 03195 03196 /** 03197 * Get the error code. 03198 * 03199 * @return Returns the error code. 03200 */ 03201 XfoIfErrorCode getErrorCode() const; 03202 03203 /** 03204 * Get the error message. 03205 * 03206 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 03207 * the string is truncated and terminated with a NULL character. 03208 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 03209 * @return Returns the 'pVal'. 03210 */ 03211 char* getErrorMessage(char* pVal, int size) const; 03212 03213 /** 03214 * Get the error message. 03215 * 03216 * @param pVal Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, 03217 * the string is truncated and terminated with a NULL character. 03218 * @param size Specifies the number of the 'pVal' buffer, including the NULL character. If the text exceeds this limit, it is truncated. 03219 * @return Returns the 'pVal'. 03220 */ 03221 wchar_t* getErrorMessageW(wchar_t* pVal, int size) const; 03222 }; 03223 03224 03225 } 03226 03227 #endif /* XFOIFC_H__ */