Haru Free PDF Library
hpdf_fontdef.h File Reference
#include "hpdf_objects.h"
Include dependency graph for hpdf_fontdef.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  _HPDF_CharData
 
struct  _HPDF_CID_Width
 
struct  _HPDF_FontDef_Rec
 
struct  _HPDF_Type1FontDefAttrRec
 
struct  _HPDF_TTF_Table
 
struct  _HPDF_TTF_OffsetTbl
 
struct  _HPDF_TTF_CmapRange
 
struct  _HPDF_TTF_GryphOffsets
 
struct  _HPDF_TTF_LongHorMetric
 
struct  _HPDF_TTF_FontHeader
 
struct  _HPDF_TTF_NameRecord
 
struct  _HPDF_TTF_NamingTable
 
struct  _HPDF_TTFontDefAttr_Rec
 
struct  _HPDF_CIDFontDefAttrRec
 

Macros

#define HPDF_FONTDEF_SIG_BYTES   0x464F4E54L
 
#define HPDF_FONT_FIXED_WIDTH   1
 
#define HPDF_FONT_SERIF   2
 
#define HPDF_FONT_SYMBOLIC   4
 
#define HPDF_FONT_SCRIPT   8
 
#define HPDF_FONT_STD_CHARSET   32
 
#define HPDF_FONT_ITALIC   64
 
#define HPDF_FONT_ALL_CAP   65536
 
#define HPDF_FONT_SMALL_CAP   131072
 
#define HPDF_FONT_FOURCE_BOLD   262144
 
#define HPDF_CID_W_TYPE_FROM_TO   0
 
#define HPDF_CID_W_TYPE_FROM_ARRAY   1
 
#define HPDF_TTF_FONT_TAG_LEN   6
 

Typedefs

typedef struct _HPDF_CharData HPDF_CharData
 
typedef enum _HPDF_FontDefType HPDF_FontDefType
 
typedef struct _HPDF_CID_Width HPDF_CID_Width
 
typedef struct _HPDF_FontDef_RecHPDF_FontDef
 
typedef void(* HPDF_FontDef_FreeFunc) (HPDF_FontDef fontdef)
 
typedef void(* HPDF_FontDef_CleanFunc) (HPDF_FontDef fontdef)
 
typedef HPDF_STATUS(* HPDF_FontDef_InitFunc) (HPDF_FontDef fontdef)
 
typedef struct _HPDF_FontDef_Rec HPDF_FontDef_Rec
 
typedef struct _HPDF_Type1FontDefAttrRecHPDF_Type1FontDefAttr
 
typedef struct _HPDF_Type1FontDefAttrRec HPDF_Type1FontDefAttr_Rec
 
typedef struct _HPDF_TTF_Table HPDF_TTFTable
 
typedef struct _HPDF_TTF_OffsetTbl HPDF_TTF_OffsetTbl
 
typedef struct _HPDF_TTF_CmapRange HPDF_TTF_CmapRange
 
typedef struct _HPDF_TTF_GryphOffsets HPDF_TTF_GryphOffsets
 
typedef struct _HPDF_TTF_LongHorMetric HPDF_TTF_LongHorMetric
 
typedef struct _HPDF_TTF_FontHeader HPDF_TTF_FontHeader
 
typedef struct _HPDF_TTF_NameRecord HPDF_TTF_NameRecord
 
typedef struct _HPDF_TTF_NamingTable HPDF_TTF_NamingTable
 
typedef struct _HPDF_TTFontDefAttr_RecHPDF_TTFontDefAttr
 
typedef struct _HPDF_TTFontDefAttr_Rec HPDF_TTFontDefAttr_Rec
 
typedef struct _HPDF_CIDFontDefAttrRecHPDF_CIDFontDefAttr
 
typedef struct _HPDF_CIDFontDefAttrRec HPDF_CIDFontDefAttr_Rec
 

Enumerations

enum  _HPDF_FontDefType {
  HPDF_FONTDEF_TYPE_TYPE1 , HPDF_FONTDEF_TYPE_TRUETYPE , HPDF_FONTDEF_TYPE_CID , HPDF_FONTDEF_TYPE_UNINITIALIZED ,
  HPDF_FONTDEF_TYPE_EOF
}
 

Functions

void HPDF_FontDef_Free (HPDF_FontDef fontdef)
 
void HPDF_FontDef_Cleanup (HPDF_FontDef fontdef)
 
HPDF_BOOL HPDF_FontDef_Validate (HPDF_FontDef fontdef)
 
HPDF_FontDef HPDF_Type1FontDef_New (HPDF_MMgr mmgr)
 
HPDF_FontDef HPDF_Type1FontDef_Load (HPDF_MMgr mmgr, HPDF_Stream afm, HPDF_Stream font_data)
 
HPDF_FontDef HPDF_Type1FontDef_Duplicate (HPDF_MMgr mmgr, HPDF_FontDef src)
 
HPDF_STATUS HPDF_Type1FontDef_SetWidths (HPDF_FontDef fontdef, const HPDF_CharData *widths)
 
HPDF_INT16 HPDF_Type1FontDef_GetWidthByName (HPDF_FontDef fontdef, const char *gryph_name)
 
HPDF_INT16 HPDF_Type1FontDef_GetWidth (HPDF_FontDef fontdef, HPDF_UNICODE unicode)
 
HPDF_FontDef HPDF_Base14FontDef_New (HPDF_MMgr mmgr, const char *font_name)
 
HPDF_FontDef HPDF_TTFontDef_New (HPDF_MMgr mmgr)
 
HPDF_FontDef HPDF_TTFontDef_Load (HPDF_MMgr mmgr, HPDF_Stream stream, HPDF_BOOL embedding)
 
HPDF_FontDef HPDF_TTFontDef_Load2 (HPDF_MMgr mmgr, HPDF_Stream stream, HPDF_UINT index, HPDF_BOOL embedding)
 
HPDF_UINT16 HPDF_TTFontDef_GetGlyphid (HPDF_FontDef fontdef, HPDF_UINT16 unicode)
 
HPDF_INT16 HPDF_TTFontDef_GetCharWidth (HPDF_FontDef fontdef, HPDF_UINT16 unicode)
 
HPDF_INT16 HPDF_TTFontDef_GetGidWidth (HPDF_FontDef fontdef, HPDF_UINT16 gid)
 
HPDF_STATUS HPDF_TTFontDef_SaveFontData (HPDF_FontDef fontdef, HPDF_Stream stream)
 
HPDF_Box HPDF_TTFontDef_GetCharBBox (HPDF_FontDef fontdef, HPDF_UINT16 unicode)
 
void HPDF_TTFontDef_SetTagName (HPDF_FontDef fontdef, char *tag)
 
HPDF_FontDef HPDF_CIDFontDef_New (HPDF_MMgr mmgr, char *name, HPDF_FontDef_InitFunc init_fn)
 
HPDF_STATUS HPDF_CIDFontDef_AddWidth (HPDF_FontDef fontdef, const HPDF_CID_Width *widths)
 
HPDF_INT16 HPDF_CIDFontDef_GetCIDWidth (HPDF_FontDef fontdef, HPDF_UINT16 cid)
 
HPDF_STATUS HPDF_CIDFontDef_ChangeStyle (HPDF_FontDef fontdef, HPDF_BOOL bold, HPDF_BOOL italic)
 

Macro Definition Documentation

◆ HPDF_CID_W_TYPE_FROM_ARRAY

#define HPDF_CID_W_TYPE_FROM_ARRAY   1

◆ HPDF_CID_W_TYPE_FROM_TO

#define HPDF_CID_W_TYPE_FROM_TO   0

◆ HPDF_FONT_ALL_CAP

#define HPDF_FONT_ALL_CAP   65536

◆ HPDF_FONT_FIXED_WIDTH

#define HPDF_FONT_FIXED_WIDTH   1

◆ HPDF_FONT_FOURCE_BOLD

#define HPDF_FONT_FOURCE_BOLD   262144

◆ HPDF_FONT_ITALIC

#define HPDF_FONT_ITALIC   64

◆ HPDF_FONT_SCRIPT

#define HPDF_FONT_SCRIPT   8

◆ HPDF_FONT_SERIF

#define HPDF_FONT_SERIF   2

◆ HPDF_FONT_SMALL_CAP

#define HPDF_FONT_SMALL_CAP   131072

◆ HPDF_FONT_STD_CHARSET

#define HPDF_FONT_STD_CHARSET   32

◆ HPDF_FONT_SYMBOLIC

#define HPDF_FONT_SYMBOLIC   4

◆ HPDF_FONTDEF_SIG_BYTES

#define HPDF_FONTDEF_SIG_BYTES   0x464F4E54L

◆ HPDF_TTF_FONT_TAG_LEN

#define HPDF_TTF_FONT_TAG_LEN   6

Typedef Documentation

◆ HPDF_CharData

typedef struct _HPDF_CharData HPDF_CharData

◆ HPDF_CID_Width

◆ HPDF_CIDFontDefAttr

◆ HPDF_CIDFontDefAttr_Rec

◆ HPDF_FontDef

◆ HPDF_FontDef_CleanFunc

typedef void(* HPDF_FontDef_CleanFunc) (HPDF_FontDef fontdef)

◆ HPDF_FontDef_FreeFunc

typedef void(* HPDF_FontDef_FreeFunc) (HPDF_FontDef fontdef)

◆ HPDF_FontDef_InitFunc

typedef HPDF_STATUS(* HPDF_FontDef_InitFunc) (HPDF_FontDef fontdef)

◆ HPDF_FontDef_Rec

◆ HPDF_FontDefType

◆ HPDF_TTF_CmapRange

◆ HPDF_TTF_FontHeader

◆ HPDF_TTF_GryphOffsets

◆ HPDF_TTF_LongHorMetric

◆ HPDF_TTF_NameRecord

◆ HPDF_TTF_NamingTable

◆ HPDF_TTF_OffsetTbl

◆ HPDF_TTFontDefAttr

◆ HPDF_TTFontDefAttr_Rec

◆ HPDF_TTFTable

◆ HPDF_Type1FontDefAttr

◆ HPDF_Type1FontDefAttr_Rec

Enumeration Type Documentation

◆ _HPDF_FontDefType

Enumerator
HPDF_FONTDEF_TYPE_TYPE1 
HPDF_FONTDEF_TYPE_TRUETYPE 
HPDF_FONTDEF_TYPE_CID 
HPDF_FONTDEF_TYPE_UNINITIALIZED 
HPDF_FONTDEF_TYPE_EOF 

Function Documentation

◆ HPDF_Base14FontDef_New()

HPDF_FontDef HPDF_Base14FontDef_New ( HPDF_MMgr  mmgr,
const char *  font_name 
)

◆ HPDF_CIDFontDef_AddWidth()

HPDF_STATUS HPDF_CIDFontDef_AddWidth ( HPDF_FontDef  fontdef,
const HPDF_CID_Width widths 
)

◆ HPDF_CIDFontDef_ChangeStyle()

HPDF_STATUS HPDF_CIDFontDef_ChangeStyle ( HPDF_FontDef  fontdef,
HPDF_BOOL  bold,
HPDF_BOOL  italic 
)

◆ HPDF_CIDFontDef_GetCIDWidth()

HPDF_INT16 HPDF_CIDFontDef_GetCIDWidth ( HPDF_FontDef  fontdef,
HPDF_UINT16  cid 
)

◆ HPDF_CIDFontDef_New()

HPDF_FontDef HPDF_CIDFontDef_New ( HPDF_MMgr  mmgr,
char *  name,
HPDF_FontDef_InitFunc  init_fn 
)

◆ HPDF_FontDef_Cleanup()

void HPDF_FontDef_Cleanup ( HPDF_FontDef  fontdef)

◆ HPDF_FontDef_Free()

void HPDF_FontDef_Free ( HPDF_FontDef  fontdef)

◆ HPDF_FontDef_Validate()

HPDF_BOOL HPDF_FontDef_Validate ( HPDF_FontDef  fontdef)

◆ HPDF_TTFontDef_GetCharBBox()

HPDF_Box HPDF_TTFontDef_GetCharBBox ( HPDF_FontDef  fontdef,
HPDF_UINT16  unicode 
)

◆ HPDF_TTFontDef_GetCharWidth()

HPDF_INT16 HPDF_TTFontDef_GetCharWidth ( HPDF_FontDef  fontdef,
HPDF_UINT16  unicode 
)

◆ HPDF_TTFontDef_GetGidWidth()

HPDF_INT16 HPDF_TTFontDef_GetGidWidth ( HPDF_FontDef  fontdef,
HPDF_UINT16  gid 
)

◆ HPDF_TTFontDef_GetGlyphid()

HPDF_UINT16 HPDF_TTFontDef_GetGlyphid ( HPDF_FontDef  fontdef,
HPDF_UINT16  unicode 
)

◆ HPDF_TTFontDef_Load()

HPDF_FontDef HPDF_TTFontDef_Load ( HPDF_MMgr  mmgr,
HPDF_Stream  stream,
HPDF_BOOL  embedding 
)

◆ HPDF_TTFontDef_Load2()

HPDF_FontDef HPDF_TTFontDef_Load2 ( HPDF_MMgr  mmgr,
HPDF_Stream  stream,
HPDF_UINT  index,
HPDF_BOOL  embedding 
)

◆ HPDF_TTFontDef_New()

HPDF_FontDef HPDF_TTFontDef_New ( HPDF_MMgr  mmgr)

◆ HPDF_TTFontDef_SaveFontData()

HPDF_STATUS HPDF_TTFontDef_SaveFontData ( HPDF_FontDef  fontdef,
HPDF_Stream  stream 
)

◆ HPDF_TTFontDef_SetTagName()

void HPDF_TTFontDef_SetTagName ( HPDF_FontDef  fontdef,
char *  tag 
)

◆ HPDF_Type1FontDef_Duplicate()

HPDF_FontDef HPDF_Type1FontDef_Duplicate ( HPDF_MMgr  mmgr,
HPDF_FontDef  src 
)

◆ HPDF_Type1FontDef_GetWidth()

HPDF_INT16 HPDF_Type1FontDef_GetWidth ( HPDF_FontDef  fontdef,
HPDF_UNICODE  unicode 
)

◆ HPDF_Type1FontDef_GetWidthByName()

HPDF_INT16 HPDF_Type1FontDef_GetWidthByName ( HPDF_FontDef  fontdef,
const char *  gryph_name 
)

◆ HPDF_Type1FontDef_Load()

HPDF_FontDef HPDF_Type1FontDef_Load ( HPDF_MMgr  mmgr,
HPDF_Stream  afm,
HPDF_Stream  font_data 
)

◆ HPDF_Type1FontDef_New()

HPDF_FontDef HPDF_Type1FontDef_New ( HPDF_MMgr  mmgr)

◆ HPDF_Type1FontDef_SetWidths()

HPDF_STATUS HPDF_Type1FontDef_SetWidths ( HPDF_FontDef  fontdef,
const HPDF_CharData widths 
)