xref: /plan9/sys/src/cmd/gs/src/icid.h (revision 593dc095aefb2a85c828727bbfa9da139a49bdf4)
1 /* Copyright (C) 2000 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: icid.h,v 1.8 2004/08/04 19:36:12 stefan Exp $ */
18 /* Interface to zcid.c, zfcid0.c */
19 
20 #ifndef icid_INCLUDED
21 #  define icid_INCLUDED
22 
23 #ifndef gs_cid_system_info_DEFINED
24 #  define gs_cid_system_info_DEFINED
25 typedef struct gs_cid_system_info_s gs_cid_system_info_t;
26 #endif
27 
28 /* Get the information from a CIDSystemInfo dictionary. */
29 int cid_system_info_param(gs_cid_system_info_t *, const ref *);
30 
31 /* Convert a CID into TT char code or to TT glyph index, using SubstNWP. */
32 /* Returns 1 if a glyph presents, 0 if not, <0 if error. */
33 int cid_to_TT_charcode(const gs_memory_t *mem,
34 		       const ref *Decoding, const ref *TT_cmap,
35 		       const ref *SubstNWP,
36                        uint nCID, uint *c, ref *src_type, ref *dst_type);
37 
38 /* Create a CIDMap from a True Type cmap array, Decoding and SubstNWP. */
39 int cid_fill_CIDMap(const gs_memory_t *mem, const ref *Decoding, const ref *TT_cmap, const ref *SubstNWP,
40                     int GDBytes, ref *CIDMap);
41 
42 /* <cid9font> <cid> .type9mapcid <charstring> <font_index> */
43 int ztype9mapcid(i_ctx_t *i_ctx_p);
44 
45 #endif /* icid_INCLUDED */
46