Haru Free PDF Library
home | download | documentation | examples | sourceforge | forums

Font Functions

HPDF_Font_GetFontName

#include "apdf.h"

const char *
HPDF_Font_GetFontName  (HPDF_Font    font);

Description

HPDF_Font_GetFontName() gets the name of the font.

Parameter

font
The handle of an font object.

Returns

When HPDF_Font_GetFontName() succeed, it returns the name of the font. Otherwise, it returns NULL.

HPDF_Font_GetEncodingName

#include "apdf.h"

const char *
HPDF_Font_GetEncodingName  (HPDF_Font    font);

Description

HPDF_Font_GetEncodingName() gets the encoding name of the font.

Parameter

font
The handle of a font object.

Returns

When HPDF_Font_GetEncodingName() succeed, it returns the encoding name of the font. Otherwise, it returns NULL.

HPDF_Font_GetUnicodeWidth

#include "apdf.h"

HPDF_INT
HPDF_Font_GetUnicodeWidth  (HPDF_Font       font,
                            HPDF_UNICODE    code);

Description

HPDF_Font_GetUnicodeWidth() gets the width of a charactor in the font.
Actual width of the character on the page can be calculated by the following
expressions.


char_width = HPDF_Font_GetUnicodeWidth (font, UNICODE);
float actual_width = char_width * FONT_SIZE / 1000;


Parameter

font
The handle of an font object.

code
A unicode of the charactor.

Returns

When HPDF_Font_GetUnicodeWidth() succeed, it returns the width of the font. Otherwise it returns 0.


HPDF_Font_GetBBox

#include "apdf.h"

typedef  struct _HPDF_Rect {
    HPDF_REAL  left;
    HPDF_REAL  bottom;
    HPDF_REAL  right;
    HPDF_REAL  top;
} HPDF_Rect;

typedef struct _HPDF_Rect HPDF_Box;

HPDF_Box
HPDF_Font_GetBBox  (HPDF_Font    font);

Description

HPDF_Font_GetBBox() gets the bounding box of the font.

Parameter

font
The handle of a font object.

Returns

When HPDF_Font_GetBox() succeed, it returns the HPDF_Box struct specifying the font bounding box. Otherwise, it returns a HPDF_Box struct of {0, 0, 0, 0}.

HPDF_Font_GetAscent

#include "apdf.h"

HPDF_INT
HPDF_Font_GetAscent (HPDF_Font    font);

Description

HPDF_Font_GetAscent() gets the vertical ascent of the font.

Parameter

font
The handle of a font object.

Returns

When HPDF_Font_GetAscent() succeed, it returns vertical ascent of the font. Otherwise, it returns 0.

HPDF_Font_GetDescent

#include "apdf.h"

HPDF_INT
HPDF_Font_GetDescent (HPDF_Font    font);

Description

HPDF_Font_GetDescent() gets the vertical descent of the font.

Parameter

font
The handle of a font object.

Returns

When HPDF_Font_GetDescent() succeed, it returns vertical descent of the font. Otherwise, it returns 0.

HPDF_Font_GetXHeight

#include "apdf.h"

HPDF_UINT
HPDF_Font_GetXHeight  (HPDF_Font    font);

Description

HPDF_Font_GetXHeight() gets the distance from the baseline of lowercase letters.

Parameter

font
The handle of a font object.

Returns

When HPDF_Font_GetXHeight() succeed, it returns the x-height's value of the font. Otherwise, it returns 0.

HPDF_Font_GetCapHeight

#include "apdf.h"

HPDF_UINT
HPDF_Font_GetCapHeight (HPDF_Font    font);

Description

HPDF_Font_GetCapHeight() gets the distance from the baseline of uppercase letters.

Parameter

font
The handle of a font object.

Returns

When HPDF_Font_GetCapHeight() succeed, it returns the cap-height's value of the font. Otherwise, it returns 0.

HPDF_Font_TextWidth

#include "apdf.h"

typedef struct _HPDF_TextWidth {
    HPDF_UINT numchars;
    HPDF_UINT numwords;
    HPDF_UINT width;
    HPDF_UINT numspace;
} HPDF_TextWidth;

HPDF_TextWidth
HPDF_Font_TextWidth  (HPDF_Font          font,
                      const HPDF_BYTE   *text,
                      HPDF_UINT          len);

Description

HPDF_Font_TextWidth() gets total width of the text, number of charactors and number of the words.

Parameter

font
The handle of a font object.

text
The text to get width.

len
The byte length of the text.

Returns

When HPDF_Font_TextWidth() succeed, it returns a HPDF_TextWidth struct including calculation result. Otherwise, it returns a HPDF_TextWidth struct whose attributes are all ZERO.

HPDF_Font_MeasureText

#include "apdf.h"

HPDF_UINT
HPDF_Font_MeasureText (HPDF_Font          font,
                       const HPDF_BYTE   *text,
                       HPDF_UINT          len,
                       HPDF_REAL          width,
                       HPDF_REAL          font_size,
                       HPDF_REAL          char_space,
                       HPDF_REAL          word_space,
                       HPDF_BOOL          wordwrap,
                       HPDF_REAL         *real_width);

Description

HPDF_Font_MeasureText() calculates the byte length which can be included within the specified width.

Parameter

font
Specify the handle of a font object.

text
A text that is used to calculate.

len
The length of the text.

width
The width of the area to put the text.

font_size
The size of the font.

char_space
The character spacing.

word_space
The word spacing.

wordwrap
When there are three words of "ABCDE", "FGH", and "IJKL", and the substring until "J" can be included within the width, if word_wrap parameter is HPDF_FALSE it returns 12,  and if word_wrap parameter is HPDF_FALSE word_wrap parameter is HPDF_FALSE it returns 10 (the end of the previous word).
figure9

real_width
If this parameter is not NULL, the real widths of the text is set. An application can set it to NULL if it is unnecessary

Returns

When HPDF_Font_SetColorMask() succeed, it returns the byte length which can be included within the specified width. Otherwise it returns 0.