Back to index

tetex-bin  3.0
t1set.h
Go to the documentation of this file.
00001 /*--------------------------------------------------------------------------
00002   ----- File:        t1set.h
00003   ----- Author:      Rainer Menzner (Rainer.Menzner@web.de)
00004   ----- Date:        2003-01-02
00005   ----- Description: This file is part of the t1-library. It contains
00006                      definitions and declarations for t1set.c.
00007   ----- Copyright:   t1lib is copyrighted (c) Rainer Menzner, 1996-2003.
00008                      As of version 0.5, t1lib is distributed under the
00009                    GNU General Public Library Lincense. The
00010                    conditions can be found in the files LICENSE and
00011                    LGPL, which should reside in the toplevel
00012                    directory of the distribution.  Please note that 
00013                    there are parts of t1lib that are subject to
00014                    other licenses:
00015                    The parseAFM-package is copyrighted by Adobe Systems
00016                    Inc.
00017                    The type1 rasterizer is copyrighted by IBM and the
00018                    X11-consortium.
00019   ----- Warranties:  Of course, there's NO WARRANTY OF ANY KIND :-)
00020   ----- Credits:     I want to thank IBM and the X11-consortium for making
00021                      their rasterizer freely available.
00022                    Also thanks to Piet Tutelaers for his ps2pk, from
00023                    which I took the rasterizer sources in a format
00024                    independent from X11.
00025                      Thanks to all people who make free software living!
00026 --------------------------------------------------------------------------*/
00027   
00028 #ifdef T1SET_C
00029 
00030 GLYPH *T1_SetChar( int FontID, char charcode, 
00031                  float size, T1_TMATRIX *transform);
00032 GLYPH *T1_SetString( int FontID, char *string, volatile int len,
00033                    long spaceoff, int modflag,
00034                    float size, T1_TMATRIX *transform);
00035 GLYPH* T1_SetRect( int FontID, float size,
00036                  float width, float height,
00037                  T1_TMATRIX *transform);
00038 void fill(char *dest, int h, int w,
00039          struct region *area, int byte, int bit,
00040          int wordsize);
00041 void fillrun(char *p, pel x0, pel x1, int bit);
00042 GLYPH *T1_CopyGlyph(GLYPH *glyph);
00043 void T1_DumpGlyph( GLYPH *glyph);
00044 GLYPH *T1_ConcatGlyphs( GLYPH *glyph1, GLYPH *glyph2,
00045                      int x_off, int y_off, int modflag);
00046 void T1_DumpGlyph( GLYPH *glyph);
00047 GLYPH *T1_FillOutline( T1_OUTLINE *path, int modflag);
00048 
00049 
00050 #else
00051 
00052 extern GLYPH *T1_SetChar( int FontID, char charcode, 
00053                        float size, T1_TMATRIX *transform);
00054 extern GLYPH *T1_SetString( int FontID, char *string, volatile int len,
00055                          long spaceoff, int modflag,
00056                          float size, T1_TMATRIX *transform);
00057 extern GLYPH* T1_SetRect( int FontID, float size,
00058                        float width, float height,
00059                        T1_TMATRIX *transform);
00060 extern void fill(char *dest, int h, int w,
00061                struct region *area, int byte, int bit,
00062                int wordsize);
00063 extern void fillrun(char *p, pel x0, pel x1, int bit);
00064 extern GLYPH *T1_CopyGlyph(GLYPH *glyph);
00065 extern void T1_DumpGlyph( GLYPH *glyph);
00066 extern GLYPH *T1_ConcatGlyphs( GLYPH *glyph1, GLYPH *glyph2,
00067                             int x_off, int y_off, int modflag);
00068 extern void T1_DumpGlyph( GLYPH *glyph);
00069 extern GLYPH *T1_FillOutline( T1_OUTLINE *path, int modflag);
00070 
00071 #endif
00072 
00073 
00074 extern struct region *fontfcnB(int FontID, int modflag,
00075                             struct XYspace *S, char **ev,
00076                             unsigned char index, int *mode,
00077                             psfont *Font_Ptr,
00078                             int do_raster,
00079                             float strokewidth);
00080 extern struct region *fontfcnB_string( int FontID, int modflag,
00081                                    struct XYspace *S, char **ev,
00082                                    unsigned char *string, int no_chars,
00083                                    int *mode, psfont *Font_Ptr,
00084                                    int *kern_pairs, long spacewidth,
00085                                    int do_raster,
00086                                    float strokewidth);
00087 extern struct region *fontfcnB_ByName( int FontID, int modflag,
00088                                    struct XYspace *S,
00089                                    char *charname,
00090                                    int *mode, psfont *Font_Ptr,
00091                                    int do_raster);
00092 extern struct region* fontfcnRect( float width,
00093                                float height,
00094                                struct XYspace* S,
00095                                int* mode,
00096                                int do_raster,
00097                                float strokewidth);
00098