Remove trailing whitespace. From Alexei.
This commit is contained in:
parent
267e1d719a
commit
9b774e2822
@ -174,7 +174,7 @@
|
||||
(tt_size_init): Move most code into `tt_size_init_bytecode'.
|
||||
(tt_size_done): Move most code into `tt_size_done_bytecode'.
|
||||
(tt_size_reset): Move some code to `tt_size_ready_bytecode'.
|
||||
|
||||
|
||||
|
||||
Don't extract the metrics table from the SFNT font file. Instead,
|
||||
reparse it on each glyph load. The runtime difference is not
|
||||
@ -280,7 +280,7 @@
|
||||
* src/gxvalid/gxvkern.c (gxv_kern_subtable_fmt0_pairs_validate): New
|
||||
function.
|
||||
Check uniqueness of the gid pairs.
|
||||
(gxv_kern_subtable_fmt0_validate): Move some code to
|
||||
(gxv_kern_subtable_fmt0_validate): Move some code to
|
||||
`gxv_kern_subtable_fmt0_pairs_validate'.
|
||||
|
||||
2006-12-22 David Turner <david@freetype.org>
|
||||
@ -298,7 +298,7 @@
|
||||
|
||||
2006-12-15 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>
|
||||
|
||||
* include/freetype/internal/services/svotval.h: Add `volatile' to
|
||||
* include/freetype/internal/services/svotval.h: Add `volatile' to
|
||||
sync with the modification by Jens Claudius on 2006-08-22; cf.
|
||||
http://cvs.savannah.gnu.org/viewcvs/freetype/freetype2/src/otvalid/otvmod.c?r1=1.4&r2=1.5
|
||||
|
||||
|
@ -56,7 +56,7 @@ directory. The results are:
|
||||
|
||||
- ftdebugpure.o, an object module containing the pure version of the
|
||||
debugging code which uses KVPrintf() from lib:debug.lib and no
|
||||
exit(). For debugging of Amiga run-time shared system libraries.
|
||||
exit(). For debugging of Amiga run-time shared system libraries.
|
||||
Source code is in src/base/ftdebug.c.
|
||||
|
||||
- NO ftinit.o. Because linking with a link library should result in
|
||||
|
@ -40,7 +40,7 @@
|
||||
#endif
|
||||
#else
|
||||
/* We must define that, it seems that
|
||||
* lib/gcc-lib/ppc-morphos/2.95.3/include/syslimits.h is missing in
|
||||
* lib/gcc-lib/ppc-morphos/2.95.3/include/syslimits.h is missing in
|
||||
* ppc-morphos-gcc-2.95.3-bin.tgz (gcc for 68k producing MorphOS PPC elf
|
||||
* binaries from http://www.morphos.de)
|
||||
*/
|
||||
|
@ -457,7 +457,7 @@ Free_VecPooled( APTR poolHeader,
|
||||
|
||||
extern void
|
||||
ft_mem_debug_done( FT_Memory memory );
|
||||
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@ -493,7 +493,7 @@ Free_VecPooled( APTR poolHeader,
|
||||
memory->free = ft_free;
|
||||
#ifdef FT_DEBUG_MEMORY
|
||||
ft_mem_debug_init( memory );
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@ -508,7 +508,7 @@ Free_VecPooled( APTR poolHeader,
|
||||
{
|
||||
#ifdef FT_DEBUG_MEMORY
|
||||
ft_mem_debug_done( memory );
|
||||
#endif
|
||||
#endif
|
||||
|
||||
DeletePool( memory->user );
|
||||
FreeVec( memory );
|
||||
|
@ -6,8 +6,8 @@
|
||||
/* PureC doesn't like 32bit enumerations */
|
||||
|
||||
#ifndef FT_IMAGE_TAG
|
||||
#define FT_IMAGE_TAG( value, _x1, _x2, _x3, _x4 ) value
|
||||
#endif /* FT_IMAGE_TAG */
|
||||
#define FT_IMAGE_TAG( value, _x1, _x2, _x3, _x4 ) value
|
||||
#endif /* FT_IMAGE_TAG */
|
||||
|
||||
#ifndef FT_ENC_TAG
|
||||
#define FT_ENC_TAG( value, a, b, c, d ) value
|
||||
|
@ -12,16 +12,16 @@ I. Configuration macros
|
||||
list of commented configuration macros that can be toggled by
|
||||
developers to indicate which features should be active while
|
||||
building the library.
|
||||
|
||||
|
||||
These options range from debug level to availability of certain
|
||||
features, like native TrueType hinting through a bytecode
|
||||
interpreter.
|
||||
|
||||
|
||||
We invite you to read this file for more information. You can
|
||||
change the file's content to suit your needs, or override it with
|
||||
one of the techniques described below.
|
||||
|
||||
|
||||
|
||||
II. Modules list
|
||||
|
||||
If you use GNU make please edit the top-level file `modules.cfg'.
|
||||
@ -43,7 +43,7 @@ III. System interface
|
||||
FreeType's default interface to the system (i.e., the parts that
|
||||
deal with memory management and i/o streams) is located in
|
||||
`src/base/ftsystem.c'.
|
||||
|
||||
|
||||
The current implementation uses standard C library calls to manage
|
||||
memory and to read font files. It is however possible to write
|
||||
custom implementations to suit specific systems.
|
||||
@ -51,21 +51,21 @@ III. System interface
|
||||
To tell the GNU Make-based build system to use a custom system
|
||||
interface, you have to define the environment variable FTSYS_SRC to
|
||||
point to the relevant implementation:
|
||||
|
||||
|
||||
on Unix:
|
||||
|
||||
./configure <your options>
|
||||
export FTSYS_SRC=foo/my_ftsystem.c
|
||||
make
|
||||
make install
|
||||
|
||||
|
||||
on Windows:
|
||||
|
||||
make setup <compiler>
|
||||
set FTSYS_SRC=foo/my_ftsystem.c
|
||||
make
|
||||
|
||||
|
||||
|
||||
|
||||
IV. Overriding default configuration and module headers
|
||||
|
||||
It is possible to override the default configuration and module
|
||||
@ -84,10 +84,10 @@ IV. Overriding default configuration and module headers
|
||||
|
||||
|
||||
2. Using the C include path
|
||||
|
||||
|
||||
Use the C include path to ensure that your own versions of the
|
||||
files are used at compile time when the lines
|
||||
|
||||
|
||||
#include FT_CONFIG_OPTIONS_H
|
||||
#include FT_CONFIG_MODULES_H
|
||||
|
||||
@ -100,7 +100,7 @@ IV. Overriding default configuration and module headers
|
||||
config/
|
||||
ftoption.h => custom options header
|
||||
ftmodule.h => custom modules list
|
||||
|
||||
|
||||
include/ => normal FreeType 2 include
|
||||
freetype/
|
||||
...
|
||||
@ -110,11 +110,11 @@ IV. Overriding default configuration and module headers
|
||||
|
||||
|
||||
3. Redefining FT_CONFIG_OPTIONS_H and FT_CONFIG_MODULES_H
|
||||
|
||||
|
||||
Another way to do the same thing is to redefine the macros used to
|
||||
name the configuration headers. To do so, you need a custom
|
||||
`ft2build.h' whose content can be as simple as:
|
||||
|
||||
|
||||
#ifndef __FT2_BUILD_MY_PLATFORM_H__
|
||||
#define __FT2_BUILD_MY_PLATFORM_H__
|
||||
|
||||
@ -124,9 +124,9 @@ IV. Overriding default configuration and module headers
|
||||
#include <freetype/config/ftheader.h>
|
||||
|
||||
#endif /* __FT2_BUILD_MY_PLATFORM_H__ */
|
||||
|
||||
|
||||
Place those files in a separate directory, e.g.,
|
||||
|
||||
|
||||
custom/
|
||||
ft2build.h => custom version described above
|
||||
my-ftoption.h => custom options header
|
||||
|
@ -78,7 +78,7 @@ its code:
|
||||
|
||||
|
||||
3. FT_TRACE( level, (message...) )
|
||||
|
||||
|
||||
The FT_TRACE macro is used to send general-purpose debugging
|
||||
messages during program execution. This macro uses an *implicit*
|
||||
macro named FT_COMPONENT used to name the current FreeType component
|
||||
@ -168,19 +168,19 @@ behaviour of FreeType at runtime.
|
||||
performed by FreeType. This is very useful to test the robustness
|
||||
of the font engine and programs that use it in tight memory
|
||||
conditions.
|
||||
|
||||
|
||||
If it is undefined, or if its value is not strictly positive, then
|
||||
no allocation bounds are checked at runtime.
|
||||
|
||||
|
||||
FT2_ALLOC_COUNT_MAX
|
||||
|
||||
|
||||
This variable is ignored if FT2_DEBUG_MEMORY is not defined. It
|
||||
allows you to specify a maximum number of memory allocations
|
||||
performed by FreeType before returning the error
|
||||
FT_Err_Out_Of_Memory. This is useful for debugging and testing the
|
||||
engine's robustness.
|
||||
|
||||
|
||||
If it is undefined, or if its value is not strictly positive, then
|
||||
no allocation bounds are checked at runtime.
|
||||
|
||||
|
@ -47,7 +47,7 @@ Introduction
|
||||
credit/disclaimer to use in compliance with this license. We thus
|
||||
encourage you to use the following text:
|
||||
|
||||
"""
|
||||
"""
|
||||
Portions of this software are copyright © <year> The FreeType
|
||||
Project (www.freetype.org). All rights reserved.
|
||||
"""
|
||||
|
10
docs/INSTALL
10
docs/INSTALL
@ -22,12 +22,12 @@ I. Normal installation and upgrades
|
||||
|
||||
|
||||
3. On VMS with the `mms' build tool
|
||||
|
||||
|
||||
See `INSTALL.VMS' for installation instructions on this platform.
|
||||
|
||||
|
||||
4. Other systems using GNU Make
|
||||
|
||||
|
||||
On non-Unix platforms, it is possible to build the library using
|
||||
GNU Make utility. Note that *NO OTHER MAKE TOOL WILL WORK*[2]!
|
||||
This methods supports several compilers on Windows, OS/2, and
|
||||
@ -37,18 +37,18 @@ I. Normal installation and upgrades
|
||||
|
||||
|
||||
5. With an IDE Project File (e.g., for Visual Studio or CodeWarrior)
|
||||
|
||||
|
||||
We provide a small number of `project files' for various IDEs to
|
||||
automatically build the library as well. Note that these files
|
||||
are not supported and only sporadically maintained by FreeType
|
||||
developers, so don't expect them to work in each release.
|
||||
|
||||
|
||||
To find them, have a look at the content of the `builds/<system>'
|
||||
directory, where <system> stands for your OS or environment.
|
||||
|
||||
|
||||
6. From you own IDE, or own Makefiles
|
||||
|
||||
|
||||
If you want to create your own project file, follow the
|
||||
instructions given in the `INSTALL.ANY' document of this
|
||||
directory.
|
||||
|
@ -10,9 +10,9 @@ I. Standard procedure
|
||||
|
||||
* DISABLE PRE-COMPILED HEADERS! This is very important for Visual
|
||||
C++, because FreeType uses lines like:
|
||||
|
||||
|
||||
#include FT_FREETYPE_H
|
||||
|
||||
|
||||
which are not correctly supported by this compiler while being ISO
|
||||
C compliant!
|
||||
|
||||
|
@ -22,7 +22,7 @@ in the file INSTALL.UNIX instead.
|
||||
|
||||
Note that make++, a make tool written in Perl, supports enough
|
||||
features of GNU make to compile FreeType. See
|
||||
|
||||
|
||||
http://makepp.sourceforge.net
|
||||
|
||||
for more information; you need version 1.19 or newer, and you must
|
||||
@ -137,7 +137,7 @@ in the file INSTALL.UNIX instead.
|
||||
|
||||
|
||||
Final note
|
||||
|
||||
|
||||
The build system builds a statically linked library of the font
|
||||
engine in the `objs' directory. It does _not_ support the build
|
||||
of DLLs on Windows and OS/2. If you need these, you have to
|
||||
|
@ -11,7 +11,7 @@ SPECIAL NOTE FOR UNIX USERS
|
||||
-----------------------------------------------------
|
||||
|
||||
See the instructions in the file `TRUETYPE' of this directory.
|
||||
|
||||
|
||||
Note that FreeType supports TrueType fonts without the bytecode
|
||||
interpreter through its auto-hinter, which now generates relatively
|
||||
good results with most fonts.
|
||||
|
@ -3,7 +3,7 @@
|
||||
/* ftbitmap.h */
|
||||
/* */
|
||||
/* FreeType utility functions for converting 1bpp, 2bpp, 4bpp, and 8bpp */
|
||||
/* bitmaps into 8bpp format (specification). */
|
||||
/* bitmaps into 8bpp format (specification). */
|
||||
/* */
|
||||
/* Copyright 2004, 2005, 2006 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
|
@ -51,11 +51,11 @@
|
||||
*
|
||||
* @values:
|
||||
* FT_GASP_NO_TABLE ::
|
||||
* This special value means that there is no GASP table in this face.
|
||||
* This special value means that there is no GASP table in this face.
|
||||
* It is up to the client to decide what to do.
|
||||
*
|
||||
* FT_GASP_DO_GRIDFIT ::
|
||||
* Grid-fitting and hinting should be performed at the specified ppem.
|
||||
* Grid-fitting and hinting should be performed at the specified ppem.
|
||||
* This *really* means TrueType bytecode interpretation.
|
||||
*
|
||||
* FT_GASP_DO_GRAY ::
|
||||
|
@ -229,11 +229,11 @@ FT_BEGIN_HEADER
|
||||
*
|
||||
* @struct:
|
||||
* FT_Incremental_FuncsRec
|
||||
*
|
||||
*
|
||||
* @description:
|
||||
* A table of functions for accessing fonts that load data
|
||||
* incrementally. Used in @FT_Incremental_InterfaceRec.
|
||||
*
|
||||
*
|
||||
* @fields:
|
||||
* get_glyph_data ::
|
||||
* The function to get glyph data. Must not be null.
|
||||
@ -243,7 +243,7 @@ FT_BEGIN_HEADER
|
||||
*
|
||||
* get_glyph_metrics ::
|
||||
* The function to get glyph metrics. May be null if the font does
|
||||
* not provide overriding glyph metrics.
|
||||
* not provide overriding glyph metrics.
|
||||
*/
|
||||
typedef struct FT_Incremental_FuncsRec_
|
||||
{
|
||||
@ -293,7 +293,7 @@ FT_BEGIN_HEADER
|
||||
{
|
||||
const FT_Incremental_FuncsRec* funcs;
|
||||
FT_Incremental object;
|
||||
|
||||
|
||||
} FT_Incremental_InterfaceRec;
|
||||
|
||||
|
||||
@ -321,7 +321,7 @@ FT_BEGIN_HEADER
|
||||
*/
|
||||
#define FT_PARAM_TAG_INCREMENTAL FT_MAKE_TAG( 'i', 'n', 'c', 'r' )
|
||||
|
||||
/* */
|
||||
/* */
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
|
@ -75,7 +75,7 @@ FT_BEGIN_HEADER
|
||||
* FT_LCD_FILTER_LEGACY ::
|
||||
* This filter corresponds to the original libXft color filter. It
|
||||
* provides high contrast output but can exhibit really bad color
|
||||
* fringes if glyphs are not extremely well hinted to the pixel grid.
|
||||
* fringes if glyphs are not extremely well hinted to the pixel grid.
|
||||
* In other words, it only works well if the TrueType bytecode
|
||||
* interpreter is enabled *and* high-quality hinted fonts are used.
|
||||
*
|
||||
|
@ -154,10 +154,10 @@ FT_BEGIN_HEADER
|
||||
FT_EXPORT( FT_Error )
|
||||
FT_OpenType_Validate( FT_Face face,
|
||||
FT_UInt validation_flags,
|
||||
FT_Bytes *BASE_table,
|
||||
FT_Bytes *GDEF_table,
|
||||
FT_Bytes *GPOS_table,
|
||||
FT_Bytes *GSUB_table,
|
||||
FT_Bytes *BASE_table,
|
||||
FT_Bytes *GDEF_table,
|
||||
FT_Bytes *GPOS_table,
|
||||
FT_Bytes *GSUB_table,
|
||||
FT_Bytes *JSTF_table );
|
||||
|
||||
/* */
|
||||
|
@ -442,13 +442,13 @@ FT_BEGIN_HEADER
|
||||
*
|
||||
* @enum:
|
||||
* FT_Orientation
|
||||
*
|
||||
*
|
||||
* @description:
|
||||
* A list of values used to describe an outline's contour orientation.
|
||||
*
|
||||
* The TrueType and Postscript specifications use different conventions
|
||||
* to determine whether outline contours should be filled or unfilled.
|
||||
*
|
||||
*
|
||||
* @values:
|
||||
* FT_ORIENTATION_TRUETYPE ::
|
||||
* According to the TrueType specification, clockwise contours must
|
||||
@ -480,7 +480,7 @@ FT_BEGIN_HEADER
|
||||
FT_ORIENTATION_FILL_RIGHT = FT_ORIENTATION_TRUETYPE,
|
||||
FT_ORIENTATION_FILL_LEFT = FT_ORIENTATION_POSTSCRIPT,
|
||||
FT_ORIENTATION_NONE
|
||||
|
||||
|
||||
} FT_Orientation;
|
||||
|
||||
|
||||
@ -488,7 +488,7 @@ FT_BEGIN_HEADER
|
||||
*
|
||||
* @function:
|
||||
* FT_Outline_Get_Orientation
|
||||
*
|
||||
*
|
||||
* @description:
|
||||
* This function analyzes a glyph outline and tries to compute its
|
||||
* fill orientation (see @FT_Orientation). This is done by computing
|
||||
|
@ -64,7 +64,7 @@ FT_BEGIN_HEADER
|
||||
*
|
||||
* @values:
|
||||
* FT_WinFNT_ID_DEFAULT ::
|
||||
* This is used for font enumeration and font creation as a
|
||||
* This is used for font enumeration and font creation as a
|
||||
* `don't care' value. Valid font files don't contain this value.
|
||||
* When querying for information about the character set of the font
|
||||
* that is currently selected into a specified device context, this
|
||||
@ -95,7 +95,7 @@ FT_BEGIN_HEADER
|
||||
* Windows have. It is one of the OEM codepages from
|
||||
*
|
||||
* http://www.microsoft.com/globaldev/reference/cphome.mspx,
|
||||
*
|
||||
*
|
||||
* and is used for the `DOS boxes', to support legacy applications.
|
||||
* A German Windows version for example usually uses ANSI codepage
|
||||
* 1252 and OEM codepage 850.
|
||||
@ -130,10 +130,10 @@ FT_BEGIN_HEADER
|
||||
*
|
||||
* FT_WinFNT_ID_CP1253 ::
|
||||
* A superset of Greek ISO 8859-7 (with minor modifications).
|
||||
*
|
||||
*
|
||||
* FT_WinFNT_ID_CP1254 ::
|
||||
* A superset of Turkish ISO 8859-9.
|
||||
*
|
||||
*
|
||||
* FT_WinFNT_ID_CP1255 ::
|
||||
* A superset of Hebrew ISO 8859-8 (with some modifications).
|
||||
*
|
||||
|
@ -36,12 +36,12 @@ FT_BEGIN_HEADER
|
||||
|
||||
FT_DEFINE_SERVICE( Kerning )
|
||||
{
|
||||
FT_Kerning_TrackGetFunc get_track;
|
||||
FT_Kerning_TrackGetFunc get_track;
|
||||
};
|
||||
|
||||
/* */
|
||||
|
||||
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
|
||||
|
@ -18,11 +18,11 @@
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
/* Development of this service is support of
|
||||
/* Development of this service is support of
|
||||
Information-technology Promotion Agency, Japan. */
|
||||
|
||||
#ifndef __SVTTCMAP_H__
|
||||
#define __SVTTCMAP_H__
|
||||
#define __SVTTCMAP_H__
|
||||
|
||||
#include FT_INTERNAL_SERVICE_H
|
||||
#include FT_TRUETYPE_TABLES_H
|
||||
@ -64,8 +64,8 @@ FT_BEGIN_HEADER
|
||||
FT_DEFINE_SERVICE( TTCMaps )
|
||||
{
|
||||
TT_CMap_Info_GetFunc get_cmap_info;
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
/* */
|
||||
|
||||
|
||||
|
@ -45,7 +45,7 @@ FT_BEGIN_HEADER
|
||||
|
||||
/* */
|
||||
|
||||
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
|
||||
|
@ -738,13 +738,13 @@ FT_BEGIN_HEADER
|
||||
/* the table directory */
|
||||
TT_Load_Table_Func load_font_dir;
|
||||
TT_Load_Metrics_Func load_hmtx;
|
||||
|
||||
|
||||
TT_Load_Table_Func load_eblc;
|
||||
TT_Free_Table_Func free_eblc;
|
||||
|
||||
|
||||
TT_Set_SBit_Strike_Func set_sbit_strike;
|
||||
TT_Load_Strike_Metrics_Func load_strike_metrics;
|
||||
|
||||
|
||||
TT_Get_Metrics_Func get_metrics;
|
||||
|
||||
} SFNT_Interface;
|
||||
|
@ -203,7 +203,7 @@ FT_BEGIN_HEADER
|
||||
|
||||
#ifdef FT_CONFIG_OPTION_OLD_INTERNALS
|
||||
PS_Unicodes unicode_map;
|
||||
#endif
|
||||
#endif
|
||||
|
||||
/* support for Multiple Masters fonts */
|
||||
PS_Blend blend;
|
||||
|
@ -619,7 +619,7 @@ FT_BEGIN_HEADER
|
||||
* to access the whole font file. Otherwise, you can use one of the
|
||||
* definitions found in the @FT_TRUETYPE_TAGS_H file, or forge a new
|
||||
* one with @FT_MAKE_TAG.
|
||||
*
|
||||
*
|
||||
* offset ::
|
||||
* The starting offset in the table (or file if tag == 0).
|
||||
*
|
||||
@ -630,7 +630,7 @@ FT_BEGIN_HEADER
|
||||
*
|
||||
* @inout:
|
||||
* length ::
|
||||
* If the `length' parameter is NULL, then try to load the whole table.
|
||||
* If the `length' parameter is NULL, then try to load the whole table.
|
||||
* Return an error code if it fails.
|
||||
*
|
||||
* Else, if `*length' is 0, exit immediately while returning the
|
||||
|
@ -49,7 +49,7 @@
|
||||
FT_UNUSED( library );
|
||||
|
||||
FT_Stream_OpenMemory( stream, base, size );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( FT_Error )
|
||||
@ -57,7 +57,7 @@
|
||||
FT_ULong pos )
|
||||
{
|
||||
return FT_Stream_Seek( stream, pos );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( FT_Error )
|
||||
@ -65,7 +65,7 @@
|
||||
FT_Long distance )
|
||||
{
|
||||
return FT_Stream_Skip( stream, distance );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( FT_Error )
|
||||
@ -74,7 +74,7 @@
|
||||
FT_ULong count )
|
||||
{
|
||||
return FT_Stream_Read( stream, buffer, count );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( FT_Error )
|
||||
@ -84,7 +84,7 @@
|
||||
FT_ULong count )
|
||||
{
|
||||
return FT_Stream_ReadAt( stream, pos, buffer, count );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( FT_Error )
|
||||
@ -93,7 +93,7 @@
|
||||
FT_Byte** pbytes )
|
||||
{
|
||||
return FT_Stream_ExtractFrame( stream, count, pbytes );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
@ -101,14 +101,14 @@
|
||||
FT_Byte** pbytes )
|
||||
{
|
||||
FT_Stream_ReleaseFrame( stream, pbytes );
|
||||
}
|
||||
}
|
||||
|
||||
FT_BASE_DEF( FT_Error )
|
||||
FT_Access_Frame( FT_Stream stream,
|
||||
FT_ULong count )
|
||||
{
|
||||
return FT_Stream_EnterFrame( stream, count );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
@ -116,6 +116,6 @@
|
||||
{
|
||||
FT_Stream_ExitFrame( stream );
|
||||
}
|
||||
|
||||
|
||||
|
||||
/* END */
|
||||
|
@ -6,7 +6,7 @@
|
||||
/* Heavily modified by mpsuzuki, George Williams, and Sean McBride. */
|
||||
/* */
|
||||
/* This file is for Mac OS X only; see builds/mac/ftoldmac.c for */
|
||||
/* classic platforms built by MPW. */
|
||||
/* classic platforms built by MPW. */
|
||||
/* */
|
||||
/* Copyright 1996-2001, 2002, 2003, 2004, 2005, 2006 by */
|
||||
/* Just van Rossum, David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
|
@ -174,7 +174,7 @@
|
||||
|
||||
|
||||
/* documentation is in ftmm.h */
|
||||
|
||||
|
||||
/* This is exactly the same as the previous function. It exists for */
|
||||
/* orthogonality. */
|
||||
|
||||
|
@ -8,14 +8,14 @@ Introduction
|
||||
************
|
||||
|
||||
BDF (Bitmap Distribution Format) is a bitmap font format defined by Adobe,
|
||||
which is intended to be easily understood by both humans and computers.
|
||||
which is intended to be easily understood by both humans and computers.
|
||||
This code implements a BDF driver for the FreeType library, following the
|
||||
Adobe Specification V 2.2. The specification of the BDF font format is
|
||||
available from Adobe's web site:
|
||||
|
||||
http://partners.adobe.com/asn/developer/PDFS/TN/5005.BDF_Spec.pdf
|
||||
|
||||
Many good bitmap fonts in bdf format come with XFree86 (www.XFree86.org).
|
||||
Many good bitmap fonts in bdf format come with XFree86 (www.XFree86.org).
|
||||
They do not define vertical metrics, because the X Consortium BDF
|
||||
specification has removed them.
|
||||
|
||||
@ -40,13 +40,13 @@ client application the work of interpreting them. For instance:
|
||||
FT_New_Face( library, ..., &face );
|
||||
|
||||
bdfface = (BDF_Public_Face)face;
|
||||
|
||||
if ( ( bdfface->charset_registry == "ISO10646" ) &&
|
||||
|
||||
if ( ( bdfface->charset_registry == "ISO10646" ) &&
|
||||
( bdfface->charset_encoding == "1" ) )
|
||||
[..]
|
||||
|
||||
|
||||
Thus the driver always exports `ft_encoding_none' as face->charmap.encoding.
|
||||
Thus the driver always exports `ft_encoding_none' as face->charmap.encoding.
|
||||
FT_Get_Char_Index's behavior is unmodified, that is, it converts the ULong
|
||||
value given as argument into the corresponding glyph number.
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
FreeType font driver for bdf files
|
||||
|
||||
Copyright (C) 2001, 2002 by
|
||||
Francesco Zappa Nardelli
|
||||
Francesco Zappa Nardelli
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
|
@ -161,7 +161,7 @@ FT_BEGIN_HEADER
|
||||
{
|
||||
const char* key;
|
||||
void* data;
|
||||
|
||||
|
||||
} _hashnode, *hashnode;
|
||||
|
||||
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
# Copyright 2001, 2002, 2006 by
|
||||
# Francesco Zappa Nardelli
|
||||
#
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
|
@ -39,14 +39,14 @@ FT_BEGIN_HEADER
|
||||
{
|
||||
FT_CMapRec cmap;
|
||||
FT_UShort* gids; /* up to 256 elements */
|
||||
|
||||
|
||||
} CFF_CMapStdRec;
|
||||
|
||||
|
||||
FT_CALLBACK_TABLE const FT_CMap_ClassRec
|
||||
cff_cmap_encoding_class_rec;
|
||||
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
/***** *****/
|
||||
|
@ -321,7 +321,7 @@
|
||||
FT_Memory memory = stream->memory;
|
||||
|
||||
|
||||
if ( idx->count > 0 && idx->offsets == NULL )
|
||||
if ( idx->count > 0 && idx->offsets == NULL )
|
||||
{
|
||||
FT_Byte offsize = idx->off_size;
|
||||
FT_ULong data_size;
|
||||
|
@ -439,7 +439,7 @@ gxvalid: TrueType GX validator
|
||||
dialect. The classic Microsoft dialect and the new Apple dialect
|
||||
are documented by each vendors' TrueType font specification, but
|
||||
the documentation for classic Apple dialect is not available.
|
||||
|
||||
|
||||
For example, in the new Apple dialect, bit 15 is documented as
|
||||
`set to 1 if the kerning is vertical'. On the other hand, in
|
||||
classic Microsoft dialect, bit 1 is documented as `set to 1 if the
|
||||
@ -487,7 +487,7 @@ gxvalid: TrueType GX validator
|
||||
|
||||
We checked 59 fonts bundled with MacOS and 38 fonts bundled with
|
||||
Windows, where all font include a `kern' table.
|
||||
|
||||
|
||||
- fonts bundled with MacOS
|
||||
* new Apple dialect
|
||||
format 0: 18
|
||||
|
@ -465,7 +465,7 @@
|
||||
printf( " {%1d, %1d, %1d, %2d}, /* %s */\n",
|
||||
feat_name ? 1 : 0,
|
||||
( feat_name &&
|
||||
( ft_strncmp( feat_name,
|
||||
( ft_strncmp( feat_name,
|
||||
APPLE_RESERVED, APPLE_RESERVED_LENGTH ) == 0 )
|
||||
) ? 1 : 0,
|
||||
featreg_table[i].exclusive ? 1 : 0,
|
||||
|
@ -205,7 +205,7 @@
|
||||
|
||||
setComponent = (FT_UShort)( ( flags >> 15 ) & 1 );
|
||||
dontAdvance = (FT_UShort)( ( flags >> 14 ) & 1 );
|
||||
|
||||
|
||||
offset = (FT_UShort)( flags & 0x3FFFU );
|
||||
|
||||
if ( 0 < offset )
|
||||
|
@ -198,14 +198,14 @@
|
||||
|
||||
|
||||
static
|
||||
const FT_Service_OTvalidateRec otvalid_interface =
|
||||
const FT_Service_OTvalidateRec otvalid_interface =
|
||||
{
|
||||
otv_validate
|
||||
};
|
||||
|
||||
|
||||
static
|
||||
const FT_ServiceDescRec otvalid_services[] =
|
||||
const FT_ServiceDescRec otvalid_services[] =
|
||||
{
|
||||
{ FT_SERVICE_ID_OPENTYPE_VALIDATE, &otvalid_interface },
|
||||
{ NULL, NULL }
|
||||
|
@ -46,8 +46,8 @@ client application the work of interpreting them. For instance:
|
||||
FT_New_Face( library,..., &face );
|
||||
|
||||
pcfface = (PCF_Public_Face)face;
|
||||
|
||||
if ((pcfface->charset_registry == "ISO10646") &&
|
||||
|
||||
if ((pcfface->charset_registry == "ISO10646") &&
|
||||
(pcfface->charset_encoding) == "1")) [..]
|
||||
|
||||
Thus the driver always export `ft_encoding_none' as
|
||||
|
@ -4,7 +4,7 @@
|
||||
|
||||
# Copyright 2000, 2006 by
|
||||
# Francesco Zappa Nardelli
|
||||
#
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to deal
|
||||
# in the Software without restriction, including without limitation the rights
|
||||
|
@ -550,7 +550,7 @@ THE SOFTWARE.
|
||||
}
|
||||
|
||||
error = PCF_Err_Ok;
|
||||
|
||||
|
||||
Bail:
|
||||
FT_FREE( props );
|
||||
FT_FREE( strings );
|
||||
@ -1183,7 +1183,7 @@ THE SOFTWARE.
|
||||
else
|
||||
root->family_name = NULL;
|
||||
|
||||
/*
|
||||
/*
|
||||
* Note: We shift all glyph indices by +1 since we must
|
||||
* respect the convention that glyph 0 always corresponds
|
||||
* to the `missing glyph'.
|
||||
|
@ -47,12 +47,12 @@ in this Software without prior written authorization from The Open Group.
|
||||
for ( ; --nbytes >= 0; buf++ )
|
||||
{
|
||||
unsigned int val = *buf;
|
||||
|
||||
|
||||
|
||||
val = ( ( val >> 1 ) & 0x55 ) | ( ( val << 1 ) & 0xAA );
|
||||
val = ( ( val >> 2 ) & 0x33 ) | ( ( val << 2 ) & 0xCC );
|
||||
val = ( ( val >> 4 ) & 0x0F ) | ( ( val << 4 ) & 0xF0 );
|
||||
|
||||
|
||||
*buf = (unsigned char)val;
|
||||
}
|
||||
}
|
||||
|
@ -16,7 +16,7 @@
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
#include "pfrcmap.h"
|
||||
#include "pfrcmap.h"
|
||||
#include "pfrobjs.h"
|
||||
#include FT_INTERNAL_DEBUG_H
|
||||
|
||||
@ -29,12 +29,12 @@
|
||||
|
||||
cmap->num_chars = face->phy_font.num_chars;
|
||||
cmap->chars = face->phy_font.chars;
|
||||
|
||||
|
||||
/* just for safety, check that the character entries are correctly */
|
||||
/* sorted in increasing character code order */
|
||||
{
|
||||
FT_UInt n;
|
||||
|
||||
|
||||
|
||||
for ( n = 1; n < cmap->num_chars; n++ )
|
||||
{
|
||||
@ -42,7 +42,7 @@
|
||||
FT_ASSERT( 0 );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -31,7 +31,7 @@ FT_BEGIN_HEADER
|
||||
FT_CMapRec cmap;
|
||||
FT_UInt num_chars;
|
||||
PFR_Char chars;
|
||||
|
||||
|
||||
} PFR_CMapRec, *PFR_CMap;
|
||||
|
||||
|
||||
|
@ -54,11 +54,11 @@ FT_BEGIN_HEADER
|
||||
{
|
||||
FT_UInt type;
|
||||
PFR_ExtraItem_ParseFunc parser;
|
||||
|
||||
|
||||
} PFR_ExtraItemRec;
|
||||
|
||||
|
||||
typedef const struct PFR_ExtraItemRec_* PFR_ExtraItem;
|
||||
|
||||
|
||||
|
||||
FT_LOCAL( FT_Error )
|
||||
pfr_extra_items_skip( FT_Byte* *pp,
|
||||
@ -109,7 +109,7 @@ FT_BEGIN_HEADER
|
||||
FT_Memory memory );
|
||||
|
||||
/* */
|
||||
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
#endif /* __PFRLOAD_H__ */
|
||||
|
@ -17,7 +17,7 @@ SubDir FT2_TOP $(FT2_SRC_DIR) psaux ;
|
||||
if $(FT2_MULTI)
|
||||
{
|
||||
_sources = psauxmod psobjs t1decode t1cmap
|
||||
psconv afmparse
|
||||
psconv afmparse
|
||||
;
|
||||
}
|
||||
else
|
||||
|
@ -588,7 +588,7 @@
|
||||
"current token is `%c', which is self-delimiting "
|
||||
"but invalid at this point\n",
|
||||
*cur ));
|
||||
|
||||
|
||||
error = PSaux_Err_Invalid_File_Format;
|
||||
}
|
||||
|
||||
@ -1282,8 +1282,8 @@
|
||||
{
|
||||
FT_Error error = PSaux_Err_Ok;
|
||||
FT_Byte* cur;
|
||||
|
||||
|
||||
|
||||
|
||||
ps_parser_skip_spaces( parser );
|
||||
cur = parser->cursor;
|
||||
|
||||
|
@ -412,9 +412,9 @@
|
||||
{
|
||||
FT_UNUSED( face );
|
||||
FT_UNUSED( stream );
|
||||
|
||||
|
||||
return FT_Err_Unimplemented_Feature;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
FT_CALLBACK_DEF( void )
|
||||
@ -449,8 +449,8 @@
|
||||
|
||||
*astrike_index = 0x7FFFFFFFUL;
|
||||
|
||||
return tt_face_set_sbit_strike( face, &req, astrike_index );
|
||||
}
|
||||
return tt_face_set_sbit_strike( face, &req, astrike_index );
|
||||
}
|
||||
|
||||
|
||||
FT_CALLBACK_DEF( FT_Error )
|
||||
@ -459,15 +459,15 @@
|
||||
{
|
||||
FT_UNUSED( face );
|
||||
FT_UNUSED( stream );
|
||||
|
||||
|
||||
/*
|
||||
* This function was originally implemented to load the sbit table.
|
||||
* This function was originally implemented to load the sbit table.
|
||||
* However, it has been replaced by `tt_face_load_eblc', and this stub
|
||||
* is only there for some rogue clients which would want to call it
|
||||
* directly (which doesn't make much sense).
|
||||
*/
|
||||
return FT_Err_Unimplemented_Feature;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
FT_CALLBACK_DEF( void )
|
||||
@ -476,8 +476,8 @@
|
||||
/* nothing to do in this stub */
|
||||
FT_UNUSED( face );
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
FT_CALLBACK_DEF( FT_Error )
|
||||
tt_face_load_charmap_stub( TT_Face face,
|
||||
void* cmap,
|
||||
@ -486,9 +486,9 @@
|
||||
FT_UNUSED( face );
|
||||
FT_UNUSED( cmap );
|
||||
FT_UNUSED( input );
|
||||
|
||||
|
||||
return FT_Err_Unimplemented_Feature;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
FT_CALLBACK_DEF( FT_Error )
|
||||
@ -497,10 +497,10 @@
|
||||
{
|
||||
FT_UNUSED( face );
|
||||
FT_UNUSED( cmap );
|
||||
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
#endif /* FT_CONFIG_OPTION_OLD_INTERNALS */
|
||||
|
||||
|
||||
@ -600,7 +600,7 @@
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
#endif
|
||||
#endif
|
||||
|
||||
tt_face_get_metrics
|
||||
};
|
||||
|
@ -708,7 +708,7 @@
|
||||
tt_cmap4_next( TT_CMap4 cmap )
|
||||
{
|
||||
FT_UInt charcode;
|
||||
|
||||
|
||||
|
||||
if ( cmap->cur_charcode >= 0xFFFFUL )
|
||||
goto Fail;
|
||||
@ -984,7 +984,7 @@
|
||||
for ( ; charcode <= 0xFFFFU; charcode++ )
|
||||
{
|
||||
FT_Byte* q;
|
||||
|
||||
|
||||
|
||||
p = cmap->data + 14; /* ends table */
|
||||
q = cmap->data + 16 + num_segs2; /* starts table */
|
||||
@ -1040,7 +1040,7 @@
|
||||
FT_UInt charcode = *pcharcode;
|
||||
FT_UInt gindex = 0;
|
||||
FT_Byte* p;
|
||||
|
||||
|
||||
|
||||
p = cmap->data + 6;
|
||||
num_segs2 = FT_PAD_FLOOR( TT_PEEK_USHORT( p ), 2 );
|
||||
|
@ -183,7 +183,7 @@
|
||||
FT_Size_Metrics* metrics )
|
||||
{
|
||||
FT_Byte* strike;
|
||||
|
||||
|
||||
|
||||
if ( strike_index >= (FT_ULong)face->sbit_num_strikes )
|
||||
return SFNT_Err_Invalid_Argument;
|
||||
|
@ -76,4 +76,4 @@ print "shrink factor = " + repr( shrink )
|
||||
print "shrink factor 2 = " + repr( shrink * (2.0**32) )
|
||||
print "expansion factor = " + repr(1/shrink)
|
||||
print ""
|
||||
|
||||
|
||||
|
@ -28,15 +28,15 @@ def beautify_block( block ):
|
||||
for markup in markups:
|
||||
text.extend( markup.beautify( first ) )
|
||||
first = 0
|
||||
|
||||
|
||||
# now beautify the documentation "borders" themselves
|
||||
lines = [ " /*************************************************************************" ]
|
||||
for l in text:
|
||||
lines.append( " *" + l )
|
||||
lines.append( " */" )
|
||||
|
||||
|
||||
block.lines = lines
|
||||
|
||||
|
||||
|
||||
def usage():
|
||||
print "\nDocBeauty 0.1 Usage information\n"
|
||||
@ -46,7 +46,7 @@ def usage():
|
||||
print " -b : backup original files with the 'orig' extension"
|
||||
print ""
|
||||
print " --backup : same as -b"
|
||||
|
||||
|
||||
|
||||
def main( argv ):
|
||||
"""main program loop"""
|
||||
|
@ -36,7 +36,7 @@ def usage():
|
||||
print " --title : same as -t, as in '--title=\"My Project\"'"
|
||||
print " --output : same as -o, as in '--output=mydir'"
|
||||
print " --prefix : same as -p, as in '--prefix=ft2'"
|
||||
|
||||
|
||||
|
||||
def main( argv ):
|
||||
"""main program loop"""
|
||||
@ -87,7 +87,7 @@ def main( argv ):
|
||||
for filename in file_list:
|
||||
source_processor.parse_file( filename )
|
||||
content_processor.parse_sources( source_processor )
|
||||
|
||||
|
||||
# process sections
|
||||
content_processor.finish()
|
||||
|
||||
|
@ -26,7 +26,7 @@ class Formatter:
|
||||
for section in self.sections:
|
||||
for block in section.blocks.values():
|
||||
self.add_identifier( block.name, block )
|
||||
|
||||
|
||||
# add enumeration values to the index, since this is useful
|
||||
for markup in block.markups:
|
||||
if markup.tag == 'values':
|
||||
@ -47,7 +47,7 @@ class Formatter:
|
||||
self.identifiers[ name ].location() + "\n" )
|
||||
else:
|
||||
self.identifiers[name] = block
|
||||
|
||||
|
||||
|
||||
#
|
||||
# Formatting the table of contents
|
||||
@ -55,50 +55,50 @@ class Formatter:
|
||||
|
||||
def toc_enter( self ):
|
||||
pass
|
||||
|
||||
|
||||
def toc_chapter_enter( self, chapter ):
|
||||
pass
|
||||
|
||||
|
||||
def toc_section_enter( self, section ):
|
||||
pass
|
||||
|
||||
|
||||
def toc_section_exit( self, section ):
|
||||
pass
|
||||
|
||||
|
||||
def toc_chapter_exit( self, chapter ):
|
||||
pass
|
||||
|
||||
def toc_index( self, index_filename ):
|
||||
pass
|
||||
|
||||
|
||||
def toc_exit( self ):
|
||||
pass
|
||||
|
||||
def toc_dump( self, toc_filename = None, index_filename = None ):
|
||||
|
||||
|
||||
output = None
|
||||
if toc_filename:
|
||||
output = open_output( toc_filename )
|
||||
|
||||
|
||||
self.toc_enter()
|
||||
|
||||
|
||||
for chap in self.processor.chapters:
|
||||
|
||||
|
||||
self.toc_chapter_enter( chap )
|
||||
|
||||
|
||||
for section in chap.sections:
|
||||
self.toc_section_enter( section )
|
||||
self.toc_section_exit( section )
|
||||
|
||||
|
||||
self.toc_chapter_exit ( chap )
|
||||
|
||||
|
||||
self.toc_index( index_filename )
|
||||
|
||||
|
||||
self.toc_exit()
|
||||
|
||||
if output:
|
||||
close_output( output )
|
||||
|
||||
|
||||
#
|
||||
# Formatting the index
|
||||
#
|
||||
@ -116,7 +116,7 @@ class Formatter:
|
||||
pass
|
||||
|
||||
def index_dump( self, index_filename = None ):
|
||||
|
||||
|
||||
output = None
|
||||
if index_filename:
|
||||
output = open_output( index_filename )
|
||||
@ -128,31 +128,31 @@ class Formatter:
|
||||
self.index_name_exit ( name )
|
||||
|
||||
self.index_exit()
|
||||
|
||||
|
||||
if output:
|
||||
close_output( output )
|
||||
|
||||
|
||||
#
|
||||
# Formatting a section
|
||||
#
|
||||
def section_enter( self, section ):
|
||||
pass
|
||||
|
||||
|
||||
def block_enter( self, block ):
|
||||
pass
|
||||
|
||||
|
||||
def markup_enter( self, markup, block = None ):
|
||||
pass
|
||||
|
||||
|
||||
def field_enter( self, field, markup = None, block = None ):
|
||||
pass
|
||||
|
||||
|
||||
def field_exit( self, field, markup = None, block = None ):
|
||||
pass
|
||||
|
||||
|
||||
def markup_exit( self, markup, block = None ):
|
||||
pass
|
||||
|
||||
|
||||
def block_exit( self, block ):
|
||||
pass
|
||||
|
||||
@ -161,11 +161,11 @@ class Formatter:
|
||||
|
||||
|
||||
def section_dump( self, section, section_filename = None ):
|
||||
|
||||
|
||||
output = None
|
||||
if section_filename:
|
||||
output = open_output( section_filename )
|
||||
|
||||
|
||||
self.section_enter( section )
|
||||
|
||||
for name in section.block_names:
|
||||
|
@ -115,7 +115,7 @@ def make_file_list( args = None ):
|
||||
# of the order of files
|
||||
else:
|
||||
newpath = [pathname]
|
||||
|
||||
|
||||
file_list.extend( newpath )
|
||||
|
||||
if len( file_list ) == 0:
|
||||
@ -123,6 +123,6 @@ def make_file_list( args = None ):
|
||||
else:
|
||||
# now filter the file list to remove non-existing ones
|
||||
file_list = filter( file_exists, file_list )
|
||||
|
||||
|
||||
return file_list
|
||||
|
||||
|
@ -52,7 +52,7 @@
|
||||
{
|
||||
AFM_KernPair kp = fi->KernPairs + i;
|
||||
|
||||
|
||||
|
||||
printf( "\t%3d + %3d => (%4d, %4d)\n", kp->index1,
|
||||
kp->index2,
|
||||
kp->x,
|
||||
|
@ -32,7 +32,7 @@ FT_BEGIN_HEADER
|
||||
/* <Struct> */
|
||||
/* GX_AVarCorrespondenceRec */
|
||||
/* */
|
||||
/* <Description> */
|
||||
/* <Description> */
|
||||
/* A data structure representing `shortFracCorrespondence' in `avar' */
|
||||
/* table according to the specifications from Apple. */
|
||||
/* */
|
||||
@ -94,7 +94,7 @@ FT_BEGIN_HEADER
|
||||
|
||||
FT_UInt gv_glyphcnt;
|
||||
FT_ULong* glyphoffsets;
|
||||
|
||||
|
||||
} GX_BlendRec;
|
||||
|
||||
|
||||
|
@ -152,7 +152,7 @@ FT_BEGIN_HEADER
|
||||
|
||||
FT_LOCAL( FT_Error )
|
||||
T1_GlyphSlot_Init( T1_GlyphSlot slot );
|
||||
|
||||
|
||||
FT_LOCAL( void )
|
||||
T1_GlyphSlot_Done( T1_GlyphSlot slot );
|
||||
|
||||
|
@ -105,18 +105,18 @@
|
||||
|
||||
if ( FT_STREAM_SEEK( 0 ) )
|
||||
goto Exit;
|
||||
|
||||
|
||||
error = read_pfb_tag( stream, &tag, &size );
|
||||
if ( error )
|
||||
goto Exit;
|
||||
|
||||
|
||||
if ( tag != 0x8001U && FT_STREAM_SEEK( 0 ) )
|
||||
goto Exit;
|
||||
|
||||
|
||||
if ( !FT_FRAME_ENTER( header_length ) )
|
||||
{
|
||||
error = 0;
|
||||
|
||||
|
||||
if ( ft_memcmp( stream->cursor, header_string, header_length ) != 0 )
|
||||
error = T1_Err_Unknown_File_Format;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user