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