Files correlati : pdflib Ricompilazione Demo : [ ] Commento : Aggiornata pdflib.dll alla versione 7.0.4 git-svn-id: svn://10.65.10.50/trunk@18580 c028cbd2-c16b-5b4b-a496-9718f37d4682
		
			
				
	
	
		
			500 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			500 lines
		
	
	
		
			15 KiB
		
	
	
	
		
			C
		
	
	
		
			Executable File
		
	
	
	
	
| /*---------------------------------------------------------------------------*
 | |
|  |              PDFlib - A library for generating PDF on the fly             |
 | |
|  +---------------------------------------------------------------------------+
 | |
|  | Copyright (c) 1997-2006 Thomas Merz and PDFlib GmbH. All rights reserved. |
 | |
|  +---------------------------------------------------------------------------+
 | |
|  |                                                                           |
 | |
|  |    This software is subject to the PDFlib license. It is NOT in the       |
 | |
|  |    public domain. Extended versions and commercial licenses are           |
 | |
|  |    available, please check http://www.pdflib.com.                         |
 | |
|  |                                                                           |
 | |
|  *---------------------------------------------------------------------------*/
 | |
| 
 | |
| /* $Id: p_defopt.h,v 1.4 2009-03-23 08:51:17 guy Exp $
 | |
|  *
 | |
|  * PDFlib shared option definitions and structures
 | |
|  *
 | |
|  */
 | |
| 
 | |
| #ifndef P_DEFOPT_H
 | |
| #define P_DEFOPT_H
 | |
| 
 | |
| #define PDF_KEEP_TEXTLEN    (1L<<0)    /* keep text length */
 | |
| #define PDF_KEEP_CONTROL    (1L<<1)    /* keep special control character */
 | |
| #define PDF_KEEP_UNICODE    (1L<<2)    /* keep Unicode text */
 | |
| #define PDF_FORCE_NEWALLOC  (1L<<3)    /* force alloc for new text */
 | |
| #define PDF_USE_TMPALLOC    (1L<<4)    /* use temporary memory */
 | |
| 
 | |
| #define PDF_RETURN_BOXEMPTY  "_boxempty"
 | |
| #define PDF_RETURN_BOXFULL   "_boxfull"
 | |
| #define PDF_RETURN_NEXTPAGE  "_nextpage"
 | |
| #define PDF_RETURN_STOP      "_stop"
 | |
| #define PDF_RETURN_ATMARK    "_mark%d"
 | |
| 
 | |
| typedef enum
 | |
| {
 | |
|     is_block    = (1L<<0),
 | |
|     is_image    = (1L<<1),
 | |
|     is_textline = (1L<<2),
 | |
|     is_textflow = (1L<<3),
 | |
|     is_inline   = (1L<<4)
 | |
| }
 | |
| pdf_elemflags;
 | |
| 
 | |
| struct pdf_text_options_s
 | |
| {
 | |
|     pdc_scalar charspacing;
 | |
|     pdc_scalar charspacing_pc;
 | |
|     pdf_coloropt fillcolor;
 | |
|     int font;
 | |
|     pdc_scalar fontsize;
 | |
|     pdc_scalar fontsize_pc;
 | |
|     int fontsize_st;
 | |
|     pdc_bool glyphwarning;
 | |
|     pdc_scalar horizscaling;
 | |
|     pdc_scalar italicangle;
 | |
|     pdc_bool fakebold;
 | |
|     pdc_bool kerning;
 | |
|     unsigned int mask;
 | |
|     unsigned int pcmask;
 | |
|     unsigned int fontset;
 | |
|     pdc_bool overline;
 | |
|     pdc_bool strikeout;
 | |
|     pdf_coloropt strokecolor;
 | |
|     pdc_scalar strokewidth;
 | |
|     pdc_scalar dasharray[2];
 | |
|     char *text;
 | |
|     int textlen;
 | |
|     pdc_text_format textformat;
 | |
|     int textrendering;
 | |
|     pdc_scalar textrise;
 | |
|     pdc_scalar textrise_pc;
 | |
|     pdc_scalar leading;
 | |
|     pdc_scalar leading_pc;
 | |
|     pdc_bool underline;
 | |
|     pdc_scalar wordspacing;
 | |
|     pdc_scalar wordspacing_pc;
 | |
|     pdc_scalar underlinewidth;
 | |
|     pdc_scalar underlineposition;
 | |
|     pdc_scalar *xadvancelist;
 | |
|     int nglyphs;
 | |
|     char *link;
 | |
|     char *linktype;
 | |
|     pdc_bool charref;
 | |
|     pdc_bool escapesequence;
 | |
|     pdc_glyphcheck glyphcheck;
 | |
| };
 | |
| 
 | |
| typedef enum
 | |
| {
 | |
|     xo_filename,
 | |
|     xo_ignoreorientation,
 | |
|     xo_imagewarning,
 | |
|     xo_dpi,
 | |
|     xo_page,
 | |
|     xo_scale
 | |
| }
 | |
| pdf_xobject_optflags;
 | |
| 
 | |
| typedef struct
 | |
| {
 | |
|     pdc_bool adjustpage;
 | |
|     pdc_bool blind;
 | |
|     char *filename;
 | |
|     int flags;
 | |
|     pdc_bool imagewarning;
 | |
|     pdc_bool ignoreorientation;
 | |
|     unsigned int mask;
 | |
|     int im;
 | |
|     int page;
 | |
|     pdc_scalar dpi[2];
 | |
|     pdc_scalar scale[2];
 | |
| }
 | |
| pdf_xobject_options;
 | |
| 
 | |
| typedef enum
 | |
| {
 | |
|     fit_boxsize,
 | |
|     fit_fitmethod,
 | |
|     fit_margin,
 | |
|     fit_shrinklimit,
 | |
|     fit_position,
 | |
|     fit_orientate,
 | |
|     fit_rotate,
 | |
|     fit_matchbox,
 | |
|     fit_alignchar,
 | |
|     fit_refpoint
 | |
| }
 | |
| pdf_fit_optflags;
 | |
| 
 | |
| 
 | |
| typedef struct
 | |
| {
 | |
|     pdc_scalar boxsize[2];
 | |
|     pdc_fitmethod fitmethod;
 | |
|     int flags;
 | |
|     pdc_scalar margin[2];
 | |
|     unsigned int mask;
 | |
|     unsigned int pcmask;
 | |
|     pdc_scalar shrinklimit;
 | |
|     pdc_scalar position[2];
 | |
|     int orientate;
 | |
|     pdc_scalar refpoint[2];
 | |
|     pdc_scalar rotate;
 | |
|     pdc_bool showborder;
 | |
|     pdf_mbox *matchbox;
 | |
|     pdc_ushort alignchar;
 | |
| }
 | |
| pdf_fit_options;
 | |
| 
 | |
| typedef struct pdf_fitres_s pdf_fitres;
 | |
| 
 | |
| 
 | |
| /* font option definitions */
 | |
| 
 | |
| #define PDF_KERNING_FLAG PDC_OPT_UNSUPP
 | |
| #define PDF_SUBSETTING_FLAG PDC_OPT_UNSUPP
 | |
| #define PDF_AUTOCIDFONT_FLAG PDC_OPT_UNSUPP
 | |
| #define PDF_EMBEDOPENTYPE_FLAG PDC_OPT_UNSUPP
 | |
| #define PDF_SKIPPOSTTABLE_FLAG PDC_OPT_UNSUPP
 | |
| #define PDF_CHARREF_FLAG PDC_OPT_UNSUPP
 | |
| #define PDF_ESCAPESEQU_FLAG PDC_OPT_UNSUPP
 | |
| #define PDF_GLYPHCHECK_FLAG PDC_OPT_UNSUPP
 | |
| #define PDF_VERTICAL_FLAG PDC_OPT_UNSUPP
 | |
| #define PDF_REPLCHAR_FLAG PDC_OPT_UNSUPP
 | |
| #define PDF_KEEPNATIVE_FLAG PDC_OPT_UNSUPP
 | |
| #define PDF_STAMP_FLAG PDC_OPT_UNSUPP
 | |
| #define PDF_LEADER_FLAG PDC_OPT_UNSUPP
 | |
| 
 | |
| #define PDF_METADATA_FLAG  PDC_OPT_UNSUPP
 | |
| 
 | |
| #define PDF_CLIPPATH_FLAG PDC_OPT_UNSUPP
 | |
| 
 | |
| #define PDF_FONT_OPTIONS1 \
 | |
| \
 | |
|     {"encoding", pdc_stringlist,  PDC_OPT_NONE, 1, 1, \
 | |
|       0.0, PDF_MAX_NAMESTRING, NULL}, \
 | |
| \
 | |
|     {"fontname", pdc_stringlist, PDC_OPT_NONE | PDC_OPT_CONVUTF8, 1, 1, \
 | |
|       1.0, PDF_MAX_FONTNAME, NULL}, \
 | |
| 
 | |
| 
 | |
| #define PDF_FONT_OPTIONS2 \
 | |
| \
 | |
|     {"autocidfont", pdc_booleanlist, PDF_AUTOCIDFONT_FLAG, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"autosubsetting", pdc_booleanlist, PDF_SUBSETTING_FLAG, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"embedding", pdc_booleanlist, PDC_OPT_NONE, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"fontstyle", pdc_keywordlist, PDC_OPT_NONE, 1, 1, \
 | |
|       0.0, 0.0, pdf_fontstyle_pdfkeylist}, \
 | |
| \
 | |
|     /* deprecated */ \
 | |
|     {"fontwarning", pdc_booleanlist, PDC_OPT_PDFLIB_7, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"monospace", pdc_integerlist, PDC_OPT_NONE, 1, 1, \
 | |
|       1.0, FNT_MAX_METRICS, NULL}, \
 | |
| \
 | |
|     {"ascender", pdc_integerlist, PDC_OPT_NONE, 1, 1, \
 | |
|       -FNT_MAX_METRICS, FNT_MAX_METRICS, NULL}, \
 | |
| \
 | |
|     {"descender", pdc_integerlist, PDC_OPT_NONE, 1, 1, \
 | |
|       -FNT_MAX_METRICS, FNT_MAX_METRICS, NULL}, \
 | |
| \
 | |
|     {"capheight", pdc_integerlist, PDC_OPT_NONE, 1, 1, \
 | |
|       -FNT_MAX_METRICS, FNT_MAX_METRICS, NULL}, \
 | |
| \
 | |
|     {"xheight", pdc_integerlist, PDC_OPT_NONE, 1, 1, \
 | |
|       -FNT_MAX_METRICS, FNT_MAX_METRICS, NULL}, \
 | |
| \
 | |
|     {"linegap", pdc_integerlist, PDC_OPT_NONE, 1, 1, \
 | |
|       -FNT_MAX_METRICS, FNT_MAX_METRICS, NULL}, \
 | |
| \
 | |
|     {"subsetlimit", pdc_doublelist, PDF_SUBSETTING_FLAG|PDC_OPT_PERCENT, 1, 1, \
 | |
|       0.0, 100.0, NULL}, \
 | |
| \
 | |
|     {"subsetminsize", pdc_doublelist, PDF_SUBSETTING_FLAG, 1, 1, \
 | |
|       0.0, PDC_FLOAT_MAX, NULL}, \
 | |
| \
 | |
|     {"subsetting", pdc_booleanlist, PDF_SUBSETTING_FLAG, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"unicodemap", pdc_booleanlist, PDF_AUTOCIDFONT_FLAG, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"embedopentype", pdc_booleanlist, PDF_EMBEDOPENTYPE_FLAG, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"skipposttable", pdc_booleanlist, PDF_SKIPPOSTTABLE_FLAG, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"keepnative", pdc_booleanlist, PDF_KEEPNATIVE_FLAG, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"vertical", pdc_booleanlist, PDF_VERTICAL_FLAG, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"replacementchar", pdc_unicharlist, PDF_REPLCHAR_FLAG, 1, 1, \
 | |
|       0.0, PDC_MAX_UNIVAL, NULL}, \
 | |
| \
 | |
|     {"metadata", pdc_stringlist, PDF_METADATA_FLAG, 1, 1, \
 | |
|       0.0, PDC_INT_MAX, NULL}, \
 | |
| 
 | |
| 
 | |
| #define PDF_FONT_OPTIONS3 \
 | |
| \
 | |
|     {"kerning", pdc_booleanlist, PDF_KERNING_FLAG, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| 
 | |
| 
 | |
| /* text option definitions */
 | |
| 
 | |
| #define PDF_TEXT_OPTIONS \
 | |
| \
 | |
|     {"charspacing", pdc_scalarlist, PDC_OPT_PERCENT, 1, 1, \
 | |
|       PDC_FLOAT_MIN, PDC_FLOAT_MAX, NULL}, \
 | |
| \
 | |
|     /* deprecated */ \
 | |
|     {"glyphwarning", pdc_booleanlist, PDC_OPT_PDFLIB_7, 1, 1, \
 | |
|      0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"fillcolor", pdc_stringlist, PDC_OPT_NONE, 1, 5, \
 | |
|       0.0, PDF_MAX_NAMESTRING, NULL}, \
 | |
| \
 | |
|     {"font", pdc_fonthandle, PDC_OPT_NONE, 1, 1, \
 | |
|       0, 0, NULL}, \
 | |
| \
 | |
|     {"fontsize", pdc_scalarlist, \
 | |
|       PDC_OPT_PERCENT | PDC_OPT_SUBOPTLIST | PDC_OPT_KEYLIST1, 1, 2, \
 | |
|       PDC_FLOAT_MIN, PDC_FLOAT_MAX, pdf_fontsize_keylist}, \
 | |
| \
 | |
|     {"horizscaling", pdc_scalarlist,  PDC_OPT_PERCENT, 1, 1, \
 | |
|       PDC_FLOAT_MIN, PDC_FLOAT_MAX, NULL}, \
 | |
| \
 | |
|     {"italicangle", pdc_scalarlist,  PDC_OPT_NONE, 1, 1, \
 | |
|       -89.99, 89.99, NULL}, \
 | |
| \
 | |
|     {"fakebold", pdc_booleanlist,  PDC_OPT_NONE, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"kerning", pdc_booleanlist, PDF_KERNING_FLAG, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"overline", pdc_booleanlist, PDC_OPT_NONE, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"strikeout", pdc_booleanlist, PDC_OPT_NONE, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"strokecolor", pdc_stringlist, PDC_OPT_NONE, 1, 5, \
 | |
|       0.0, PDF_MAX_NAMESTRING, NULL}, \
 | |
| \
 | |
|     {"strokewidth", pdc_scalarlist, PDC_OPT_PERCENT, 1, 1, \
 | |
|       0.0, PDC_FLOAT_MAX, pdf_underlinewidth_keylist}, \
 | |
| \
 | |
|     {"dasharray", pdc_scalarlist, PDC_OPT_NONE, 1, 2, \
 | |
|       0.0, PDC_FLOAT_MAX, NULL}, \
 | |
| \
 | |
|     {"textformat", pdc_keywordlist, PDC_OPT_NONE, 1, 1, \
 | |
|       0.0, 0.0, pdf_textformat_keylist}, \
 | |
| \
 | |
|     {"textrendering", pdc_integerlist, PDC_OPT_NONE, 1, 1, \
 | |
|       0, PDF_LAST_TRMODE, NULL}, \
 | |
| \
 | |
|     {"textrise", pdc_scalarlist, PDC_OPT_PERCENT, 1, 1, \
 | |
|       PDC_FLOAT_MIN, PDC_FLOAT_MAX, NULL}, \
 | |
| \
 | |
|     {"underline", pdc_booleanlist, PDC_OPT_NONE, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"wordspacing", pdc_scalarlist, PDC_OPT_PERCENT, 1, 1, \
 | |
|       PDC_FLOAT_MIN, PDC_FLOAT_MAX, NULL}, \
 | |
| \
 | |
|     {"underlinewidth", pdc_scalarlist, PDC_OPT_PERCENT, 1, 1, \
 | |
|       0.0, PDC_FLOAT_MAX, pdf_underlinewidth_keylist}, \
 | |
| \
 | |
|     {"underlineposition", pdc_scalarlist, PDC_OPT_PERCENT, 1, 1, \
 | |
|       PDC_FLOAT_MIN, PDC_FLOAT_MAX, pdf_underlineposition_keylist}, \
 | |
| \
 | |
|     /* deprecated */ \
 | |
|     {"weblink", pdc_stringlist, PDC_OPT_PDFLIB_7, 1, 1, \
 | |
|       0.0, PDC_INT_MAX, NULL}, \
 | |
| \
 | |
|     /* deprecated */ \
 | |
|     {"locallink", pdc_stringlist, PDC_OPT_PDFLIB_7, 1, 1, \
 | |
|       0.0, PDC_INT_MAX, NULL}, \
 | |
| \
 | |
|     /* deprecated */ \
 | |
|     {"pdflink", pdc_stringlist, PDC_OPT_PDFLIB_7, 1, 1, \
 | |
|       0.0, PDC_INT_MAX, NULL}, \
 | |
| \
 | |
|     {"charref", pdc_booleanlist, PDF_CHARREF_FLAG, 1, 1, \
 | |
|      0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"escapesequence", pdc_booleanlist, PDF_ESCAPESEQU_FLAG, 1, 1, \
 | |
|      0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"glyphcheck", pdc_keywordlist, PDF_GLYPHCHECK_FLAG, 1, 1, \
 | |
|      0.0, 0.0, pdf_glyphcheck_keylist}, \
 | |
| \
 | |
| 
 | |
| 
 | |
| /* xobject option definitions */
 | |
| 
 | |
| #define PDF_XOBJECT_OPTIONS1 \
 | |
| \
 | |
|     {"adjustpage", pdc_booleanlist, PDC_OPT_PDC_1_3, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"blind", pdc_booleanlist, PDC_OPT_NONE, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| 
 | |
| 
 | |
| #define PDF_XOBJECT_OPTIONS2 \
 | |
| \
 | |
|     {"ignoreorientation", pdc_booleanlist, PDC_OPT_NONE, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"ignoreclippingpath", pdc_booleanlist, PDF_CLIPPATH_FLAG, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     /* deprecated */ \
 | |
|     {"imagewarning", pdc_booleanlist, PDC_OPT_PDFLIB_7, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| \
 | |
|     {"dpi", pdc_scalarlist, PDC_OPT_NONE, 1, 2, \
 | |
|       0.0, PDC_INT_MAX, pdf_dpi_keylist}, \
 | |
| 
 | |
| 
 | |
| #define PDF_XOBJECT_OPTIONS3 \
 | |
| \
 | |
|     {"scale", pdc_scalarlist, PDC_OPT_NOZERO, 1, 2, \
 | |
|       PDC_FLOAT_MIN, PDC_FLOAT_MAX, NULL}, \
 | |
| 
 | |
| 
 | |
| /* general fit option definitions  */
 | |
| 
 | |
| #define PDF_FIT_OPTIONS1 \
 | |
| \
 | |
|     {"boxsize", pdc_scalarlist, PDC_OPT_NONE, 2, 2, \
 | |
|       0, PDC_FLOAT_MAX, NULL}, \
 | |
| \
 | |
|     {"margin", pdc_scalarlist, PDC_OPT_NONE, 1, 2, \
 | |
|       0, PDC_FLOAT_MAX, NULL}, \
 | |
| \
 | |
|     {"shrinklimit", pdc_scalarlist, PDC_OPT_PERCENT | PDC_OPT_PERCRANGE, 1, 1, \
 | |
|       0.0, 100.0, NULL}, \
 | |
| \
 | |
|     {"position", pdc_scalarlist, PDC_OPT_NONE, 1, 2, \
 | |
|       PDC_FLOAT_MIN, PDC_FLOAT_MAX, pdf_position_keylist}, \
 | |
| \
 | |
|     {"matchbox", pdc_stringlist, PDC_OPT_NONE, 1, 1, \
 | |
|       0.0, PDC_INT_MAX, NULL}, \
 | |
| 
 | |
| 
 | |
| #define PDF_FIT_OPTIONS2 \
 | |
| \
 | |
|     {"fitmethod", pdc_keywordlist, PDC_OPT_NONE, 1, 1,  \
 | |
|       0.0, 0.0, pdf_fitmethod_keylist}, \
 | |
| \
 | |
|     {"rotate", pdc_scalarlist, PDC_OPT_NONE, 1, 1, \
 | |
|       PDC_FLOAT_MIN, PDC_FLOAT_MAX, NULL}, \
 | |
| \
 | |
|     {"orientate", pdc_keywordlist, PDC_OPT_NONE, 1, 1, \
 | |
|       0.0, 0.0, pdf_orientate_keylist}, \
 | |
| \
 | |
|     {"showborder", pdc_booleanlist, PDC_OPT_NONE, 1, 1, \
 | |
|       0.0, 0.0, NULL}, \
 | |
| 
 | |
| 
 | |
| #define PDF_FIT_OPTIONS6 \
 | |
| \
 | |
|     {"alignchar", pdc_unicharlist, PDC_OPT_NONE, 1, 1, \
 | |
|       0.0, PDC_USHRT_MAX, pdf_charname_keylist}, \
 | |
| \
 | |
|     {"stamp", pdc_keywordlist, PDF_STAMP_FLAG, 1, 1, \
 | |
|       0.0, 0.0, pdf_stampdir_keylist}, \
 | |
| \
 | |
|     {"leader", pdc_stringlist, PDF_LEADER_FLAG, 1, 1, \
 | |
|       0.0, PDC_INT_MAX, NULL}, \
 | |
| 
 | |
| 
 | |
| #define PDF_FIT_OPTIONS3 \
 | |
| \
 | |
|     {"refpoint", pdc_scalarlist, PDC_OPT_NONE, 2, 2, \
 | |
|       PDC_FLOAT_MIN, PDC_FLOAT_MAX, NULL}, \
 | |
| 
 | |
| 
 | |
| 
 | |
| /* p_font.c */
 | |
| void pdf_get_font_options(PDF *p, pdf_font_options *fo, pdc_resopt *resopts);
 | |
| int pdf_load_font_internal(PDF *p, pdf_font_options *fo);
 | |
| 
 | |
| /* p_image.c */
 | |
| void pdf_init_xobject_options(PDF *p, pdf_xobject_options *xo);
 | |
| void pdf_get_xobject_options(PDF *p, pdf_xobject_options *xo,
 | |
|         pdc_resopt *resopts);
 | |
| pdc_resopt *pdf_parse_fitxobject_optlist(PDF *p, int im,
 | |
|         pdf_xobject_options *xo, pdf_fit_options *fit, const char *optlist);
 | |
| void pdf_fit_xobject_internal(PDF *p, pdf_xobject_options *xo,
 | |
|         pdf_fit_options *fit, pdc_matrix *immatrix);
 | |
| 
 | |
| /* p_mbox.c */
 | |
| void pdf_init_fit_options(PDF *p, pdc_bool fortflow, pdf_fit_options *fit);
 | |
| void pdf_cleanup_fit_options(PDF *p, pdf_fit_options *fit);
 | |
| void pdf_get_fit_options(PDF *p, pdc_bool fortflow, pdf_fit_options *fit,
 | |
|         pdc_resopt *resopts);
 | |
| void pdf_get_mbox_boxheight(PDF *p, pdf_mbox *mbox,
 | |
|         pdc_scalar *boxheight);
 | |
| pdc_bool pdf_get_mbox_clipping(PDF *p, pdf_mbox *mbox,
 | |
|         pdc_scalar width, pdc_scalar height, pdc_box *clipbox);
 | |
| double pdf_get_mbox_info(PDF *p, pdf_mbox *mbox, const char *keyword);
 | |
| 
 | |
| /* p_text.c */
 | |
| pdc_bool pdf_calculate_text_options(PDF *p, pdf_text_options *to,
 | |
|         pdc_bool force, pdc_scalar fontscale, pdc_scalar minfontsize,
 | |
|         pdc_scalar fontsizeref);
 | |
| void pdf_set_text_options(PDF *p, pdf_text_options *to);
 | |
| void pdf_init_text_options(PDF *p, pdf_text_options *to);
 | |
| void pdf_get_text_options(PDF *p, pdf_text_options *to, pdc_resopt *resopts);
 | |
| pdc_resopt *pdf_parse_fittextline_optlist(PDF *p, pdf_text_options *to,
 | |
|         pdf_fit_options *fit, const char *optlist);
 | |
| pdc_bool pdf_fit_textline_internal(PDF *p, pdf_fitres *fitres,
 | |
|         pdf_text_options *to, pdf_fit_options *fit, pdc_matrix *matrix);
 | |
| void pdf_calculate_textline_size(PDF *p, pdf_text_options *to,
 | |
|         pdf_fit_options *fit, pdc_scalar *width, pdc_scalar *height);
 | |
| pdc_bool pdf_is_horiz_orientated(pdf_fit_options *fit);
 | |
| int pdf_calculate_leader_pos(PDF *p, pdf_alignment alignment,
 | |
|         pdf_text_options *to, int nchars,pdc_scalar *xstart, pdc_scalar *xstop,
 | |
|         pdc_scalar width, pdc_bool left);
 | |
| void pdf_draw_leader_text(PDF *p, pdc_scalar xstart, pdc_scalar ybase,
 | |
|         pdc_scalar width, int nchars, pdc_byte *utext, int len, int charlen,
 | |
|         pdf_text_options *to);
 | |
| 
 | |
| int pdf_get_approximate_uvlist(PDF *p, pdf_font *currfont,
 | |
|         pdc_encodingvector *ev, int usv, pdc_bool replace, pdf_fitres *fitres,
 | |
|         pdc_ushort *uvlist, pdc_ushort *cglist);
 | |
| void pdf_get_input_textformat(pdf_font *currfont,
 | |
|         pdc_text_format *intextformat, int *convflags);
 | |
| pdc_bool pdf_check_textstring(PDF *p, const char *text, int len, int flags,
 | |
|         pdf_text_options *to, pdf_fitres *fittext, pdc_byte **outtext,
 | |
|         int *outlen, int *outcharlen, pdc_bool verbose);
 | |
| pdc_scalar pdf_calculate_textsize(PDF *p, const pdc_byte *text, int len,
 | |
|         int charlen, pdf_text_options *to, int breakchar, pdc_scalar *height,
 | |
|         pdc_bool verbose);
 | |
| pdc_scalar pdf_trim_textwidth(pdc_scalar width, pdf_text_options *to);
 | |
| void pdf_place_text(PDF *p, pdc_byte *text, int len, int charlen,
 | |
|         pdf_text_options *to, pdc_scalar width, pdc_scalar height,
 | |
|         pdc_bool cont);
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| #endif  /* P_DEFOPT_H */
 | |
| 
 |