| Index: public/fpdf_sysfontinfo.h
|
| diff --git a/public/fpdf_sysfontinfo.h b/public/fpdf_sysfontinfo.h
|
| index 61465f4262a0703e12efaa16fd2916df6a97f059..c2da74b70bb71d1929e68e3ae3db371553fd6f57 100644
|
| --- a/public/fpdf_sysfontinfo.h
|
| +++ b/public/fpdf_sysfontinfo.h
|
| @@ -10,22 +10,22 @@
|
| #include "fpdfview.h"
|
|
|
| /* Character sets for the font */
|
| -#define FXFONT_ANSI_CHARSET 0
|
| -#define FXFONT_DEFAULT_CHARSET 1
|
| -#define FXFONT_SYMBOL_CHARSET 2
|
| +#define FXFONT_ANSI_CHARSET 0
|
| +#define FXFONT_DEFAULT_CHARSET 1
|
| +#define FXFONT_SYMBOL_CHARSET 2
|
| #define FXFONT_SHIFTJIS_CHARSET 128
|
| -#define FXFONT_HANGEUL_CHARSET 129
|
| -#define FXFONT_GB2312_CHARSET 134
|
| -#define FXFONT_CHINESEBIG5_CHARSET 136
|
| +#define FXFONT_HANGEUL_CHARSET 129
|
| +#define FXFONT_GB2312_CHARSET 134
|
| +#define FXFONT_CHINESEBIG5_CHARSET 136
|
|
|
| /* Font pitch and family flags */
|
| -#define FXFONT_FF_FIXEDPITCH 1
|
| -#define FXFONT_FF_ROMAN (1<<4)
|
| -#define FXFONT_FF_SCRIPT (4<<4)
|
| +#define FXFONT_FF_FIXEDPITCH 1
|
| +#define FXFONT_FF_ROMAN (1 << 4)
|
| +#define FXFONT_FF_SCRIPT (4 << 4)
|
|
|
| /* Typical weight values */
|
| -#define FXFONT_FW_NORMAL 400
|
| -#define FXFONT_FW_BOLD 700
|
| +#define FXFONT_FW_NORMAL 400
|
| +#define FXFONT_FW_BOLD 700
|
|
|
| // Exported Functions
|
| #ifdef __cplusplus
|
| @@ -37,168 +37,200 @@ extern "C" {
|
| * Interface for getting system font information and font mapping
|
| */
|
| typedef struct _FPDF_SYSFONTINFO {
|
| - /**
|
| - * Version number of the interface. Currently must be 1.
|
| - **/
|
| - int version;
|
| + /**
|
| + * Version number of the interface. Currently must be 1.
|
| + **/
|
| + int version;
|
|
|
| - /**
|
| - * Method: Release
|
| - * Give implementation a chance to release any data after the interface is no longer used
|
| - * Interface Version:
|
| - * 1
|
| - * Implementation Required:
|
| - * No
|
| - * Comments:
|
| - * Called by Foxit SDK during the final cleanup process.
|
| - * Parameters:
|
| - * pThis - Pointer to the interface structure itself
|
| - * Return Value:
|
| - * None
|
| - */
|
| - void (*Release)(struct _FPDF_SYSFONTINFO* pThis);
|
| + /**
|
| + * Method: Release
|
| + * Give implementation a chance to release any data after the
|
| + * interface is no longer used
|
| + * Interface Version:
|
| + * 1
|
| + * Implementation Required:
|
| + * No
|
| + * Comments:
|
| + * Called by Foxit SDK during the final cleanup process.
|
| + * Parameters:
|
| + * pThis - Pointer to the interface structure itself
|
| + * Return Value:
|
| + * None
|
| + */
|
| + void (*Release)(struct _FPDF_SYSFONTINFO* pThis);
|
|
|
| - /**
|
| - * Method: EnumFonts
|
| - * Enumerate all fonts installed on the system
|
| - * Interface Version:
|
| - * 1
|
| - * Implementation Required:
|
| - * No
|
| - * Comments:
|
| - * Implementation should call FPDF_AddIntalledFont() function for each font found.
|
| - * Only TrueType/OpenType and Type1 fonts are accepted by Foxit SDK.
|
| - * Parameters:
|
| - * pThis - Pointer to the interface structure itself
|
| - * pMapper - An opaque pointer to internal font mapper, used when calling FPDF_AddInstalledFont
|
| - * Return Value:
|
| - * None
|
| - */
|
| - void (*EnumFonts)(struct _FPDF_SYSFONTINFO* pThis, void* pMapper);
|
| + /**
|
| + * Method: EnumFonts
|
| + * Enumerate all fonts installed on the system
|
| + * Interface Version:
|
| + * 1
|
| + * Implementation Required:
|
| + * No
|
| + * Comments:
|
| + * Implementation should call FPDF_AddIntalledFont() function for
|
| + * each font found.
|
| + * Only TrueType/OpenType and Type1 fonts are accepted by Foxit SDK.
|
| + * Parameters:
|
| + * pThis - Pointer to the interface structure itself
|
| + * pMapper - An opaque pointer to internal font mapper, used
|
| + * when calling FPDF_AddInstalledFont
|
| + * Return Value:
|
| + * None
|
| + */
|
| + void (*EnumFonts)(struct _FPDF_SYSFONTINFO* pThis, void* pMapper);
|
|
|
| - /**
|
| - * Method: MapFont
|
| - * Use the system font mapper to get a font handle from requested parameters
|
| - * Interface Version:
|
| - * 1
|
| - * Implementation Required:
|
| - * Yes only if GetFont method is not implemented.
|
| - * Comments:
|
| - * If the system supports native font mapper (like Windows), implementation can implement this method to get a font handle.
|
| - * Otherwise, Foxit SDK will do the mapping and then call GetFont method.
|
| - * Only TrueType/OpenType and Type1 fonts are accepted by Foxit SDK.
|
| - * Parameters:
|
| - * pThis - Pointer to the interface structure itself
|
| - * weight - Weight of the requested font. 400 is normal and 700 is bold.
|
| - * bItalic - Italic option of the requested font, TRUE or FALSE.
|
| - * charset - Character set identifier for the requested font. See above defined constants.
|
| - * pitch_family - A combination of flags. See above defined constants.
|
| - * face - Typeface name. Currently use system local encoding only.
|
| - * bExact - Pointer to a boolean value receiving the indicator whether mapper found the exact match.
|
| - * If mapper is not sure whether it's exact match, ignore this paramter.
|
| - * Return Value:
|
| - * An opaque pointer for font handle, or NULL if system mapping is not supported.
|
| - **/
|
| - void* (*MapFont)(struct _FPDF_SYSFONTINFO* pThis, int weight, FPDF_BOOL bItalic, int charset, int pitch_family,
|
| - const char* face, FPDF_BOOL* bExact);
|
| + /**
|
| + * Method: MapFont
|
| + * Use the system font mapper to get a font handle from requested
|
| + *parameters
|
| + * Interface Version:
|
| + * 1
|
| + * Implementation Required:
|
| + * Yes only if GetFont method is not implemented.
|
| + * Comments:
|
| + * If the system supports native font mapper (like Windows),
|
| + *implementation can implement this method to get a font handle.
|
| + * Otherwise, Foxit SDK will do the mapping and then call GetFont
|
| + *method.
|
| + * Only TrueType/OpenType and Type1 fonts are accepted by Foxit SDK.
|
| + * Parameters:
|
| + * pThis - Pointer to the interface structure itself
|
| + * weight - Weight of the requested font. 400 is normal and
|
| + *700 is bold.
|
| + * bItalic - Italic option of the requested font, TRUE or
|
| + *FALSE.
|
| + * charset - Character set identifier for the requested font.
|
| + *See above defined constants.
|
| + * pitch_family - A combination of flags. See above defined
|
| + *constants.
|
| + * face - Typeface name. Currently use system local encoding
|
| + *only.
|
| + * bExact - Pointer to a boolean value receiving the indicator
|
| + *whether mapper found the exact match.
|
| + * If mapper is not sure whether it's exact match,
|
| + *ignore this paramter.
|
| + * Return Value:
|
| + * An opaque pointer for font handle, or NULL if system mapping is
|
| + *not supported.
|
| + **/
|
| + void* (*MapFont)(struct _FPDF_SYSFONTINFO* pThis,
|
| + int weight,
|
| + FPDF_BOOL bItalic,
|
| + int charset,
|
| + int pitch_family,
|
| + const char* face,
|
| + FPDF_BOOL* bExact);
|
|
|
| - /**
|
| - * Method: GetFont
|
| - * Get a handle to a particular font by its internal ID
|
| - * Interface Version:
|
| - * 1
|
| - * Implementation Required:
|
| - * Yes only if MapFont method is not implemented.
|
| - * Comments:
|
| - * If the system mapping not supported, Foxit SDK will do the font mapping and use this method to get a font handle.
|
| - * Parameters:
|
| - * pThis - Pointer to the interface structure itself
|
| - * face - Typeface name. Currently use system local encoding only.
|
| - * Return Value:
|
| - * An opaque pointer for font handle.
|
| - **/
|
| - void* (*GetFont)(struct _FPDF_SYSFONTINFO* pThis, const char* face);
|
| + /**
|
| + * Method: GetFont
|
| + * Get a handle to a particular font by its internal ID
|
| + * Interface Version:
|
| + * 1
|
| + * Implementation Required:
|
| + * Yes only if MapFont method is not implemented.
|
| + * Comments:
|
| + * If the system mapping not supported, Foxit SDK will do the font
|
| + *mapping and use this method to get a font handle.
|
| + * Parameters:
|
| + * pThis - Pointer to the interface structure itself
|
| + * face - Typeface name. Currently use system local encoding
|
| + *only.
|
| + * Return Value:
|
| + * An opaque pointer for font handle.
|
| + **/
|
| + void* (*GetFont)(struct _FPDF_SYSFONTINFO* pThis, const char* face);
|
|
|
| - /**
|
| - * Method: GetFontData
|
| - * Get font data from a font
|
| - * Interface Version:
|
| - * 1
|
| - * Implementation Required:
|
| - * Yes
|
| - * Comments:
|
| - * Can read either full font file, or a particular TrueType/OpenType table
|
| - * Parameters:
|
| - * pThis - Pointer to the interface structure itself
|
| - * hFont - Font handle returned by MapFont or GetFont method
|
| - * table - TrueType/OpenType table identifier (refer to TrueType specification).
|
| - * 0 for the whole font file.
|
| - * buffer - The buffer receiving the font data. Can be NULL if not provided
|
| - * buf_size - Buffer size, can be zero if not provided
|
| - * Return Value:
|
| - * Number of bytes needed, if buffer not provided or not large enough,
|
| - * or number of bytes written into buffer otherwise.
|
| - **/
|
| - unsigned long (*GetFontData)(struct _FPDF_SYSFONTINFO* pThis, void* hFont,
|
| - unsigned int table, unsigned char* buffer, unsigned long buf_size);
|
| + /**
|
| + * Method: GetFontData
|
| + * Get font data from a font
|
| + * Interface Version:
|
| + * 1
|
| + * Implementation Required:
|
| + * Yes
|
| + * Comments:
|
| + * Can read either full font file, or a particular TrueType/OpenType
|
| + *table
|
| + * Parameters:
|
| + * pThis - Pointer to the interface structure itself
|
| + * hFont - Font handle returned by MapFont or GetFont method
|
| + * table - TrueType/OpenType table identifier (refer to
|
| + *TrueType specification).
|
| + * 0 for the whole font file.
|
| + * buffer - The buffer receiving the font data. Can be NULL if
|
| + *not provided
|
| + * buf_size - Buffer size, can be zero if not provided
|
| + * Return Value:
|
| + * Number of bytes needed, if buffer not provided or not large
|
| + *enough,
|
| + * or number of bytes written into buffer otherwise.
|
| + **/
|
| + unsigned long (*GetFontData)(struct _FPDF_SYSFONTINFO* pThis,
|
| + void* hFont,
|
| + unsigned int table,
|
| + unsigned char* buffer,
|
| + unsigned long buf_size);
|
|
|
| - /**
|
| - * Method: GetFaceName
|
| - * Get face name from a font handle
|
| - * Interface Version:
|
| - * 1
|
| - * Implementation Required:
|
| - * No
|
| - * Parameters:
|
| - * pThis - Pointer to the interface structure itself
|
| - * hFont - Font handle returned by MapFont or GetFont method
|
| - * buffer - The buffer receiving the face name. Can be NULL if not provided
|
| - * buf_size - Buffer size, can be zero if not provided
|
| - * Return Value:
|
| - * Number of bytes needed, if buffer not provided or not large enough,
|
| - * or number of bytes written into buffer otherwise.
|
| - **/
|
| - unsigned long (*GetFaceName)(struct _FPDF_SYSFONTINFO* pThis, void* hFont, char* buffer, unsigned long buf_size);
|
| + /**
|
| + * Method: GetFaceName
|
| + * Get face name from a font handle
|
| + * Interface Version:
|
| + * 1
|
| + * Implementation Required:
|
| + * No
|
| + * Parameters:
|
| + * pThis - Pointer to the interface structure itself
|
| + * hFont - Font handle returned by MapFont or GetFont method
|
| + * buffer - The buffer receiving the face name. Can be NULL if
|
| + *not provided
|
| + * buf_size - Buffer size, can be zero if not provided
|
| + * Return Value:
|
| + * Number of bytes needed, if buffer not provided or not large
|
| + *enough,
|
| + * or number of bytes written into buffer otherwise.
|
| + **/
|
| + unsigned long (*GetFaceName)(struct _FPDF_SYSFONTINFO* pThis,
|
| + void* hFont,
|
| + char* buffer,
|
| + unsigned long buf_size);
|
|
|
| - /**
|
| - * Method: GetFontCharset
|
| - * Get character set information for a font handle
|
| - * Interface Version:
|
| - * 1
|
| - * Implementation Required:
|
| - * No
|
| - * Parameters:
|
| - * pThis - Pointer to the interface structure itself
|
| - * hFont - Font handle returned by MapFont or GetFont method
|
| - * Return Value:
|
| - * Character set identifier. See defined constants above.
|
| - **/
|
| - int (*GetFontCharset)(struct _FPDF_SYSFONTINFO* pThis, void* hFont);
|
| + /**
|
| + * Method: GetFontCharset
|
| + * Get character set information for a font handle
|
| + * Interface Version:
|
| + * 1
|
| + * Implementation Required:
|
| + * No
|
| + * Parameters:
|
| + * pThis - Pointer to the interface structure itself
|
| + * hFont - Font handle returned by MapFont or GetFont method
|
| + * Return Value:
|
| + * Character set identifier. See defined constants above.
|
| + **/
|
| + int (*GetFontCharset)(struct _FPDF_SYSFONTINFO* pThis, void* hFont);
|
|
|
| - /**
|
| - * Method: DeleteFont
|
| - * Delete a font handle
|
| - * Interface Version:
|
| - * 1
|
| - * Implementation Required:
|
| - * Yes
|
| - * Parameters:
|
| - * pThis - Pointer to the interface structure itself
|
| - * hFont - Font handle returned by MapFont or GetFont method
|
| - * Return Value:
|
| - * None
|
| - **/
|
| - void (*DeleteFont)(struct _FPDF_SYSFONTINFO* pThis, void* hFont);
|
| + /**
|
| + * Method: DeleteFont
|
| + * Delete a font handle
|
| + * Interface Version:
|
| + * 1
|
| + * Implementation Required:
|
| + * Yes
|
| + * Parameters:
|
| + * pThis - Pointer to the interface structure itself
|
| + * hFont - Font handle returned by MapFont or GetFont method
|
| + * Return Value:
|
| + * None
|
| + **/
|
| + void (*DeleteFont)(struct _FPDF_SYSFONTINFO* pThis, void* hFont);
|
| } FPDF_SYSFONTINFO;
|
|
|
| /**
|
| * Struct: FPDF_CharsetFontMap
|
| * Provides the name of a font to use for a given charset value.
|
| **/
|
| -typedef struct FPDF_CharsetFontMap_
|
| -{
|
| - int charset; // Character Set Enum value, see FXFONT_*_CHARSET above.
|
| - const char* fontname; // Name of default font to use with that charset.
|
| +typedef struct FPDF_CharsetFontMap_ {
|
| + int charset; // Character Set Enum value, see FXFONT_*_CHARSET above.
|
| + const char* fontname; // Name of default font to use with that charset.
|
| } FPDF_CharsetFontMap;
|
|
|
| /**
|
| @@ -217,7 +249,8 @@ DLLEXPORT const FPDF_CharsetFontMap* STDCALL FPDF_GetDefaultTTFMap();
|
| * Function: FPDF_AddInstalledFont
|
| * Add a system font to the list in Foxit SDK.
|
| * Comments:
|
| - * This function is only called during the system font list building process.
|
| + * This function is only called during the system font list building
|
| + *process.
|
| * Parameters:
|
| * mapper - Opaque pointer to Foxit font mapper
|
| * face - The font face name
|
| @@ -225,13 +258,16 @@ DLLEXPORT const FPDF_CharsetFontMap* STDCALL FPDF_GetDefaultTTFMap();
|
| * Return Value:
|
| * None.
|
| **/
|
| -DLLEXPORT void STDCALL FPDF_AddInstalledFont(void* mapper, const char* face, int charset);
|
| +DLLEXPORT void STDCALL FPDF_AddInstalledFont(void* mapper,
|
| + const char* face,
|
| + int charset);
|
|
|
| /**
|
| * Function: FPDF_SetSystemFontInfo
|
| * Set the system font info interface into Foxit SDK
|
| * Comments:
|
| - * Platform support implementation should implement required methods of FFDF_SYSFONTINFO interface,
|
| + * Platform support implementation should implement required methods of
|
| + *FFDF_SYSFONTINFO interface,
|
| * then call this function during SDK initialization process.
|
| * Parameters:
|
| * pFontInfo - Pointer to a FPDF_SYSFONTINFO structure
|
| @@ -244,14 +280,18 @@ DLLEXPORT void STDCALL FPDF_SetSystemFontInfo(FPDF_SYSFONTINFO* pFontInfo);
|
| * Function: FPDF_GetDefaultSystemFontInfo
|
| * Get default system font info interface for current platform
|
| * Comments:
|
| - * For some platforms Foxit SDK implement a default version of system font info interface.
|
| - * The default implementation can be used in FPDF_SetSystemFontInfo function.
|
| + * For some platforms Foxit SDK implement a default version of system
|
| + *font info interface.
|
| + * The default implementation can be used in FPDF_SetSystemFontInfo
|
| + *function.
|
| * Parameters:
|
| * None
|
| * Return Value:
|
| - * Pointer to a FPDF_SYSFONTINFO structure describing the default interface.
|
| + * Pointer to a FPDF_SYSFONTINFO structure describing the default
|
| + *interface.
|
| * Or NULL if the platform doesn't have a default interface.
|
| - * Application should call FPDF_FreeMemory to free the returned pointer.
|
| + * Application should call FPDF_FreeMemory to free the returned
|
| + *pointer.
|
| **/
|
| DLLEXPORT FPDF_SYSFONTINFO* STDCALL FPDF_GetDefaultSystemFontInfo();
|
|
|
|
|