1 /* Copyright (C) 1998, 2000, 2001 Aladdin Enterprises. All rights reserved. 2 3 This software is provided AS-IS with no warranty, either express or 4 implied. 5 6 This software is distributed under license and may not be copied, 7 modified or distributed except as expressly authorized under the terms 8 of the license contained in the file LICENSE in this distribution. 9 10 For more information about licensing, please refer to 11 http://www.ghostscript.com/licensing/. For information on 12 commercial licensing, go to http://www.artifex.com/licensing/ or 13 contact Artifex Software, Inc., 101 Lucas Valley Road #110, 14 San Rafael, CA 94903, U.S.A., +1(415)492-9861. 15 */ 16 17 /* $Id: ichar1.h,v 1.13 2005/06/19 21:03:32 igor Exp $ */ 18 /* Type 1 / Type 2 character rendering operator procedures */ 19 20 #ifndef ichar1_INCLUDED 21 # define ichar1_INCLUDED 22 23 #ifndef gs_font_type1_DEFINED 24 # define gs_font_type1_DEFINED 25 typedef struct gs_font_type1_s gs_font_type1; 26 #endif 27 28 /* ---------------- Public ---------------- */ 29 30 /* Render a Type 1 or Type 2 outline. */ 31 /* This is the entire implementation of the .type1/2execchar operators. */ 32 int charstring_execchar(i_ctx_t *i_ctx_p, int font_type_mask); 33 34 /* ---------------- Internal ---------------- */ 35 36 /* 37 * Get a Type 1 or Type 2 glyph outline. This is the glyph_outline 38 * procedure for the font. 39 */ 40 font_proc_glyph_outline(zchar1_glyph_outline); 41 42 /* 43 * Get a glyph outline given a CharString. The glyph_outline procedure 44 * for CIDFontType 0 fonts uses this. 45 */ 46 int zcharstring_outline(gs_font_type1 *pfont, int WMode, const ref *pgref, 47 const gs_glyph_data_t *pgd, 48 const gs_matrix *pmat, gx_path *ppath, double sbw[4]); 49 50 int 51 z1_glyph_info(gs_font *font, gs_glyph glyph, const gs_matrix *pmat, 52 int members, gs_glyph_info_t *info); 53 54 int z1_glyph_info_generic(gs_font *font, gs_glyph glyph, const gs_matrix *pmat, 55 int members, gs_glyph_info_t *info, font_proc_glyph_info((*proc)), 56 int wmode); 57 58 int z1_set_cache(i_ctx_t *i_ctx_p, gs_font_base *pbfont, ref *cnref, 59 gs_glyph glyph, op_proc_t cont, op_proc_t *exec_cont); 60 61 #endif /* ichar1_INCLUDED */ 62