mirror of
https://github.com/love2d/megasource.git
synced 2026-08-12 08:30:59 +02:00
Update FreeType to 2.6.2.
This commit is contained in:
@@ -1,63 +0,0 @@
|
||||
cmake_minimum_required(VERSION 2.8)
|
||||
|
||||
project(freetype)
|
||||
|
||||
option(FREETYPE_BUILD_SHARED "Build shared library" OFF)
|
||||
option(FREETYPE_BUILD_STATIC "Build static library" ON)
|
||||
|
||||
set(FREETYPE_SRC
|
||||
src/autofit/autofit.c
|
||||
src/base/ftbase.c
|
||||
src/base/ftbbox.c
|
||||
src/base/ftbitmap.c
|
||||
src/base/ftfstype.c
|
||||
src/base/ftgasp.c
|
||||
src/base/ftglyph.c
|
||||
src/base/ftgxval.c
|
||||
src/base/ftinit.c
|
||||
src/base/ftlcdfil.c
|
||||
src/base/ftmm.c
|
||||
src/base/ftotval.c
|
||||
src/base/ftpatent.c
|
||||
src/base/ftpfr.c
|
||||
src/base/ftstroke.c
|
||||
src/base/ftsynth.c
|
||||
src/base/ftsystem.c
|
||||
src/base/fttype1.c
|
||||
src/base/ftwinfnt.c
|
||||
src/base/ftxf86.c
|
||||
src/bdf/bdf.c
|
||||
src/cache/ftcache.c
|
||||
src/cff/cff.c
|
||||
src/cid/type1cid.c
|
||||
src/gzip/ftgzip.c
|
||||
src/lzw/ftlzw.c
|
||||
src/pcf/pcf.c
|
||||
src/pfr/pfr.c
|
||||
src/psaux/psaux.c
|
||||
src/pshinter/pshinter.c
|
||||
src/psnames/psmodule.c
|
||||
src/raster/raster.c
|
||||
src/sfnt/sfnt.c
|
||||
src/smooth/smooth.c
|
||||
src/truetype/truetype.c
|
||||
src/type1/type1.c
|
||||
src/type42/type42.c
|
||||
src/winfonts/winfnt.c
|
||||
)
|
||||
|
||||
add_definitions(-D_CRT_SECURE_NO_WARNINGS -DFT2_BUILD_LIBRARY)
|
||||
|
||||
if(WIN32)
|
||||
list(APPEND FREETYPE_SRC builds/win32/ftdebug.c)
|
||||
endif()
|
||||
|
||||
if (FREETYPE_BUILD_STATIC)
|
||||
add_library(freetype-static STATIC ${FREETYPE_SRC})
|
||||
target_include_directories(freetype-static PUBLIC include)
|
||||
endif()
|
||||
|
||||
if (FREETYPE_BUILD_SHARED)
|
||||
add_library(freetype SHARED ${FREETYPE_SRC})
|
||||
target_include_directories(freetype PUBLIC include)
|
||||
endif()
|
||||
@@ -1,66 +0,0 @@
|
||||
//
|
||||
// FreeType 2 project for the symbian platform
|
||||
//
|
||||
|
||||
// Copyright 2008, 2009 by
|
||||
// David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
//
|
||||
// This file is part of the FreeType project, and may only be used, modified,
|
||||
// and distributed under the terms of the FreeType project license,
|
||||
// LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
// indicate that you have read the license and understand and accept it
|
||||
// fully.
|
||||
|
||||
PRJ_PLATFORMS
|
||||
DEFAULT
|
||||
|
||||
PRJ_MMPFILES
|
||||
freetype.mmp
|
||||
|
||||
PRJ_EXPORTS
|
||||
../../include/ft2build.h
|
||||
../../include/freetype/config/ftconfig.h freetype/config/ftconfig.h
|
||||
../../include/freetype/config/ftheader.h freetype/config/ftheader.h
|
||||
../../include/freetype/config/ftmodule.h freetype/config/ftmodule.h
|
||||
../../include/freetype/config/ftoption.h freetype/config/ftoption.h
|
||||
../../include/freetype/config/ftstdlib.h freetype/config/ftstdlib.h
|
||||
../../include/freetype/freetype.h freetype/freetype.h
|
||||
../../include/freetype/ftbbox.h freetype/ftbbox.h
|
||||
../../include/freetype/ftbdf.h freetype/ftbdf.h
|
||||
../../include/freetype/ftbitmap.h freetype/ftbitmap.h
|
||||
../../include/freetype/ftcache.h freetype/ftcache.h
|
||||
../../include/freetype/ftcid.h freetype/ftcid.h
|
||||
../../include/freetype/fterrdef.h freetype/fterrdef.h
|
||||
../../include/freetype/fterrors.h freetype/fterrors.h
|
||||
../../include/freetype/ftgasp.h freetype/ftgasp.h
|
||||
../../include/freetype/ftglyph.h freetype/ftglyph.h
|
||||
../../include/freetype/ftgxval.h freetype/ftgxval.h
|
||||
../../include/freetype/ftgzip.h freetype/ftgzip.h
|
||||
../../include/freetype/ftbzip2.h freetype/ftbzip2.h
|
||||
../../include/freetype/ftimage.h freetype/ftimage.h
|
||||
../../include/freetype/ftincrem.h freetype/ftincrem.h
|
||||
../../include/freetype/ftlcdfil.h freetype/ftlcdfil.h
|
||||
../../include/freetype/ftlist.h freetype/ftlist.h
|
||||
../../include/freetype/ftlzw.h freetype/ftlzw.h
|
||||
../../include/freetype/ftmac.h freetype/ftmac.h
|
||||
../../include/freetype/ftmm.h freetype/ftmm.h
|
||||
../../include/freetype/ftmodapi.h freetype/ftmodapi.h
|
||||
../../include/freetype/ftmoderr.h freetype/ftmoderr.h
|
||||
../../include/freetype/ftotval.h freetype/ftotval.h
|
||||
../../include/freetype/ftoutln.h freetype/ftoutln.h
|
||||
../../include/freetype/ftpfr.h freetype/ftpfr.h
|
||||
../../include/freetype/ftrender.h freetype/ftrender.h
|
||||
../../include/freetype/ftsizes.h freetype/ftsizes.h
|
||||
../../include/freetype/ftsnames.h freetype/ftsnames.h
|
||||
../../include/freetype/ftstroke.h freetype/ftstroke.h
|
||||
../../include/freetype/ftsynth.h freetype/ftsynth.h
|
||||
../../include/freetype/ftsystem.h freetype/ftsystem.h
|
||||
../../include/freetype/fttrigon.h freetype/fttrigon.h
|
||||
../../include/freetype/fttypes.h freetype/fttypes.h
|
||||
../../include/freetype/ftwinfnt.h freetype/ftwinfnt.h
|
||||
../../include/freetype/ftxf86.h freetype/ftxf86.h
|
||||
../../include/freetype/t1tables.h freetype/t1tables.h
|
||||
../../include/freetype/ttnameid.h freetype/ttnameid.h
|
||||
../../include/freetype/tttables.h freetype/tttables.h
|
||||
../../include/freetype/tttags.h freetype/tttags.h
|
||||
../../include/freetype/ttunpat.h freetype/ttunpat.h
|
||||
@@ -1,12 +0,0 @@
|
||||
prefix="%prefix%"
|
||||
exec_prefix="%exec_prefix%"
|
||||
libdir="%libdir%"
|
||||
includedir="%includedir%"
|
||||
|
||||
Name: FreeType 2
|
||||
Description: A free, high-quality, and portable font engine.
|
||||
Version: %ft_version%
|
||||
Requires:
|
||||
Libs: -L${libdir} -lfreetype
|
||||
Libs.private: %LIBZ% %LIBBZ2% %FT2_EXTRA_LIBS%
|
||||
Cflags: -I${includedir}/freetype2 -I${includedir}
|
||||
@@ -1,61 +0,0 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ft2build.h */
|
||||
/* */
|
||||
/* Build macros of the FreeType 2 library. */
|
||||
/* */
|
||||
/* Copyright 1996-2001, 2003, 2006 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* This is a Unix-specific version of <ft2build.h> that should be used */
|
||||
/* exclusively *after* installation of the library. */
|
||||
/* */
|
||||
/* It assumes that `/usr/local/include/freetype2' (or whatever is */
|
||||
/* returned by the `freetype-config --cflags' or `pkg-config --cflags' */
|
||||
/* command) is in your compilation include path. */
|
||||
/* */
|
||||
/* We don't need to do anything special in this release. However, for */
|
||||
/* a future FreeType 2 release, the following installation changes will */
|
||||
/* be performed: */
|
||||
/* */
|
||||
/* - The contents of `freetype-2.x/include/freetype' will be installed */
|
||||
/* to `/usr/local/include/freetype2' instead of */
|
||||
/* `/usr/local/include/freetype2/freetype'. */
|
||||
/* */
|
||||
/* - This file will #include <freetype2/config/ftheader.h>, instead */
|
||||
/* of <freetype/config/ftheader.h>. */
|
||||
/* */
|
||||
/* - The contents of `ftheader.h' will be processed with `sed' to */
|
||||
/* replace all `<freetype/xxx>' with `<freetype2/xxx>'. */
|
||||
/* */
|
||||
/* - Adding `/usr/local/include/freetype2' to your compilation include */
|
||||
/* path will not be necessary anymore. */
|
||||
/* */
|
||||
/* These changes will be transparent to client applications which use */
|
||||
/* freetype-config (or pkg-config). No modifications will be necessary */
|
||||
/* to compile with the new scheme. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
#ifndef __FT2_BUILD_UNIX_H__
|
||||
#define __FT2_BUILD_UNIX_H__
|
||||
|
||||
/* `<prefix>/include/freetype2' must be in your current inclusion path */
|
||||
#include <freetype/config/ftheader.h>
|
||||
|
||||
#endif /* __FT2_BUILD_UNIX_H__ */
|
||||
|
||||
|
||||
/* END */
|
||||
@@ -1,161 +0,0 @@
|
||||
#! /bin/sh
|
||||
# mkinstalldirs --- make directory hierarchy
|
||||
|
||||
scriptversion=2006-05-11.19
|
||||
|
||||
# Original author: Noah Friedman <friedman@prep.ai.mit.edu>
|
||||
# Created: 1993-05-16
|
||||
# Public domain.
|
||||
#
|
||||
# This file is maintained in Automake, please report
|
||||
# bugs to <bug-automake@gnu.org> or send patches to
|
||||
# <automake-patches@gnu.org>.
|
||||
|
||||
nl='
|
||||
'
|
||||
IFS=" "" $nl"
|
||||
errstatus=0
|
||||
dirmode=
|
||||
|
||||
usage="\
|
||||
Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
|
||||
|
||||
Create each directory DIR (with mode MODE, if specified), including all
|
||||
leading file name components.
|
||||
|
||||
Report bugs to <bug-automake@gnu.org>."
|
||||
|
||||
# process command line arguments
|
||||
while test $# -gt 0 ; do
|
||||
case $1 in
|
||||
-h | --help | --h*) # -h for help
|
||||
echo "$usage"
|
||||
exit $?
|
||||
;;
|
||||
-m) # -m PERM arg
|
||||
shift
|
||||
test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
|
||||
dirmode=$1
|
||||
shift
|
||||
;;
|
||||
--version)
|
||||
echo "$0 $scriptversion"
|
||||
exit $?
|
||||
;;
|
||||
--) # stop option processing
|
||||
shift
|
||||
break
|
||||
;;
|
||||
-*) # unknown option
|
||||
echo "$usage" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
*) # first non-opt arg
|
||||
break
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
for file
|
||||
do
|
||||
if test -d "$file"; then
|
||||
shift
|
||||
else
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
case $# in
|
||||
0) exit 0 ;;
|
||||
esac
|
||||
|
||||
# Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and
|
||||
# mkdir -p a/c at the same time, both will detect that a is missing,
|
||||
# one will create a, then the other will try to create a and die with
|
||||
# a "File exists" error. This is a problem when calling mkinstalldirs
|
||||
# from a parallel make. We use --version in the probe to restrict
|
||||
# ourselves to GNU mkdir, which is thread-safe.
|
||||
case $dirmode in
|
||||
'')
|
||||
if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
|
||||
echo "mkdir -p -- $*"
|
||||
exec mkdir -p -- "$@"
|
||||
else
|
||||
# On NextStep and OpenStep, the `mkdir' command does not
|
||||
# recognize any option. It will interpret all options as
|
||||
# directories to create, and then abort because `.' already
|
||||
# exists.
|
||||
test -d ./-p && rmdir ./-p
|
||||
test -d ./--version && rmdir ./--version
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 &&
|
||||
test ! -d ./--version; then
|
||||
echo "mkdir -m $dirmode -p -- $*"
|
||||
exec mkdir -m "$dirmode" -p -- "$@"
|
||||
else
|
||||
# Clean up after NextStep and OpenStep mkdir.
|
||||
for d in ./-m ./-p ./--version "./$dirmode";
|
||||
do
|
||||
test -d $d && rmdir $d
|
||||
done
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
for file
|
||||
do
|
||||
case $file in
|
||||
/*) pathcomp=/ ;;
|
||||
*) pathcomp= ;;
|
||||
esac
|
||||
oIFS=$IFS
|
||||
IFS=/
|
||||
set fnord $file
|
||||
shift
|
||||
IFS=$oIFS
|
||||
|
||||
for d
|
||||
do
|
||||
test "x$d" = x && continue
|
||||
|
||||
pathcomp=$pathcomp$d
|
||||
case $pathcomp in
|
||||
-*) pathcomp=./$pathcomp ;;
|
||||
esac
|
||||
|
||||
if test ! -d "$pathcomp"; then
|
||||
echo "mkdir $pathcomp"
|
||||
|
||||
mkdir "$pathcomp" || lasterr=$?
|
||||
|
||||
if test ! -d "$pathcomp"; then
|
||||
errstatus=$lasterr
|
||||
else
|
||||
if test ! -z "$dirmode"; then
|
||||
echo "chmod $dirmode $pathcomp"
|
||||
lasterr=
|
||||
chmod "$dirmode" "$pathcomp" || lasterr=$?
|
||||
|
||||
if test ! -z "$lasterr"; then
|
||||
errstatus=$lasterr
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
pathcomp=$pathcomp/
|
||||
done
|
||||
done
|
||||
|
||||
exit $errstatus
|
||||
|
||||
# Local Variables:
|
||||
# mode: shell-script
|
||||
# sh-indentation: 2
|
||||
# eval: (add-hook 'write-file-hooks 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-end: "$"
|
||||
# End:
|
||||
@@ -1,31 +0,0 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 9.00
|
||||
|
||||
# Visual Studio 2005
|
||||
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "freetype", "freetype.vcproj", "{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}"
|
||||
|
||||
EndProject
|
||||
|
||||
Global
|
||||
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
|
||||
LIB Debug Multithreaded|Win32 = LIB Debug Multithreaded|Win32
|
||||
|
||||
LIB Debug Singlethreaded|Win32 = LIB Debug Singlethreaded|Win32
|
||||
|
||||
LIB Debug|Win32 = LIB Debug|Win32
|
||||
|
||||
LIB Release Multithreaded|Win32 = LIB Release Multithreaded|Win32
|
||||
|
||||
LIB Release Singlethreaded|Win32 = LIB Release Singlethreaded|Win32
|
||||
|
||||
LIB Release|Win32 = LIB Release|Win32
|
||||
|
||||
EndGlobalSection
|
||||
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
|
||||
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.LIB Debug Multithreaded|Win32.ActiveCfg = Debug Multithreaded|Win32
|
||||
|
||||
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.LIB Debug Multithreaded|Win32.Build.0 = Debug Multithreaded|Win32
|
||||
@@ -1,646 +0,0 @@
|
||||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
|
||||
<VisualStudioProject ProjectType="Visual C++" Version="8.00" Name="freetype" ProjectGUID="{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}" TargetFrameworkVersion="131072">
|
||||
|
||||
<Platforms>
|
||||
|
||||
<Platform Name="Win32" />
|
||||
|
||||
</Platforms>
|
||||
|
||||
<ToolFiles>
|
||||
|
||||
</ToolFiles>
|
||||
|
||||
<Configurations>
|
||||
|
||||
<Configuration Name="Release|Win32" OutputDirectory=".\..\..\..\objs\release" IntermediateDirectory=".\..\..\..\objs\release" ConfigurationType="4" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" UseOfMFC="0" ATLMinimizesCRunTimeLibraryUsage="false" CharacterSet="2">
|
||||
|
||||
<Tool Name="VCPreBuildEventTool" />
|
||||
|
||||
<Tool Name="VCCustomBuildTool" />
|
||||
|
||||
<Tool Name="VCXMLDataGeneratorTool" />
|
||||
|
||||
<Tool Name="VCWebServiceProxyGeneratorTool" />
|
||||
|
||||
<Tool Name="VCMIDLTool" />
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" InlineFunctionExpansion="1" AdditionalIncludeDirectories="..\..\..\include" PreprocessorDefinitions="NDEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT2_BUILD_LIBRARY" StringPooling="true" RuntimeLibrary="2" EnableFunctionLevelLinking="true" DisableLanguageExtensions="true" PrecompiledHeaderFile=".\..\..\..\objs\release/freetype.pch" AssemblerListingLocation=".\..\..\..\objs\release/" ObjectFile=".\..\..\..\objs\release/" ProgramDataBaseFileName=".\..\..\..\objs\release/" WarningLevel="4" DebugInformationFormat="0" CompileAs="0" />
|
||||
|
||||
<Tool Name="VCManagedResourceCompilerTool" />
|
||||
|
||||
<Tool Name="VCResourceCompilerTool" PreprocessorDefinitions="NDEBUG" Culture="1033" />
|
||||
|
||||
<Tool Name="VCPreLinkEventTool" />
|
||||
|
||||
<Tool Name="VCLibrarianTool" OutputFile="..\..\..\objs\win32\vc2005\freetype250.lib" SuppressStartupBanner="true" />
|
||||
|
||||
<Tool Name="VCALinkTool" />
|
||||
|
||||
<Tool Name="VCXDCMakeTool" />
|
||||
|
||||
<Tool Name="VCBscMakeTool" />
|
||||
|
||||
<Tool Name="VCFxCopTool" />
|
||||
|
||||
<Tool Name="VCPostBuildEventTool" />
|
||||
|
||||
</Configuration>
|
||||
|
||||
<Configuration Name="Release Multithreaded|Win32" OutputDirectory=".\..\..\..\objs\release_mt" IntermediateDirectory=".\..\..\..\objs\release_mt" ConfigurationType="4" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" UseOfMFC="0" ATLMinimizesCRunTimeLibraryUsage="false" CharacterSet="2">
|
||||
|
||||
<Tool Name="VCPreBuildEventTool" />
|
||||
|
||||
<Tool Name="VCCustomBuildTool" />
|
||||
|
||||
<Tool Name="VCXMLDataGeneratorTool" />
|
||||
|
||||
<Tool Name="VCWebServiceProxyGeneratorTool" />
|
||||
|
||||
<Tool Name="VCMIDLTool" />
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" InlineFunctionExpansion="1" AdditionalIncludeDirectories="..\..\..\include" PreprocessorDefinitions="NDEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT2_BUILD_LIBRARY" StringPooling="true" RuntimeLibrary="0" EnableFunctionLevelLinking="true" DisableLanguageExtensions="true" PrecompiledHeaderFile=".\..\..\..\objs\release_mt/freetype.pch" AssemblerListingLocation=".\..\..\..\objs\release_mt/" ObjectFile=".\..\..\..\objs\release_mt/" ProgramDataBaseFileName=".\..\..\..\objs\release_mt/" WarningLevel="4" DebugInformationFormat="0" CompileAs="0" />
|
||||
|
||||
<Tool Name="VCManagedResourceCompilerTool" />
|
||||
|
||||
<Tool Name="VCResourceCompilerTool" PreprocessorDefinitions="NDEBUG" Culture="1033" />
|
||||
|
||||
<Tool Name="VCPreLinkEventTool" />
|
||||
|
||||
<Tool Name="VCLibrarianTool" OutputFile="..\..\..\objs\win32\vc2005\freetype250MT.lib" SuppressStartupBanner="true" />
|
||||
|
||||
<Tool Name="VCALinkTool" />
|
||||
|
||||
<Tool Name="VCXDCMakeTool" />
|
||||
|
||||
<Tool Name="VCBscMakeTool" />
|
||||
|
||||
<Tool Name="VCFxCopTool" />
|
||||
|
||||
<Tool Name="VCPostBuildEventTool" />
|
||||
|
||||
</Configuration>
|
||||
|
||||
<Configuration Name="Release Singlethreaded|Win32" OutputDirectory=".\..\..\..\objs\release_st" IntermediateDirectory=".\..\..\..\objs\release_st" ConfigurationType="4" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" UseOfMFC="0" ATLMinimizesCRunTimeLibraryUsage="false" CharacterSet="2">
|
||||
|
||||
<Tool Name="VCPreBuildEventTool" />
|
||||
|
||||
<Tool Name="VCCustomBuildTool" />
|
||||
|
||||
<Tool Name="VCXMLDataGeneratorTool" />
|
||||
|
||||
<Tool Name="VCWebServiceProxyGeneratorTool" />
|
||||
|
||||
<Tool Name="VCMIDLTool" />
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" InlineFunctionExpansion="1" AdditionalIncludeDirectories="..\..\..\include" PreprocessorDefinitions="NDEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT2_BUILD_LIBRARY" StringPooling="true" RuntimeLibrary="0" EnableFunctionLevelLinking="true" DisableLanguageExtensions="true" PrecompiledHeaderFile=".\..\..\..\objs\release_st/freetype.pch" AssemblerListingLocation=".\..\..\..\objs\release_st/" ObjectFile=".\..\..\..\objs\release_st/" ProgramDataBaseFileName=".\..\..\..\objs\release_st/" WarningLevel="4" DebugInformationFormat="0" CompileAs="0" />
|
||||
|
||||
<Tool Name="VCManagedResourceCompilerTool" />
|
||||
|
||||
<Tool Name="VCResourceCompilerTool" PreprocessorDefinitions="NDEBUG" Culture="1033" />
|
||||
|
||||
<Tool Name="VCPreLinkEventTool" />
|
||||
|
||||
<Tool Name="VCLibrarianTool" OutputFile="..\..\..\objs\win32\vc2005\freetype250ST.lib" />
|
||||
|
||||
<Tool Name="VCALinkTool" />
|
||||
|
||||
<Tool Name="VCXDCMakeTool" />
|
||||
|
||||
<Tool Name="VCBscMakeTool" />
|
||||
|
||||
<Tool Name="VCFxCopTool" />
|
||||
|
||||
<Tool Name="VCPostBuildEventTool" />
|
||||
|
||||
</Configuration>
|
||||
|
||||
<Configuration Name="Debug|Win32" OutputDirectory=".\..\..\..\objs\debug" IntermediateDirectory=".\..\..\..\objs\debug" ConfigurationType="4" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" UseOfMFC="0" ATLMinimizesCRunTimeLibraryUsage="false" CharacterSet="2">
|
||||
|
||||
<Tool Name="VCPreBuildEventTool" />
|
||||
|
||||
<Tool Name="VCCustomBuildTool" />
|
||||
|
||||
<Tool Name="VCXMLDataGeneratorTool" />
|
||||
|
||||
<Tool Name="VCWebServiceProxyGeneratorTool" />
|
||||
|
||||
<Tool Name="VCMIDLTool" />
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="..\..\..\include" PreprocessorDefinitions="_DEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT_DEBUG_LEVEL_ERROR;FT_DEBUG_LEVEL_TRACE;FT2_BUILD_LIBRARY" BasicRuntimeChecks="3" RuntimeLibrary="3" DisableLanguageExtensions="true" PrecompiledHeaderFile=".\..\..\..\objs\debug/freetype.pch" AssemblerListingLocation=".\..\..\..\objs\debug/" ObjectFile=".\..\..\..\objs\debug/" ProgramDataBaseFileName=".\..\..\..\objs\debug/" WarningLevel="4" DebugInformationFormat="3" CompileAs="0" />
|
||||
|
||||
<Tool Name="VCManagedResourceCompilerTool" />
|
||||
|
||||
<Tool Name="VCResourceCompilerTool" PreprocessorDefinitions="_DEBUG" Culture="1033" />
|
||||
|
||||
<Tool Name="VCPreLinkEventTool" />
|
||||
|
||||
<Tool Name="VCLibrarianTool" OutputFile="..\..\..\objs\win32\vc2005\freetype250_D.lib" SuppressStartupBanner="true" />
|
||||
|
||||
<Tool Name="VCALinkTool" />
|
||||
|
||||
<Tool Name="VCXDCMakeTool" />
|
||||
|
||||
<Tool Name="VCBscMakeTool" />
|
||||
|
||||
<Tool Name="VCFxCopTool" />
|
||||
|
||||
<Tool Name="VCPostBuildEventTool" />
|
||||
|
||||
</Configuration>
|
||||
|
||||
<Configuration Name="Debug Singlethreaded|Win32" OutputDirectory=".\..\..\..\objs\debug_st" IntermediateDirectory=".\..\..\..\objs\debug_st" ConfigurationType="4" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" UseOfMFC="0" ATLMinimizesCRunTimeLibraryUsage="false" CharacterSet="2">
|
||||
|
||||
<Tool Name="VCPreBuildEventTool" />
|
||||
|
||||
<Tool Name="VCCustomBuildTool" />
|
||||
|
||||
<Tool Name="VCXMLDataGeneratorTool" />
|
||||
|
||||
<Tool Name="VCWebServiceProxyGeneratorTool" />
|
||||
|
||||
<Tool Name="VCMIDLTool" />
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="..\..\..\include" PreprocessorDefinitions="_DEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT_DEBUG_LEVEL_ERROR;FT_DEBUG_LEVEL_TRACE;FT2_BUILD_LIBRARY" BasicRuntimeChecks="3" RuntimeLibrary="1" DisableLanguageExtensions="true" PrecompiledHeaderFile=".\..\..\..\objs\debug_st/freetype.pch" AssemblerListingLocation=".\..\..\..\objs\debug_st/" ObjectFile=".\..\..\..\objs\debug_st/" ProgramDataBaseFileName=".\..\..\..\objs\debug_st/" WarningLevel="4" DebugInformationFormat="3" CompileAs="0" />
|
||||
|
||||
<Tool Name="VCManagedResourceCompilerTool" />
|
||||
|
||||
<Tool Name="VCResourceCompilerTool" PreprocessorDefinitions="_DEBUG" Culture="1033" />
|
||||
|
||||
<Tool Name="VCPreLinkEventTool" />
|
||||
|
||||
<Tool Name="VCLibrarianTool" OutputFile="..\..\..\objs\win32\vc2005\freetype250ST_D.lib" SuppressStartupBanner="true" />
|
||||
|
||||
<Tool Name="VCALinkTool" />
|
||||
|
||||
<Tool Name="VCXDCMakeTool" />
|
||||
|
||||
<Tool Name="VCBscMakeTool" />
|
||||
|
||||
<Tool Name="VCFxCopTool" />
|
||||
|
||||
<Tool Name="VCPostBuildEventTool" />
|
||||
|
||||
</Configuration>
|
||||
|
||||
<Configuration Name="Debug Multithreaded|Win32" OutputDirectory=".\..\..\..\objs\debug_mt" IntermediateDirectory=".\..\..\..\objs\debug_mt" ConfigurationType="4" InheritedPropertySheets="$(VCInstallDir)VCProjectDefaults\UpgradeFromVC71.vsprops" UseOfMFC="0" ATLMinimizesCRunTimeLibraryUsage="false" CharacterSet="2">
|
||||
|
||||
<Tool Name="VCPreBuildEventTool" />
|
||||
|
||||
<Tool Name="VCCustomBuildTool" />
|
||||
|
||||
<Tool Name="VCXMLDataGeneratorTool" />
|
||||
|
||||
<Tool Name="VCWebServiceProxyGeneratorTool" />
|
||||
|
||||
<Tool Name="VCMIDLTool" />
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="..\..\..\include" PreprocessorDefinitions="_DEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT_DEBUG_LEVEL_ERROR;FT_DEBUG_LEVEL_TRACE;FT2_BUILD_LIBRARY;_CRT_SECURE_NO_DEPRECATE" GeneratePreprocessedFile="0" BasicRuntimeChecks="3" RuntimeLibrary="1" DisableLanguageExtensions="true" PrecompiledHeaderFile=".\..\..\..\objs\debug_mt/freetype.pch" AssemblerListingLocation=".\..\..\..\objs\debug_mt/" ObjectFile=".\..\..\..\objs\debug_mt/" ProgramDataBaseFileName=".\..\..\..\objs\debug_mt/" WarningLevel="4" DebugInformationFormat="3" CompileAs="0" />
|
||||
|
||||
<Tool Name="VCManagedResourceCompilerTool" />
|
||||
|
||||
<Tool Name="VCResourceCompilerTool" PreprocessorDefinitions="_DEBUG" Culture="1033" />
|
||||
|
||||
<Tool Name="VCPreLinkEventTool" />
|
||||
|
||||
<Tool Name="VCLibrarianTool" OutputFile="..\..\..\objs\win32\vc2005\freetype250MT_D.lib" SuppressStartupBanner="true" />
|
||||
|
||||
<Tool Name="VCALinkTool" />
|
||||
|
||||
<Tool Name="VCXDCMakeTool" />
|
||||
|
||||
<Tool Name="VCBscMakeTool" />
|
||||
|
||||
<Tool Name="VCFxCopTool" />
|
||||
|
||||
<Tool Name="VCPostBuildEventTool" />
|
||||
|
||||
</Configuration>
|
||||
|
||||
</Configurations>
|
||||
|
||||
<References>
|
||||
|
||||
</References>
|
||||
|
||||
<Files>
|
||||
|
||||
<Filter Name="Source Files" Filter="cpp;c;cxx;rc;def;r;odl;idl;hpj;bat">
|
||||
|
||||
<File RelativePath="..\..\..\src\autofit\autofit.c">
|
||||
|
||||
</File>
|
||||
|
||||
<File RelativePath="..\..\..\src\bdf\bdf.c">
|
||||
|
||||
<FileConfiguration Name="Release|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
</File>
|
||||
|
||||
<File RelativePath="..\..\..\src\cff\cff.c">
|
||||
|
||||
<FileConfiguration Name="Release|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
</File>
|
||||
|
||||
<File RelativePath="..\..\..\src\base\ftbase.c">
|
||||
|
||||
<FileConfiguration Name="Release|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
</File>
|
||||
|
||||
<File RelativePath="..\..\..\src\base\ftbitmap.c">
|
||||
|
||||
</File>
|
||||
|
||||
<File RelativePath="..\..\..\src\cache\ftcache.c">
|
||||
|
||||
<FileConfiguration Name="Release|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
</File>
|
||||
|
||||
<File RelativePath="..\ftdebug.c">
|
||||
|
||||
<FileConfiguration Name="Release|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" DisableLanguageExtensions="false" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" DisableLanguageExtensions="false" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" DisableLanguageExtensions="false" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" DisableLanguageExtensions="false" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" DisableLanguageExtensions="false" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" DisableLanguageExtensions="false" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
</File>
|
||||
|
||||
<File RelativePath="..\..\..\src\base\ftfstype.c">
|
||||
|
||||
</File>
|
||||
|
||||
<File RelativePath="..\..\..\src\base\ftgasp.c">
|
||||
|
||||
</File>
|
||||
|
||||
<File RelativePath="..\..\..\src\base\ftglyph.c">
|
||||
|
||||
<FileConfiguration Name="Release|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
</File>
|
||||
|
||||
<File RelativePath="..\..\..\src\gzip\ftgzip.c">
|
||||
|
||||
<FileConfiguration Name="Release|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
</File>
|
||||
|
||||
<File RelativePath="..\..\..\src\base\ftinit.c">
|
||||
|
||||
<FileConfiguration Name="Release|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
</File>
|
||||
|
||||
<File RelativePath="..\..\..\src\lzw\ftlzw.c">
|
||||
|
||||
<FileConfiguration Name="Release|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
</File>
|
||||
|
||||
<File RelativePath="..\..\..\src\base\ftstroke.c">
|
||||
|
||||
</File>
|
||||
|
||||
<File RelativePath="..\..\..\src\base\ftsystem.c">
|
||||
|
||||
<FileConfiguration Name="Release|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Release Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="2" AdditionalIncludeDirectories="" PreprocessorDefinitions="" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Singlethreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
</FileConfiguration>
|
||||
|
||||
<FileConfiguration Name="Debug Multithreaded|Win32">
|
||||
|
||||
<Tool Name="VCCLCompilerTool" Optimization="0" AdditionalIncludeDirectories="" PreprocessorDefinitions="" BasicRuntimeChecks="3" />
|
||||
|
||||
@@ -1,31 +0,0 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 10.00
|
||||
|
||||
# Visual Studio 2008
|
||||
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "freetype", "freetype.vcproj", "{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}"
|
||||
|
||||
EndProject
|
||||
|
||||
Global
|
||||
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
|
||||
LIB Debug Multithreaded|Win32 = LIB Debug Multithreaded|Win32
|
||||
|
||||
LIB Debug Singlethreaded|Win32 = LIB Debug Singlethreaded|Win32
|
||||
|
||||
LIB Debug|Win32 = LIB Debug|Win32
|
||||
|
||||
LIB Release Multithreaded|Win32 = LIB Release Multithreaded|Win32
|
||||
|
||||
LIB Release Singlethreaded|Win32 = LIB Release Singlethreaded|Win32
|
||||
|
||||
LIB Release|Win32 = LIB Release|Win32
|
||||
|
||||
EndGlobalSection
|
||||
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
|
||||
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.LIB Debug Multithreaded|Win32.ActiveCfg = Debug Multithreaded|Win32
|
||||
|
||||
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.LIB Debug Multithreaded|Win32.Build.0 = Debug Multithreaded|Win32
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,32 +0,0 @@
|
||||
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
|
||||
# Visual Studio 2010
|
||||
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "freetype", "freetype.vcxproj", "{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}"
|
||||
|
||||
EndProject
|
||||
|
||||
Global
|
||||
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
|
||||
Debug Multithreaded|Win32 = Debug Multithreaded|Win32
|
||||
|
||||
Debug Singlethreaded|Win32 = Debug Singlethreaded|Win32
|
||||
|
||||
Debug|Win32 = Debug|Win32
|
||||
|
||||
Release Multithreaded|Win32 = Release Multithreaded|Win32
|
||||
|
||||
Release Singlethreaded|Win32 = Release Singlethreaded|Win32
|
||||
|
||||
Release|Win32 = Release|Win32
|
||||
|
||||
EndGlobalSection
|
||||
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
|
||||
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Multithreaded|Win32.ActiveCfg = Debug Multithreaded|Win32
|
||||
|
||||
@@ -1,832 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
|
||||
<ItemGroup Label="ProjectConfigurations">
|
||||
|
||||
<ProjectConfiguration Include="Debug Multithreaded|Win32">
|
||||
|
||||
<Configuration>Debug Multithreaded</Configuration>
|
||||
|
||||
<Platform>Win32</Platform>
|
||||
|
||||
</ProjectConfiguration>
|
||||
|
||||
<ProjectConfiguration Include="Debug Singlethreaded|Win32">
|
||||
|
||||
<Configuration>Debug Singlethreaded</Configuration>
|
||||
|
||||
<Platform>Win32</Platform>
|
||||
|
||||
</ProjectConfiguration>
|
||||
|
||||
<ProjectConfiguration Include="Debug|Win32">
|
||||
|
||||
<Configuration>Debug</Configuration>
|
||||
|
||||
<Platform>Win32</Platform>
|
||||
|
||||
</ProjectConfiguration>
|
||||
|
||||
<ProjectConfiguration Include="Release Multithreaded|Win32">
|
||||
|
||||
<Configuration>Release Multithreaded</Configuration>
|
||||
|
||||
<Platform>Win32</Platform>
|
||||
|
||||
</ProjectConfiguration>
|
||||
|
||||
<ProjectConfiguration Include="Release Singlethreaded|Win32">
|
||||
|
||||
<Configuration>Release Singlethreaded</Configuration>
|
||||
|
||||
<Platform>Win32</Platform>
|
||||
|
||||
</ProjectConfiguration>
|
||||
|
||||
<ProjectConfiguration Include="Release|Win32">
|
||||
|
||||
<Configuration>Release</Configuration>
|
||||
|
||||
<Platform>Win32</Platform>
|
||||
|
||||
</ProjectConfiguration>
|
||||
|
||||
</ItemGroup>
|
||||
|
||||
<PropertyGroup Label="Globals">
|
||||
|
||||
<ProjectGuid>{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}</ProjectGuid>
|
||||
|
||||
</PropertyGroup>
|
||||
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'" Label="Configuration">
|
||||
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'" Label="Configuration">
|
||||
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'" Label="Configuration">
|
||||
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'" Label="Configuration">
|
||||
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||
|
||||
<ConfigurationType>StaticLibrary</ConfigurationType>
|
||||
|
||||
<UseOfMfc>false</UseOfMfc>
|
||||
|
||||
<CharacterSet>MultiByte</CharacterSet>
|
||||
|
||||
</PropertyGroup>
|
||||
|
||||
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||
|
||||
<ImportGroup Label="ExtensionSettings">
|
||||
|
||||
</ImportGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
|
||||
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
|
||||
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\..\..\..\objs\win32\vc2010\</OutDir>
|
||||
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">.\..\..\..\objs\release\</IntDir>
|
||||
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">.\..\..\..\objs\win32\vc2010\</OutDir>
|
||||
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">.\..\..\..\objs\release_mt\</IntDir>
|
||||
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">.\..\..\..\objs\win32\vc2010\</OutDir>
|
||||
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">.\..\..\..\objs\release_st\</IntDir>
|
||||
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\..\..\..\objs\win32\vc2010\</OutDir>
|
||||
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">.\..\..\..\objs\debug\</IntDir>
|
||||
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">.\..\..\..\objs\win32\vc2010\</OutDir>
|
||||
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">.\..\..\..\objs\debug_st\</IntDir>
|
||||
|
||||
<OutDir Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">.\..\..\..\objs\win32\vc2010\</OutDir>
|
||||
|
||||
<IntDir Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">.\..\..\..\objs\debug_mt\</IntDir>
|
||||
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'" />
|
||||
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'" />
|
||||
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'" />
|
||||
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'" />
|
||||
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" />
|
||||
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'" />
|
||||
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'" />
|
||||
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'" />
|
||||
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'" />
|
||||
|
||||
<CodeAnalysisRuleSet Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">AllRules.ruleset</CodeAnalysisRuleSet>
|
||||
|
||||
<CodeAnalysisRules Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
|
||||
<CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" />
|
||||
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">freetype250_D</TargetName>
|
||||
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">freetype250MT_D</TargetName>
|
||||
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">freetype250ST_D</TargetName>
|
||||
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">freetype250</TargetName>
|
||||
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">freetype250MT</TargetName>
|
||||
|
||||
<TargetName Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">freetype250ST</TargetName>
|
||||
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||
|
||||
<ClCompile>
|
||||
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
|
||||
<AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions>NDEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT2_BUILD_LIBRARY;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
|
||||
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
|
||||
<DisableLanguageExtensions>true</DisableLanguageExtensions>
|
||||
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
|
||||
<DebugInformationFormat>
|
||||
|
||||
</DebugInformationFormat>
|
||||
|
||||
<CompileAs>Default</CompileAs>
|
||||
|
||||
<DisableSpecificWarnings>4001</DisableSpecificWarnings>
|
||||
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ResourceCompile>
|
||||
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Culture>0x0409</Culture>
|
||||
|
||||
</ResourceCompile>
|
||||
|
||||
<Lib>
|
||||
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
|
||||
</Lib>
|
||||
|
||||
</ItemDefinitionGroup>
|
||||
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">
|
||||
|
||||
<ClCompile>
|
||||
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
|
||||
<AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions>NDEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT2_BUILD_LIBRARY;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
|
||||
<DisableLanguageExtensions>true</DisableLanguageExtensions>
|
||||
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
|
||||
<DebugInformationFormat>
|
||||
|
||||
</DebugInformationFormat>
|
||||
|
||||
<CompileAs>Default</CompileAs>
|
||||
|
||||
<DisableSpecificWarnings>4001</DisableSpecificWarnings>
|
||||
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ResourceCompile>
|
||||
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Culture>0x0409</Culture>
|
||||
|
||||
</ResourceCompile>
|
||||
|
||||
<Lib>
|
||||
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
|
||||
</Lib>
|
||||
|
||||
</ItemDefinitionGroup>
|
||||
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">
|
||||
|
||||
<ClCompile>
|
||||
|
||||
<Optimization>MaxSpeed</Optimization>
|
||||
|
||||
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
|
||||
|
||||
<AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions>NDEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT2_BUILD_LIBRARY;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<StringPooling>true</StringPooling>
|
||||
|
||||
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>
|
||||
|
||||
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||
|
||||
<DisableLanguageExtensions>true</DisableLanguageExtensions>
|
||||
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
|
||||
<DebugInformationFormat>
|
||||
|
||||
</DebugInformationFormat>
|
||||
|
||||
<CompileAs>Default</CompileAs>
|
||||
|
||||
<DisableSpecificWarnings>4001</DisableSpecificWarnings>
|
||||
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ResourceCompile>
|
||||
|
||||
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Culture>0x0409</Culture>
|
||||
|
||||
</ResourceCompile>
|
||||
|
||||
<Lib />
|
||||
|
||||
</ItemDefinitionGroup>
|
||||
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||
|
||||
<ClCompile>
|
||||
|
||||
<Optimization>Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions>_DEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT_DEBUG_LEVEL_ERROR;FT_DEBUG_LEVEL_TRACE;FT2_BUILD_LIBRARY;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
|
||||
|
||||
<DisableLanguageExtensions>true</DisableLanguageExtensions>
|
||||
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
|
||||
<CompileAs>Default</CompileAs>
|
||||
|
||||
<DisableSpecificWarnings>4001</DisableSpecificWarnings>
|
||||
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ResourceCompile>
|
||||
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Culture>0x0409</Culture>
|
||||
|
||||
</ResourceCompile>
|
||||
|
||||
<Lib>
|
||||
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
|
||||
</Lib>
|
||||
|
||||
</ItemDefinitionGroup>
|
||||
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">
|
||||
|
||||
<ClCompile>
|
||||
|
||||
<Optimization>Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions>_DEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT_DEBUG_LEVEL_ERROR;FT_DEBUG_LEVEL_TRACE;FT2_BUILD_LIBRARY;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
|
||||
<DisableLanguageExtensions>true</DisableLanguageExtensions>
|
||||
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
|
||||
<CompileAs>Default</CompileAs>
|
||||
|
||||
<DisableSpecificWarnings>4001</DisableSpecificWarnings>
|
||||
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ResourceCompile>
|
||||
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Culture>0x0409</Culture>
|
||||
|
||||
</ResourceCompile>
|
||||
|
||||
<Lib>
|
||||
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
|
||||
</Lib>
|
||||
|
||||
</ItemDefinitionGroup>
|
||||
|
||||
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">
|
||||
|
||||
<ClCompile>
|
||||
|
||||
<Optimization>Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories>..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions>_DEBUG;WIN32;_LIB;_CRT_SECURE_NO_WARNINGS;FT_DEBUG_LEVEL_ERROR;FT_DEBUG_LEVEL_TRACE;FT2_BUILD_LIBRARY;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<PreprocessToFile>false</PreprocessToFile>
|
||||
|
||||
<PreprocessSuppressLineNumbers>false</PreprocessSuppressLineNumbers>
|
||||
|
||||
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary>
|
||||
|
||||
<DisableLanguageExtensions>true</DisableLanguageExtensions>
|
||||
|
||||
<WarningLevel>Level4</WarningLevel>
|
||||
|
||||
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
|
||||
|
||||
<CompileAs>Default</CompileAs>
|
||||
|
||||
<DisableSpecificWarnings>4001</DisableSpecificWarnings>
|
||||
|
||||
<MultiProcessorCompilation>true</MultiProcessorCompilation>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ResourceCompile>
|
||||
|
||||
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Culture>0x0409</Culture>
|
||||
|
||||
</ResourceCompile>
|
||||
|
||||
<Lib>
|
||||
|
||||
<SuppressStartupBanner>true</SuppressStartupBanner>
|
||||
|
||||
</Lib>
|
||||
|
||||
</ItemDefinitionGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
||||
<ClCompile Include="..\..\..\src\autofit\autofit.c" />
|
||||
|
||||
<ClCompile Include="..\..\..\src\bdf\bdf.c">
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\cff\cff.c">
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftbase.c">
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftbitmap.c" />
|
||||
|
||||
<ClCompile Include="..\..\..\src\cache\ftcache.c">
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\ftdebug.c">
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<DisableLanguageExtensions Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">false</DisableLanguageExtensions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<DisableLanguageExtensions Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">false</DisableLanguageExtensions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<DisableLanguageExtensions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</DisableLanguageExtensions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<DisableLanguageExtensions Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">false</DisableLanguageExtensions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<DisableLanguageExtensions Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">false</DisableLanguageExtensions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<DisableLanguageExtensions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</DisableLanguageExtensions>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftfstype.c" />
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftgasp.c" />
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftglyph.c">
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\gzip\ftgzip.c">
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug Multithreaded|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug Singlethreaded|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">Disabled</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<BasicRuntimeChecks Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">EnableFastChecks</BasicRuntimeChecks>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release Multithreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release Singlethreaded|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
<Optimization Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">MaxSpeed</Optimization>
|
||||
|
||||
<AdditionalIncludeDirectories Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
|
||||
|
||||
<PreprocessorDefinitions Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||
|
||||
@@ -1,155 +0,0 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
|
||||
<ItemGroup>
|
||||
|
||||
<Filter Include="Source Files">
|
||||
|
||||
<UniqueIdentifier>{b4c15893-ec11-491d-9507-0ac184f9cc78}</UniqueIdentifier>
|
||||
|
||||
<Extensions>cpp;c;cxx;rc;def;r;odl;idl;hpj;bat</Extensions>
|
||||
|
||||
</Filter>
|
||||
|
||||
<Filter Include="Source Files\FT_MODULES">
|
||||
|
||||
<UniqueIdentifier>{4d3e4eff-3fbc-4b20-b413-2743b23b7109}</UniqueIdentifier>
|
||||
|
||||
</Filter>
|
||||
|
||||
<Filter Include="Header Files">
|
||||
|
||||
<UniqueIdentifier>{e6cf6a0f-0404-4024-8bf8-ff5b29f35657}</UniqueIdentifier>
|
||||
|
||||
<Extensions>h;hpp;hxx;hm;inl</Extensions>
|
||||
|
||||
</Filter>
|
||||
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
|
||||
<ClCompile Include="..\..\..\src\autofit\autofit.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\bdf\bdf.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\cff\cff.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftbase.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftbitmap.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\cache\ftcache.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\ftdebug.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftfstype.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftgasp.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftglyph.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\gzip\ftgzip.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftinit.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\lzw\ftlzw.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftstroke.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftsystem.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\smooth\smooth.c">
|
||||
|
||||
<Filter>Source Files</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftbbox.c">
|
||||
|
||||
<Filter>Source Files\FT_MODULES</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftmm.c">
|
||||
|
||||
<Filter>Source Files\FT_MODULES</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftpfr.c">
|
||||
|
||||
<Filter>Source Files\FT_MODULES</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\ftsynth.c">
|
||||
|
||||
<Filter>Source Files\FT_MODULES</Filter>
|
||||
|
||||
</ClCompile>
|
||||
|
||||
<ClCompile Include="..\..\..\src\base\fttype1.c">
|
||||
|
||||
<Filter>Source Files\FT_MODULES</Filter>
|
||||
@@ -1,37 +0,0 @@
|
||||
<html>
|
||||
<header>
|
||||
<title>
|
||||
FreeType 2 Project Files for VS.NET 2010
|
||||
</title>
|
||||
|
||||
<body>
|
||||
<h1>
|
||||
FreeType 2 Project Files for VS.NET 2010
|
||||
</h1>
|
||||
|
||||
<p>This directory contains a project file for Visual C++, named
|
||||
<tt>freetype.vcxproj</tt>, and Visual Studio, called <tt>freetype.sln</tt>. It
|
||||
compiles the following libraries from the FreeType 2.5.0 sources:</p>
|
||||
|
||||
<ul>
|
||||
<pre>
|
||||
freetype250.lib - release build; single threaded
|
||||
freetype250_D.lib - debug build; single threaded
|
||||
freetype250MT.lib - release build; multi-threaded
|
||||
freetype250MT_D.lib - debug build; multi-threaded</pre>
|
||||
</ul>
|
||||
|
||||
<p>Be sure to extract the files with the Windows (CR+LF) line endings. ZIP
|
||||
archives are already stored this way, so no further action is required. If
|
||||
you use some <tt>.tar.*z</tt> archives, be sure to configure your extracting
|
||||
tool to convert the line endings. For example, with <a
|
||||
href="http://www.winzip.com">WinZip</a>, you should activate the <it>TAR
|
||||
file smart CR/LF Conversion</it> option. Alternatively, you may consider
|
||||
using the <tt>unix2dos</tt> or <tt>u2d</tt> utilities that are floating
|
||||
around, which specifically deal with this particular problem.
|
||||
|
||||
<p>Build directories are placed in the top-level <tt>objs</tt>
|
||||
directory.</p>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,400 +0,0 @@
|
||||
# Microsoft Developer Studio Project File - Name="freetype" - Package Owner=<4>
|
||||
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
|
||||
|
||||
# TARGTYPE "Win32 (x86) Static Library" 0x0104
|
||||
|
||||
|
||||
|
||||
CFG=freetype - Win32 Debug Singlethreaded
|
||||
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
|
||||
!MESSAGE
|
||||
|
||||
!MESSAGE NMAKE /f "freetype.mak".
|
||||
|
||||
!MESSAGE
|
||||
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
|
||||
!MESSAGE
|
||||
|
||||
!MESSAGE NMAKE /f "freetype.mak" CFG="freetype - Win32 Debug Singlethreaded"
|
||||
|
||||
!MESSAGE
|
||||
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
|
||||
!MESSAGE
|
||||
|
||||
!MESSAGE "freetype - Win32 Release" (based on "Win32 (x86) Static Library")
|
||||
|
||||
!MESSAGE "freetype - Win32 Debug" (based on "Win32 (x86) Static Library")
|
||||
|
||||
!MESSAGE "freetype - Win32 Debug Multithreaded" (based on "Win32 (x86) Static Library")
|
||||
|
||||
!MESSAGE "freetype - Win32 Release Multithreaded" (based on "Win32 (x86) Static Library")
|
||||
|
||||
!MESSAGE "freetype - Win32 Release Singlethreaded" (based on "Win32 (x86) Static Library")
|
||||
|
||||
!MESSAGE "freetype - Win32 Debug Singlethreaded" (based on "Win32 (x86) Static Library")
|
||||
|
||||
!MESSAGE
|
||||
|
||||
|
||||
|
||||
# Begin Project
|
||||
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
|
||||
# PROP Scc_ProjName ""
|
||||
|
||||
# PROP Scc_LocalPath ""
|
||||
|
||||
CPP=cl.exe
|
||||
|
||||
RSC=rc.exe
|
||||
|
||||
|
||||
|
||||
!IF "$(CFG)" == "freetype - Win32 Release"
|
||||
|
||||
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
|
||||
# PROP BASE Output_Dir "Release"
|
||||
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
|
||||
# PROP BASE Target_Dir ""
|
||||
|
||||
# PROP Use_MFC 0
|
||||
|
||||
# PROP Use_Debug_Libraries 0
|
||||
|
||||
# PROP Output_Dir "..\..\..\objs\release"
|
||||
|
||||
# PROP Intermediate_Dir "..\..\..\objs\release"
|
||||
|
||||
# PROP Target_Dir ""
|
||||
|
||||
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
|
||||
|
||||
# ADD CPP /MD /Za /W4 /GX /O2 /I "..\..\..\include" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /c
|
||||
|
||||
# SUBTRACT CPP /nologo /Z<none> /YX
|
||||
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
||||
BSC32=bscmake.exe
|
||||
|
||||
# ADD BASE BSC32 /nologo
|
||||
|
||||
# ADD BSC32 /nologo
|
||||
|
||||
LIB32=link.exe -lib
|
||||
|
||||
# ADD BASE LIB32 /nologo
|
||||
|
||||
# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250.lib"
|
||||
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "freetype - Win32 Debug"
|
||||
|
||||
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
|
||||
# PROP BASE Target_Dir ""
|
||||
|
||||
# PROP Use_MFC 0
|
||||
|
||||
# PROP Use_Debug_Libraries 1
|
||||
|
||||
# PROP Output_Dir "..\..\..\objs\debug"
|
||||
|
||||
# PROP Intermediate_Dir "..\..\..\objs\debug"
|
||||
|
||||
# PROP Target_Dir ""
|
||||
|
||||
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
|
||||
|
||||
# ADD CPP /MDd /Za /W4 /GX /Z7 /Od /I "..\..\..\include" /D "_DEBUG" /D "FT_DEBUG_LEVEL_ERROR" /D "FT_DEBUG_LEVEL_TRACE" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /GZ /c
|
||||
|
||||
# SUBTRACT CPP /nologo /X /YX
|
||||
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
|
||||
BSC32=bscmake.exe
|
||||
|
||||
# ADD BASE BSC32 /nologo
|
||||
|
||||
# ADD BSC32 /nologo
|
||||
|
||||
LIB32=link.exe -lib
|
||||
|
||||
# ADD BASE LIB32 /nologo
|
||||
|
||||
# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250_D.lib"
|
||||
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "freetype - Win32 Debug Multithreaded"
|
||||
|
||||
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
|
||||
# PROP BASE Output_Dir "freetype___Win32_Debug_Multithreaded"
|
||||
|
||||
# PROP BASE Intermediate_Dir "freetype___Win32_Debug_Multithreaded"
|
||||
|
||||
# PROP BASE Target_Dir ""
|
||||
|
||||
# PROP Use_MFC 0
|
||||
|
||||
# PROP Use_Debug_Libraries 1
|
||||
|
||||
# PROP Output_Dir "..\..\..\objs\debug_mt"
|
||||
|
||||
# PROP Intermediate_Dir "..\..\..\objs\debug_mt"
|
||||
|
||||
# PROP Target_Dir ""
|
||||
|
||||
# ADD BASE CPP /nologo /Za /W3 /Gm /GX /ZI /Od /I "..\freetype\include\\" /D "_DEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT_FLAT_COMPILE" /YX /FD /GZ /c
|
||||
|
||||
# SUBTRACT BASE CPP /X
|
||||
|
||||
# ADD CPP /MTd /Za /W4 /GX /Z7 /Od /I "..\..\..\include" /D "_DEBUG" /D "FT_DEBUG_LEVEL_ERROR" /D "FT_DEBUG_LEVEL_TRACE" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /GZ /c
|
||||
|
||||
# SUBTRACT CPP /nologo /X /YX
|
||||
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
|
||||
BSC32=bscmake.exe
|
||||
|
||||
# ADD BASE BSC32 /nologo
|
||||
|
||||
# ADD BSC32 /nologo
|
||||
|
||||
LIB32=link.exe -lib
|
||||
|
||||
# ADD BASE LIB32 /nologo /out:"lib\freetype250_D.lib"
|
||||
|
||||
# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250MT_D.lib"
|
||||
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "freetype - Win32 Release Multithreaded"
|
||||
|
||||
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
|
||||
# PROP BASE Output_Dir "freetype___Win32_Release_Multithreaded"
|
||||
|
||||
# PROP BASE Intermediate_Dir "freetype___Win32_Release_Multithreaded"
|
||||
|
||||
# PROP BASE Target_Dir ""
|
||||
|
||||
# PROP Use_MFC 0
|
||||
|
||||
# PROP Use_Debug_Libraries 0
|
||||
|
||||
# PROP Output_Dir "..\..\..\objs\release_mt"
|
||||
|
||||
# PROP Intermediate_Dir "..\..\..\objs\release_mt"
|
||||
|
||||
# PROP Target_Dir ""
|
||||
|
||||
# ADD BASE CPP /nologo /Za /W3 /GX /O2 /I "..\freetype\include\\" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT_FLAT_COMPILE" /YX /FD /c
|
||||
|
||||
# ADD CPP /MT /Za /W4 /GX /O2 /I "..\..\..\include" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /c
|
||||
|
||||
# SUBTRACT CPP /nologo /Z<none> /YX
|
||||
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
||||
BSC32=bscmake.exe
|
||||
|
||||
# ADD BASE BSC32 /nologo
|
||||
|
||||
# ADD BSC32 /nologo
|
||||
|
||||
LIB32=link.exe -lib
|
||||
|
||||
# ADD BASE LIB32 /nologo /out:"lib\freetype250.lib"
|
||||
|
||||
# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250MT.lib"
|
||||
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "freetype - Win32 Release Singlethreaded"
|
||||
|
||||
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
|
||||
# PROP BASE Output_Dir "freetype___Win32_Release_Singlethreaded"
|
||||
|
||||
# PROP BASE Intermediate_Dir "freetype___Win32_Release_Singlethreaded"
|
||||
|
||||
# PROP BASE Target_Dir ""
|
||||
|
||||
# PROP Use_MFC 0
|
||||
|
||||
# PROP Use_Debug_Libraries 0
|
||||
|
||||
# PROP Output_Dir "..\..\..\objs\release_st"
|
||||
|
||||
# PROP Intermediate_Dir "..\..\..\objs\release_st"
|
||||
|
||||
# PROP Target_Dir ""
|
||||
|
||||
# ADD BASE CPP /nologo /MD /Za /W4 /GX /Zi /O2 /I "..\..\..\include" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /FD /c
|
||||
|
||||
# SUBTRACT BASE CPP /YX
|
||||
|
||||
# ADD CPP /Za /W4 /GX /O2 /I "..\..\..\include" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /c
|
||||
|
||||
# SUBTRACT CPP /nologo /Z<none> /YX
|
||||
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
||||
BSC32=bscmake.exe
|
||||
|
||||
# ADD BASE BSC32 /nologo
|
||||
|
||||
# ADD BSC32 /nologo
|
||||
|
||||
LIB32=link.exe -lib
|
||||
|
||||
# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype250.lib"
|
||||
|
||||
# ADD LIB32 /out:"..\..\..\objs\freetype250ST.lib"
|
||||
|
||||
# SUBTRACT LIB32 /nologo
|
||||
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "freetype - Win32 Debug Singlethreaded"
|
||||
|
||||
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
|
||||
# PROP BASE Output_Dir "freetype___Win32_Debug_Singlethreaded"
|
||||
|
||||
# PROP BASE Intermediate_Dir "freetype___Win32_Debug_Singlethreaded"
|
||||
|
||||
# PROP BASE Target_Dir ""
|
||||
|
||||
# PROP Use_MFC 0
|
||||
|
||||
# PROP Use_Debug_Libraries 1
|
||||
|
||||
# PROP Output_Dir "..\..\..\objs\debug_st"
|
||||
|
||||
# PROP Intermediate_Dir "..\..\..\objs\debug_st"
|
||||
|
||||
# PROP Target_Dir ""
|
||||
|
||||
# ADD BASE CPP /nologo /MDd /Za /W4 /Gm /GX /Zi /Od /I "..\..\..\include" /D "_DEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT_DEBUG_LEVEL_ERROR" /D "FT_DEBUG_LEVEL_TRACE" /FD /GZ /c
|
||||
|
||||
# SUBTRACT BASE CPP /X /YX
|
||||
|
||||
# ADD CPP /Za /W4 /GX /Z7 /Od /I "..\..\..\include" /D "_DEBUG" /D "FT_DEBUG_LEVEL_ERROR" /D "FT_DEBUG_LEVEL_TRACE" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /GZ /c
|
||||
|
||||
# SUBTRACT CPP /nologo /X /YX
|
||||
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
|
||||
BSC32=bscmake.exe
|
||||
|
||||
# ADD BASE BSC32 /nologo
|
||||
|
||||
# ADD BSC32 /nologo
|
||||
|
||||
LIB32=link.exe -lib
|
||||
|
||||
# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype250_D.lib"
|
||||
|
||||
# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250ST_D.lib"
|
||||
|
||||
|
||||
|
||||
!ENDIF
|
||||
|
||||
|
||||
|
||||
# Begin Target
|
||||
|
||||
|
||||
|
||||
# Name "freetype - Win32 Release"
|
||||
|
||||
# Name "freetype - Win32 Debug"
|
||||
|
||||
# Name "freetype - Win32 Debug Multithreaded"
|
||||
|
||||
# Name "freetype - Win32 Release Multithreaded"
|
||||
|
||||
# Name "freetype - Win32 Release Singlethreaded"
|
||||
|
||||
# Name "freetype - Win32 Debug Singlethreaded"
|
||||
|
||||
# Begin Group "Source Files"
|
||||
|
||||
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
|
||||
# Begin Source File
|
||||
|
||||
|
||||
|
||||
SOURCE=..\..\..\src\autofit\autofit.c
|
||||
|
||||
# End Source File
|
||||
|
||||
# Begin Source File
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
Microsoft Developer Studio Workspace File, Format Version 6.00
|
||||
|
||||
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
|
||||
|
||||
|
||||
|
||||
###############################################################################
|
||||
|
||||
|
||||
|
||||
Project: "freetype"=.\freetype.dsp - Package Owner=<4>
|
||||
|
||||
|
||||
|
||||
Package=<5>
|
||||
|
||||
{{{
|
||||
|
||||
}}}
|
||||
|
||||
|
||||
|
||||
Package=<4>
|
||||
|
||||
{{{
|
||||
|
||||
}}}
|
||||
|
||||
|
||||
@@ -1,31 +0,0 @@
|
||||
Microsoft Visual Studio Solution File, Format Version 9.00
|
||||
|
||||
# Visual Studio 2005
|
||||
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "freetype", "freetype.vcproj", "{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}"
|
||||
|
||||
EndProject
|
||||
|
||||
Global
|
||||
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
|
||||
Debug Multithreaded|Win32 = Debug Multithreaded|Win32
|
||||
|
||||
Debug Singlethreaded|Win32 = Debug Singlethreaded|Win32
|
||||
|
||||
Debug|Win32 = Debug|Win32
|
||||
|
||||
Release Multithreaded|Win32 = Release Multithreaded|Win32
|
||||
|
||||
Release Singlethreaded|Win32 = Release Singlethreaded|Win32
|
||||
|
||||
Release|Win32 = Release|Win32
|
||||
|
||||
EndGlobalSection
|
||||
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
|
||||
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Multithreaded|Win32.ActiveCfg = Debug Multithreaded|Win32
|
||||
|
||||
{78B079BD-9FC7-4B9E-B4A6-96DA0F00248B}.Debug Multithreaded|Win32.Build.0 = Debug Multithreaded|Win32
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,400 +0,0 @@
|
||||
# Microsoft Developer Studio Project File - Name="freetype" - Package Owner=<4>
|
||||
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
|
||||
|
||||
# TARGTYPE "Win32 (x86) Static Library" 0x0104
|
||||
|
||||
|
||||
|
||||
CFG=freetype - Win32 Debug Singlethreaded
|
||||
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
|
||||
!MESSAGE
|
||||
|
||||
!MESSAGE NMAKE /f "freetype.mak".
|
||||
|
||||
!MESSAGE
|
||||
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
|
||||
!MESSAGE
|
||||
|
||||
!MESSAGE NMAKE /f "freetype.mak" CFG="freetype - Win32 Debug Singlethreaded"
|
||||
|
||||
!MESSAGE
|
||||
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
|
||||
!MESSAGE
|
||||
|
||||
!MESSAGE "freetype - Win32 Release" (based on "Win32 (x86) Static Library")
|
||||
|
||||
!MESSAGE "freetype - Win32 Debug" (based on "Win32 (x86) Static Library")
|
||||
|
||||
!MESSAGE "freetype - Win32 Debug Multithreaded" (based on "Win32 (x86) Static Library")
|
||||
|
||||
!MESSAGE "freetype - Win32 Release Multithreaded" (based on "Win32 (x86) Static Library")
|
||||
|
||||
!MESSAGE "freetype - Win32 Release Singlethreaded" (based on "Win32 (x86) Static Library")
|
||||
|
||||
!MESSAGE "freetype - Win32 Debug Singlethreaded" (based on "Win32 (x86) Static Library")
|
||||
|
||||
!MESSAGE
|
||||
|
||||
|
||||
|
||||
# Begin Project
|
||||
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
|
||||
# PROP Scc_ProjName ""
|
||||
|
||||
# PROP Scc_LocalPath ""
|
||||
|
||||
CPP=cl.exe
|
||||
|
||||
RSC=rc.exe
|
||||
|
||||
|
||||
|
||||
!IF "$(CFG)" == "freetype - Win32 Release"
|
||||
|
||||
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
|
||||
# PROP BASE Output_Dir "Release"
|
||||
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
|
||||
# PROP BASE Target_Dir ""
|
||||
|
||||
# PROP Use_MFC 0
|
||||
|
||||
# PROP Use_Debug_Libraries 0
|
||||
|
||||
# PROP Output_Dir "..\..\..\objs\release"
|
||||
|
||||
# PROP Intermediate_Dir "..\..\..\objs\release"
|
||||
|
||||
# PROP Target_Dir ""
|
||||
|
||||
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c
|
||||
|
||||
# ADD CPP /MD /Za /W4 /GX /O2 /I "..\..\..\include" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /c
|
||||
|
||||
# SUBTRACT CPP /nologo /Z<none> /YX
|
||||
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
||||
BSC32=bscmake.exe
|
||||
|
||||
# ADD BASE BSC32 /nologo
|
||||
|
||||
# ADD BSC32 /nologo
|
||||
|
||||
LIB32=link.exe -lib
|
||||
|
||||
# ADD BASE LIB32 /nologo
|
||||
|
||||
# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250.lib"
|
||||
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "freetype - Win32 Debug"
|
||||
|
||||
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
|
||||
# PROP BASE Target_Dir ""
|
||||
|
||||
# PROP Use_MFC 0
|
||||
|
||||
# PROP Use_Debug_Libraries 1
|
||||
|
||||
# PROP Output_Dir "..\..\..\objs\debug"
|
||||
|
||||
# PROP Intermediate_Dir "..\..\..\objs\debug"
|
||||
|
||||
# PROP Target_Dir ""
|
||||
|
||||
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c
|
||||
|
||||
# ADD CPP /MDd /Za /W4 /GX /Z7 /Od /I "..\..\..\include" /D "_DEBUG" /D "FT_DEBUG_LEVEL_ERROR" /D "FT_DEBUG_LEVEL_TRACE" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /GZ /c
|
||||
|
||||
# SUBTRACT CPP /nologo /X /YX
|
||||
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
|
||||
BSC32=bscmake.exe
|
||||
|
||||
# ADD BASE BSC32 /nologo
|
||||
|
||||
# ADD BSC32 /nologo
|
||||
|
||||
LIB32=link.exe -lib
|
||||
|
||||
# ADD BASE LIB32 /nologo
|
||||
|
||||
# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250_D.lib"
|
||||
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "freetype - Win32 Debug Multithreaded"
|
||||
|
||||
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
|
||||
# PROP BASE Output_Dir "freetype___Win32_Debug_Multithreaded"
|
||||
|
||||
# PROP BASE Intermediate_Dir "freetype___Win32_Debug_Multithreaded"
|
||||
|
||||
# PROP BASE Target_Dir ""
|
||||
|
||||
# PROP Use_MFC 0
|
||||
|
||||
# PROP Use_Debug_Libraries 1
|
||||
|
||||
# PROP Output_Dir "..\..\..\objs\debug_mt"
|
||||
|
||||
# PROP Intermediate_Dir "..\..\..\objs\debug_mt"
|
||||
|
||||
# PROP Target_Dir ""
|
||||
|
||||
# ADD BASE CPP /nologo /Za /W3 /Gm /GX /ZI /Od /I "..\freetype\include\\" /D "_DEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT_FLAT_COMPILE" /YX /FD /GZ /c
|
||||
|
||||
# SUBTRACT BASE CPP /X
|
||||
|
||||
# ADD CPP /MTd /Za /W4 /GX /Z7 /Od /I "..\..\..\include" /D "_DEBUG" /D "FT_DEBUG_LEVEL_ERROR" /D "FT_DEBUG_LEVEL_TRACE" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /GZ /c
|
||||
|
||||
# SUBTRACT CPP /nologo /X /YX
|
||||
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
|
||||
BSC32=bscmake.exe
|
||||
|
||||
# ADD BASE BSC32 /nologo
|
||||
|
||||
# ADD BSC32 /nologo
|
||||
|
||||
LIB32=link.exe -lib
|
||||
|
||||
# ADD BASE LIB32 /nologo /out:"lib\freetype250_D.lib"
|
||||
|
||||
# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250MT_D.lib"
|
||||
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "freetype - Win32 Release Multithreaded"
|
||||
|
||||
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
|
||||
# PROP BASE Output_Dir "freetype___Win32_Release_Multithreaded"
|
||||
|
||||
# PROP BASE Intermediate_Dir "freetype___Win32_Release_Multithreaded"
|
||||
|
||||
# PROP BASE Target_Dir ""
|
||||
|
||||
# PROP Use_MFC 0
|
||||
|
||||
# PROP Use_Debug_Libraries 0
|
||||
|
||||
# PROP Output_Dir "..\..\..\objs\release_mt"
|
||||
|
||||
# PROP Intermediate_Dir "..\..\..\objs\release_mt"
|
||||
|
||||
# PROP Target_Dir ""
|
||||
|
||||
# ADD BASE CPP /nologo /Za /W3 /GX /O2 /I "..\freetype\include\\" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT_FLAT_COMPILE" /YX /FD /c
|
||||
|
||||
# ADD CPP /MT /Za /W4 /GX /O2 /I "..\..\..\include" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /c
|
||||
|
||||
# SUBTRACT CPP /nologo /Z<none> /YX
|
||||
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
||||
BSC32=bscmake.exe
|
||||
|
||||
# ADD BASE BSC32 /nologo
|
||||
|
||||
# ADD BSC32 /nologo
|
||||
|
||||
LIB32=link.exe -lib
|
||||
|
||||
# ADD BASE LIB32 /nologo /out:"lib\freetype250.lib"
|
||||
|
||||
# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250MT.lib"
|
||||
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "freetype - Win32 Release Singlethreaded"
|
||||
|
||||
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
|
||||
# PROP BASE Output_Dir "freetype___Win32_Release_Singlethreaded"
|
||||
|
||||
# PROP BASE Intermediate_Dir "freetype___Win32_Release_Singlethreaded"
|
||||
|
||||
# PROP BASE Target_Dir ""
|
||||
|
||||
# PROP Use_MFC 0
|
||||
|
||||
# PROP Use_Debug_Libraries 0
|
||||
|
||||
# PROP Output_Dir "..\..\..\objs\release_st"
|
||||
|
||||
# PROP Intermediate_Dir "..\..\..\objs\release_st"
|
||||
|
||||
# PROP Target_Dir ""
|
||||
|
||||
# ADD BASE CPP /nologo /MD /Za /W4 /GX /Zi /O2 /I "..\..\..\include" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /FD /c
|
||||
|
||||
# SUBTRACT BASE CPP /YX
|
||||
|
||||
# ADD CPP /Za /W4 /GX /O2 /I "..\..\..\include" /D "NDEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /c
|
||||
|
||||
# SUBTRACT CPP /nologo /Z<none> /YX
|
||||
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
||||
BSC32=bscmake.exe
|
||||
|
||||
# ADD BASE BSC32 /nologo
|
||||
|
||||
# ADD BSC32 /nologo
|
||||
|
||||
LIB32=link.exe -lib
|
||||
|
||||
# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype250.lib"
|
||||
|
||||
# ADD LIB32 /out:"..\..\..\objs\freetype250ST.lib"
|
||||
|
||||
# SUBTRACT LIB32 /nologo
|
||||
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "freetype - Win32 Debug Singlethreaded"
|
||||
|
||||
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
|
||||
# PROP BASE Output_Dir "freetype___Win32_Debug_Singlethreaded"
|
||||
|
||||
# PROP BASE Intermediate_Dir "freetype___Win32_Debug_Singlethreaded"
|
||||
|
||||
# PROP BASE Target_Dir ""
|
||||
|
||||
# PROP Use_MFC 0
|
||||
|
||||
# PROP Use_Debug_Libraries 1
|
||||
|
||||
# PROP Output_Dir "..\..\..\objs\debug_st"
|
||||
|
||||
# PROP Intermediate_Dir "..\..\..\objs\debug_st"
|
||||
|
||||
# PROP Target_Dir ""
|
||||
|
||||
# ADD BASE CPP /nologo /MDd /Za /W4 /Gm /GX /Zi /Od /I "..\..\..\include" /D "_DEBUG" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT_DEBUG_LEVEL_ERROR" /D "FT_DEBUG_LEVEL_TRACE" /FD /GZ /c
|
||||
|
||||
# SUBTRACT BASE CPP /X /YX
|
||||
|
||||
# ADD CPP /Za /W4 /GX /Z7 /Od /I "..\..\..\include" /D "_DEBUG" /D "FT_DEBUG_LEVEL_ERROR" /D "FT_DEBUG_LEVEL_TRACE" /D "WIN32" /D "_MBCS" /D "_LIB" /D "FT2_BUILD_LIBRARY" /FD /GZ /c
|
||||
|
||||
# SUBTRACT CPP /nologo /X /YX
|
||||
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
|
||||
BSC32=bscmake.exe
|
||||
|
||||
# ADD BASE BSC32 /nologo
|
||||
|
||||
# ADD BSC32 /nologo
|
||||
|
||||
LIB32=link.exe -lib
|
||||
|
||||
# ADD BASE LIB32 /nologo /out:"..\..\..\objs\freetype250_D.lib"
|
||||
|
||||
# ADD LIB32 /nologo /out:"..\..\..\objs\freetype250ST_D.lib"
|
||||
|
||||
|
||||
|
||||
!ENDIF
|
||||
|
||||
|
||||
|
||||
# Begin Target
|
||||
|
||||
|
||||
|
||||
# Name "freetype - Win32 Release"
|
||||
|
||||
# Name "freetype - Win32 Debug"
|
||||
|
||||
# Name "freetype - Win32 Debug Multithreaded"
|
||||
|
||||
# Name "freetype - Win32 Release Multithreaded"
|
||||
|
||||
# Name "freetype - Win32 Release Singlethreaded"
|
||||
|
||||
# Name "freetype - Win32 Debug Singlethreaded"
|
||||
|
||||
# Begin Group "Source Files"
|
||||
|
||||
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
|
||||
# Begin Source File
|
||||
|
||||
|
||||
|
||||
SOURCE=..\..\..\src\autofit\autofit.c
|
||||
|
||||
# End Source File
|
||||
|
||||
# Begin Source File
|
||||
|
||||
@@ -1,29 +0,0 @@
|
||||
Microsoft Developer Studio Workspace File, Format Version 6.00
|
||||
|
||||
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
|
||||
|
||||
|
||||
|
||||
###############################################################################
|
||||
|
||||
|
||||
|
||||
Project: "freetype"=.\freetype.dsp - Package Owner=<4>
|
||||
|
||||
|
||||
|
||||
Package=<5>
|
||||
|
||||
{{{
|
||||
|
||||
}}}
|
||||
|
||||
|
||||
|
||||
Package=<4>
|
||||
|
||||
{{{
|
||||
|
||||
}}}
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,202 +0,0 @@
|
||||
Debugging within the FreeType sources
|
||||
=====================================
|
||||
|
||||
I. Configuration macros
|
||||
-----------------------
|
||||
|
||||
There are several ways to enable debugging features in a FreeType 2
|
||||
builds. This is controlled through the definition of special macros
|
||||
located in the file `ftoptions.h'. The macros are:
|
||||
|
||||
|
||||
FT_DEBUG_LEVEL_ERROR
|
||||
|
||||
#define this macro if you want to compile the FT_ERROR macro calls
|
||||
to print error messages during program execution. This will not
|
||||
stop the program. Very useful to spot invalid fonts during
|
||||
development and to code workarounds for them.
|
||||
|
||||
FT_DEBUG_LEVEL_TRACE
|
||||
|
||||
#define this macro if you want to compile both macros FT_ERROR and
|
||||
FT_TRACE. This also includes the variants FT_TRACE0, FT_TRACE1,
|
||||
FT_TRACE2, ..., FT_TRACE7.
|
||||
|
||||
The trace macros are used to send debugging messages when an
|
||||
appropriate `debug level' is configured at runtime through the
|
||||
FT2_DEBUG environment variable (more on this later).
|
||||
|
||||
FT_DEBUG_MEMORY
|
||||
|
||||
If this macro is #defined, the FreeType engine is linked with a
|
||||
small but effective debugging memory manager that tracks all
|
||||
allocations and frees that are performed within the font engine.
|
||||
|
||||
When the FT2_DEBUG_MEMORY environment variable is defined at
|
||||
runtime, a call to FT_Done_FreeType will dump memory statistics,
|
||||
including the list of leaked memory blocks with the source locations
|
||||
where these were allocated. It is always a very good idea to define
|
||||
this in development builds. This works with _any_ program linked to
|
||||
FreeType, but requires a big deal of memory (the debugging memory
|
||||
manager never frees the blocks to the heap in order to detect double
|
||||
frees).
|
||||
|
||||
When FT2_DEBUG_MEMORY isn't defined at runtime, the debugging memory
|
||||
manager is ignored, and performance is unaffected.
|
||||
|
||||
|
||||
II. Debugging macros
|
||||
--------------------
|
||||
|
||||
Several macros can be used within the FreeType sources to help debugging
|
||||
its code:
|
||||
|
||||
|
||||
1. FT_ERROR(( ... ))
|
||||
|
||||
This macro is used to send debug messages that indicate relatively
|
||||
serious errors (like broken font files), but will not stop the
|
||||
execution of the running program. Its code is compiled only when
|
||||
either FT_DEBUG_LEVEL_ERROR or FT_DEBUG_LEVEL_TRACE are defined in
|
||||
`ftoption.h'.
|
||||
|
||||
Note that you have to use a printf-like signature, but with double
|
||||
parentheses, like in
|
||||
|
||||
FT_ERROR(( "your %s is not %s\n", "foo", "bar" ));
|
||||
|
||||
|
||||
2. FT_ASSERT( condition )
|
||||
|
||||
This macro is used to check strong assertions at runtime. If its
|
||||
condition isn't TRUE, the program will abort with a panic message.
|
||||
Its code is compiled when either FT_DEBUG_LEVEL_ERROR or
|
||||
FT_DEBUG_LEVEL_TRACE are defined. You don't need double parentheses
|
||||
here. For example
|
||||
|
||||
FT_ASSERT( ptr != NULL );
|
||||
|
||||
|
||||
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
|
||||
being run.
|
||||
|
||||
The developer should always define FT_COMPONENT as appropriate, for
|
||||
example as in
|
||||
|
||||
#undef FT_COMPONENT
|
||||
#define FT_COMPONENT trace_io
|
||||
|
||||
The value of the FT_COMPONENT macro is an enumeration named
|
||||
trace_XXXX where XXXX is one of the component names defined in the
|
||||
internal file `freetype/internal/fttrace.h'. If you modify FreeType
|
||||
source and insert new trace_XXXX macro, you must register it in
|
||||
fttrace.h. If you insert or remove many trace macros, you can check
|
||||
the undefined or the unused trace macro by src/tools/chktrcmp.py.
|
||||
|
||||
Each such component is assigned a `debug level', ranging from 0
|
||||
to 7, through the use of the FT2_DEBUG environment variable
|
||||
(described below) when a program linked with FreeType starts.
|
||||
|
||||
When FT_TRACE is called, its level is compared to the one of the
|
||||
corresponding component. Messages with trace levels *higher* than
|
||||
the corresponding component level are filtered and never printed.
|
||||
|
||||
This means that trace messages with level 0 are always printed,
|
||||
those with level 2 are only printed when the component level is *at
|
||||
least* 2.
|
||||
|
||||
The second parameter to FT_TRACE must contain parentheses and
|
||||
correspond to a printf-like call, as in
|
||||
|
||||
FT_TRACE( 2, ( "your %s is not %s\n", "foo", "bar" ) )
|
||||
|
||||
The shortcut macros FT_TRACE0, FT_TRACE1, FT_TRACE2, ..., FT_TRACE7
|
||||
can be used with constant level indices, and are much cleaner to
|
||||
use, as in
|
||||
|
||||
FT_TRACE2(( "your %s is not %s\n", "foo", "bar" ));
|
||||
|
||||
|
||||
III. Environment variables
|
||||
--------------------------
|
||||
|
||||
The following environment variables control debugging output and
|
||||
behaviour of FreeType at runtime.
|
||||
|
||||
|
||||
FT2_DEBUG
|
||||
|
||||
This variable is only used when FreeType is built with
|
||||
FT_DEBUG_LEVEL_TRACE defined. It contains a list of component level
|
||||
definitions, following this format:
|
||||
|
||||
component1:level1 component2:level2 component3:level3 ...
|
||||
|
||||
where `componentX' is the name of a tracing component, as defined in
|
||||
`fttrace.h', but without the `trace_' prefix. `levelX' is the
|
||||
corresponding level to use at runtime.
|
||||
|
||||
`any' is a special component name that will be interpreted as
|
||||
`any/all components'. For example, the following definitions
|
||||
|
||||
set FT2_DEBUG=any:2 memory:5 io:4 (on Windows)
|
||||
export FT2_DEBUG="any:2 memory:5 io:4" (on Linux with bash)
|
||||
|
||||
both stipulate that all components should have level 2, except for
|
||||
the memory and io components which will be set to trace levels 5 and
|
||||
4, respectively.
|
||||
|
||||
|
||||
FT2_DEBUG_MEMORY
|
||||
|
||||
This environment variable, when defined, tells FreeType to use a
|
||||
debugging memory manager that will track leaking memory blocks as
|
||||
well as other common errors like double frees. It is also capable
|
||||
of reporting _where_ the leaking blocks were allocated, which
|
||||
considerably saves time when debugging new additions to the library.
|
||||
|
||||
This code is only compiled when FreeType is built with the
|
||||
FT_DEBUG_MEMORY macro #defined in `ftoption.h' though, it will be
|
||||
ignored in other builds.
|
||||
|
||||
|
||||
FT2_ALLOC_TOTAL_MAX
|
||||
|
||||
This variable is ignored if FT2_DEBUG_MEMORY is not defined. It
|
||||
allows you to specify a maximum heap size for all memory allocations
|
||||
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.
|
||||
|
||||
------------------------------------------------------------------------
|
||||
|
||||
Copyright 2002, 2003, 2004, 2005, 2009 by
|
||||
David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
|
||||
This file is part of the FreeType project, and may only be used,
|
||||
modified, and distributed under the terms of the FreeType project
|
||||
license, LICENSE.TXT. By continuing to use, modify, or distribute this
|
||||
file you indicate that you have read the license and understand and
|
||||
accept it fully.
|
||||
|
||||
|
||||
--- end of DEBUG ---
|
||||
@@ -1,135 +0,0 @@
|
||||
This document contains instructions on how to cross-build the FreeType
|
||||
library on Unix systems, for example, building binaries for Linux/MIPS
|
||||
on FreeBSD/i386. Before reading this document, please consult
|
||||
INSTALL.UNIX for required tools and the basic self-building procedure.
|
||||
|
||||
|
||||
1. Required Tools
|
||||
-----------------
|
||||
|
||||
For self-building the FreeType library on a Unix system, GNU Make
|
||||
3.80 or newer is required. INSTALL.UNIX contains hints how to
|
||||
check the installed `make'.
|
||||
|
||||
The GNU C compiler to cross-build the target system is required.
|
||||
At present, using non-GNU cross compiler is not tested. The cross
|
||||
compiler is expected to be installed with a system prefix. For
|
||||
example, if your building system is FreeBSD/i386 and the target
|
||||
system is Linux/MIPS, the cross compiler should be installed with
|
||||
the name `mips-ip22-linuxelf-gcc'.
|
||||
|
||||
A C compiler for a self-build is required also, to build a tool
|
||||
that is executed during the building procedure. Non-GNU self
|
||||
compilers are acceptable, but such a setup is not tested yet.
|
||||
|
||||
|
||||
2. Configuration
|
||||
----------------
|
||||
|
||||
2.1. Building and target system
|
||||
|
||||
To configure for cross-build, the options `--host=<system>' and
|
||||
`--build=<system>' must be passed to configure. For example, if
|
||||
your building system is FreeBSD/i386 and the target system is
|
||||
Linux/MIPS, say
|
||||
|
||||
./configure \
|
||||
--build=i386-unknown-freebsd \
|
||||
--host=mips-ip22-linuxelf \
|
||||
[other options]
|
||||
|
||||
It should be noted that `--host=<system>' specifies the system
|
||||
where the built binaries will be executed, not the system where
|
||||
the build actually happens. Older versions of GNU autoconf use
|
||||
the option pair `--host=' and `--target='. This is broken and
|
||||
doesn't work. Similarly, an explicit CC specification like
|
||||
|
||||
env CC=mips-ip22-linux-gcc ./configure # BAD
|
||||
|
||||
or
|
||||
|
||||
env CC=/usr/local/mips-ip22-linux/bin/gcc ./configure # BAD
|
||||
|
||||
doesn't work either; such a configuration confuses the
|
||||
`configure' script while trying to find the cross and native C
|
||||
compilers.
|
||||
|
||||
|
||||
2.2. The prefix to install FreeType2
|
||||
|
||||
Setting `--prefix=<prefix>' properly is important. The prefix
|
||||
to install FreeType2 is written into the freetype-config script
|
||||
and freetype2.pc configuration file.
|
||||
|
||||
If the built FreeType 2 library is used as a part of the
|
||||
cross-building system, the prefix is expected to be different
|
||||
from the self-building system. For example, configuration with
|
||||
`--prefix=/usr/local' installs binaries into the system wide
|
||||
`/usr/local' directory which then can't be executed. This
|
||||
causes confusion in configuration of all applications which use
|
||||
FreeType2. Instead, use a prefix to install the cross-build
|
||||
into a separate system tree, for example,
|
||||
`--prefix=/usr/local/mips-ip22-linux/'.
|
||||
|
||||
On the other hand, if the built FreeType2 is used as a part of
|
||||
the target system, the prefix to install should reflect the file
|
||||
system structure of the target system.
|
||||
|
||||
|
||||
3. Building command
|
||||
-------------------
|
||||
|
||||
If the configuration finishes successfully, invoking GNU make
|
||||
builds FreeType2. Just say
|
||||
|
||||
make
|
||||
|
||||
or
|
||||
|
||||
gmake
|
||||
|
||||
depending on the name the GNU make binary actually has.
|
||||
|
||||
|
||||
4. Installation
|
||||
---------------
|
||||
|
||||
Saying
|
||||
|
||||
make install
|
||||
|
||||
as usual to install FreeType2 into the directory tree specified by
|
||||
the argument of the `--prefix' option.
|
||||
|
||||
As noted in section 2.2, FreeType2 is sometimes configured to be
|
||||
installed into the system directory of the target system, and
|
||||
should not be installed in the cross-building system. In such
|
||||
cases, the make variable `DESTDIR' is useful to change the root
|
||||
directory in the installation. For example, after
|
||||
|
||||
make DESTDIR=/mnt/target_system_root/ install
|
||||
|
||||
the built FreeType2 library files are installed into the directory
|
||||
`/mnt/target_system_root/<prefix_in_configure>/lib'.
|
||||
|
||||
|
||||
5. TODO
|
||||
-------
|
||||
|
||||
Cross building between Cygwin (or MSys) and Unix must be tested.
|
||||
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
Copyright 2006, 2008, 2012 by suzuki toshiya
|
||||
David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
|
||||
|
||||
This file is part of the FreeType project, and may only be used,
|
||||
modified, and distributed under the terms of the FreeType project
|
||||
license, LICENSE.TXT. By continuing to use, modify, or distribute
|
||||
this file you indicate that you have read the license and understand
|
||||
and accept it fully.
|
||||
|
||||
|
||||
--- end of INSTALL.CROSS ---
|
||||
@@ -1,317 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
The auto-hinter
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#glyph-to-script-map">glyph-to-script-map</a></td><td></td><td><a href="#fallback-script">fallback-script</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_AUTOHINTER_SCRIPT_XXX">FT_AUTOHINTER_SCRIPT_XXX</a></td><td></td><td><a href="#increase-x-height">increase-x-height</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Prop_GlyphToScriptMap">FT_Prop_GlyphToScriptMap</a></td><td></td><td><a href="#FT_Prop_IncreaseXHeight">FT_Prop_IncreaseXHeight</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>While FreeType's auto-hinter doesn't expose API functions by itself, it is possible to control its behaviour with <a href="ft2-module_management.html#FT_Property_Set">FT_Property_Set</a> and <a href="ft2-module_management.html#FT_Property_Get">FT_Property_Get</a>. The following lists the available properties together with the necessary macros and structures.</p>
|
||||
<p>Note that the auto-hinter's module name is ‘autofitter’ for historical reasons.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="glyph-to-script-map">glyph-to-script-map</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p><b>Experimental</b> <b>only</b></p>
|
||||
<p>The auto-hinter provides various script modules to hint glyphs. Examples of supported scripts are Latin or CJK. Before a glyph is auto-hinted, the Unicode character map of the font gets examined, and the script is then determined based on Unicode character ranges, see below.</p>
|
||||
<p>OpenType fonts, however, often provide much more glyphs than character codes (small caps, superscripts, ligatures, swashes, etc.), to be controlled by so-called ‘features’. Handling OpenType features can be quite complicated and thus needs a separate library on top of FreeType.</p>
|
||||
<p>The mapping between glyph indices and scripts (in the auto-hinter sense, see the <a href="ft2-auto_hinter.html#FT_AUTOHINTER_SCRIPT_XXX">FT_AUTOHINTER_SCRIPT_XXX</a> values) is stored as an array with ‘num_glyphs’ elements, as found in the font's <a href="ft2-base_interface.html#FT_Face">FT_Face</a> structure. The ‘glyph-to-script-map’ property returns a pointer to this array which can be modified as needed. Note that the modification should happen before the first glyph gets processed by the auto-hinter so that the global analysis of the font shapes actually uses the modified mapping.</p>
|
||||
<p>The following example code demonstrates how to access it (omitting the error handling).</p>
|
||||
<pre class="colored">
|
||||
FT_Library library;
|
||||
FT_Face face;
|
||||
FT_Prop_GlyphToScriptMap prop;
|
||||
|
||||
|
||||
FT_Init_FreeType( &library );
|
||||
FT_New_Face( library, "foo.ttf", 0, &face );
|
||||
|
||||
prop.face = face;
|
||||
|
||||
FT_Property_Get( library, "autofitter",
|
||||
"glyph-to-script-map", &prop );
|
||||
|
||||
// adjust `prop.map' as needed right here
|
||||
|
||||
FT_Load_Glyph( face, ..., FT_LOAD_FORCE_AUTOHINT );
|
||||
</pre>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_AUTOHINTER_SCRIPT_XXX">FT_AUTOHINTER_SCRIPT_XXX</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_AUTOHINTER_H (freetype/ftautoh.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <a href="ft2-auto_hinter.html#FT_AUTOHINTER_SCRIPT_XXX">FT_AUTOHINTER_SCRIPT_NONE</a> 0
|
||||
#define <a href="ft2-auto_hinter.html#FT_AUTOHINTER_SCRIPT_XXX">FT_AUTOHINTER_SCRIPT_LATIN</a> 1
|
||||
#define <a href="ft2-auto_hinter.html#FT_AUTOHINTER_SCRIPT_XXX">FT_AUTOHINTER_SCRIPT_CJK</a> 2
|
||||
#define <a href="ft2-auto_hinter.html#FT_AUTOHINTER_SCRIPT_XXX">FT_AUTOHINTER_SCRIPT_INDIC</a> 3
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p><b>Experimental</b> <b>only</b></p>
|
||||
<p>A list of constants used for the <a href="ft2-auto_hinter.html#glyph-to-script-map">glyph-to-script-map</a> property to specify the script submodule the auto-hinter should use for hinting a particular glyph.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td colspan=0><b>FT_AUTOHINTER_SCRIPT_NONE</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Don't auto-hint this glyph.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_AUTOHINTER_SCRIPT_LATIN</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Apply the latin auto-hinter. For the auto-hinter, ‘latin’ is a very broad term, including Cyrillic and Greek also since characters from those scripts share the same design constraints.</p>
|
||||
<p>By default, characters from the following Unicode ranges are assigned to this submodule.</p>
|
||||
<pre class="colored">
|
||||
U+0020 - U+007F // Basic Latin (no control characters)
|
||||
U+00A0 - U+00FF // Latin-1 Supplement (no control characters)
|
||||
U+0100 - U+017F // Latin Extended-A
|
||||
U+0180 - U+024F // Latin Extended-B
|
||||
U+0250 - U+02AF // IPA Extensions
|
||||
U+02B0 - U+02FF // Spacing Modifier Letters
|
||||
U+0300 - U+036F // Combining Diacritical Marks
|
||||
U+0370 - U+03FF // Greek and Coptic
|
||||
U+0400 - U+04FF // Cyrillic
|
||||
U+0500 - U+052F // Cyrillic Supplement
|
||||
U+1D00 - U+1D7F // Phonetic Extensions
|
||||
U+1D80 - U+1DBF // Phonetic Extensions Supplement
|
||||
U+1DC0 - U+1DFF // Combining Diacritical Marks Supplement
|
||||
U+1E00 - U+1EFF // Latin Extended Additional
|
||||
U+1F00 - U+1FFF // Greek Extended
|
||||
U+2000 - U+206F // General Punctuation
|
||||
U+2070 - U+209F // Superscripts and Subscripts
|
||||
U+20A0 - U+20CF // Currency Symbols
|
||||
U+2150 - U+218F // Number Forms
|
||||
U+2460 - U+24FF // Enclosed Alphanumerics
|
||||
U+2C60 - U+2C7F // Latin Extended-C
|
||||
U+2DE0 - U+2DFF // Cyrillic Extended-A
|
||||
U+2E00 - U+2E7F // Supplemental Punctuation
|
||||
U+A640 - U+A69F // Cyrillic Extended-B
|
||||
U+A720 - U+A7FF // Latin Extended-D
|
||||
U+FB00 - U+FB06 // Alphab. Present. Forms (Latin Ligatures)
|
||||
U+1D400 - U+1D7FF // Mathematical Alphanumeric Symbols
|
||||
U+1F100 - U+1F1FF // Enclosed Alphanumeric Supplement
|
||||
</pre>
|
||||
<p></p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_AUTOHINTER_SCRIPT_CJK</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Apply the CJK auto-hinter, covering Chinese, Japanese, Korean, old Vietnamese, and some other scripts.</p>
|
||||
<p>By default, characters from the following Unicode ranges are assigned to this submodule.</p>
|
||||
<pre class="colored">
|
||||
U+1100 - U+11FF // Hangul Jamo
|
||||
U+2E80 - U+2EFF // CJK Radicals Supplement
|
||||
U+2F00 - U+2FDF // Kangxi Radicals
|
||||
U+2FF0 - U+2FFF // Ideographic Description Characters
|
||||
U+3000 - U+303F // CJK Symbols and Punctuation
|
||||
U+3040 - U+309F // Hiragana
|
||||
U+30A0 - U+30FF // Katakana
|
||||
U+3100 - U+312F // Bopomofo
|
||||
U+3130 - U+318F // Hangul Compatibility Jamo
|
||||
U+3190 - U+319F // Kanbun
|
||||
U+31A0 - U+31BF // Bopomofo Extended
|
||||
U+31C0 - U+31EF // CJK Strokes
|
||||
U+31F0 - U+31FF // Katakana Phonetic Extensions
|
||||
U+3200 - U+32FF // Enclosed CJK Letters and Months
|
||||
U+3300 - U+33FF // CJK Compatibility
|
||||
U+3400 - U+4DBF // CJK Unified Ideographs Extension A
|
||||
U+4DC0 - U+4DFF // Yijing Hexagram Symbols
|
||||
U+4E00 - U+9FFF // CJK Unified Ideographs
|
||||
U+A960 - U+A97F // Hangul Jamo Extended-A
|
||||
U+AC00 - U+D7AF // Hangul Syllables
|
||||
U+D7B0 - U+D7FF // Hangul Jamo Extended-B
|
||||
U+F900 - U+FAFF // CJK Compatibility Ideographs
|
||||
U+FE10 - U+FE1F // Vertical forms
|
||||
U+FE30 - U+FE4F // CJK Compatibility Forms
|
||||
U+FF00 - U+FFEF // Halfwidth and Fullwidth Forms
|
||||
U+1B000 - U+1B0FF // Kana Supplement
|
||||
U+1D300 - U+1D35F // Tai Xuan Hing Symbols
|
||||
U+1F200 - U+1F2FF // Enclosed Ideographic Supplement
|
||||
U+20000 - U+2A6DF // CJK Unified Ideographs Extension B
|
||||
U+2A700 - U+2B73F // CJK Unified Ideographs Extension C
|
||||
U+2B740 - U+2B81F // CJK Unified Ideographs Extension D
|
||||
U+2F800 - U+2FA1F // CJK Compatibility Ideographs Supplement
|
||||
</pre>
|
||||
<p></p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_AUTOHINTER_SCRIPT_INDIC</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Apply the indic auto-hinter, covering all major scripts from the Indian sub-continent and some other related scripts like Thai, Lao, or Tibetan.</p>
|
||||
<p>By default, characters from the following Unicode ranges are assigned to this submodule.</p>
|
||||
<pre class="colored">
|
||||
U+0900 - U+0DFF // Indic Range
|
||||
U+0F00 - U+0FFF // Tibetan
|
||||
U+1900 - U+194F // Limbu
|
||||
U+1B80 - U+1BBF // Sundanese
|
||||
U+1C80 - U+1CDF // Meetei Mayak
|
||||
U+A800 - U+A82F // Syloti Nagri
|
||||
U+11800 - U+118DF // Sharada
|
||||
</pre>
|
||||
<p>Note that currently Indic support is rudimentary only, missing blue zone support.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Prop_GlyphToScriptMap">FT_Prop_GlyphToScriptMap</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_AUTOHINTER_H (freetype/ftautoh.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_Prop_GlyphToScriptMap_
|
||||
{
|
||||
<a href="ft2-base_interface.html#FT_Face">FT_Face</a> face;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a>* map;
|
||||
|
||||
} <b>FT_Prop_GlyphToScriptMap</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p><b>Experimental</b> <b>only</b></p>
|
||||
<p>The data exchange structure for the <a href="ft2-auto_hinter.html#glyph-to-script-map">glyph-to-script-map</a> property.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="fallback-script">fallback-script</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p><b>Experimental</b> <b>only</b></p>
|
||||
<p>If no auto-hinter script module can be assigned to a glyph, a fallback script gets assigned to it (see also the <a href="ft2-auto_hinter.html#glyph-to-script-map">glyph-to-script-map</a> property). By default, this is <a href="ft2-auto_hinter.html#FT_AUTOHINTER_SCRIPT_XXX">FT_AUTOHINTER_SCRIPT_CJK</a>. Using the ‘fallback-script’ property, this fallback value can be changed.</p>
|
||||
<pre class="colored">
|
||||
FT_Library library;
|
||||
FT_UInt fallback_script = FT_AUTOHINTER_SCRIPT_NONE;
|
||||
|
||||
|
||||
FT_Init_FreeType( &library );
|
||||
|
||||
FT_Property_Set( library, "autofitter",
|
||||
"fallback-script", &fallback_script );
|
||||
</pre>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This property can be used with <a href="ft2-module_management.html#FT_Property_Get">FT_Property_Get</a> also.</p>
|
||||
<p>It's important to use the right timing for changing this value: The creation of the glyph-to-script map which eventually uses the fallback script value gets triggered either by setting or reading a face-specific property like <a href="ft2-auto_hinter.html#glyph-to-script-map">glyph-to-script-map</a>, or by auto-hinting any glyph from that face. In particular, if you have already created an <a href="ft2-base_interface.html#FT_Face">FT_Face</a> structure but not loaded any glyph (using the auto-hinter), a change of the fallback glyph will affect this face.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="increase-x-height">increase-x-height</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>For ppem values in the range 6 <= ppem <= ‘increase-x-height’, round up the font's x height much more often than normally. If the value is set to 0, which is the default, this feature is switched off. Use this property to improve the legibility of small font sizes if necessary.</p>
|
||||
<pre class="colored">
|
||||
FT_Library library;
|
||||
FT_Face face;
|
||||
FT_Prop_IncreaseXHeight prop;
|
||||
|
||||
|
||||
FT_Init_FreeType( &library );
|
||||
FT_New_Face( library, "foo.ttf", 0, &face );
|
||||
FT_Set_Char_Size( face, 10 * 64, 0, 72, 0 );
|
||||
|
||||
prop.face = face;
|
||||
prop.limit = 14;
|
||||
|
||||
FT_Property_Set( library, "autofitter",
|
||||
"increase-x-height", &prop );
|
||||
</pre>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This property can be used with <a href="ft2-module_management.html#FT_Property_Get">FT_Property_Get</a> also.</p>
|
||||
<p>Set this value right after calling <a href="ft2-base_interface.html#FT_Set_Char_Size">FT_Set_Char_Size</a>, but before loading any glyph (using the auto-hinter).</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Prop_IncreaseXHeight">FT_Prop_IncreaseXHeight</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_AUTOHINTER_H (freetype/ftautoh.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_Prop_IncreaseXHeight_
|
||||
{
|
||||
<a href="ft2-base_interface.html#FT_Face">FT_Face</a> face;
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> limit;
|
||||
|
||||
} <b>FT_Prop_IncreaseXHeight</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The data exchange structure for the <a href="ft2-auto_hinter.html#increase-x-height">increase-x-height</a> property.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,260 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
BDF and PCF Files
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_PropertyType">FT_PropertyType</a></td><td></td><td><a href="#BDF_PropertyRec">BDF_PropertyRec</a></td><td></td><td><a href="#FT_Get_BDF_Property">FT_Get_BDF_Property</a></td></tr>
|
||||
<tr><td></td><td><a href="#BDF_Property">BDF_Property</a></td><td></td><td><a href="#FT_Get_BDF_Charset_ID">FT_Get_BDF_Charset_ID</a></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains the declaration of functions specific to BDF and PCF fonts.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_PropertyType">FT_PropertyType</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_BDF_H (freetype/ftbdf.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">enum</span> BDF_PropertyType_
|
||||
{
|
||||
<a href="ft2-bdf_fonts.html#FT_PropertyType">BDF_PROPERTY_TYPE_NONE</a> = 0,
|
||||
<a href="ft2-bdf_fonts.html#FT_PropertyType">BDF_PROPERTY_TYPE_ATOM</a> = 1,
|
||||
<a href="ft2-bdf_fonts.html#FT_PropertyType">BDF_PROPERTY_TYPE_INTEGER</a> = 2,
|
||||
<a href="ft2-bdf_fonts.html#FT_PropertyType">BDF_PROPERTY_TYPE_CARDINAL</a> = 3
|
||||
|
||||
} BDF_PropertyType;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A list of BDF property types.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>BDF_PROPERTY_TYPE_NONE</b></td><td>
|
||||
<p>Value 0 is used to indicate a missing property.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>BDF_PROPERTY_TYPE_ATOM</b></td><td>
|
||||
<p>Property is a string atom.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>BDF_PROPERTY_TYPE_INTEGER</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Property is a 32-bit signed integer.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>BDF_PROPERTY_TYPE_CARDINAL</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Property is a 32-bit unsigned integer.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="BDF_Property">BDF_Property</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_BDF_H (freetype/ftbdf.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> BDF_PropertyRec_* <b>BDF_Property</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A handle to a <a href="ft2-bdf_fonts.html#BDF_PropertyRec">BDF_PropertyRec</a> structure to model a given BDF/PCF property.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="BDF_PropertyRec">BDF_PropertyRec</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_BDF_H (freetype/ftbdf.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> BDF_PropertyRec_
|
||||
{
|
||||
BDF_PropertyType type;
|
||||
<span class="keyword">union</span> {
|
||||
<span class="keyword">const</span> <span class="keyword">char</span>* atom;
|
||||
<a href="ft2-basic_types.html#FT_Int32">FT_Int32</a> integer;
|
||||
<a href="ft2-basic_types.html#FT_UInt32">FT_UInt32</a> cardinal;
|
||||
|
||||
} u;
|
||||
|
||||
} <b>BDF_PropertyRec</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This structure models a given BDF/PCF property.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>type</b></td><td>
|
||||
<p>The property type.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>u.atom</b></td><td>
|
||||
<p>The atom string, if type is <a href="ft2-bdf_fonts.html#FT_PropertyType">BDF_PROPERTY_TYPE_ATOM</a>.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>u.integer</b></td><td>
|
||||
<p>A signed integer, if type is <a href="ft2-bdf_fonts.html#FT_PropertyType">BDF_PROPERTY_TYPE_INTEGER</a>.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>u.cardinal</b></td><td>
|
||||
<p>An unsigned integer, if type is <a href="ft2-bdf_fonts.html#FT_PropertyType">BDF_PROPERTY_TYPE_CARDINAL</a>.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_BDF_Charset_ID">FT_Get_BDF_Charset_ID</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_BDF_H (freetype/ftbdf.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_BDF_Charset_ID</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<span class="keyword">const</span> <span class="keyword">char</span>* *acharset_encoding,
|
||||
<span class="keyword">const</span> <span class="keyword">char</span>* *acharset_registry );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve a BDF font character set identity, according to the BDF specification.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the input face.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>acharset_encoding</b></td><td>
|
||||
<p>Charset encoding, as a C string, owned by the face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>acharset_registry</b></td><td>
|
||||
<p>Charset registry, as a C string, owned by the face.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function only works with BDF faces, returning an error otherwise.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_BDF_Property">FT_Get_BDF_Property</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_BDF_H (freetype/ftbdf.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_BDF_Property</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<span class="keyword">const</span> <span class="keyword">char</span>* prop_name,
|
||||
<a href="ft2-bdf_fonts.html#BDF_PropertyRec">BDF_PropertyRec</a> *aproperty );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve a BDF property from a BDF or PCF font file.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the input face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>name</b></td><td>
|
||||
<p>The property name.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>aproperty</b></td><td>
|
||||
<p>The property.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function works with BDF <i>and</i> PCF fonts. It returns an error otherwise. It also returns an error if the property is not in the font.</p>
|
||||
<p>A ‘property’ is a either key-value pair within the STARTPROPERTIES ... ENDPROPERTIES block of a BDF font or a key-value pair from the ‘info->props’ array within a ‘FontRec’ structure of a PCF font.</p>
|
||||
<p>Integer properties are always stored as ‘signed’ within PCF fonts; consequently, <a href="ft2-bdf_fonts.html#FT_PropertyType">BDF_PROPERTY_TYPE_CARDINAL</a> is a possible return value for BDF fonts only.</p>
|
||||
<p>In case of error, ‘aproperty->type’ is always set to <a href="ft2-bdf_fonts.html#FT_PropertyType">BDF_PROPERTY_TYPE_NONE</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,302 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Bitmap Handling
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_Bitmap_New">FT_Bitmap_New</a></td><td></td><td><a href="#FT_Bitmap_Embolden">FT_Bitmap_Embolden</a></td><td></td><td><a href="#FT_GlyphSlot_Own_Bitmap">FT_GlyphSlot_Own_Bitmap</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Bitmap_Copy">FT_Bitmap_Copy</a></td><td></td><td><a href="#FT_Bitmap_Convert">FT_Bitmap_Convert</a></td><td></td><td><a href="#FT_Bitmap_Done">FT_Bitmap_Done</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains functions for converting FT_Bitmap objects.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Bitmap_New">FT_Bitmap_New</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_BITMAP_H (freetype/ftbitmap.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Bitmap_New</b>( <a href="ft2-basic_types.html#FT_Bitmap">FT_Bitmap</a> *abitmap );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Initialize a pointer to an <a href="ft2-basic_types.html#FT_Bitmap">FT_Bitmap</a> structure.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>abitmap</b></td><td>
|
||||
<p>A pointer to the bitmap structure.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Bitmap_Copy">FT_Bitmap_Copy</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_BITMAP_H (freetype/ftbitmap.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Bitmap_Copy</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<span class="keyword">const</span> <a href="ft2-basic_types.html#FT_Bitmap">FT_Bitmap</a> *source,
|
||||
<a href="ft2-basic_types.html#FT_Bitmap">FT_Bitmap</a> *target);
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Copy a bitmap into another one.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to a library object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>source</b></td><td>
|
||||
<p>A handle to the source bitmap.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>target</b></td><td>
|
||||
<p>A handle to the target bitmap.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Bitmap_Embolden">FT_Bitmap_Embolden</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_BITMAP_H (freetype/ftbitmap.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Bitmap_Embolden</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<a href="ft2-basic_types.html#FT_Bitmap">FT_Bitmap</a>* bitmap,
|
||||
<a href="ft2-basic_types.html#FT_Pos">FT_Pos</a> xStrength,
|
||||
<a href="ft2-basic_types.html#FT_Pos">FT_Pos</a> yStrength );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Embolden a bitmap. The new bitmap will be about ‘xStrength’ pixels wider and ‘yStrength’ pixels higher. The left and bottom borders are kept unchanged.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to a library object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>xStrength</b></td><td>
|
||||
<p>How strong the glyph is emboldened horizontally. Expressed in 26.6 pixel format.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>yStrength</b></td><td>
|
||||
<p>How strong the glyph is emboldened vertically. Expressed in 26.6 pixel format.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>bitmap</b></td><td>
|
||||
<p>A handle to the target bitmap.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The current implementation restricts ‘xStrength’ to be less than or equal to 8 if bitmap is of pixel_mode <a href="ft2-basic_types.html#FT_Pixel_Mode">FT_PIXEL_MODE_MONO</a>.</p>
|
||||
<p>If you want to embolden the bitmap owned by a <a href="ft2-base_interface.html#FT_GlyphSlotRec">FT_GlyphSlotRec</a>, you should call <a href="ft2-bitmap_handling.html#FT_GlyphSlot_Own_Bitmap">FT_GlyphSlot_Own_Bitmap</a> on the slot first.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Bitmap_Convert">FT_Bitmap_Convert</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_BITMAP_H (freetype/ftbitmap.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Bitmap_Convert</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<span class="keyword">const</span> <a href="ft2-basic_types.html#FT_Bitmap">FT_Bitmap</a> *source,
|
||||
<a href="ft2-basic_types.html#FT_Bitmap">FT_Bitmap</a> *target,
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> alignment );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Convert a bitmap object with depth 1bpp, 2bpp, 4bpp, 8bpp or 32bpp to a bitmap object with depth 8bpp, making the number of used bytes line (a.k.a. the ‘pitch’) a multiple of ‘alignment’.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to a library object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>source</b></td><td>
|
||||
<p>The source bitmap.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>alignment</b></td><td>
|
||||
<p>The pitch of the bitmap is a multiple of this parameter. Common values are 1, 2, or 4.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>target</b></td><td>
|
||||
<p>The target bitmap.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>It is possible to call <a href="ft2-bitmap_handling.html#FT_Bitmap_Convert">FT_Bitmap_Convert</a> multiple times without calling <a href="ft2-bitmap_handling.html#FT_Bitmap_Done">FT_Bitmap_Done</a> (the memory is simply reallocated).</p>
|
||||
<p>Use <a href="ft2-bitmap_handling.html#FT_Bitmap_Done">FT_Bitmap_Done</a> to finally remove the bitmap object.</p>
|
||||
<p>The ‘library’ argument is taken to have access to FreeType's memory handling functions.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_GlyphSlot_Own_Bitmap">FT_GlyphSlot_Own_Bitmap</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_BITMAP_H (freetype/ftbitmap.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_GlyphSlot_Own_Bitmap</b>( <a href="ft2-base_interface.html#FT_GlyphSlot">FT_GlyphSlot</a> slot );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Make sure that a glyph slot owns ‘slot->bitmap’.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>slot</b></td><td>
|
||||
<p>The glyph slot.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function is to be used in combination with <a href="ft2-bitmap_handling.html#FT_Bitmap_Embolden">FT_Bitmap_Embolden</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Bitmap_Done">FT_Bitmap_Done</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_BITMAP_H (freetype/ftbitmap.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Bitmap_Done</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<a href="ft2-basic_types.html#FT_Bitmap">FT_Bitmap</a> *bitmap );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Destroy a bitmap object created with <a href="ft2-bitmap_handling.html#FT_Bitmap_New">FT_Bitmap_New</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to a library object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>bitmap</b></td><td>
|
||||
<p>The bitmap object to be freed.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The ‘library’ argument is taken to have access to FreeType's memory handling functions.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,94 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
BZIP2 Streams
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_Stream_OpenBzip2">FT_Stream_OpenBzip2</a></td><td></td><td></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains the declaration of Bzip2-specific functions.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stream_OpenBzip2">FT_Stream_OpenBzip2</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_BZIP2_H (freetype/ftbzip2.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Stream_OpenBzip2</b>( <a href="ft2-system_interface.html#FT_Stream">FT_Stream</a> stream,
|
||||
<a href="ft2-system_interface.html#FT_Stream">FT_Stream</a> source );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Open a new stream to parse bzip2-compressed font files. This is mainly used to support the compressed ‘*.pcf.bz2’ fonts that come with XFree86.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stream</b></td><td>
|
||||
<p>The target embedding stream.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>source</b></td><td>
|
||||
<p>The source stream.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The source stream must be opened <i>before</i> calling this function.</p>
|
||||
<p>Calling the internal function ‘FT_Stream_Close’ on the new stream will <b>not</b> call ‘FT_Stream_Close’ on the source stream. None of the stream objects will be released to the heap.</p>
|
||||
<p>The stream implementation is very basic and resets the decompression process each time seeking backwards is needed within the stream.</p>
|
||||
<p>In certain builds of the library, bzip2 compression recognition is automatically handled when calling <a href="ft2-base_interface.html#FT_New_Face">FT_New_Face</a> or <a href="ft2-base_interface.html#FT_Open_Face">FT_Open_Face</a>. This means that if no font driver is capable of handling the raw compressed file, the library will try to open a bzip2 compressed stream from it and re-open the face with it.</p>
|
||||
<p>This function may return ‘FT_Err_Unimplemented_Feature’ if your build of FreeType was not compiled with bzip2 support.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,138 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
The CFF driver
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#hinting-engine">hinting-engine</a></td><td></td><td><a href="#FT_CFF_HINTING_XXX">FT_CFF_HINTING_XXX</a></td><td></td><td><a href="#no-stem-darkening">no-stem-darkening</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>While FreeType's CFF driver doesn't expose API functions by itself, it is possible to control its behaviour with <a href="ft2-module_management.html#FT_Property_Set">FT_Property_Set</a> and <a href="ft2-module_management.html#FT_Property_Get">FT_Property_Get</a>. The following lists the available properties together with the necessary macros and structures.</p>
|
||||
<p>The CFF driver's module name is ‘cff’.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="hinting-engine">hinting-engine</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Thanks to Adobe, which contributed a new hinting (and parsing) engine, an application can select between ‘freetype’ and ‘adobe’ if compiled with CFF_CONFIG_OPTION_OLD_ENGINE. If this configuration macro isn't defined, ‘hinting-engine’ does nothing.</p>
|
||||
<p>The default engine is ‘freetype’ if CFF_CONFIG_OPTION_OLD_ENGINE is defined, and ‘adobe’ otherwise.</p>
|
||||
<p>The following example code demonstrates how to select Adobe's hinting engine (omitting the error handling).</p>
|
||||
<pre class="colored">
|
||||
FT_Library library;
|
||||
FT_Face face;
|
||||
FT_UInt hinting_engine = FT_CFF_HINTING_ADOBE;
|
||||
|
||||
|
||||
FT_Init_FreeType( &library );
|
||||
|
||||
FT_Property_Set( library, "cff",
|
||||
"hinting-engine", &hinting_engine );
|
||||
</pre>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This property can be used with <a href="ft2-module_management.html#FT_Property_Get">FT_Property_Get</a> also.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_CFF_HINTING_XXX">FT_CFF_HINTING_XXX</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_CFF_DRIVER_H (freetype/ftcffdrv.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <a href="ft2-cff_driver.html#FT_CFF_HINTING_XXX">FT_CFF_HINTING_FREETYPE</a> 0
|
||||
#define <a href="ft2-cff_driver.html#FT_CFF_HINTING_XXX">FT_CFF_HINTING_ADOBE</a> 1
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A list of constants used for the <a href="ft2-cff_driver.html#hinting-engine">hinting-engine</a> property to select the hinting engine for CFF fonts.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td colspan=0><b>FT_CFF_HINTING_FREETYPE</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Use the old FreeType hinting engine.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_CFF_HINTING_ADOBE</b></td><td>
|
||||
<p>Use the hinting engine contributed by Adobe.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="no-stem-darkening">no-stem-darkening</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>By default, the Adobe CFF engine darkens stems at smaller sizes, regardless of hinting, to enhance contrast. Setting this property, stem darkening gets switched off.</p>
|
||||
<p>Note that stem darkening is never applied if <a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_NO_SCALE</a> is set.</p>
|
||||
<pre class="colored">
|
||||
FT_Library library;
|
||||
FT_Face face;
|
||||
FT_Bool no_stem_darkening = TRUE;
|
||||
|
||||
|
||||
FT_Init_FreeType( &library );
|
||||
|
||||
FT_Property_Set( library, "cff",
|
||||
"no-stem-darkening", &no_stem_darkening );
|
||||
</pre>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This property can be used with <a href="ft2-module_management.html#FT_Property_Get">FT_Property_Get</a> also.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,204 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
CID Fonts
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_Get_CID_Registry_Ordering_Supplement">FT_Get_CID_Registry_Ordering_Supplement</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Get_CID_Is_Internally_CID_Keyed">FT_Get_CID_Is_Internally_CID_Keyed</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Get_CID_From_Glyph_Index">FT_Get_CID_From_Glyph_Index</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains the declaration of CID-keyed font specific functions.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_CID_Registry_Ordering_Supplement">FT_Get_CID_Registry_Ordering_Supplement</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_CID_H (freetype/ftcid.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_CID_Registry_Ordering_Supplement</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<span class="keyword">const</span> <span class="keyword">char</span>* *registry,
|
||||
<span class="keyword">const</span> <span class="keyword">char</span>* *ordering,
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> *supplement);
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve the Registry/Ordering/Supplement triple (also known as the "R/O/S") from a CID-keyed font.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the input face.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>registry</b></td><td>
|
||||
<p>The registry, as a C string, owned by the face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>ordering</b></td><td>
|
||||
<p>The ordering, as a C string, owned by the face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>supplement</b></td><td>
|
||||
<p>The supplement.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function only works with CID faces, returning an error otherwise.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.3.6</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_CID_Is_Internally_CID_Keyed">FT_Get_CID_Is_Internally_CID_Keyed</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_CID_H (freetype/ftcid.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_CID_Is_Internally_CID_Keyed</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> *is_cid );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve the type of the input face, CID keyed or not. In constrast to the <a href="ft2-base_interface.html#FT_IS_CID_KEYED">FT_IS_CID_KEYED</a> macro this function returns successfully also for CID-keyed fonts in an SNFT wrapper.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the input face.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>is_cid</b></td><td>
|
||||
<p>The type of the face as an <a href="ft2-basic_types.html#FT_Bool">FT_Bool</a>.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function only works with CID faces and OpenType fonts, returning an error otherwise.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.3.9</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_CID_From_Glyph_Index">FT_Get_CID_From_Glyph_Index</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_CID_H (freetype/ftcid.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_CID_From_Glyph_Index</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> glyph_index,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> *cid );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve the CID of the input glyph index.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the input face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>glyph_index</b></td><td>
|
||||
<p>The input glyph index.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>cid</b></td><td>
|
||||
<p>The CID as an <a href="ft2-basic_types.html#FT_UInt">FT_UInt</a>.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function only works with CID faces and OpenType fonts, returning an error otherwise.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.3.9</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,832 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Computations
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_MulDiv">FT_MulDiv</a></td><td></td><td><a href="#FT_Matrix_Invert">FT_Matrix_Invert</a></td><td></td><td><a href="#FT_Tan">FT_Tan</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_MulFix">FT_MulFix</a></td><td></td><td><a href="#FT_Angle">FT_Angle</a></td><td></td><td><a href="#FT_Atan2">FT_Atan2</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_DivFix">FT_DivFix</a></td><td></td><td><a href="#FT_ANGLE_PI">FT_ANGLE_PI</a></td><td></td><td><a href="#FT_Angle_Diff">FT_Angle_Diff</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_RoundFix">FT_RoundFix</a></td><td></td><td><a href="#FT_ANGLE_2PI">FT_ANGLE_2PI</a></td><td></td><td><a href="#FT_Vector_Unit">FT_Vector_Unit</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_CeilFix">FT_CeilFix</a></td><td></td><td><a href="#FT_ANGLE_PI2">FT_ANGLE_PI2</a></td><td></td><td><a href="#FT_Vector_Rotate">FT_Vector_Rotate</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_FloorFix">FT_FloorFix</a></td><td></td><td><a href="#FT_ANGLE_PI4">FT_ANGLE_PI4</a></td><td></td><td><a href="#FT_Vector_Length">FT_Vector_Length</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Vector_Transform">FT_Vector_Transform</a></td><td></td><td><a href="#FT_Sin">FT_Sin</a></td><td></td><td><a href="#FT_Vector_Polarize">FT_Vector_Polarize</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Matrix_Multiply">FT_Matrix_Multiply</a></td><td></td><td><a href="#FT_Cos">FT_Cos</a></td><td></td><td><a href="#FT_Vector_From_Polar">FT_Vector_From_Polar</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains various functions used to perform computations on 16.16 fixed-float numbers or 2d vectors.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_MulDiv">FT_MulDiv</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Long">FT_Long</a> )
|
||||
<b>FT_MulDiv</b>( <a href="ft2-basic_types.html#FT_Long">FT_Long</a> a,
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a> b,
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a> c );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A very simple function used to perform the computation ‘(a*b)/c’ with maximum accuracy (it uses a 64-bit intermediate integer whenever necessary).</p>
|
||||
<p>This function isn't necessarily as fast as some processor specific operations, but is at least completely portable.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>a</b></td><td>
|
||||
<p>The first multiplier.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>b</b></td><td>
|
||||
<p>The second multiplier.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>c</b></td><td>
|
||||
<p>The divisor.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The result of ‘(a*b)/c’. This function never traps when trying to divide by zero; it simply returns ‘MaxInt’ or ‘MinInt’ depending on the signs of ‘a’ and ‘b’.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_MulFix">FT_MulFix</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Long">FT_Long</a> )
|
||||
<b>FT_MulFix</b>( <a href="ft2-basic_types.html#FT_Long">FT_Long</a> a,
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a> b );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A very simple function used to perform the computation ‘(a*b)/0x10000’ with maximum accuracy. Most of the time this is used to multiply a given value by a 16.16 fixed-point factor.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>a</b></td><td>
|
||||
<p>The first multiplier.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>b</b></td><td>
|
||||
<p>The second multiplier. Use a 16.16 factor here whenever possible (see note below).</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The result of ‘(a*b)/0x10000’.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function has been optimized for the case where the absolute value of ‘a’ is less than 2048, and ‘b’ is a 16.16 scaling factor. As this happens mainly when scaling from notional units to fractional pixels in FreeType, it resulted in noticeable speed improvements between versions 2.x and 1.x.</p>
|
||||
<p>As a conclusion, always try to place a 16.16 factor as the <i>second</i> argument of this function; this can make a great difference.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_DivFix">FT_DivFix</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Long">FT_Long</a> )
|
||||
<b>FT_DivFix</b>( <a href="ft2-basic_types.html#FT_Long">FT_Long</a> a,
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a> b );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A very simple function used to perform the computation ‘(a*0x10000)/b’ with maximum accuracy. Most of the time, this is used to divide a given value by a 16.16 fixed-point factor.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>a</b></td><td>
|
||||
<p>The first multiplier.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>b</b></td><td>
|
||||
<p>The second multiplier. Use a 16.16 factor here whenever possible (see note below).</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The result of ‘(a*0x10000)/b’.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The optimization for FT_DivFix() is simple: If (a << 16) fits in 32 bits, then the division is computed directly. Otherwise, we use a specialized version of <a href="ft2-computations.html#FT_MulDiv">FT_MulDiv</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_RoundFix">FT_RoundFix</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> )
|
||||
<b>FT_RoundFix</b>( <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> a );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A very simple function used to round a 16.16 fixed number.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>a</b></td><td>
|
||||
<p>The number to be rounded.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The result of ‘(a + 0x8000) & -0x10000’.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_CeilFix">FT_CeilFix</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> )
|
||||
<b>FT_CeilFix</b>( <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> a );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A very simple function used to compute the ceiling function of a 16.16 fixed number.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>a</b></td><td>
|
||||
<p>The number for which the ceiling function is to be computed.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The result of ‘(a + 0x10000 - 1) & -0x10000’.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_FloorFix">FT_FloorFix</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> )
|
||||
<b>FT_FloorFix</b>( <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> a );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A very simple function used to compute the floor function of a 16.16 fixed number.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>a</b></td><td>
|
||||
<p>The number for which the floor function is to be computed.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The result of ‘a & -0x10000’.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Vector_Transform">FT_Vector_Transform</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Vector_Transform</b>( <a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* vec,
|
||||
<span class="keyword">const</span> <a href="ft2-basic_types.html#FT_Matrix">FT_Matrix</a>* matrix );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Transform a single vector through a 2x2 matrix.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>vector</b></td><td>
|
||||
<p>The target vector to transform.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>matrix</b></td><td>
|
||||
<p>A pointer to the source 2x2 matrix.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The result is undefined if either ‘vector’ or ‘matrix’ is invalid.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Matrix_Multiply">FT_Matrix_Multiply</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Matrix_Multiply</b>( <span class="keyword">const</span> <a href="ft2-basic_types.html#FT_Matrix">FT_Matrix</a>* a,
|
||||
<a href="ft2-basic_types.html#FT_Matrix">FT_Matrix</a>* b );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Perform the matrix operation ‘b = a*b’.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>a</b></td><td>
|
||||
<p>A pointer to matrix ‘a’.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>b</b></td><td>
|
||||
<p>A pointer to matrix ‘b’.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The result is undefined if either ‘a’ or ‘b’ is zero.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Matrix_Invert">FT_Matrix_Invert</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Matrix_Invert</b>( <a href="ft2-basic_types.html#FT_Matrix">FT_Matrix</a>* matrix );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Invert a 2x2 matrix. Return an error if it can't be inverted.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>matrix</b></td><td>
|
||||
<p>A pointer to the target matrix. Remains untouched in case of error.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Angle">FT_Angle</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> <b>FT_Angle</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This type is used to model angle values in FreeType. Note that the angle is a 16.16 fixed-point value expressed in degrees.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_ANGLE_PI">FT_ANGLE_PI</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_ANGLE_PI</b> ( 180L << 16 )
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The angle pi expressed in <a href="ft2-computations.html#FT_Angle">FT_Angle</a> units.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_ANGLE_2PI">FT_ANGLE_2PI</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_ANGLE_2PI</b> ( <a href="ft2-computations.html#FT_ANGLE_PI">FT_ANGLE_PI</a> * 2 )
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The angle 2*pi expressed in <a href="ft2-computations.html#FT_Angle">FT_Angle</a> units.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_ANGLE_PI2">FT_ANGLE_PI2</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_ANGLE_PI2</b> ( <a href="ft2-computations.html#FT_ANGLE_PI">FT_ANGLE_PI</a> / 2 )
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The angle pi/2 expressed in <a href="ft2-computations.html#FT_Angle">FT_Angle</a> units.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_ANGLE_PI4">FT_ANGLE_PI4</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_ANGLE_PI4</b> ( <a href="ft2-computations.html#FT_ANGLE_PI">FT_ANGLE_PI</a> / 4 )
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The angle pi/4 expressed in <a href="ft2-computations.html#FT_Angle">FT_Angle</a> units.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Sin">FT_Sin</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> )
|
||||
<b>FT_Sin</b>( <a href="ft2-computations.html#FT_Angle">FT_Angle</a> angle );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return the sinus of a given angle in fixed-point format.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>angle</b></td><td>
|
||||
<p>The input angle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The sinus value.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>If you need both the sinus and cosinus for a given angle, use the function <a href="ft2-computations.html#FT_Vector_Unit">FT_Vector_Unit</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Cos">FT_Cos</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> )
|
||||
<b>FT_Cos</b>( <a href="ft2-computations.html#FT_Angle">FT_Angle</a> angle );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return the cosinus of a given angle in fixed-point format.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>angle</b></td><td>
|
||||
<p>The input angle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The cosinus value.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>If you need both the sinus and cosinus for a given angle, use the function <a href="ft2-computations.html#FT_Vector_Unit">FT_Vector_Unit</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Tan">FT_Tan</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> )
|
||||
<b>FT_Tan</b>( <a href="ft2-computations.html#FT_Angle">FT_Angle</a> angle );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return the tangent of a given angle in fixed-point format.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>angle</b></td><td>
|
||||
<p>The input angle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The tangent value.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Atan2">FT_Atan2</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-computations.html#FT_Angle">FT_Angle</a> )
|
||||
<b>FT_Atan2</b>( <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> x,
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> y );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return the arc-tangent corresponding to a given vector (x,y) in the 2d plane.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>x</b></td><td>
|
||||
<p>The horizontal vector coordinate.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>y</b></td><td>
|
||||
<p>The vertical vector coordinate.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The arc-tangent value (i.e. angle).</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Angle_Diff">FT_Angle_Diff</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-computations.html#FT_Angle">FT_Angle</a> )
|
||||
<b>FT_Angle_Diff</b>( <a href="ft2-computations.html#FT_Angle">FT_Angle</a> angle1,
|
||||
<a href="ft2-computations.html#FT_Angle">FT_Angle</a> angle2 );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return the difference between two angles. The result is always constrained to the ]-PI..PI] interval.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>angle1</b></td><td>
|
||||
<p>First angle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>angle2</b></td><td>
|
||||
<p>Second angle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>Constrained value of ‘value2-value1’.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Vector_Unit">FT_Vector_Unit</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Vector_Unit</b>( <a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* vec,
|
||||
<a href="ft2-computations.html#FT_Angle">FT_Angle</a> angle );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return the unit vector corresponding to a given angle. After the call, the value of ‘vec.x’ will be ‘sin(angle)’, and the value of ‘vec.y’ will be ‘cos(angle)’.</p>
|
||||
<p>This function is useful to retrieve both the sinus and cosinus of a given angle quickly.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>vec</b></td><td>
|
||||
<p>The address of target vector.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>angle</b></td><td>
|
||||
<p>The address of angle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Vector_Rotate">FT_Vector_Rotate</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Vector_Rotate</b>( <a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* vec,
|
||||
<a href="ft2-computations.html#FT_Angle">FT_Angle</a> angle );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Rotate a vector by a given angle.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>vec</b></td><td>
|
||||
<p>The address of target vector.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>angle</b></td><td>
|
||||
<p>The address of angle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Vector_Length">FT_Vector_Length</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> )
|
||||
<b>FT_Vector_Length</b>( <a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* vec );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return the length of a given vector.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>vec</b></td><td>
|
||||
<p>The address of target vector.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The vector length, expressed in the same units that the original vector coordinates.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Vector_Polarize">FT_Vector_Polarize</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Vector_Polarize</b>( <a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* vec,
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> *length,
|
||||
<a href="ft2-computations.html#FT_Angle">FT_Angle</a> *angle );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Compute both the length and angle of a given vector.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>vec</b></td><td>
|
||||
<p>The address of source vector.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>length</b></td><td>
|
||||
<p>The vector length.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>angle</b></td><td>
|
||||
<p>The vector angle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Vector_From_Polar">FT_Vector_From_Polar</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRIGONOMETRY_H (freetype/fttrigon.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Vector_From_Polar</b>( <a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* vec,
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> length,
|
||||
<a href="ft2-computations.html#FT_Angle">FT_Angle</a> angle );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Compute vector coordinates from a length and angle.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>vec</b></td><td>
|
||||
<p>The address of source vector.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>length</b></td><td>
|
||||
<p>The vector length.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>angle</b></td><td>
|
||||
<p>The vector angle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,84 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Font Formats
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_Get_X11_Font_Format">FT_Get_X11_Font_Format</a></td><td></td><td></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The single function in this section can be used to get the font format. Note that this information is not needed normally; however, there are special cases (like in PDF devices) where it is important to differentiate, in spite of FreeType's uniform API.</p>
|
||||
<p>This function is in the X11/xf86 namespace for historical reasons and in no way depends on that windowing system.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_X11_Font_Format">FT_Get_X11_Font_Format</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_XFREE86_H (freetype/ftxf86.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">const</span> <span class="keyword">char</span>* )
|
||||
<b>FT_Get_X11_Font_Format</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return a string describing the format of a given face, using values which can be used as an X11 FONT_PROPERTY. Possible values are ‘TrueType’, ‘Type 1’, ‘BDF’, ‘PCF’, ‘Type 42’, ‘CID Type 1’, ‘CFF’, ‘PFR’, and ‘Windows FNT’.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>Input face handle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>Font format string. NULL in case of error.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,142 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Gasp Table
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_GASP_XXX">FT_GASP_XXX</a></td><td></td><td><a href="#FT_Get_Gasp">FT_Get_Gasp</a></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The function <a href="ft2-gasp_table.html#FT_Get_Gasp">FT_Get_Gasp</a> can be used to query a TrueType or OpenType font for specific entries in its ‘gasp’ table, if any. This is mainly useful when implementing native TrueType hinting with the bytecode interpreter to duplicate the Windows text rendering results.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_GASP_XXX">FT_GASP_XXX</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GASP_H (freetype/ftgasp.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <a href="ft2-gasp_table.html#FT_GASP_XXX">FT_GASP_NO_TABLE</a> -1
|
||||
#define <a href="ft2-gasp_table.html#FT_GASP_XXX">FT_GASP_DO_GRIDFIT</a> 0x01
|
||||
#define <a href="ft2-gasp_table.html#FT_GASP_XXX">FT_GASP_DO_GRAY</a> 0x02
|
||||
#define <a href="ft2-gasp_table.html#FT_GASP_XXX">FT_GASP_SYMMETRIC_SMOOTHING</a> 0x08
|
||||
#define <a href="ft2-gasp_table.html#FT_GASP_XXX">FT_GASP_SYMMETRIC_GRIDFIT</a> 0x10
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A list of values and/or bit-flags returned by the <a href="ft2-gasp_table.html#FT_Get_Gasp">FT_Get_Gasp</a> function.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>FT_GASP_NO_TABLE</b></td><td>
|
||||
<p>This special value means that there is no GASP table in this face. It is up to the client to decide what to do.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_GASP_DO_GRIDFIT</b></td><td>
|
||||
<p>Grid-fitting and hinting should be performed at the specified ppem. This <b>really</b> means TrueType bytecode interpretation. If this bit is not set, no hinting gets applied.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_GASP_DO_GRAY</b></td><td>
|
||||
<p>Anti-aliased rendering should be performed at the specified ppem. If not set, do monochrome rendering.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_GASP_SYMMETRIC_SMOOTHING</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>If set, smoothing along multiple axes must be used with ClearType.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_GASP_SYMMETRIC_GRIDFIT</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Grid-fitting must be used with ClearType's symmetric smoothing.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The bit-flags ‘FT_GASP_DO_GRIDFIT’ and ‘FT_GASP_DO_GRAY’ are to be used for standard font rasterization only. Independently of that, ‘FT_GASP_SYMMETRIC_SMOOTHING’ and ‘FT_GASP_SYMMETRIC_GRIDFIT’ are to be used if ClearType is enabled (and ‘FT_GASP_DO_GRIDFIT’ and ‘FT_GASP_DO_GRAY’ are consequently ignored).</p>
|
||||
<p>‘ClearType’ is Microsoft's implementation of LCD rendering, partly protected by patents.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.3.0</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_Gasp">FT_Get_Gasp</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GASP_H (freetype/ftgasp.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Int">FT_Int</a> )
|
||||
<b>FT_Get_Gasp</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> ppem );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Read the ‘gasp’ table from a TrueType or OpenType font file and return the entry corresponding to a given character pixel size.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>The source face handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>ppem</b></td><td>
|
||||
<p>The vertical character pixel size.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>Bit flags (see <a href="ft2-gasp_table.html#FT_GASP_XXX">FT_GASP_XXX</a>), or <a href="ft2-gasp_table.html#FT_GASP_XXX">FT_GASP_NO_TABLE</a> if there is no ‘gasp’ table in the face.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.3.0</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,673 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Glyph Management
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_Glyph">FT_Glyph</a></td><td></td><td><a href="#FT_OutlineGlyphRec">FT_OutlineGlyphRec</a></td><td></td><td><a href="#ft_glyph_bbox_xxx">ft_glyph_bbox_xxx</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_GlyphRec">FT_GlyphRec</a></td><td></td><td><a href="#FT_Get_Glyph">FT_Get_Glyph</a></td><td></td><td><a href="#FT_Glyph_Get_CBox">FT_Glyph_Get_CBox</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_BitmapGlyph">FT_BitmapGlyph</a></td><td></td><td><a href="#FT_Glyph_Copy">FT_Glyph_Copy</a></td><td></td><td><a href="#FT_Glyph_To_Bitmap">FT_Glyph_To_Bitmap</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_BitmapGlyphRec">FT_BitmapGlyphRec</a></td><td></td><td><a href="#FT_Glyph_Transform">FT_Glyph_Transform</a></td><td></td><td><a href="#FT_Done_Glyph">FT_Done_Glyph</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_OutlineGlyph">FT_OutlineGlyph</a></td><td></td><td><a href="#FT_Glyph_BBox_Mode">FT_Glyph_BBox_Mode</a></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains definitions used to manage glyph data through generic FT_Glyph objects. Each of them can contain a bitmap, a vector outline, or even images in other formats.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Glyph">FT_Glyph</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_GlyphRec_* <b>FT_Glyph</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Handle to an object used to model generic glyph images. It is a pointer to the <a href="ft2-glyph_management.html#FT_GlyphRec">FT_GlyphRec</a> structure and can contain a glyph bitmap or pointer.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>Glyph objects are not owned by the library. You must thus release them manually (through <a href="ft2-glyph_management.html#FT_Done_Glyph">FT_Done_Glyph</a>) <i>before</i> calling <a href="ft2-base_interface.html#FT_Done_FreeType">FT_Done_FreeType</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_GlyphRec">FT_GlyphRec</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_GlyphRec_
|
||||
{
|
||||
<a href="ft2-base_interface.html#FT_Library">FT_Library</a> library;
|
||||
<span class="keyword">const</span> FT_Glyph_Class* clazz;
|
||||
<a href="ft2-basic_types.html#FT_Glyph_Format">FT_Glyph_Format</a> format;
|
||||
<a href="ft2-basic_types.html#FT_Vector">FT_Vector</a> advance;
|
||||
|
||||
} <b>FT_GlyphRec</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The root glyph structure contains a given glyph image plus its advance width in 16.16 fixed-point format.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to the FreeType library object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>clazz</b></td><td>
|
||||
<p>A pointer to the glyph's class. Private.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>format</b></td><td>
|
||||
<p>The format of the glyph's image.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>advance</b></td><td>
|
||||
<p>A 16.16 vector that gives the glyph's advance width.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_BitmapGlyph">FT_BitmapGlyph</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_BitmapGlyphRec_* <b>FT_BitmapGlyph</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A handle to an object used to model a bitmap glyph image. This is a sub-class of <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a>, and a pointer to <a href="ft2-glyph_management.html#FT_BitmapGlyphRec">FT_BitmapGlyphRec</a>.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_BitmapGlyphRec">FT_BitmapGlyphRec</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_BitmapGlyphRec_
|
||||
{
|
||||
<a href="ft2-glyph_management.html#FT_GlyphRec">FT_GlyphRec</a> root;
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> left;
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> top;
|
||||
<a href="ft2-basic_types.html#FT_Bitmap">FT_Bitmap</a> bitmap;
|
||||
|
||||
} <b>FT_BitmapGlyphRec</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used for bitmap glyph images. This really is a ‘sub-class’ of <a href="ft2-glyph_management.html#FT_GlyphRec">FT_GlyphRec</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>root</b></td><td>
|
||||
<p>The root <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> fields.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>left</b></td><td>
|
||||
<p>The left-side bearing, i.e., the horizontal distance from the current pen position to the left border of the glyph bitmap.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>top</b></td><td>
|
||||
<p>The top-side bearing, i.e., the vertical distance from the current pen position to the top border of the glyph bitmap. This distance is positive for upwards y!</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>bitmap</b></td><td>
|
||||
<p>A descriptor for the bitmap.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>You can typecast an <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> to <a href="ft2-glyph_management.html#FT_BitmapGlyph">FT_BitmapGlyph</a> if you have ‘glyph->format == FT_GLYPH_FORMAT_BITMAP’. This lets you access the bitmap's contents easily.</p>
|
||||
<p>The corresponding pixel buffer is always owned by <a href="ft2-glyph_management.html#FT_BitmapGlyph">FT_BitmapGlyph</a> and is thus created and destroyed with it.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_OutlineGlyph">FT_OutlineGlyph</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_OutlineGlyphRec_* <b>FT_OutlineGlyph</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A handle to an object used to model an outline glyph image. This is a sub-class of <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a>, and a pointer to <a href="ft2-glyph_management.html#FT_OutlineGlyphRec">FT_OutlineGlyphRec</a>.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_OutlineGlyphRec">FT_OutlineGlyphRec</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_OutlineGlyphRec_
|
||||
{
|
||||
<a href="ft2-glyph_management.html#FT_GlyphRec">FT_GlyphRec</a> root;
|
||||
<a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a> outline;
|
||||
|
||||
} <b>FT_OutlineGlyphRec</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used for outline (vectorial) glyph images. This really is a ‘sub-class’ of <a href="ft2-glyph_management.html#FT_GlyphRec">FT_GlyphRec</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>root</b></td><td>
|
||||
<p>The root <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> fields.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>outline</b></td><td>
|
||||
<p>A descriptor for the outline.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>You can typecast an <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> to <a href="ft2-glyph_management.html#FT_OutlineGlyph">FT_OutlineGlyph</a> if you have ‘glyph->format == FT_GLYPH_FORMAT_OUTLINE’. This lets you access the outline's content easily.</p>
|
||||
<p>As the outline is extracted from a glyph slot, its coordinates are expressed normally in 26.6 pixels, unless the flag <a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_NO_SCALE</a> was used in <a href="ft2-base_interface.html#FT_Load_Glyph">FT_Load_Glyph</a>() or <a href="ft2-base_interface.html#FT_Load_Char">FT_Load_Char</a>().</p>
|
||||
<p>The outline's tables are always owned by the object and are destroyed with it.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_Glyph">FT_Get_Glyph</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_Glyph</b>( <a href="ft2-base_interface.html#FT_GlyphSlot">FT_GlyphSlot</a> slot,
|
||||
<a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> *aglyph );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A function used to extract a glyph image from a slot. Note that the created <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> object must be released with <a href="ft2-glyph_management.html#FT_Done_Glyph">FT_Done_Glyph</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>slot</b></td><td>
|
||||
<p>A handle to the source glyph slot.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>aglyph</b></td><td>
|
||||
<p>A handle to the glyph object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Glyph_Copy">FT_Glyph_Copy</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Glyph_Copy</b>( <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> source,
|
||||
<a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> *target );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A function used to copy a glyph image. Note that the created <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> object must be released with <a href="ft2-glyph_management.html#FT_Done_Glyph">FT_Done_Glyph</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>source</b></td><td>
|
||||
<p>A handle to the source glyph object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>target</b></td><td>
|
||||
<p>A handle to the target glyph object. 0 in case of error.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Glyph_Transform">FT_Glyph_Transform</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Glyph_Transform</b>( <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> glyph,
|
||||
<a href="ft2-basic_types.html#FT_Matrix">FT_Matrix</a>* matrix,
|
||||
<a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* delta );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Transform a glyph image if its format is scalable.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>glyph</b></td><td>
|
||||
<p>A handle to the target glyph object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>matrix</b></td><td>
|
||||
<p>A pointer to a 2x2 matrix to apply.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>delta</b></td><td>
|
||||
<p>A pointer to a 2d vector to apply. Coordinates are expressed in 1/64th of a pixel.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code (if not 0, the glyph format is not scalable).</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The 2x2 transformation matrix is also applied to the glyph's advance vector.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Glyph_BBox_Mode">FT_Glyph_BBox_Mode</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">enum</span> FT_Glyph_BBox_Mode_
|
||||
{
|
||||
<a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_UNSCALED</a> = 0,
|
||||
<a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_SUBPIXELS</a> = 0,
|
||||
<a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_GRIDFIT</a> = 1,
|
||||
<a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_TRUNCATE</a> = 2,
|
||||
<a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_PIXELS</a> = 3
|
||||
|
||||
} <b>FT_Glyph_BBox_Mode</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The mode how the values of <a href="ft2-glyph_management.html#FT_Glyph_Get_CBox">FT_Glyph_Get_CBox</a> are returned.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>FT_GLYPH_BBOX_UNSCALED</b></td><td>
|
||||
<p>Return unscaled font units.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_GLYPH_BBOX_SUBPIXELS</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Return unfitted 26.6 coordinates.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_GLYPH_BBOX_GRIDFIT</b></td><td>
|
||||
<p>Return grid-fitted 26.6 coordinates.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_GLYPH_BBOX_TRUNCATE</b></td><td>
|
||||
<p>Return coordinates in integer pixels.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_GLYPH_BBOX_PIXELS</b></td><td>
|
||||
<p>Return grid-fitted pixel coordinates.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="ft_glyph_bbox_xxx">ft_glyph_bbox_xxx</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <a href="ft2-glyph_management.html#ft_glyph_bbox_xxx">ft_glyph_bbox_unscaled</a> <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_UNSCALED</a>
|
||||
#define <a href="ft2-glyph_management.html#ft_glyph_bbox_xxx">ft_glyph_bbox_subpixels</a> <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_SUBPIXELS</a>
|
||||
#define <a href="ft2-glyph_management.html#ft_glyph_bbox_xxx">ft_glyph_bbox_gridfit</a> <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_GRIDFIT</a>
|
||||
#define <a href="ft2-glyph_management.html#ft_glyph_bbox_xxx">ft_glyph_bbox_truncate</a> <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_TRUNCATE</a>
|
||||
#define <a href="ft2-glyph_management.html#ft_glyph_bbox_xxx">ft_glyph_bbox_pixels</a> <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_PIXELS</a>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>These constants are deprecated. Use the corresponding <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_Glyph_BBox_Mode</a> values instead.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>ft_glyph_bbox_unscaled</b></td><td>
|
||||
<p>See <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_UNSCALED</a>.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>ft_glyph_bbox_subpixels</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>See <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_SUBPIXELS</a>.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>ft_glyph_bbox_gridfit</b></td><td>
|
||||
<p>See <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_GRIDFIT</a>.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>ft_glyph_bbox_truncate</b></td><td>
|
||||
<p>See <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_TRUNCATE</a>.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>ft_glyph_bbox_pixels</b></td><td>
|
||||
<p>See <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_PIXELS</a>.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Glyph_Get_CBox">FT_Glyph_Get_CBox</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Glyph_Get_CBox</b>( <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> glyph,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> bbox_mode,
|
||||
<a href="ft2-basic_types.html#FT_BBox">FT_BBox</a> *acbox );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return a glyph's ‘control box’. The control box encloses all the outline's points, including Bézier control points. Though it coincides with the exact bounding box for most glyphs, it can be slightly larger in some situations (like when rotating an outline which contains Bézier outside arcs).</p>
|
||||
<p>Computing the control box is very fast, while getting the bounding box can take much more time as it needs to walk over all segments and arcs in the outline. To get the latter, you can use the ‘ftbbox’ component which is dedicated to this single task.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>glyph</b></td><td>
|
||||
<p>A handle to the source glyph object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>mode</b></td><td>
|
||||
<p>The mode which indicates how to interpret the returned bounding box values.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>acbox</b></td><td>
|
||||
<p>The glyph coordinate bounding box. Coordinates are expressed in 1/64th of pixels if it is grid-fitted.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>Coordinates are relative to the glyph origin, using the y upwards convention.</p>
|
||||
<p>If the glyph has been loaded with <a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_NO_SCALE</a>, ‘bbox_mode’ must be set to <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_UNSCALED</a> to get unscaled font units in 26.6 pixel format. The value <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_SUBPIXELS</a> is another name for this constant.</p>
|
||||
<p>If the font is tricky and the glyph has been loaded with <a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_NO_SCALE</a>, the resulting CBox is meaningless. To get reasonable values for the CBox it is necessary to load the glyph at a large ppem value (so that the hinting instructions can properly shift and scale the subglyphs), then extracting the CBox which can be eventually converted back to font units.</p>
|
||||
<p>Note that the maximum coordinates are exclusive, which means that one can compute the width and height of the glyph image (be it in integer or 26.6 pixels) as:</p>
|
||||
<pre class="colored">
|
||||
width = bbox.xMax - bbox.xMin;
|
||||
height = bbox.yMax - bbox.yMin;
|
||||
</pre>
|
||||
<p>Note also that for 26.6 coordinates, if ‘bbox_mode’ is set to <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_GRIDFIT</a>, the coordinates will also be grid-fitted, which corresponds to:</p>
|
||||
<pre class="colored">
|
||||
bbox.xMin = FLOOR(bbox.xMin);
|
||||
bbox.yMin = FLOOR(bbox.yMin);
|
||||
bbox.xMax = CEILING(bbox.xMax);
|
||||
bbox.yMax = CEILING(bbox.yMax);
|
||||
</pre>
|
||||
<p>To get the bbox in pixel coordinates, set ‘bbox_mode’ to <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_TRUNCATE</a>.</p>
|
||||
<p>To get the bbox in grid-fitted pixel coordinates, set ‘bbox_mode’ to <a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_PIXELS</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Glyph_To_Bitmap">FT_Glyph_To_Bitmap</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Glyph_To_Bitmap</b>( <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a>* the_glyph,
|
||||
<a href="ft2-base_interface.html#FT_Render_Mode">FT_Render_Mode</a> render_mode,
|
||||
<a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* origin,
|
||||
<a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> destroy );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Convert a given glyph object to a bitmap glyph object.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>the_glyph</b></td><td>
|
||||
<p>A pointer to a handle to the target glyph.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>render_mode</b></td><td>
|
||||
<p>An enumeration that describes how the data is rendered.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>origin</b></td><td>
|
||||
<p>A pointer to a vector used to translate the glyph image before rendering. Can be 0 (if no translation). The origin is expressed in 26.6 pixels.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>destroy</b></td><td>
|
||||
<p>A boolean that indicates that the original glyph image should be destroyed by this function. It is never destroyed in case of error.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function does nothing if the glyph format isn't scalable.</p>
|
||||
<p>The glyph image is translated with the ‘origin’ vector before rendering.</p>
|
||||
<p>The first parameter is a pointer to an <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> handle, that will be <i>replaced</i> by this function (with newly allocated data). Typically, you would use (omitting error handling):</p>
|
||||
<p></p>
|
||||
<pre class="colored">
|
||||
FT_Glyph glyph;
|
||||
FT_BitmapGlyph glyph_bitmap;
|
||||
|
||||
|
||||
// load glyph
|
||||
error = FT_Load_Char( face, glyph_index, FT_LOAD_DEFAUT );
|
||||
|
||||
// extract glyph image
|
||||
error = FT_Get_Glyph( face->glyph, &glyph );
|
||||
|
||||
// convert to a bitmap (default render mode + destroying old)
|
||||
if ( glyph->format != FT_GLYPH_FORMAT_BITMAP )
|
||||
{
|
||||
error = FT_Glyph_To_Bitmap( &glyph, FT_RENDER_MODE_NORMAL,
|
||||
0, 1 );
|
||||
if ( error ) // `glyph' unchanged
|
||||
...
|
||||
}
|
||||
|
||||
// access bitmap content by typecasting
|
||||
glyph_bitmap = (FT_BitmapGlyph)glyph;
|
||||
|
||||
// do funny stuff with it, like blitting/drawing
|
||||
...
|
||||
|
||||
// discard glyph image (bitmap or not)
|
||||
FT_Done_Glyph( glyph );
|
||||
</pre>
|
||||
<p></p>
|
||||
<p>Here another example, again without error handling:</p>
|
||||
<p></p>
|
||||
<pre class="colored">
|
||||
FT_Glyph glyphs[MAX_GLYPHS]
|
||||
|
||||
|
||||
...
|
||||
|
||||
for ( idx = 0; i < MAX_GLYPHS; i++ )
|
||||
error = FT_Load_Glyph( face, idx, FT_LOAD_DEFAULT ) ||
|
||||
FT_Get_Glyph ( face->glyph, &glyph[idx] );
|
||||
|
||||
...
|
||||
|
||||
for ( idx = 0; i < MAX_GLYPHS; i++ )
|
||||
{
|
||||
FT_Glyph bitmap = glyphs[idx];
|
||||
|
||||
|
||||
...
|
||||
|
||||
// after this call, `bitmap' no longer points into
|
||||
// the `glyphs' array (and the old value isn't destroyed)
|
||||
FT_Glyph_To_Bitmap( &bitmap, FT_RENDER_MODE_MONO, 0, 0 );
|
||||
|
||||
...
|
||||
|
||||
FT_Done_Glyph( bitmap );
|
||||
}
|
||||
|
||||
...
|
||||
|
||||
for ( idx = 0; i < MAX_GLYPHS; i++ )
|
||||
FT_Done_Glyph( glyphs[idx] );
|
||||
</pre>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Done_Glyph">FT_Done_Glyph</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GLYPH_H (freetype/ftglyph.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Done_Glyph</b>( <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> glyph );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Destroy a given glyph.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>glyph</b></td><td>
|
||||
<p>A handle to the target glyph object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,940 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Glyph Stroker
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_Stroker">FT_Stroker</a></td><td></td><td><a href="#FT_Stroker_EndSubPath">FT_Stroker_EndSubPath</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Stroker_LineJoin">FT_Stroker_LineJoin</a></td><td></td><td><a href="#FT_Stroker_LineTo">FT_Stroker_LineTo</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Stroker_LineCap">FT_Stroker_LineCap</a></td><td></td><td><a href="#FT_Stroker_ConicTo">FT_Stroker_ConicTo</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_StrokerBorder">FT_StrokerBorder</a></td><td></td><td><a href="#FT_Stroker_CubicTo">FT_Stroker_CubicTo</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Outline_GetInsideBorder">FT_Outline_GetInsideBorder</a></td><td></td><td><a href="#FT_Stroker_GetBorderCounts">FT_Stroker_GetBorderCounts</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Outline_GetOutsideBorder">FT_Outline_GetOutsideBorder</a></td><td></td><td><a href="#FT_Stroker_ExportBorder">FT_Stroker_ExportBorder</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Stroker_New">FT_Stroker_New</a></td><td></td><td><a href="#FT_Stroker_GetCounts">FT_Stroker_GetCounts</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Stroker_Set">FT_Stroker_Set</a></td><td></td><td><a href="#FT_Stroker_Export">FT_Stroker_Export</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Stroker_Rewind">FT_Stroker_Rewind</a></td><td></td><td><a href="#FT_Stroker_Done">FT_Stroker_Done</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Stroker_ParseOutline">FT_Stroker_ParseOutline</a></td><td></td><td><a href="#FT_Glyph_Stroke">FT_Glyph_Stroke</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</a></td><td></td><td><a href="#FT_Glyph_StrokeBorder">FT_Glyph_StrokeBorder</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This component generates stroked outlines of a given vectorial glyph. It also allows you to retrieve the ‘outside’ and/or the ‘inside’ borders of the stroke.</p>
|
||||
<p>This can be useful to generate ‘bordered’ glyph, i.e., glyphs displayed with a coloured (and anti-aliased) border around their shape.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker">FT_Stroker</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_StrokerRec_* <b>FT_Stroker</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Opaque handler to a path stroker object.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_LineJoin">FT_Stroker_LineJoin</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">enum</span> FT_Stroker_LineJoin_
|
||||
{
|
||||
<a href="ft2-glyph_stroker.html#FT_Stroker_LineJoin">FT_STROKER_LINEJOIN_ROUND</a> = 0,
|
||||
<a href="ft2-glyph_stroker.html#FT_Stroker_LineJoin">FT_STROKER_LINEJOIN_BEVEL</a> = 1,
|
||||
<a href="ft2-glyph_stroker.html#FT_Stroker_LineJoin">FT_STROKER_LINEJOIN_MITER_VARIABLE</a> = 2,
|
||||
<a href="ft2-glyph_stroker.html#FT_Stroker_LineJoin">FT_STROKER_LINEJOIN_MITER</a> = <a href="ft2-glyph_stroker.html#FT_Stroker_LineJoin">FT_STROKER_LINEJOIN_MITER_VARIABLE</a>,
|
||||
<a href="ft2-glyph_stroker.html#FT_Stroker_LineJoin">FT_STROKER_LINEJOIN_MITER_FIXED</a> = 3
|
||||
|
||||
} <b>FT_Stroker_LineJoin</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>These values determine how two joining lines are rendered in a stroker.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td colspan=0><b>FT_STROKER_LINEJOIN_ROUND</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Used to render rounded line joins. Circular arcs are used to join two lines smoothly.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_STROKER_LINEJOIN_BEVEL</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Used to render beveled line joins. The outer corner of the joined lines is filled by enclosing the triangular region of the corner with a straight line between the outer corners of each stroke.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_STROKER_LINEJOIN_MITER_FIXED</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Used to render mitered line joins, with fixed bevels if the miter limit is exceeded. The outer edges of the strokes for the two segments are extended until they meet at an angle. If the segments meet at too sharp an angle (such that the miter would extend from the intersection of the segments a distance greater than the product of the miter limit value and the border radius), then a bevel join (see above) is used instead. This prevents long spikes being created. FT_STROKER_LINEJOIN_MITER_FIXED generates a miter line join as used in PostScript and PDF.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_STROKER_LINEJOIN_MITER_VARIABLE</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p></p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_STROKER_LINEJOIN_MITER</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Used to render mitered line joins, with variable bevels if the miter limit is exceeded. The intersection of the strokes is clipped at a line perpendicular to the bisector of the angle between the strokes, at the distance from the intersection of the segments equal to the product of the miter limit value and the border radius. This prevents long spikes being created. FT_STROKER_LINEJOIN_MITER_VARIABLE generates a mitered line join as used in XPS. FT_STROKER_LINEJOIN_MITER is an alias for FT_STROKER_LINEJOIN_MITER_VARIABLE, retained for backwards compatibility.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_LineCap">FT_Stroker_LineCap</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">enum</span> FT_Stroker_LineCap_
|
||||
{
|
||||
<a href="ft2-glyph_stroker.html#FT_Stroker_LineCap">FT_STROKER_LINECAP_BUTT</a> = 0,
|
||||
<a href="ft2-glyph_stroker.html#FT_Stroker_LineCap">FT_STROKER_LINECAP_ROUND</a>,
|
||||
<a href="ft2-glyph_stroker.html#FT_Stroker_LineCap">FT_STROKER_LINECAP_SQUARE</a>
|
||||
|
||||
} <b>FT_Stroker_LineCap</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>These values determine how the end of opened sub-paths are rendered in a stroke.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td colspan=0><b>FT_STROKER_LINECAP_BUTT</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>The end of lines is rendered as a full stop on the last point itself.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_STROKER_LINECAP_ROUND</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>The end of lines is rendered as a half-circle around the last point.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_STROKER_LINECAP_SQUARE</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>The end of lines is rendered as a square around the last point.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_StrokerBorder">FT_StrokerBorder</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">enum</span> FT_StrokerBorder_
|
||||
{
|
||||
<a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_STROKER_BORDER_LEFT</a> = 0,
|
||||
<a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_STROKER_BORDER_RIGHT</a>
|
||||
|
||||
} <b>FT_StrokerBorder</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>These values are used to select a given stroke border in <a href="ft2-glyph_stroker.html#FT_Stroker_GetBorderCounts">FT_Stroker_GetBorderCounts</a> and <a href="ft2-glyph_stroker.html#FT_Stroker_ExportBorder">FT_Stroker_ExportBorder</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>FT_STROKER_BORDER_LEFT</b></td><td>
|
||||
<p>Select the left border, relative to the drawing direction.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_STROKER_BORDER_RIGHT</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Select the right border, relative to the drawing direction.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>Applications are generally interested in the ‘inside’ and ‘outside’ borders. However, there is no direct mapping between these and the ‘left’ and ‘right’ ones, since this really depends on the glyph's drawing orientation, which varies between font formats.</p>
|
||||
<p>You can however use <a href="ft2-glyph_stroker.html#FT_Outline_GetInsideBorder">FT_Outline_GetInsideBorder</a> and <a href="ft2-glyph_stroker.html#FT_Outline_GetOutsideBorder">FT_Outline_GetOutsideBorder</a> to get these.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Outline_GetInsideBorder">FT_Outline_GetInsideBorder</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_StrokerBorder</a> )
|
||||
<b>FT_Outline_GetInsideBorder</b>( <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a>* outline );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve the <a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_StrokerBorder</a> value corresponding to the ‘inside’ borders of a given outline.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>outline</b></td><td>
|
||||
<p>The source outline handle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The border index. <a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_STROKER_BORDER_RIGHT</a> for empty or invalid outlines.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Outline_GetOutsideBorder">FT_Outline_GetOutsideBorder</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_StrokerBorder</a> )
|
||||
<b>FT_Outline_GetOutsideBorder</b>( <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a>* outline );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve the <a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_StrokerBorder</a> value corresponding to the ‘outside’ borders of a given outline.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>outline</b></td><td>
|
||||
<p>The source outline handle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The border index. <a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_STROKER_BORDER_LEFT</a> for empty or invalid outlines.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_New">FT_Stroker_New</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Stroker_New</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> *astroker );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Create a new stroker object.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>FreeType library handle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>astroker</b></td><td>
|
||||
<p>A new stroker object handle. NULL in case of error.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_Set">FT_Stroker_Set</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Stroker_Set</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker,
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> radius,
|
||||
<a href="ft2-glyph_stroker.html#FT_Stroker_LineCap">FT_Stroker_LineCap</a> line_cap,
|
||||
<a href="ft2-glyph_stroker.html#FT_Stroker_LineJoin">FT_Stroker_LineJoin</a> line_join,
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> miter_limit );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Reset a stroker object's attributes.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>The target stroker handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>radius</b></td><td>
|
||||
<p>The border radius.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>line_cap</b></td><td>
|
||||
<p>The line cap style.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>line_join</b></td><td>
|
||||
<p>The line join style.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>miter_limit</b></td><td>
|
||||
<p>The miter limit for the FT_STROKER_LINEJOIN_MITER_FIXED and FT_STROKER_LINEJOIN_MITER_VARIABLE line join styles, expressed as 16.16 fixed-point value.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The radius is expressed in the same units as the outline coordinates.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_Rewind">FT_Stroker_Rewind</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Stroker_Rewind</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Reset a stroker object without changing its attributes. You should call this function before beginning a new series of calls to <a href="ft2-glyph_stroker.html#FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</a> or <a href="ft2-glyph_stroker.html#FT_Stroker_EndSubPath">FT_Stroker_EndSubPath</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>The target stroker handle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_ParseOutline">FT_Stroker_ParseOutline</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Stroker_ParseOutline</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker,
|
||||
<a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a>* outline,
|
||||
<a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> opened );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A convenience function used to parse a whole outline with the stroker. The resulting outline(s) can be retrieved later by functions like <a href="ft2-glyph_stroker.html#FT_Stroker_GetCounts">FT_Stroker_GetCounts</a> and <a href="ft2-glyph_stroker.html#FT_Stroker_Export">FT_Stroker_Export</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>The target stroker handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>outline</b></td><td>
|
||||
<p>The source outline.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>opened</b></td><td>
|
||||
<p>A boolean. If 1, the outline is treated as an open path instead of a closed one.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>If ‘opened’ is 0 (the default), the outline is treated as a closed path, and the stroker generates two distinct ‘border’ outlines.</p>
|
||||
<p>If ‘opened’ is 1, the outline is processed as an open path, and the stroker generates a single ‘stroke’ outline.</p>
|
||||
<p>This function calls <a href="ft2-glyph_stroker.html#FT_Stroker_Rewind">FT_Stroker_Rewind</a> automatically.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Stroker_BeginSubPath</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker,
|
||||
<a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* to,
|
||||
<a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> open );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Start a new sub-path in the stroker.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>The target stroker handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>to</b></td><td>
|
||||
<p>A pointer to the start vector.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>open</b></td><td>
|
||||
<p>A boolean. If 1, the sub-path is treated as an open one.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function is useful when you need to stroke a path that is not stored as an <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a> object.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_EndSubPath">FT_Stroker_EndSubPath</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Stroker_EndSubPath</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Close the current sub-path in the stroker.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>The target stroker handle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>You should call this function after <a href="ft2-glyph_stroker.html#FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</a>. If the subpath was not ‘opened’, this function ‘draws’ a single line segment to the start position when needed.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_LineTo">FT_Stroker_LineTo</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Stroker_LineTo</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker,
|
||||
<a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* to );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>‘Draw’ a single line segment in the stroker's current sub-path, from the last position.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>The target stroker handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>to</b></td><td>
|
||||
<p>A pointer to the destination point.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>You should call this function between <a href="ft2-glyph_stroker.html#FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</a> and <a href="ft2-glyph_stroker.html#FT_Stroker_EndSubPath">FT_Stroker_EndSubPath</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_ConicTo">FT_Stroker_ConicTo</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Stroker_ConicTo</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker,
|
||||
<a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* control,
|
||||
<a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* to );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>‘Draw’ a single quadratic Bézier in the stroker's current sub-path, from the last position.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>The target stroker handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>control</b></td><td>
|
||||
<p>A pointer to a Bézier control point.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>to</b></td><td>
|
||||
<p>A pointer to the destination point.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>You should call this function between <a href="ft2-glyph_stroker.html#FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</a> and <a href="ft2-glyph_stroker.html#FT_Stroker_EndSubPath">FT_Stroker_EndSubPath</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_CubicTo">FT_Stroker_CubicTo</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Stroker_CubicTo</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker,
|
||||
<a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* control1,
|
||||
<a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* control2,
|
||||
<a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>* to );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>‘Draw’ a single cubic Bézier in the stroker's current sub-path, from the last position.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>The target stroker handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>control1</b></td><td>
|
||||
<p>A pointer to the first Bézier control point.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>control2</b></td><td>
|
||||
<p>A pointer to second Bézier control point.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>to</b></td><td>
|
||||
<p>A pointer to the destination point.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>You should call this function between <a href="ft2-glyph_stroker.html#FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</a> and <a href="ft2-glyph_stroker.html#FT_Stroker_EndSubPath">FT_Stroker_EndSubPath</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_GetBorderCounts">FT_Stroker_GetBorderCounts</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Stroker_GetBorderCounts</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker,
|
||||
<a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_StrokerBorder</a> border,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> *anum_points,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> *anum_contours );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Call this function once you have finished parsing your paths with the stroker. It returns the number of points and contours necessary to export one of the ‘border’ or ‘stroke’ outlines generated by the stroker.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>The target stroker handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>border</b></td><td>
|
||||
<p>The border index.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>anum_points</b></td><td>
|
||||
<p>The number of points.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>anum_contours</b></td><td>
|
||||
<p>The number of contours.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>When an outline, or a sub-path, is ‘closed’, the stroker generates two independent ‘border’ outlines, named ‘left’ and ‘right’.</p>
|
||||
<p>When the outline, or a sub-path, is ‘opened’, the stroker merges the ‘border’ outlines with caps. The ‘left’ border receives all points, while the ‘right’ border becomes empty.</p>
|
||||
<p>Use the function <a href="ft2-glyph_stroker.html#FT_Stroker_GetCounts">FT_Stroker_GetCounts</a> instead if you want to retrieve the counts associated to both borders.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_ExportBorder">FT_Stroker_ExportBorder</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Stroker_ExportBorder</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker,
|
||||
<a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_StrokerBorder</a> border,
|
||||
<a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a>* outline );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Call this function after <a href="ft2-glyph_stroker.html#FT_Stroker_GetBorderCounts">FT_Stroker_GetBorderCounts</a> to export the corresponding border to your own <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a> structure.</p>
|
||||
<p>Note that this function appends the border points and contours to your outline, but does not try to resize its arrays.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>The target stroker handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>border</b></td><td>
|
||||
<p>The border index.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>outline</b></td><td>
|
||||
<p>The target outline handle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>Always call this function after <a href="ft2-glyph_stroker.html#FT_Stroker_GetBorderCounts">FT_Stroker_GetBorderCounts</a> to get sure that there is enough room in your <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a> object to receive all new data.</p>
|
||||
<p>When an outline, or a sub-path, is ‘closed’, the stroker generates two independent ‘border’ outlines, named ‘left’ and ‘right’</p>
|
||||
<p>When the outline, or a sub-path, is ‘opened’, the stroker merges the ‘border’ outlines with caps. The ‘left’ border receives all points, while the ‘right’ border becomes empty.</p>
|
||||
<p>Use the function <a href="ft2-glyph_stroker.html#FT_Stroker_Export">FT_Stroker_Export</a> instead if you want to retrieve all borders at once.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_GetCounts">FT_Stroker_GetCounts</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Stroker_GetCounts</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> *anum_points,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> *anum_contours );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Call this function once you have finished parsing your paths with the stroker. It returns the number of points and contours necessary to export all points/borders from the stroked outline/path.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>The target stroker handle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>anum_points</b></td><td>
|
||||
<p>The number of points.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>anum_contours</b></td><td>
|
||||
<p>The number of contours.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_Export">FT_Stroker_Export</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Stroker_Export</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker,
|
||||
<a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a>* outline );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Call this function after <a href="ft2-glyph_stroker.html#FT_Stroker_GetBorderCounts">FT_Stroker_GetBorderCounts</a> to export all borders to your own <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a> structure.</p>
|
||||
<p>Note that this function appends the border points and contours to your outline, but does not try to resize its arrays.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>The target stroker handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>outline</b></td><td>
|
||||
<p>The target outline handle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stroker_Done">FT_Stroker_Done</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Stroker_Done</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Destroy a stroker object.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>A stroker handle. Can be NULL.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Glyph_Stroke">FT_Glyph_Stroke</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Glyph_Stroke</b>( <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> *pglyph,
|
||||
<a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker,
|
||||
<a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> destroy );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Stroke a given outline glyph object with a given stroker.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>pglyph</b></td><td>
|
||||
<p>Source glyph handle on input, new glyph handle on output.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>A stroker handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>destroy</b></td><td>
|
||||
<p>A Boolean. If 1, the source glyph object is destroyed on success.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The source glyph is untouched in case of error.</p>
|
||||
<p>Adding stroke may yield a significantly wider and taller glyph depending on how large of a radius was used to stroke the glyph. You may need to manually adjust horizontal and vertical advance amounts to account for this added size.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Glyph_StrokeBorder">FT_Glyph_StrokeBorder</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_STROKER_H (freetype/ftstroke.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Glyph_StrokeBorder</b>( <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> *pglyph,
|
||||
<a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a> stroker,
|
||||
<a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> inside,
|
||||
<a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> destroy );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Stroke a given outline glyph object with a given stroker, but only return either its inside or outside border.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>pglyph</b></td><td>
|
||||
<p>Source glyph handle on input, new glyph handle on output.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stroker</b></td><td>
|
||||
<p>A stroker handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>inside</b></td><td>
|
||||
<p>A Boolean. If 1, return the inside border, otherwise the outside border.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>destroy</b></td><td>
|
||||
<p>A Boolean. If 1, the source glyph object is destroyed on success.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The source glyph is untouched in case of error.</p>
|
||||
<p>Adding stroke may yield a significantly wider and taller glyph depending on how large of a radius was used to stroke the glyph. You may need to manually adjust horizontal and vertical advance amounts to account for this added size.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,269 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Glyph Variants
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_Face_GetCharVariantIndex">FT_Face_GetCharVariantIndex</a></td><td></td><td><a href="#FT_Face_GetVariantsOfChar">FT_Face_GetVariantsOfChar</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Face_GetCharVariantIsDefault">FT_Face_GetCharVariantIsDefault</a></td><td></td><td><a href="#FT_Face_GetCharsOfVariant">FT_Face_GetCharsOfVariant</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Face_GetVariantSelectors">FT_Face_GetVariantSelectors</a></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Many CJK characters have variant forms. They are a sort of grey area somewhere between being totally irrelevant and semantically distinct; for this reason, the Unicode consortium decided to introduce Ideographic Variation Sequences (IVS), consisting of a Unicode base character and one of 240 variant selectors (U+E0100-U+E01EF), instead of further extending the already huge code range for CJK characters.</p>
|
||||
<p>An IVS is registered and unique; for further details please refer to Unicode Technical Standard #37, the Ideographic Variation Database:</p>
|
||||
<p>http://www.unicode.org/reports/tr37/</p>
|
||||
<p>To date (November 2012), the character with the most variants is U+9089, having 31 such IVS.</p>
|
||||
<p>Adobe and MS decided to support IVS with a new cmap subtable (format 14). It is an odd subtable because it is not a mapping of input code points to glyphs, but contains lists of all variants supported by the font.</p>
|
||||
<p>A variant may be either ‘default’ or ‘non-default’. A default variant is the one you will get for that code point if you look it up in the standard Unicode cmap. A non-default variant is a different glyph.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Face_GetCharVariantIndex">FT_Face_GetCharVariantIndex</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> )
|
||||
<b>FT_Face_GetCharVariantIndex</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> charcode,
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> variantSelector );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return the glyph index of a given character code as modified by the variation selector.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the source face object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>charcode</b></td><td>
|
||||
<p>The character code point in Unicode.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>variantSelector</b></td><td>
|
||||
<p>The Unicode code point of the variation selector.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The glyph index. 0 means either ‘undefined character code’, or ‘undefined selector code’, or ‘no variation selector cmap subtable’, or ‘current CharMap is not Unicode’.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>If you use FreeType to manipulate the contents of font files directly, be aware that the glyph index returned by this function doesn't always correspond to the internal indices used within the file. This is done to ensure that value 0 always corresponds to the ‘missing glyph’.</p>
|
||||
<p>This function is only meaningful if a) the font has a variation selector cmap sub table, and b) the current charmap has a Unicode encoding.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.3.6</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Face_GetCharVariantIsDefault">FT_Face_GetCharVariantIsDefault</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Int">FT_Int</a> )
|
||||
<b>FT_Face_GetCharVariantIsDefault</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> charcode,
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> variantSelector );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Check whether this variant of this Unicode character is the one to be found in the ‘cmap’.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the source face object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>charcode</b></td><td>
|
||||
<p>The character codepoint in Unicode.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>variantSelector</b></td><td>
|
||||
<p>The Unicode codepoint of the variation selector.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>1 if found in the standard (Unicode) cmap, 0 if found in the variation selector cmap, or -1 if it is not a variant.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function is only meaningful if the font has a variation selector cmap subtable.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.3.6</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Face_GetVariantSelectors">FT_Face_GetVariantSelectors</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_UInt32">FT_UInt32</a>* )
|
||||
<b>FT_Face_GetVariantSelectors</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return a zero-terminated list of Unicode variant selectors found in the font.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the source face object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>A pointer to an array of selector code points, or NULL if there is no valid variant selector cmap subtable.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The last item in the array is 0; the array is owned by the <a href="ft2-base_interface.html#FT_Face">FT_Face</a> object but can be overwritten or released on the next call to a FreeType function.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.3.6</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Face_GetVariantsOfChar">FT_Face_GetVariantsOfChar</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_UInt32">FT_UInt32</a>* )
|
||||
<b>FT_Face_GetVariantsOfChar</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> charcode );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return a zero-terminated list of Unicode variant selectors found for the specified character code.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the source face object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>charcode</b></td><td>
|
||||
<p>The character codepoint in Unicode.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>A pointer to an array of variant selector code points which are active for the given character, or NULL if the corresponding list is empty.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The last item in the array is 0; the array is owned by the <a href="ft2-base_interface.html#FT_Face">FT_Face</a> object but can be overwritten or released on the next call to a FreeType function.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.3.6</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Face_GetCharsOfVariant">FT_Face_GetCharsOfVariant</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_UInt32">FT_UInt32</a>* )
|
||||
<b>FT_Face_GetCharsOfVariant</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> variantSelector );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return a zero-terminated list of Unicode character codes found for the specified variant selector.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the source face object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>variantSelector</b></td><td>
|
||||
<p>The variant selector code point in Unicode.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>A list of all the code points which are specified by this selector (both default and non-default codes are returned) or NULL if there is no valid cmap or the variant selector is invalid.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The last item in the array is 0; the array is owned by the <a href="ft2-base_interface.html#FT_Face">FT_Face</a> object but can be overwritten or released on the next call to a FreeType function.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.3.6</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,356 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
TrueTypeGX/AAT Validation
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_VALIDATE_GX_LENGTH">FT_VALIDATE_GX_LENGTH</a></td><td></td><td><a href="#FT_TrueTypeGX_Free">FT_TrueTypeGX_Free</a></td><td></td><td><a href="#FT_ClassicKern_Free">FT_ClassicKern_Free</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_VALIDATE_GXXXX">FT_VALIDATE_GXXXX</a></td><td></td><td><a href="#FT_VALIDATE_CKERNXXX">FT_VALIDATE_CKERNXXX</a></td><td></td><td></td></tr>
|
||||
<tr><td></td><td><a href="#FT_TrueTypeGX_Validate">FT_TrueTypeGX_Validate</a></td><td></td><td><a href="#FT_ClassicKern_Validate">FT_ClassicKern_Validate</a></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains the declaration of functions to validate some TrueTypeGX tables (feat, mort, morx, bsln, just, kern, opbd, trak, prop, lcar).</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_VALIDATE_GX_LENGTH">FT_VALIDATE_GX_LENGTH</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GX_VALIDATE_H (freetype/ftgxval.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_VALIDATE_GX_LENGTH</b> (FT_VALIDATE_GX_LAST_INDEX + 1)
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The number of tables checked in this module. Use it as a parameter for the ‘table-length’ argument of function <a href="ft2-gx_validation.html#FT_TrueTypeGX_Validate">FT_TrueTypeGX_Validate</a>.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_VALIDATE_GXXXX">FT_VALIDATE_GXXXX</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GX_VALIDATE_H (freetype/ftgxval.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_feat</a> FT_VALIDATE_GX_BITFIELD( feat )
|
||||
#define <a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_mort</a> FT_VALIDATE_GX_BITFIELD( mort )
|
||||
#define <a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_morx</a> FT_VALIDATE_GX_BITFIELD( morx )
|
||||
#define <a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_bsln</a> FT_VALIDATE_GX_BITFIELD( bsln )
|
||||
#define <a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_just</a> FT_VALIDATE_GX_BITFIELD( just )
|
||||
#define <a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_kern</a> FT_VALIDATE_GX_BITFIELD( kern )
|
||||
#define <a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_opbd</a> FT_VALIDATE_GX_BITFIELD( opbd )
|
||||
#define <a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_trak</a> FT_VALIDATE_GX_BITFIELD( trak )
|
||||
#define <a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_prop</a> FT_VALIDATE_GX_BITFIELD( prop )
|
||||
#define <a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_lcar</a> FT_VALIDATE_GX_BITFIELD( lcar )
|
||||
|
||||
#define <a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_GX</a> ( <a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_feat</a> | \
|
||||
<a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_mort</a> | \
|
||||
<a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_morx</a> | \
|
||||
<a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_bsln</a> | \
|
||||
<a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_just</a> | \
|
||||
<a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_kern</a> | \
|
||||
<a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_opbd</a> | \
|
||||
<a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_trak</a> | \
|
||||
<a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_prop</a> | \
|
||||
<a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_lcar</a> )
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A list of bit-field constants used with <a href="ft2-gx_validation.html#FT_TrueTypeGX_Validate">FT_TrueTypeGX_Validate</a> to indicate which TrueTypeGX/AAT Type tables should be validated.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>FT_VALIDATE_feat</b></td><td>
|
||||
<p>Validate ‘feat’ table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_mort</b></td><td>
|
||||
<p>Validate ‘mort’ table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_morx</b></td><td>
|
||||
<p>Validate ‘morx’ table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_bsln</b></td><td>
|
||||
<p>Validate ‘bsln’ table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_just</b></td><td>
|
||||
<p>Validate ‘just’ table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_kern</b></td><td>
|
||||
<p>Validate ‘kern’ table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_opbd</b></td><td>
|
||||
<p>Validate ‘opbd’ table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_trak</b></td><td>
|
||||
<p>Validate ‘trak’ table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_prop</b></td><td>
|
||||
<p>Validate ‘prop’ table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_lcar</b></td><td>
|
||||
<p>Validate ‘lcar’ table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_GX</b></td><td>
|
||||
<p>Validate all TrueTypeGX tables (feat, mort, morx, bsln, just, kern, opbd, trak, prop and lcar).</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_TrueTypeGX_Validate">FT_TrueTypeGX_Validate</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GX_VALIDATE_H (freetype/ftgxval.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_TrueTypeGX_Validate</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> validation_flags,
|
||||
<a href="ft2-basic_types.html#FT_Bytes">FT_Bytes</a> tables[<a href="ft2-gx_validation.html#FT_VALIDATE_GX_LENGTH">FT_VALIDATE_GX_LENGTH</a>],
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> table_length );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Validate various TrueTypeGX tables to assure that all offsets and indices are valid. The idea is that a higher-level library which actually does the text layout can access those tables without error checking (which can be quite time consuming).</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the input face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>validation_flags</b></td><td>
|
||||
<p>A bit field which specifies the tables to be validated. See <a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_GXXXX</a> for possible values.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>table_length</b></td><td>
|
||||
<p>The size of the ‘tables’ array. Normally, <a href="ft2-gx_validation.html#FT_VALIDATE_GX_LENGTH">FT_VALIDATE_GX_LENGTH</a> should be passed.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>tables</b></td><td>
|
||||
<p>The array where all validated sfnt tables are stored. The array itself must be allocated by a client.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function only works with TrueTypeGX fonts, returning an error otherwise.</p>
|
||||
<p>After use, the application should deallocate the buffers pointed to by each ‘tables’ element, by calling <a href="ft2-gx_validation.html#FT_TrueTypeGX_Free">FT_TrueTypeGX_Free</a>. A NULL value indicates that the table either doesn't exist in the font, the application hasn't asked for validation, or the validator doesn't have the ability to validate the sfnt table.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_TrueTypeGX_Free">FT_TrueTypeGX_Free</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GX_VALIDATE_H (freetype/ftgxval.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_TrueTypeGX_Free</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_Bytes">FT_Bytes</a> table );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Free the buffer allocated by TrueTypeGX validator.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the input face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>table</b></td><td>
|
||||
<p>The pointer to the buffer allocated by <a href="ft2-gx_validation.html#FT_TrueTypeGX_Validate">FT_TrueTypeGX_Validate</a>.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function must be used to free the buffer allocated by <a href="ft2-gx_validation.html#FT_TrueTypeGX_Validate">FT_TrueTypeGX_Validate</a> only.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_VALIDATE_CKERNXXX">FT_VALIDATE_CKERNXXX</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GX_VALIDATE_H (freetype/ftgxval.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <a href="ft2-gx_validation.html#FT_VALIDATE_CKERNXXX">FT_VALIDATE_MS</a> ( FT_VALIDATE_GX_START << 0 )
|
||||
#define <a href="ft2-gx_validation.html#FT_VALIDATE_CKERNXXX">FT_VALIDATE_APPLE</a> ( FT_VALIDATE_GX_START << 1 )
|
||||
|
||||
#define <a href="ft2-gx_validation.html#FT_VALIDATE_CKERNXXX">FT_VALIDATE_CKERN</a> ( <a href="ft2-gx_validation.html#FT_VALIDATE_CKERNXXX">FT_VALIDATE_MS</a> | <a href="ft2-gx_validation.html#FT_VALIDATE_CKERNXXX">FT_VALIDATE_APPLE</a> )
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A list of bit-field constants used with <a href="ft2-gx_validation.html#FT_ClassicKern_Validate">FT_ClassicKern_Validate</a> to indicate the classic kern dialect or dialects. If the selected type doesn't fit, <a href="ft2-gx_validation.html#FT_ClassicKern_Validate">FT_ClassicKern_Validate</a> regards the table as invalid.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>FT_VALIDATE_MS</b></td><td>
|
||||
<p>Handle the ‘kern’ table as a classic Microsoft kern table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_APPLE</b></td><td>
|
||||
<p>Handle the ‘kern’ table as a classic Apple kern table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_CKERN</b></td><td>
|
||||
<p>Handle the ‘kern’ as either classic Apple or Microsoft kern table.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_ClassicKern_Validate">FT_ClassicKern_Validate</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GX_VALIDATE_H (freetype/ftgxval.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_ClassicKern_Validate</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> validation_flags,
|
||||
<a href="ft2-basic_types.html#FT_Bytes">FT_Bytes</a> *ckern_table );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Validate classic (16-bit format) kern table to assure that the offsets and indices are valid. The idea is that a higher-level library which actually does the text layout can access those tables without error checking (which can be quite time consuming).</p>
|
||||
<p>The ‘kern’ table validator in <a href="ft2-gx_validation.html#FT_TrueTypeGX_Validate">FT_TrueTypeGX_Validate</a> deals with both the new 32-bit format and the classic 16-bit format, while FT_ClassicKern_Validate only supports the classic 16-bit format.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the input face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>validation_flags</b></td><td>
|
||||
<p>A bit field which specifies the dialect to be validated. See <a href="ft2-gx_validation.html#FT_VALIDATE_CKERNXXX">FT_VALIDATE_CKERNXXX</a> for possible values.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>ckern_table</b></td><td>
|
||||
<p>A pointer to the kern table.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>After use, the application should deallocate the buffers pointed to by ‘ckern_table’, by calling <a href="ft2-gx_validation.html#FT_ClassicKern_Free">FT_ClassicKern_Free</a>. A NULL value indicates that the table doesn't exist in the font.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_ClassicKern_Free">FT_ClassicKern_Free</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GX_VALIDATE_H (freetype/ftgxval.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_ClassicKern_Free</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_Bytes">FT_Bytes</a> table );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Free the buffer allocated by classic Kern validator.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the input face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>table</b></td><td>
|
||||
<p>The pointer to the buffer that is allocated by <a href="ft2-gx_validation.html#FT_ClassicKern_Validate">FT_ClassicKern_Validate</a>.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function must be used to free the buffer allocated by <a href="ft2-gx_validation.html#FT_ClassicKern_Validate">FT_ClassicKern_Validate</a> only.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,94 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
GZIP Streams
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_Stream_OpenGzip">FT_Stream_OpenGzip</a></td><td></td><td></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains the declaration of Gzip-specific functions.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stream_OpenGzip">FT_Stream_OpenGzip</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_GZIP_H (freetype/ftgzip.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Stream_OpenGzip</b>( <a href="ft2-system_interface.html#FT_Stream">FT_Stream</a> stream,
|
||||
<a href="ft2-system_interface.html#FT_Stream">FT_Stream</a> source );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Open a new stream to parse gzip-compressed font files. This is mainly used to support the compressed ‘*.pcf.gz’ fonts that come with XFree86.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stream</b></td><td>
|
||||
<p>The target embedding stream.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>source</b></td><td>
|
||||
<p>The source stream.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The source stream must be opened <i>before</i> calling this function.</p>
|
||||
<p>Calling the internal function ‘FT_Stream_Close’ on the new stream will <b>not</b> call ‘FT_Stream_Close’ on the source stream. None of the stream objects will be released to the heap.</p>
|
||||
<p>The stream implementation is very basic and resets the decompression process each time seeking backwards is needed within the stream.</p>
|
||||
<p>In certain builds of the library, gzip compression recognition is automatically handled when calling <a href="ft2-base_interface.html#FT_New_Face">FT_New_Face</a> or <a href="ft2-base_interface.html#FT_Open_Face">FT_Open_Face</a>. This means that if no font driver is capable of handling the raw compressed file, the library will try to open a gzipped stream from it and re-open the face with it.</p>
|
||||
<p>This function may return ‘FT_Err_Unimplemented_Feature’ if your build of FreeType was not compiled with zlib support.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,902 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Header File Macros
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_CONFIG_CONFIG_H">FT_CONFIG_CONFIG_H</a></td><td></td><td><a href="#FT_LZW_H">FT_LZW_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_CONFIG_STANDARD_LIBRARY_H">FT_CONFIG_STANDARD_LIBRARY_H</a></td><td></td><td><a href="#FT_BZIP2_H">FT_BZIP2_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_CONFIG_OPTIONS_H">FT_CONFIG_OPTIONS_H</a></td><td></td><td><a href="#FT_WINFONTS_H">FT_WINFONTS_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_CONFIG_MODULES_H">FT_CONFIG_MODULES_H</a></td><td></td><td><a href="#FT_GLYPH_H">FT_GLYPH_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_FREETYPE_H">FT_FREETYPE_H</a></td><td></td><td><a href="#FT_BITMAP_H">FT_BITMAP_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_ERRORS_H">FT_ERRORS_H</a></td><td></td><td><a href="#FT_BBOX_H">FT_BBOX_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_MODULE_ERRORS_H">FT_MODULE_ERRORS_H</a></td><td></td><td><a href="#FT_CACHE_H">FT_CACHE_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_SYSTEM_H">FT_SYSTEM_H</a></td><td></td><td><a href="#FT_CACHE_IMAGE_H">FT_CACHE_IMAGE_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_IMAGE_H">FT_IMAGE_H</a></td><td></td><td><a href="#FT_CACHE_SMALL_BITMAPS_H">FT_CACHE_SMALL_BITMAPS_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_TYPES_H">FT_TYPES_H</a></td><td></td><td><a href="#FT_CACHE_CHARMAP_H">FT_CACHE_CHARMAP_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_LIST_H">FT_LIST_H</a></td><td></td><td><a href="#FT_MAC_H">FT_MAC_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_OUTLINE_H">FT_OUTLINE_H</a></td><td></td><td><a href="#FT_MULTIPLE_MASTERS_H">FT_MULTIPLE_MASTERS_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_SIZES_H">FT_SIZES_H</a></td><td></td><td><a href="#FT_SFNT_NAMES_H">FT_SFNT_NAMES_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_MODULE_H">FT_MODULE_H</a></td><td></td><td><a href="#FT_OPENTYPE_VALIDATE_H">FT_OPENTYPE_VALIDATE_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_RENDER_H">FT_RENDER_H</a></td><td></td><td><a href="#FT_GX_VALIDATE_H">FT_GX_VALIDATE_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_AUTOHINTER_H">FT_AUTOHINTER_H</a></td><td></td><td><a href="#FT_PFR_H">FT_PFR_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_CFF_DRIVER_H">FT_CFF_DRIVER_H</a></td><td></td><td><a href="#FT_STROKER_H">FT_STROKER_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_TRUETYPE_DRIVER_H">FT_TRUETYPE_DRIVER_H</a></td><td></td><td><a href="#FT_SYNTHESIS_H">FT_SYNTHESIS_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_TYPE1_TABLES_H">FT_TYPE1_TABLES_H</a></td><td></td><td><a href="#FT_XFREE86_H">FT_XFREE86_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_TRUETYPE_IDS_H">FT_TRUETYPE_IDS_H</a></td><td></td><td><a href="#FT_TRIGONOMETRY_H">FT_TRIGONOMETRY_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_TRUETYPE_TABLES_H">FT_TRUETYPE_TABLES_H</a></td><td></td><td><a href="#FT_LCD_FILTER_H">FT_LCD_FILTER_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_TRUETYPE_TAGS_H">FT_TRUETYPE_TAGS_H</a></td><td></td><td><a href="#FT_UNPATENTED_HINTING_H">FT_UNPATENTED_HINTING_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_BDF_H">FT_BDF_H</a></td><td></td><td><a href="#FT_INCREMENTAL_H">FT_INCREMENTAL_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_CID_H">FT_CID_H</a></td><td></td><td><a href="#FT_GASP_H">FT_GASP_H</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_GZIP_H">FT_GZIP_H</a></td><td></td><td><a href="#FT_ADVANCES_H">FT_ADVANCES_H</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The following macros are defined to the name of specific FreeType 2 header files. They can be used directly in #include statements as in:</p>
|
||||
<pre class="colored">
|
||||
#include FT_FREETYPE_H
|
||||
#include FT_MULTIPLE_MASTERS_H
|
||||
#include FT_GLYPH_H
|
||||
</pre>
|
||||
<p>There are several reasons why we are now using macros to name public header files. The first one is that such macros are not limited to the infamous 8.3 naming rule required by DOS (and ‘FT_MULTIPLE_MASTERS_H’ is a lot more meaningful than ‘ftmm.h’).</p>
|
||||
<p>The second reason is that it allows for more flexibility in the way FreeType 2 is installed on a given system.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_CONFIG_CONFIG_H">FT_CONFIG_CONFIG_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#ifndef <b>FT_CONFIG_CONFIG_H</b>
|
||||
#define <b>FT_CONFIG_CONFIG_H</b> <freetype/config/ftconfig.h>
|
||||
#endif
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing FreeType 2 configuration data.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_CONFIG_STANDARD_LIBRARY_H">FT_CONFIG_STANDARD_LIBRARY_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#ifndef <b>FT_CONFIG_STANDARD_LIBRARY_H</b>
|
||||
#define <b>FT_CONFIG_STANDARD_LIBRARY_H</b> <freetype/config/ftstdlib.h>
|
||||
#endif
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing FreeType 2 interface to the standard C library functions.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_CONFIG_OPTIONS_H">FT_CONFIG_OPTIONS_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#ifndef <b>FT_CONFIG_OPTIONS_H</b>
|
||||
#define <b>FT_CONFIG_OPTIONS_H</b> <freetype/config/ftoption.h>
|
||||
#endif
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing FreeType 2 project-specific configuration options.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_CONFIG_MODULES_H">FT_CONFIG_MODULES_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#ifndef <b>FT_CONFIG_MODULES_H</b>
|
||||
#define <b>FT_CONFIG_MODULES_H</b> <freetype/config/ftmodule.h>
|
||||
#endif
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the list of FreeType 2 modules that are statically linked to new library instances in <a href="ft2-base_interface.html#FT_Init_FreeType">FT_Init_FreeType</a>.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_FREETYPE_H">FT_FREETYPE_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_FREETYPE_H</b> <freetype/freetype.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the base FreeType 2 API.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_ERRORS_H">FT_ERRORS_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_ERRORS_H</b> <freetype/fterrors.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the list of FreeType 2 error codes (and messages).</p>
|
||||
<p>It is included by <a href="ft2-header_file_macros.html#FT_FREETYPE_H">FT_FREETYPE_H</a>.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_MODULE_ERRORS_H">FT_MODULE_ERRORS_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_MODULE_ERRORS_H</b> <freetype/ftmoderr.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the list of FreeType 2 module error offsets (and messages).</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_SYSTEM_H">FT_SYSTEM_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_SYSTEM_H</b> <freetype/ftsystem.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the FreeType 2 interface to low-level operations (i.e., memory management and stream i/o).</p>
|
||||
<p>It is included by <a href="ft2-header_file_macros.html#FT_FREETYPE_H">FT_FREETYPE_H</a>.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_IMAGE_H">FT_IMAGE_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_IMAGE_H</b> <freetype/ftimage.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing type definitions related to glyph images (i.e., bitmaps, outlines, scan-converter parameters).</p>
|
||||
<p>It is included by <a href="ft2-header_file_macros.html#FT_FREETYPE_H">FT_FREETYPE_H</a>.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_TYPES_H">FT_TYPES_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_TYPES_H</b> <freetype/fttypes.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the basic data types defined by FreeType 2.</p>
|
||||
<p>It is included by <a href="ft2-header_file_macros.html#FT_FREETYPE_H">FT_FREETYPE_H</a>.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_LIST_H">FT_LIST_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_LIST_H</b> <freetype/ftlist.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the list management API of FreeType 2.</p>
|
||||
<p>(Most applications will never need to include this file.)</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_OUTLINE_H">FT_OUTLINE_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_OUTLINE_H</b> <freetype/ftoutln.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the scalable outline management API of FreeType 2.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_SIZES_H">FT_SIZES_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_SIZES_H</b> <freetype/ftsizes.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the API which manages multiple <a href="ft2-base_interface.html#FT_Size">FT_Size</a> objects per face.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_MODULE_H">FT_MODULE_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_MODULE_H</b> <freetype/ftmodapi.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the module management API of FreeType 2.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_RENDER_H">FT_RENDER_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_RENDER_H</b> <freetype/ftrender.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the renderer module management API of FreeType 2.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_AUTOHINTER_H">FT_AUTOHINTER_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_AUTOHINTER_H</b> <freetype/ftautoh.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing structures and macros related to the auto-hinting module.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_CFF_DRIVER_H">FT_CFF_DRIVER_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_CFF_DRIVER_H</b> <freetype/ftcffdrv.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing structures and macros related to the CFF driver module.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_TRUETYPE_DRIVER_H">FT_TRUETYPE_DRIVER_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_TRUETYPE_DRIVER_H</b> <freetype/ftttdrv.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing structures and macros related to the TrueType driver module.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_TYPE1_TABLES_H">FT_TYPE1_TABLES_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_TYPE1_TABLES_H</b> <freetype/t1tables.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the types and API specific to the Type 1 format.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_TRUETYPE_IDS_H">FT_TRUETYPE_IDS_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_TRUETYPE_IDS_H</b> <freetype/ttnameid.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the enumeration values which identify name strings, languages, encodings, etc. This file really contains a <i>large</i> set of constant macro definitions, taken from the TrueType and OpenType specifications.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_TRUETYPE_TABLES_H">FT_TRUETYPE_TABLES_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_TRUETYPE_TABLES_H</b> <freetype/tttables.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the types and API specific to the TrueType (as well as OpenType) format.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_TRUETYPE_TAGS_H">FT_TRUETYPE_TAGS_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_TRUETYPE_TAGS_H</b> <freetype/tttags.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the definitions of TrueType four-byte ‘tags’ which identify blocks in SFNT-based font formats (i.e., TrueType and OpenType).</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_BDF_H">FT_BDF_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_BDF_H</b> <freetype/ftbdf.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the definitions of an API which accesses BDF-specific strings from a face.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_CID_H">FT_CID_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_CID_H</b> <freetype/ftcid.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the definitions of an API which access CID font information from a face.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_GZIP_H">FT_GZIP_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_GZIP_H</b> <freetype/ftgzip.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the definitions of an API which supports gzip-compressed files.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_LZW_H">FT_LZW_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_LZW_H</b> <freetype/ftlzw.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the definitions of an API which supports LZW-compressed files.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_BZIP2_H">FT_BZIP2_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_BZIP2_H</b> <freetype/ftbzip2.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the definitions of an API which supports bzip2-compressed files.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_WINFONTS_H">FT_WINFONTS_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_WINFONTS_H</b> <freetype/ftwinfnt.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the definitions of an API which supports Windows FNT files.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_GLYPH_H">FT_GLYPH_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_GLYPH_H</b> <freetype/ftglyph.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the API of the optional glyph management component.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_BITMAP_H">FT_BITMAP_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_BITMAP_H</b> <freetype/ftbitmap.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the API of the optional bitmap conversion component.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_BBOX_H">FT_BBOX_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_BBOX_H</b> <freetype/ftbbox.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the API of the optional exact bounding box computation routines.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_CACHE_H">FT_CACHE_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_CACHE_H</b> <freetype/ftcache.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the API of the optional FreeType 2 cache sub-system.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_CACHE_IMAGE_H">FT_CACHE_IMAGE_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_CACHE_IMAGE_H</b> <a href="ft2-header_file_macros.html#FT_CACHE_H">FT_CACHE_H</a>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the ‘glyph image’ API of the FreeType 2 cache sub-system.</p>
|
||||
<p>It is used to define a cache for <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a> elements. You can also use the API defined in <a href="ft2-header_file_macros.html#FT_CACHE_SMALL_BITMAPS_H">FT_CACHE_SMALL_BITMAPS_H</a> if you only need to store small glyph bitmaps, as it will use less memory.</p>
|
||||
<p>This macro is deprecated. Simply include <a href="ft2-header_file_macros.html#FT_CACHE_H">FT_CACHE_H</a> to have all glyph image-related cache declarations.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_CACHE_SMALL_BITMAPS_H">FT_CACHE_SMALL_BITMAPS_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_CACHE_SMALL_BITMAPS_H</b> <a href="ft2-header_file_macros.html#FT_CACHE_H">FT_CACHE_H</a>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the ‘small bitmaps’ API of the FreeType 2 cache sub-system.</p>
|
||||
<p>It is used to define a cache for small glyph bitmaps in a relatively memory-efficient way. You can also use the API defined in <a href="ft2-header_file_macros.html#FT_CACHE_IMAGE_H">FT_CACHE_IMAGE_H</a> if you want to cache arbitrary glyph images, including scalable outlines.</p>
|
||||
<p>This macro is deprecated. Simply include <a href="ft2-header_file_macros.html#FT_CACHE_H">FT_CACHE_H</a> to have all small bitmaps-related cache declarations.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_CACHE_CHARMAP_H">FT_CACHE_CHARMAP_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_CACHE_CHARMAP_H</b> <a href="ft2-header_file_macros.html#FT_CACHE_H">FT_CACHE_H</a>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the ‘charmap’ API of the FreeType 2 cache sub-system.</p>
|
||||
<p>This macro is deprecated. Simply include <a href="ft2-header_file_macros.html#FT_CACHE_H">FT_CACHE_H</a> to have all charmap-based cache declarations.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_MAC_H">FT_MAC_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_MAC_H</b> <freetype/ftmac.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the Macintosh-specific FreeType 2 API. The latter is used to access fonts embedded in resource forks.</p>
|
||||
<p>This header file must be explicitly included by client applications compiled on the Mac (note that the base API still works though).</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_MULTIPLE_MASTERS_H">FT_MULTIPLE_MASTERS_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_MULTIPLE_MASTERS_H</b> <freetype/ftmm.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the optional multiple-masters management API of FreeType 2.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_SFNT_NAMES_H">FT_SFNT_NAMES_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_SFNT_NAMES_H</b> <freetype/ftsnames.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the optional FreeType 2 API which accesses embedded ‘name’ strings in SFNT-based font formats (i.e., TrueType and OpenType).</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_OPENTYPE_VALIDATE_H">FT_OPENTYPE_VALIDATE_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_OPENTYPE_VALIDATE_H</b> <freetype/ftotval.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the optional FreeType 2 API which validates OpenType tables (BASE, GDEF, GPOS, GSUB, JSTF).</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_GX_VALIDATE_H">FT_GX_VALIDATE_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_GX_VALIDATE_H</b> <freetype/ftgxval.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the optional FreeType 2 API which validates TrueTypeGX/AAT tables (feat, mort, morx, bsln, just, kern, opbd, trak, prop).</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_PFR_H">FT_PFR_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_PFR_H</b> <freetype/ftpfr.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the FreeType 2 API which accesses PFR-specific data.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_STROKER_H">FT_STROKER_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_STROKER_H</b> <freetype/ftstroke.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the FreeType 2 API which provides functions to stroke outline paths.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_SYNTHESIS_H">FT_SYNTHESIS_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_SYNTHESIS_H</b> <freetype/ftsynth.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the FreeType 2 API which performs artificial obliquing and emboldening.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_XFREE86_H">FT_XFREE86_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_XFREE86_H</b> <freetype/ftxf86.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the FreeType 2 API which provides functions specific to the XFree86 and X.Org X11 servers.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_TRIGONOMETRY_H">FT_TRIGONOMETRY_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_TRIGONOMETRY_H</b> <freetype/fttrigon.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the FreeType 2 API which performs trigonometric computations (e.g., cosines and arc tangents).</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_LCD_FILTER_H">FT_LCD_FILTER_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_LCD_FILTER_H</b> <freetype/ftlcdfil.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the FreeType 2 API which performs color filtering for subpixel rendering.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_UNPATENTED_HINTING_H">FT_UNPATENTED_HINTING_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_UNPATENTED_HINTING_H</b> <freetype/ttunpat.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the FreeType 2 API which performs color filtering for subpixel rendering.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_INCREMENTAL_H">FT_INCREMENTAL_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_INCREMENTAL_H</b> <freetype/ftincrem.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the FreeType 2 API which performs color filtering for subpixel rendering.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_GASP_H">FT_GASP_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_GASP_H</b> <freetype/ftgasp.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the FreeType 2 API which returns entries from the TrueType GASP table.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_ADVANCES_H">FT_ADVANCES_H</a></h4>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_ADVANCES_H</b> <freetype/ftadvanc.h>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A macro used in #include statements to name the file containing the FreeType 2 API which returns individual and ranged glyph advances.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,303 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<table align=center border=0 cellpadding=0 cellspacing=0>
|
||||
<tr><td><a href="ft2-bdf_fonts.html#FT_PropertyType">BDF_PROPERTY_TYPE_ATOM</a></td><td><a href="ft2-lcd_filtering.html#FT_LcdFilter">FT_LCD_FILTER_LIGHT</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_ParseOutline">FT_Stroker_ParseOutline</a></td></tr>
|
||||
<tr><td><a href="ft2-bdf_fonts.html#FT_PropertyType">BDF_PROPERTY_TYPE_CARDINAL</a></td><td><a href="ft2-lcd_filtering.html#FT_LcdFilter">FT_LCD_FILTER_NONE</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_Rewind">FT_Stroker_Rewind</a></td></tr>
|
||||
<tr><td><a href="ft2-bdf_fonts.html#FT_PropertyType">BDF_PROPERTY_TYPE_INTEGER</a></td><td><a href="ft2-lcd_filtering.html#FT_LcdFilter">FT_LcdFilter</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_Set">FT_Stroker_Set</a></td></tr>
|
||||
<tr><td><a href="ft2-bdf_fonts.html#FT_PropertyType">BDF_PROPERTY_TYPE_NONE</a></td><td><a href="ft2-header_file_macros.html#FT_LIST_H">FT_LIST_H</a></td><td><a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_StrokerBorder</a></td></tr>
|
||||
<tr><td><a href="ft2-bdf_fonts.html#BDF_Property">BDF_Property</a></td><td><a href="ft2-base_interface.html#FT_Library">FT_Library</a></td><td><a href="ft2-base_interface.html#FT_SUBGLYPH_FLAG_XXX">FT_SUBGLYPH_FLAG_2X2</a></td></tr>
|
||||
<tr><td><a href="ft2-bdf_fonts.html#BDF_PropertyRec">BDF_PropertyRec</a></td><td><a href="ft2-lcd_filtering.html#FT_Library_SetLcdFilter">FT_Library_SetLcdFilter</a></td><td><a href="ft2-base_interface.html#FT_SUBGLYPH_FLAG_XXX">FT_SUBGLYPH_FLAG_ARGS_ARE_WORDS</a></td></tr>
|
||||
<tr><td><a href="ft2-type1_tables.html#CID_FaceDict">CID_FaceDict</a></td><td><a href="ft2-lcd_filtering.html#FT_Library_SetLcdFilterWeights">FT_Library_SetLcdFilterWeights</a></td><td><a href="ft2-base_interface.html#FT_SUBGLYPH_FLAG_XXX">FT_SUBGLYPH_FLAG_ARGS_ARE_XY_VALUES</a></td></tr>
|
||||
<tr><td><a href="ft2-type1_tables.html#CID_FaceDictRec">CID_FaceDictRec</a></td><td><a href="ft2-version.html#FT_Library_Version">FT_Library_Version</a></td><td><a href="ft2-base_interface.html#FT_SUBGLYPH_FLAG_XXX">FT_SUBGLYPH_FLAG_ROUND_XY_TO_GRID</a></td></tr>
|
||||
<tr><td><a href="ft2-type1_tables.html#CID_FaceInfo">CID_FaceInfo</a></td><td><a href="ft2-list_processing.html#FT_List">FT_List</a></td><td><a href="ft2-base_interface.html#FT_SUBGLYPH_FLAG_XXX">FT_SUBGLYPH_FLAG_SCALE</a></td></tr>
|
||||
<tr><td><a href="ft2-type1_tables.html#CID_FaceInfoRec">CID_FaceInfoRec</a></td><td><a href="ft2-list_processing.html#FT_List_Add">FT_List_Add</a></td><td><a href="ft2-base_interface.html#FT_SUBGLYPH_FLAG_XXX">FT_SUBGLYPH_FLAG_USE_MY_METRICS</a></td></tr>
|
||||
<tr><td><a href="ft2-type1_tables.html#CID_Info">CID_Info</a></td><td><a href="ft2-list_processing.html#FT_List_Destructor">FT_List_Destructor</a></td><td><a href="ft2-base_interface.html#FT_SUBGLYPH_FLAG_XXX">FT_SUBGLYPH_FLAG_XXX</a></td></tr>
|
||||
<tr><td><a href="ft2-version.html#FREETYPE_XXX">FREETYPE_MAJOR</a></td><td><a href="ft2-list_processing.html#FT_List_Finalize">FT_List_Finalize</a></td><td><a href="ft2-base_interface.html#FT_SUBGLYPH_FLAG_XXX">FT_SUBGLYPH_FLAG_XY_SCALE</a></td></tr>
|
||||
<tr><td><a href="ft2-version.html#FREETYPE_XXX">FREETYPE_MINOR</a></td><td><a href="ft2-list_processing.html#FT_List_Find">FT_List_Find</a></td><td><a href="ft2-base_interface.html#FT_SubGlyph">FT_SubGlyph</a></td></tr>
|
||||
<tr><td><a href="ft2-version.html#FREETYPE_XXX">FREETYPE_PATCH</a></td><td><a href="ft2-list_processing.html#FT_List_Insert">FT_List_Insert</a></td><td><a href="ft2-header_file_macros.html#FT_SYNTHESIS_H">FT_SYNTHESIS_H</a></td></tr>
|
||||
<tr><td><a href="ft2-version.html#FREETYPE_XXX">FREETYPE_XXX</a></td><td><a href="ft2-list_processing.html#FT_List_Iterate">FT_List_Iterate</a></td><td><a href="ft2-header_file_macros.html#FT_SYSTEM_H">FT_SYSTEM_H</a></td></tr>
|
||||
<tr><td><a href="ft2-sizes_management.html#FT_Activate_Size">FT_Activate_Size</a></td><td><a href="ft2-list_processing.html#FT_List_Iterator">FT_List_Iterator</a></td><td><a href="ft2-basic_types.html#FT_Tag">FT_Tag</a></td></tr>
|
||||
<tr><td><a href="ft2-quick_advance.html#FT_ADVANCE_FLAG_FAST_ONLY">FT_ADVANCE_FLAG_FAST_ONLY</a></td><td><a href="ft2-list_processing.html#FT_List_Remove">FT_List_Remove</a></td><td><a href="ft2-computations.html#FT_Tan">FT_Tan</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_ADVANCES_H">FT_ADVANCES_H</a></td><td><a href="ft2-list_processing.html#FT_List_Up">FT_List_Up</a></td><td><a href="ft2-header_file_macros.html#FT_TRIGONOMETRY_H">FT_TRIGONOMETRY_H</a></td></tr>
|
||||
<tr><td><a href="ft2-module_management.html#FT_Add_Default_Modules">FT_Add_Default_Modules</a></td><td><a href="ft2-list_processing.html#FT_ListNode">FT_ListNode</a></td><td><a href="ft2-header_file_macros.html#FT_TRUETYPE_DRIVER_H">FT_TRUETYPE_DRIVER_H</a></td></tr>
|
||||
<tr><td><a href="ft2-module_management.html#FT_Add_Module">FT_Add_Module</a></td><td><a href="ft2-list_processing.html#FT_ListNodeRec">FT_ListNodeRec</a></td><td><a href="ft2-truetype_engine.html#FT_TrueTypeEngineType">FT_TRUETYPE_ENGINE_TYPE_NONE</a></td></tr>
|
||||
<tr><td><a href="ft2-system_interface.html#FT_Alloc_Func">FT_Alloc_Func</a></td><td><a href="ft2-list_processing.html#FT_ListRec">FT_ListRec</a></td><td><a href="ft2-truetype_engine.html#FT_TrueTypeEngineType">FT_TRUETYPE_ENGINE_TYPE_PATENTED</a></td></tr>
|
||||
<tr><td><a href="ft2-computations.html#FT_ANGLE_2PI">FT_ANGLE_2PI</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_COLOR</a></td><td><a href="ft2-truetype_engine.html#FT_TrueTypeEngineType">FT_TRUETYPE_ENGINE_TYPE_UNPATENTED</a></td></tr>
|
||||
<tr><td><a href="ft2-computations.html#FT_ANGLE_PI">FT_ANGLE_PI</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_CROP_BITMAP</a></td><td><a href="ft2-header_file_macros.html#FT_TRUETYPE_IDS_H">FT_TRUETYPE_IDS_H</a></td></tr>
|
||||
<tr><td><a href="ft2-computations.html#FT_ANGLE_PI2">FT_ANGLE_PI2</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_DEFAULT</a></td><td><a href="ft2-header_file_macros.html#FT_TRUETYPE_TABLES_H">FT_TRUETYPE_TABLES_H</a></td></tr>
|
||||
<tr><td><a href="ft2-computations.html#FT_ANGLE_PI4">FT_ANGLE_PI4</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_FORCE_AUTOHINT</a></td><td><a href="ft2-header_file_macros.html#FT_TRUETYPE_TAGS_H">FT_TRUETYPE_TAGS_H</a></td></tr>
|
||||
<tr><td><a href="ft2-computations.html#FT_Angle">FT_Angle</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH</a></td><td><a href="ft2-truetype_engine.html#FT_TrueTypeEngineType">FT_TrueTypeEngineType</a></td></tr>
|
||||
<tr><td><a href="ft2-computations.html#FT_Angle_Diff">FT_Angle_Diff</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_IGNORE_TRANSFORM</a></td><td><a href="ft2-gx_validation.html#FT_TrueTypeGX_Free">FT_TrueTypeGX_Free</a></td></tr>
|
||||
<tr><td><a href="ft2-computations.html#FT_Atan2">FT_Atan2</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_LINEAR_DESIGN</a></td><td><a href="ft2-gx_validation.html#FT_TrueTypeGX_Validate">FT_TrueTypeGX_Validate</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Attach_File">FT_Attach_File</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_MONOCHROME</a></td><td><a href="ft2-header_file_macros.html#FT_TYPE1_TABLES_H">FT_TYPE1_TABLES_H</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Attach_Stream">FT_Attach_Stream</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_NO_AUTOHINT</a></td><td><a href="ft2-header_file_macros.html#FT_TYPES_H">FT_TYPES_H</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_AUTOHINTER_H">FT_AUTOHINTER_H</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_NO_BITMAP</a></td><td><a href="ft2-basic_types.html#FT_UFWord">FT_UFWord</a></td></tr>
|
||||
<tr><td><a href="ft2-auto_hinter.html#FT_AUTOHINTER_SCRIPT_XXX">FT_AUTOHINTER_SCRIPT_CJK</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_NO_HINTING</a></td><td><a href="ft2-basic_types.html#FT_UInt">FT_UInt</a></td></tr>
|
||||
<tr><td><a href="ft2-auto_hinter.html#FT_AUTOHINTER_SCRIPT_XXX">FT_AUTOHINTER_SCRIPT_INDIC</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_NO_RECURSE</a></td><td><a href="ft2-basic_types.html#FT_UInt16">FT_UInt16</a></td></tr>
|
||||
<tr><td><a href="ft2-auto_hinter.html#FT_AUTOHINTER_SCRIPT_XXX">FT_AUTOHINTER_SCRIPT_LATIN</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_NO_SCALE</a></td><td><a href="ft2-basic_types.html#FT_UInt32">FT_UInt32</a></td></tr>
|
||||
<tr><td><a href="ft2-auto_hinter.html#FT_AUTOHINTER_SCRIPT_XXX">FT_AUTOHINTER_SCRIPT_NONE</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_PEDANTIC</a></td><td><a href="ft2-basic_types.html#FT_UInt64">FT_UInt64</a></td></tr>
|
||||
<tr><td><a href="ft2-auto_hinter.html#FT_AUTOHINTER_SCRIPT_XXX">FT_AUTOHINTER_SCRIPT_XXX</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_RENDER</a></td><td><a href="ft2-basic_types.html#FT_ULong">FT_ULong</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_BBOX_H">FT_BBOX_H</a></td><td><a href="ft2-base_interface.html#FT_LOAD_TARGET_XXX">FT_LOAD_TARGET_LCD</a></td><td><a href="ft2-header_file_macros.html#FT_UNPATENTED_HINTING_H">FT_UNPATENTED_HINTING_H</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_BBox">FT_BBox</a></td><td><a href="ft2-base_interface.html#FT_LOAD_TARGET_XXX">FT_LOAD_TARGET_LCD_V</a></td><td><a href="ft2-basic_types.html#FT_UnitVector">FT_UnitVector</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_BDF_H">FT_BDF_H</a></td><td><a href="ft2-base_interface.html#FT_LOAD_TARGET_XXX">FT_LOAD_TARGET_LIGHT</a></td><td><a href="ft2-basic_types.html#FT_UShort">FT_UShort</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_BITMAP_H">FT_BITMAP_H</a></td><td><a href="ft2-base_interface.html#FT_LOAD_TARGET_MODE">FT_LOAD_TARGET_MODE</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_CKERNXXX">FT_VALIDATE_APPLE</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Bitmap">FT_Bitmap</a></td><td><a href="ft2-base_interface.html#FT_LOAD_TARGET_XXX">FT_LOAD_TARGET_MONO</a></td><td><a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_BASE</a></td></tr>
|
||||
<tr><td><a href="ft2-bitmap_handling.html#FT_Bitmap_Convert">FT_Bitmap_Convert</a></td><td><a href="ft2-base_interface.html#FT_LOAD_TARGET_XXX">FT_LOAD_TARGET_NORMAL</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_bsln</a></td></tr>
|
||||
<tr><td><a href="ft2-bitmap_handling.html#FT_Bitmap_Copy">FT_Bitmap_Copy</a></td><td><a href="ft2-base_interface.html#FT_LOAD_TARGET_XXX">FT_LOAD_TARGET_XXX</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_CKERNXXX">FT_VALIDATE_CKERN</a></td></tr>
|
||||
<tr><td><a href="ft2-bitmap_handling.html#FT_Bitmap_Done">FT_Bitmap_Done</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_VERTICAL_LAYOUT</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_CKERNXXX">FT_VALIDATE_CKERNXXX</a></td></tr>
|
||||
<tr><td><a href="ft2-bitmap_handling.html#FT_Bitmap_Embolden">FT_Bitmap_Embolden</a></td><td><a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_XXX</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_feat</a></td></tr>
|
||||
<tr><td><a href="ft2-bitmap_handling.html#FT_Bitmap_New">FT_Bitmap_New</a></td><td><a href="ft2-base_interface.html#FT_Load_Char">FT_Load_Char</a></td><td><a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_GDEF</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Bitmap_Size">FT_Bitmap_Size</a></td><td><a href="ft2-base_interface.html#FT_Load_Glyph">FT_Load_Glyph</a></td><td><a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_GPOS</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_BitmapGlyph">FT_BitmapGlyph</a></td><td><a href="ft2-truetype_tables.html#FT_Load_Sfnt_Table">FT_Load_Sfnt_Table</a></td><td><a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_GSUB</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_BitmapGlyphRec">FT_BitmapGlyphRec</a></td><td><a href="ft2-basic_types.html#FT_Long">FT_Long</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_GX</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Bool">FT_Bool</a></td><td><a href="ft2-header_file_macros.html#FT_LZW_H">FT_LZW_H</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_GX_LENGTH">FT_VALIDATE_GX_LENGTH</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Byte">FT_Byte</a></td><td><a href="ft2-header_file_macros.html#FT_MAC_H">FT_MAC_H</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_GXXXX</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Bytes">FT_Bytes</a></td><td><a href="ft2-basic_types.html#FT_MAKE_TAG">FT_MAKE_TAG</a></td><td><a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_JSTF</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_BZIP2_H">FT_BZIP2_H</a></td><td><a href="ft2-basic_types.html#FT_Matrix">FT_Matrix</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_just</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_CACHE_CHARMAP_H">FT_CACHE_CHARMAP_H</a></td><td><a href="ft2-computations.html#FT_Matrix_Invert">FT_Matrix_Invert</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_kern</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_CACHE_H">FT_CACHE_H</a></td><td><a href="ft2-computations.html#FT_Matrix_Multiply">FT_Matrix_Multiply</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_lcar</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_CACHE_IMAGE_H">FT_CACHE_IMAGE_H</a></td><td><a href="ft2-system_interface.html#FT_Memory">FT_Memory</a></td><td><a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_MATH</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_CACHE_SMALL_BITMAPS_H">FT_CACHE_SMALL_BITMAPS_H</a></td><td><a href="ft2-system_interface.html#FT_MemoryRec">FT_MemoryRec</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_CKERNXXX">FT_VALIDATE_MS</a></td></tr>
|
||||
<tr><td><a href="ft2-computations.html#FT_CeilFix">FT_CeilFix</a></td><td><a href="ft2-multiple_masters.html#FT_MM_Axis">FT_MM_Axis</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_mort</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_CFF_DRIVER_H">FT_CFF_DRIVER_H</a></td><td><a href="ft2-multiple_masters.html#FT_MM_Var">FT_MM_Var</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_morx</a></td></tr>
|
||||
<tr><td><a href="ft2-cff_driver.html#FT_CFF_HINTING_XXX">FT_CFF_HINTING_ADOBE</a></td><td><a href="ft2-header_file_macros.html#FT_MODULE_ERRORS_H">FT_MODULE_ERRORS_H</a></td><td><a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_OT</a></td></tr>
|
||||
<tr><td><a href="ft2-cff_driver.html#FT_CFF_HINTING_XXX">FT_CFF_HINTING_FREETYPE</a></td><td><a href="ft2-header_file_macros.html#FT_MODULE_H">FT_MODULE_H</a></td><td><a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_OTXXX</a></td></tr>
|
||||
<tr><td><a href="ft2-cff_driver.html#FT_CFF_HINTING_XXX">FT_CFF_HINTING_XXX</a></td><td><a href="ft2-base_interface.html#FT_Module">FT_Module</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_opbd</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Char">FT_Char</a></td><td><a href="ft2-module_management.html#FT_Module_Class">FT_Module_Class</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_prop</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_CharMap">FT_CharMap</a></td><td><a href="ft2-module_management.html#FT_Module_Constructor">FT_Module_Constructor</a></td><td><a href="ft2-gx_validation.html#FT_VALIDATE_GXXXX">FT_VALIDATE_trak</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_CharMapRec">FT_CharMapRec</a></td><td><a href="ft2-module_management.html#FT_Module_Destructor">FT_Module_Destructor</a></td><td><a href="ft2-multiple_masters.html#FT_Var_Axis">FT_Var_Axis</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_CID_H">FT_CID_H</a></td><td><a href="ft2-module_management.html#FT_Module_Requester">FT_Module_Requester</a></td><td><a href="ft2-multiple_masters.html#FT_Var_Named_Style">FT_Var_Named_Style</a></td></tr>
|
||||
<tr><td><a href="ft2-gx_validation.html#FT_ClassicKern_Free">FT_ClassicKern_Free</a></td><td><a href="ft2-header_file_macros.html#FT_MULTIPLE_MASTERS_H">FT_MULTIPLE_MASTERS_H</a></td><td><a href="ft2-basic_types.html#FT_Vector">FT_Vector</a></td></tr>
|
||||
<tr><td><a href="ft2-gx_validation.html#FT_ClassicKern_Validate">FT_ClassicKern_Validate</a></td><td><a href="ft2-computations.html#FT_MulDiv">FT_MulDiv</a></td><td><a href="ft2-computations.html#FT_Vector_From_Polar">FT_Vector_From_Polar</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_CONFIG_CONFIG_H">FT_CONFIG_CONFIG_H</a></td><td><a href="ft2-computations.html#FT_MulFix">FT_MulFix</a></td><td><a href="ft2-computations.html#FT_Vector_Length">FT_Vector_Length</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_CONFIG_MODULES_H">FT_CONFIG_MODULES_H</a></td><td><a href="ft2-multiple_masters.html#FT_Multi_Master">FT_Multi_Master</a></td><td><a href="ft2-computations.html#FT_Vector_Polarize">FT_Vector_Polarize</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_CONFIG_OPTIONS_H">FT_CONFIG_OPTIONS_H</a></td><td><a href="ft2-base_interface.html#FT_New_Face">FT_New_Face</a></td><td><a href="ft2-computations.html#FT_Vector_Rotate">FT_Vector_Rotate</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_CONFIG_STANDARD_LIBRARY_H">FT_CONFIG_STANDARD_LIBRARY_H</a></td><td><a href="ft2-mac_specific.html#FT_New_Face_From_FOND">FT_New_Face_From_FOND</a></td><td><a href="ft2-computations.html#FT_Vector_Transform">FT_Vector_Transform</a></td></tr>
|
||||
<tr><td><a href="ft2-computations.html#FT_Cos">FT_Cos</a></td><td><a href="ft2-mac_specific.html#FT_New_Face_From_FSRef">FT_New_Face_From_FSRef</a></td><td><a href="ft2-computations.html#FT_Vector_Unit">FT_Vector_Unit</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Data">FT_Data</a></td><td><a href="ft2-mac_specific.html#FT_New_Face_From_FSSpec">FT_New_Face_From_FSSpec</a></td><td><a href="ft2-header_file_macros.html#FT_WINFONTS_H">FT_WINFONTS_H</a></td></tr>
|
||||
<tr><td><a href="ft2-computations.html#FT_DivFix">FT_DivFix</a></td><td><a href="ft2-module_management.html#FT_New_Library">FT_New_Library</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_Header">FT_WinFNT_Header</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Done_Face">FT_Done_Face</a></td><td><a href="ft2-base_interface.html#FT_New_Memory_Face">FT_New_Memory_Face</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_HeaderRec">FT_WinFNT_HeaderRec</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Done_FreeType">FT_Done_FreeType</a></td><td><a href="ft2-sizes_management.html#FT_New_Size">FT_New_Size</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1250</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_Done_Glyph">FT_Done_Glyph</a></td><td><a href="ft2-basic_types.html#FT_Offset">FT_Offset</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1251</a></td></tr>
|
||||
<tr><td><a href="ft2-module_management.html#FT_Done_Library">FT_Done_Library</a></td><td><a href="ft2-base_interface.html#FT_OPEN_XXX">FT_OPEN_DRIVER</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1252</a></td></tr>
|
||||
<tr><td><a href="ft2-sizes_management.html#FT_Done_Size">FT_Done_Size</a></td><td><a href="ft2-base_interface.html#FT_OPEN_XXX">FT_OPEN_MEMORY</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1253</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Driver">FT_Driver</a></td><td><a href="ft2-base_interface.html#FT_OPEN_XXX">FT_OPEN_PARAMS</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1254</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_ENC_TAG">FT_ENC_TAG</a></td><td><a href="ft2-base_interface.html#FT_OPEN_XXX">FT_OPEN_PATHNAME</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1255</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_ADOBE_CUSTOM</a></td><td><a href="ft2-base_interface.html#FT_OPEN_XXX">FT_OPEN_STREAM</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1256</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_ADOBE_EXPERT</a></td><td><a href="ft2-base_interface.html#FT_OPEN_XXX">FT_OPEN_XXX</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1257</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_ADOBE_LATIN_1</a></td><td><a href="ft2-header_file_macros.html#FT_OPENTYPE_VALIDATE_H">FT_OPENTYPE_VALIDATE_H</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1258</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_ADOBE_STANDARD</a></td><td><a href="ft2-base_interface.html#FT_Open_Args">FT_Open_Args</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1361</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_APPLE_ROMAN</a></td><td><a href="ft2-base_interface.html#FT_Open_Face">FT_Open_Face</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP874</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_BIG5</a></td><td><a href="ft2-ot_validation.html#FT_OpenType_Free">FT_OpenType_Free</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP932</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_GB2312</a></td><td><a href="ft2-ot_validation.html#FT_OpenType_Validate">FT_OpenType_Validate</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP936</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_JOHAB</a></td><td><a href="ft2-outline_processing.html#FT_Orientation">FT_ORIENTATION_FILL_LEFT</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP949</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_MS_BIG5</a></td><td><a href="ft2-outline_processing.html#FT_Orientation">FT_ORIENTATION_FILL_RIGHT</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP950</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_MS_GB2312</a></td><td><a href="ft2-outline_processing.html#FT_Orientation">FT_ORIENTATION_NONE</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_DEFAULT</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_MS_JOHAB</a></td><td><a href="ft2-outline_processing.html#FT_Orientation">FT_ORIENTATION_POSTSCRIPT</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_MAC</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_MS_SJIS</a></td><td><a href="ft2-outline_processing.html#FT_Orientation">FT_ORIENTATION_TRUETYPE</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_OEM</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_MS_SYMBOL</a></td><td><a href="ft2-outline_processing.html#FT_Orientation">FT_Orientation</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_SYMBOL</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_MS_WANSUNG</a></td><td><a href="ft2-outline_processing.html#FT_OUTLINE_FLAGS">FT_OUTLINE_EVEN_ODD_FILL</a></td><td><a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_XXX</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_NONE</a></td><td><a href="ft2-outline_processing.html#FT_OUTLINE_FLAGS">FT_OUTLINE_FLAGS</a></td><td><a href="ft2-header_file_macros.html#FT_XFREE86_H">FT_XFREE86_H</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_OLD_LATIN_2</a></td><td><a href="ft2-header_file_macros.html#FT_OUTLINE_H">FT_OUTLINE_H</a></td><td><a href="ft2-cache_subsystem.html#FTC_CMapCache">FTC_CMapCache</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_SJIS</a></td><td><a href="ft2-outline_processing.html#FT_OUTLINE_FLAGS">FT_OUTLINE_HIGH_PRECISION</a></td><td><a href="ft2-cache_subsystem.html#FTC_CMapCache_Lookup">FTC_CMapCache_Lookup</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_UNICODE</a></td><td><a href="ft2-outline_processing.html#FT_OUTLINE_FLAGS">FT_OUTLINE_IGNORE_DROPOUTS</a></td><td><a href="ft2-cache_subsystem.html#FTC_CMapCache_New">FTC_CMapCache_New</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_ENCODING_WANSUNG</a></td><td><a href="ft2-outline_processing.html#FT_OUTLINE_FLAGS">FT_OUTLINE_INCLUDE_STUBS</a></td><td><a href="ft2-cache_subsystem.html#FTC_Face_Requester">FTC_Face_Requester</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Encoding">FT_Encoding</a></td><td><a href="ft2-outline_processing.html#FT_OUTLINE_FLAGS">FT_OUTLINE_NONE</a></td><td><a href="ft2-cache_subsystem.html#FTC_FaceID">FTC_FaceID</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_ERRORS_H">FT_ERRORS_H</a></td><td><a href="ft2-outline_processing.html#FT_OUTLINE_FLAGS">FT_OUTLINE_OWNER</a></td><td><a href="ft2-cache_subsystem.html#FTC_ImageCache">FTC_ImageCache</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Error">FT_Error</a></td><td><a href="ft2-outline_processing.html#FT_OUTLINE_FLAGS">FT_OUTLINE_REVERSE_FILL</a></td><td><a href="ft2-cache_subsystem.html#FTC_ImageCache_Lookup">FTC_ImageCache_Lookup</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_F26Dot6">FT_F26Dot6</a></td><td><a href="ft2-outline_processing.html#FT_OUTLINE_FLAGS">FT_OUTLINE_SINGLE_PASS</a></td><td><a href="ft2-cache_subsystem.html#FTC_ImageCache_LookupScaler">FTC_ImageCache_LookupScaler</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_F2Dot14">FT_F2Dot14</a></td><td><a href="ft2-outline_processing.html#FT_OUTLINE_FLAGS">FT_OUTLINE_SMART_DROPOUTS</a></td><td><a href="ft2-cache_subsystem.html#FTC_ImageCache_New">FTC_ImageCache_New</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_CID_KEYED</a></td><td><a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a></td><td><a href="ft2-cache_subsystem.html#FTC_ImageType">FTC_ImageType</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_EXTERNAL_STREAM</a></td><td><a href="ft2-outline_processing.html#FT_Outline_Check">FT_Outline_Check</a></td><td><a href="ft2-cache_subsystem.html#FTC_ImageTypeRec">FTC_ImageTypeRec</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_FAST_GLYPHS</a></td><td><a href="ft2-outline_processing.html#FT_Outline_ConicToFunc">FT_Outline_ConicToFunc</a></td><td><a href="ft2-cache_subsystem.html#FTC_Manager">FTC_Manager</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_FIXED_SIZES</a></td><td><a href="ft2-outline_processing.html#FT_Outline_Copy">FT_Outline_Copy</a></td><td><a href="ft2-cache_subsystem.html#FTC_Manager_Done">FTC_Manager_Done</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_FIXED_WIDTH</a></td><td><a href="ft2-outline_processing.html#FT_Outline_CubicToFunc">FT_Outline_CubicToFunc</a></td><td><a href="ft2-cache_subsystem.html#FTC_Manager_LookupFace">FTC_Manager_LookupFace</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_GLYPH_NAMES</a></td><td><a href="ft2-outline_processing.html#FT_Outline_Decompose">FT_Outline_Decompose</a></td><td><a href="ft2-cache_subsystem.html#FTC_Manager_LookupSize">FTC_Manager_LookupSize</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_HINTER</a></td><td><a href="ft2-outline_processing.html#FT_Outline_Done">FT_Outline_Done</a></td><td><a href="ft2-cache_subsystem.html#FTC_Manager_New">FTC_Manager_New</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_HORIZONTAL</a></td><td><a href="ft2-outline_processing.html#FT_Outline_Embolden">FT_Outline_Embolden</a></td><td><a href="ft2-cache_subsystem.html#FTC_Manager_RemoveFaceID">FTC_Manager_RemoveFaceID</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_KERNING</a></td><td><a href="ft2-outline_processing.html#FT_Outline_EmboldenXY">FT_Outline_EmboldenXY</a></td><td><a href="ft2-cache_subsystem.html#FTC_Manager_Reset">FTC_Manager_Reset</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_MULTIPLE_MASTERS</a></td><td><a href="ft2-outline_processing.html#FT_Outline_Funcs">FT_Outline_Funcs</a></td><td><a href="ft2-cache_subsystem.html#FTC_Node">FTC_Node</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_SCALABLE</a></td><td><a href="ft2-outline_processing.html#FT_Outline_Get_BBox">FT_Outline_Get_BBox</a></td><td><a href="ft2-cache_subsystem.html#FTC_Node_Unref">FTC_Node_Unref</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_SFNT</a></td><td><a href="ft2-outline_processing.html#FT_Outline_Get_Bitmap">FT_Outline_Get_Bitmap</a></td><td><a href="ft2-cache_subsystem.html#FTC_SBit">FTC_SBit</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_TRICKY</a></td><td><a href="ft2-outline_processing.html#FT_Outline_Get_CBox">FT_Outline_Get_CBox</a></td><td><a href="ft2-cache_subsystem.html#FTC_SBitCache">FTC_SBitCache</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_VERTICAL</a></td><td><a href="ft2-outline_processing.html#FT_Outline_Get_Orientation">FT_Outline_Get_Orientation</a></td><td><a href="ft2-cache_subsystem.html#FTC_SBitCache_Lookup">FTC_SBitCache_Lookup</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FACE_FLAG_XXX">FT_FACE_FLAG_XXX</a></td><td><a href="ft2-glyph_stroker.html#FT_Outline_GetInsideBorder">FT_Outline_GetInsideBorder</a></td><td><a href="ft2-cache_subsystem.html#FTC_SBitCache_LookupScaler">FTC_SBitCache_LookupScaler</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Face">FT_Face</a></td><td><a href="ft2-glyph_stroker.html#FT_Outline_GetOutsideBorder">FT_Outline_GetOutsideBorder</a></td><td><a href="ft2-cache_subsystem.html#FTC_SBitCache_New">FTC_SBitCache_New</a></td></tr>
|
||||
<tr><td><a href="ft2-version.html#FT_Face_CheckTrueTypePatents">FT_Face_CheckTrueTypePatents</a></td><td><a href="ft2-outline_processing.html#FT_Outline_LineToFunc">FT_Outline_LineToFunc</a></td><td><a href="ft2-cache_subsystem.html#FTC_SBitRec">FTC_SBitRec</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_variants.html#FT_Face_GetCharsOfVariant">FT_Face_GetCharsOfVariant</a></td><td><a href="ft2-outline_processing.html#FT_Outline_MoveToFunc">FT_Outline_MoveToFunc</a></td><td><a href="ft2-cache_subsystem.html#FTC_Scaler">FTC_Scaler</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_variants.html#FT_Face_GetCharVariantIndex">FT_Face_GetCharVariantIndex</a></td><td><a href="ft2-outline_processing.html#FT_Outline_New">FT_Outline_New</a></td><td><a href="ft2-cache_subsystem.html#FTC_ScalerRec">FTC_ScalerRec</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_variants.html#FT_Face_GetCharVariantIsDefault">FT_Face_GetCharVariantIsDefault</a></td><td><a href="ft2-outline_processing.html#FT_Outline_Render">FT_Outline_Render</a></td><td><a href="ft2-auto_hinter.html#fallback-script">fallback-script</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_variants.html#FT_Face_GetVariantSelectors">FT_Face_GetVariantSelectors</a></td><td><a href="ft2-outline_processing.html#FT_Outline_Reverse">FT_Outline_Reverse</a></td><td><a href="ft2-base_interface.html#ft_encoding_xxx">ft_encoding_xxx</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_variants.html#FT_Face_GetVariantsOfChar">FT_Face_GetVariantsOfChar</a></td><td><a href="ft2-outline_processing.html#FT_Outline_Transform">FT_Outline_Transform</a></td><td><a href="ft2-glyph_management.html#ft_glyph_bbox_xxx">ft_glyph_bbox_gridfit</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Face_Internal">FT_Face_Internal</a></td><td><a href="ft2-outline_processing.html#FT_Outline_Translate">FT_Outline_Translate</a></td><td><a href="ft2-glyph_management.html#ft_glyph_bbox_xxx">ft_glyph_bbox_pixels</a></td></tr>
|
||||
<tr><td><a href="ft2-version.html#FT_Face_SetUnpatentedHinting">FT_Face_SetUnpatentedHinting</a></td><td><a href="ft2-glyph_management.html#FT_OutlineGlyph">FT_OutlineGlyph</a></td><td><a href="ft2-glyph_management.html#ft_glyph_bbox_xxx">ft_glyph_bbox_subpixels</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FaceRec">FT_FaceRec</a></td><td><a href="ft2-glyph_management.html#FT_OutlineGlyphRec">FT_OutlineGlyphRec</a></td><td><a href="ft2-glyph_management.html#ft_glyph_bbox_xxx">ft_glyph_bbox_truncate</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a></td><td><a href="ft2-sfnt_names.html#FT_PARAM_TAG_IGNORE_PREFERRED_FAMILY">FT_PARAM_TAG_IGNORE_PREFERRED_FAMILY</a></td><td><a href="ft2-glyph_management.html#ft_glyph_bbox_xxx">ft_glyph_bbox_unscaled</a></td></tr>
|
||||
<tr><td><a href="ft2-computations.html#FT_FloorFix">FT_FloorFix</a></td><td><a href="ft2-sfnt_names.html#FT_PARAM_TAG_IGNORE_PREFERRED_SUBFAMILY">FT_PARAM_TAG_IGNORE_PREFERRED_SUBFAMILY</a></td><td><a href="ft2-glyph_management.html#ft_glyph_bbox_xxx">ft_glyph_bbox_xxx</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_FREETYPE_H">FT_FREETYPE_H</a></td><td><a href="ft2-incremental.html#FT_PARAM_TAG_INCREMENTAL">FT_PARAM_TAG_INCREMENTAL</a></td><td><a href="ft2-basic_types.html#ft_glyph_format_xxx">ft_glyph_format_bitmap</a></td></tr>
|
||||
<tr><td><a href="ft2-system_interface.html#FT_Free_Func">FT_Free_Func</a></td><td><a href="ft2-truetype_tables.html#FT_PARAM_TAG_UNPATENTED_HINTING">FT_PARAM_TAG_UNPATENTED_HINTING</a></td><td><a href="ft2-basic_types.html#ft_glyph_format_xxx">ft_glyph_format_composite</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FSTYPE_XXX">FT_FSTYPE_BITMAP_EMBEDDING_ONLY</a></td><td><a href="ft2-basic_types.html#FT_Palette_Mode">FT_Palette_Mode</a></td><td><a href="ft2-basic_types.html#ft_glyph_format_xxx">ft_glyph_format_none</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FSTYPE_XXX">FT_FSTYPE_EDITABLE_EMBEDDING</a></td><td><a href="ft2-base_interface.html#FT_Parameter">FT_Parameter</a></td><td><a href="ft2-basic_types.html#ft_glyph_format_xxx">ft_glyph_format_outline</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FSTYPE_XXX">FT_FSTYPE_INSTALLABLE_EMBEDDING</a></td><td><a href="ft2-header_file_macros.html#FT_PFR_H">FT_PFR_H</a></td><td><a href="ft2-basic_types.html#ft_glyph_format_xxx">ft_glyph_format_plotter</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FSTYPE_XXX">FT_FSTYPE_NO_SUBSETTING</a></td><td><a href="ft2-basic_types.html#FT_Pixel_Mode">FT_PIXEL_MODE_BGRA</a></td><td><a href="ft2-basic_types.html#ft_glyph_format_xxx">ft_glyph_format_xxx</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FSTYPE_XXX">FT_FSTYPE_PREVIEW_AND_PRINT_EMBEDDING</a></td><td><a href="ft2-basic_types.html#FT_Pixel_Mode">FT_PIXEL_MODE_GRAY</a></td><td><a href="ft2-base_interface.html#ft_kerning_default">ft_kerning_default</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FSTYPE_XXX">FT_FSTYPE_RESTRICTED_LICENSE_EMBEDDING</a></td><td><a href="ft2-basic_types.html#FT_Pixel_Mode">FT_PIXEL_MODE_GRAY2</a></td><td><a href="ft2-base_interface.html#ft_kerning_unfitted">ft_kerning_unfitted</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_FSTYPE_XXX">FT_FSTYPE_XXX</a></td><td><a href="ft2-basic_types.html#FT_Pixel_Mode">FT_PIXEL_MODE_GRAY4</a></td><td><a href="ft2-base_interface.html#ft_kerning_unscaled">ft_kerning_unscaled</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_FWord">FT_FWord</a></td><td><a href="ft2-basic_types.html#FT_Pixel_Mode">FT_PIXEL_MODE_LCD</a></td><td><a href="ft2-base_interface.html#FT_OPEN_XXX">ft_open_driver</a></td></tr>
|
||||
<tr><td><a href="ft2-gasp_table.html#FT_GASP_XXX">FT_GASP_DO_GRAY</a></td><td><a href="ft2-basic_types.html#FT_Pixel_Mode">FT_PIXEL_MODE_LCD_V</a></td><td><a href="ft2-base_interface.html#FT_OPEN_XXX">ft_open_memory</a></td></tr>
|
||||
<tr><td><a href="ft2-gasp_table.html#FT_GASP_XXX">FT_GASP_DO_GRIDFIT</a></td><td><a href="ft2-basic_types.html#FT_Pixel_Mode">FT_PIXEL_MODE_MONO</a></td><td><a href="ft2-base_interface.html#FT_OPEN_XXX">ft_open_params</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_GASP_H">FT_GASP_H</a></td><td><a href="ft2-basic_types.html#FT_Pixel_Mode">FT_PIXEL_MODE_NONE</a></td><td><a href="ft2-base_interface.html#FT_OPEN_XXX">ft_open_pathname</a></td></tr>
|
||||
<tr><td><a href="ft2-gasp_table.html#FT_GASP_XXX">FT_GASP_NO_TABLE</a></td><td><a href="ft2-basic_types.html#FT_Pixel_Mode">FT_Pixel_Mode</a></td><td><a href="ft2-base_interface.html#FT_OPEN_XXX">ft_open_stream</a></td></tr>
|
||||
<tr><td><a href="ft2-gasp_table.html#FT_GASP_XXX">FT_GASP_SYMMETRIC_GRIDFIT</a></td><td><a href="ft2-basic_types.html#FT_Pointer">FT_Pointer</a></td><td><a href="ft2-outline_processing.html#ft_outline_flags">ft_outline_even_odd_fill</a></td></tr>
|
||||
<tr><td><a href="ft2-gasp_table.html#FT_GASP_XXX">FT_GASP_SYMMETRIC_SMOOTHING</a></td><td><a href="ft2-basic_types.html#FT_Pos">FT_Pos</a></td><td><a href="ft2-outline_processing.html#ft_outline_flags">ft_outline_flags</a></td></tr>
|
||||
<tr><td><a href="ft2-gasp_table.html#FT_GASP_XXX">FT_GASP_XXX</a></td><td><a href="ft2-auto_hinter.html#FT_Prop_GlyphToScriptMap">FT_Prop_GlyphToScriptMap</a></td><td><a href="ft2-outline_processing.html#ft_outline_flags">ft_outline_high_precision</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Generic">FT_Generic</a></td><td><a href="ft2-auto_hinter.html#FT_Prop_IncreaseXHeight">FT_Prop_IncreaseXHeight</a></td><td><a href="ft2-outline_processing.html#ft_outline_flags">ft_outline_ignore_dropouts</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Generic_Finalizer">FT_Generic_Finalizer</a></td><td><a href="ft2-module_management.html#FT_Property_Get">FT_Property_Get</a></td><td><a href="ft2-outline_processing.html#ft_outline_flags">ft_outline_none</a></td></tr>
|
||||
<tr><td><a href="ft2-quick_advance.html#FT_Get_Advance">FT_Get_Advance</a></td><td><a href="ft2-module_management.html#FT_Property_Set">FT_Property_Set</a></td><td><a href="ft2-outline_processing.html#ft_outline_flags">ft_outline_owner</a></td></tr>
|
||||
<tr><td><a href="ft2-quick_advance.html#FT_Get_Advances">FT_Get_Advances</a></td><td><a href="ft2-bdf_fonts.html#FT_PropertyType">FT_PropertyType</a></td><td><a href="ft2-outline_processing.html#ft_outline_flags">ft_outline_reverse_fill</a></td></tr>
|
||||
<tr><td><a href="ft2-bdf_fonts.html#FT_Get_BDF_Charset_ID">FT_Get_BDF_Charset_ID</a></td><td><a href="ft2-basic_types.html#FT_PtrDist">FT_PtrDist</a></td><td><a href="ft2-outline_processing.html#ft_outline_flags">ft_outline_single_pass</a></td></tr>
|
||||
<tr><td><a href="ft2-bdf_fonts.html#FT_Get_BDF_Property">FT_Get_BDF_Property</a></td><td><a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_AA</a></td><td><a href="ft2-basic_types.html#FT_Palette_Mode">ft_palette_mode_rgb</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Get_Char_Index">FT_Get_Char_Index</a></td><td><a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_CLIP</a></td><td><a href="ft2-basic_types.html#FT_Palette_Mode">ft_palette_mode_rgba</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Get_Charmap_Index">FT_Get_Charmap_Index</a></td><td><a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_DEFAULT</a></td><td><a href="ft2-basic_types.html#ft_pixel_mode_xxx">ft_pixel_mode_grays</a></td></tr>
|
||||
<tr><td><a href="ft2-cid_fonts.html#FT_Get_CID_From_Glyph_Index">FT_Get_CID_From_Glyph_Index</a></td><td><a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_DIRECT</a></td><td><a href="ft2-basic_types.html#ft_pixel_mode_xxx">ft_pixel_mode_mono</a></td></tr>
|
||||
<tr><td><a href="ft2-cid_fonts.html#FT_Get_CID_Is_Internally_CID_Keyed">FT_Get_CID_Is_Internally_CID_Keyed</a></td><td><a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_XXX</a></td><td><a href="ft2-basic_types.html#ft_pixel_mode_xxx">ft_pixel_mode_none</a></td></tr>
|
||||
<tr><td><a href="ft2-cid_fonts.html#FT_Get_CID_Registry_Ordering_Supplement">FT_Get_CID_Registry_Ordering_Supplement</a></td><td><a href="ft2-raster.html#FT_Raster">FT_Raster</a></td><td><a href="ft2-basic_types.html#ft_pixel_mode_xxx">ft_pixel_mode_pal2</a></td></tr>
|
||||
<tr><td><a href="ft2-truetype_tables.html#FT_Get_CMap_Format">FT_Get_CMap_Format</a></td><td><a href="ft2-raster.html#FT_Raster_BitSet_Func">FT_Raster_BitSet_Func</a></td><td><a href="ft2-basic_types.html#ft_pixel_mode_xxx">ft_pixel_mode_pal4</a></td></tr>
|
||||
<tr><td><a href="ft2-truetype_tables.html#FT_Get_CMap_Language_ID">FT_Get_CMap_Language_ID</a></td><td><a href="ft2-raster.html#FT_Raster_BitTest_Func">FT_Raster_BitTest_Func</a></td><td><a href="ft2-basic_types.html#ft_pixel_mode_xxx">ft_pixel_mode_xxx</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Get_First_Char">FT_Get_First_Char</a></td><td><a href="ft2-raster.html#FT_Raster_DoneFunc">FT_Raster_DoneFunc</a></td><td><a href="ft2-base_interface.html#ft_render_mode_xxx">ft_render_mode_mono</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Get_FSType_Flags">FT_Get_FSType_Flags</a></td><td><a href="ft2-raster.html#FT_Raster_Funcs">FT_Raster_Funcs</a></td><td><a href="ft2-base_interface.html#ft_render_mode_xxx">ft_render_mode_normal</a></td></tr>
|
||||
<tr><td><a href="ft2-gasp_table.html#FT_Get_Gasp">FT_Get_Gasp</a></td><td><a href="ft2-raster.html#FT_Raster_NewFunc">FT_Raster_NewFunc</a></td><td><a href="ft2-base_interface.html#ft_render_mode_xxx">ft_render_mode_xxx</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_Get_Glyph">FT_Get_Glyph</a></td><td><a href="ft2-raster.html#FT_Raster_Params">FT_Raster_Params</a></td><td><a href="ft2-auto_hinter.html#glyph-to-script-map">glyph-to-script-map</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Get_Glyph_Name">FT_Get_Glyph_Name</a></td><td><a href="ft2-raster.html#FT_Raster_RenderFunc">FT_Raster_RenderFunc</a></td><td><a href="ft2-cff_driver.html#hinting-engine">hinting-engine</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Get_Kerning">FT_Get_Kerning</a></td><td><a href="ft2-raster.html#FT_Raster_ResetFunc">FT_Raster_ResetFunc</a></td><td><a href="ft2-auto_hinter.html#increase-x-height">increase-x-height</a></td></tr>
|
||||
<tr><td><a href="ft2-multiple_masters.html#FT_Get_MM_Var">FT_Get_MM_Var</a></td><td><a href="ft2-raster.html#FT_Raster_SetModeFunc">FT_Raster_SetModeFunc</a></td><td><a href="ft2-tt_driver.html#interpreter-version">interpreter-version</a></td></tr>
|
||||
<tr><td><a href="ft2-module_management.html#FT_Get_Module">FT_Get_Module</a></td><td><a href="ft2-header_file_macros.html#FT_RENDER_H">FT_RENDER_H</a></td><td><a href="ft2-cff_driver.html#no-stem-darkening">no-stem-darkening</a></td></tr>
|
||||
<tr><td><a href="ft2-multiple_masters.html#FT_Get_Multi_Master">FT_Get_Multi_Master</a></td><td><a href="ft2-base_interface.html#FT_Render_Mode">FT_RENDER_MODE_LCD</a></td><td><a href="ft2-type1_tables.html#PS_Dict_Keys">PS_Dict_Keys</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Get_Name_Index">FT_Get_Name_Index</a></td><td><a href="ft2-base_interface.html#FT_Render_Mode">FT_RENDER_MODE_LCD_V</a></td><td><a href="ft2-type1_tables.html#PS_FontInfo">PS_FontInfo</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Get_Next_Char">FT_Get_Next_Char</a></td><td><a href="ft2-base_interface.html#FT_Render_Mode">FT_RENDER_MODE_LIGHT</a></td><td><a href="ft2-type1_tables.html#PS_FontInfoRec">PS_FontInfoRec</a></td></tr>
|
||||
<tr><td><a href="ft2-pfr_fonts.html#FT_Get_PFR_Advance">FT_Get_PFR_Advance</a></td><td><a href="ft2-base_interface.html#FT_Render_Mode">FT_RENDER_MODE_MONO</a></td><td><a href="ft2-type1_tables.html#PS_Private">PS_Private</a></td></tr>
|
||||
<tr><td><a href="ft2-pfr_fonts.html#FT_Get_PFR_Kerning">FT_Get_PFR_Kerning</a></td><td><a href="ft2-base_interface.html#FT_Render_Mode">FT_RENDER_MODE_NORMAL</a></td><td><a href="ft2-type1_tables.html#PS_PrivateRec">PS_PrivateRec</a></td></tr>
|
||||
<tr><td><a href="ft2-pfr_fonts.html#FT_Get_PFR_Metrics">FT_Get_PFR_Metrics</a></td><td><a href="ft2-system_interface.html#FT_Realloc_Func">FT_Realloc_Func</a></td><td><a href="ft2-type1_tables.html#T1_Blend_Flags">T1_Blend_Flags</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Get_Postscript_Name">FT_Get_Postscript_Name</a></td><td><a href="ft2-base_interface.html#FT_Reference_Face">FT_Reference_Face</a></td><td><a href="ft2-type1_tables.html#T1_EncodingType">T1_EncodingType</a></td></tr>
|
||||
<tr><td><a href="ft2-type1_tables.html#FT_Get_PS_Font_Info">FT_Get_PS_Font_Info</a></td><td><a href="ft2-module_management.html#FT_Reference_Library">FT_Reference_Library</a></td><td><a href="ft2-type1_tables.html#T1_FontInfo">T1_FontInfo</a></td></tr>
|
||||
<tr><td><a href="ft2-type1_tables.html#FT_Get_PS_Font_Private">FT_Get_PS_Font_Private</a></td><td><a href="ft2-module_management.html#FT_Remove_Module">FT_Remove_Module</a></td><td><a href="ft2-type1_tables.html#T1_Private">T1_Private</a></td></tr>
|
||||
<tr><td><a href="ft2-type1_tables.html#FT_Get_PS_Font_Value">FT_Get_PS_Font_Value</a></td><td><a href="ft2-base_interface.html#FT_Render_Glyph">FT_Render_Glyph</a></td><td><a href="ft2-truetype_tables.html#TT_ADOBE_ID_XXX">TT_ADOBE_ID_CUSTOM</a></td></tr>
|
||||
<tr><td><a href="ft2-module_management.html#FT_Get_Renderer">FT_Get_Renderer</a></td><td><a href="ft2-base_interface.html#FT_Render_Mode">FT_Render_Mode</a></td><td><a href="ft2-truetype_tables.html#TT_ADOBE_ID_XXX">TT_ADOBE_ID_EXPERT</a></td></tr>
|
||||
<tr><td><a href="ft2-sfnt_names.html#FT_Get_Sfnt_Name">FT_Get_Sfnt_Name</a></td><td><a href="ft2-base_interface.html#FT_Renderer">FT_Renderer</a></td><td><a href="ft2-truetype_tables.html#TT_ADOBE_ID_XXX">TT_ADOBE_ID_LATIN_1</a></td></tr>
|
||||
<tr><td><a href="ft2-sfnt_names.html#FT_Get_Sfnt_Name_Count">FT_Get_Sfnt_Name_Count</a></td><td><a href="ft2-module_management.html#FT_Renderer_Class">FT_Renderer_Class</a></td><td><a href="ft2-truetype_tables.html#TT_ADOBE_ID_XXX">TT_ADOBE_ID_STANDARD</a></td></tr>
|
||||
<tr><td><a href="ft2-truetype_tables.html#FT_Get_Sfnt_Table">FT_Get_Sfnt_Table</a></td><td><a href="ft2-base_interface.html#FT_Request_Size">FT_Request_Size</a></td><td><a href="ft2-truetype_tables.html#TT_ADOBE_ID_XXX">TT_ADOBE_ID_XXX</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Get_SubGlyph_Info">FT_Get_SubGlyph_Info</a></td><td><a href="ft2-computations.html#FT_RoundFix">FT_RoundFix</a></td><td><a href="ft2-truetype_tables.html#TT_APPLE_ID_XXX">TT_APPLE_ID_DEFAULT</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Get_Track_Kerning">FT_Get_Track_Kerning</a></td><td><a href="ft2-base_interface.html#FT_Select_Charmap">FT_Select_Charmap</a></td><td><a href="ft2-truetype_tables.html#TT_APPLE_ID_XXX">TT_APPLE_ID_ISO_10646</a></td></tr>
|
||||
<tr><td><a href="ft2-truetype_engine.html#FT_Get_TrueType_Engine_Type">FT_Get_TrueType_Engine_Type</a></td><td><a href="ft2-base_interface.html#FT_Select_Size">FT_Select_Size</a></td><td><a href="ft2-truetype_tables.html#TT_APPLE_ID_XXX">TT_APPLE_ID_UNICODE_1_1</a></td></tr>
|
||||
<tr><td><a href="ft2-winfnt_fonts.html#FT_Get_WinFNT_Header">FT_Get_WinFNT_Header</a></td><td><a href="ft2-base_interface.html#FT_Set_Char_Size">FT_Set_Char_Size</a></td><td><a href="ft2-truetype_tables.html#TT_APPLE_ID_XXX">TT_APPLE_ID_UNICODE_2_0</a></td></tr>
|
||||
<tr><td><a href="ft2-font_formats.html#FT_Get_X11_Font_Format">FT_Get_X11_Font_Format</a></td><td><a href="ft2-base_interface.html#FT_Set_Charmap">FT_Set_Charmap</a></td><td><a href="ft2-truetype_tables.html#TT_APPLE_ID_XXX">TT_APPLE_ID_UNICODE_32</a></td></tr>
|
||||
<tr><td><a href="ft2-mac_specific.html#FT_GetFile_From_Mac_ATS_Name">FT_GetFile_From_Mac_ATS_Name</a></td><td><a href="ft2-module_management.html#FT_Set_Debug_Hook">FT_Set_Debug_Hook</a></td><td><a href="ft2-truetype_tables.html#TT_APPLE_ID_XXX">TT_APPLE_ID_VARIANT_SELECTOR</a></td></tr>
|
||||
<tr><td><a href="ft2-mac_specific.html#FT_GetFile_From_Mac_Name">FT_GetFile_From_Mac_Name</a></td><td><a href="ft2-multiple_masters.html#FT_Set_MM_Blend_Coordinates">FT_Set_MM_Blend_Coordinates</a></td><td><a href="ft2-truetype_tables.html#TT_APPLE_ID_XXX">TT_APPLE_ID_XXX</a></td></tr>
|
||||
<tr><td><a href="ft2-mac_specific.html#FT_GetFilePath_From_Mac_ATS_Name">FT_GetFilePath_From_Mac_ATS_Name</a></td><td><a href="ft2-multiple_masters.html#FT_Set_MM_Design_Coordinates">FT_Set_MM_Design_Coordinates</a></td><td><a href="ft2-truetype_tables.html#TT_Header">TT_Header</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_GRIDFIT</a></td><td><a href="ft2-base_interface.html#FT_Set_Pixel_Sizes">FT_Set_Pixel_Sizes</a></td><td><a href="ft2-truetype_tables.html#TT_HoriHeader">TT_HoriHeader</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_PIXELS</a></td><td><a href="ft2-module_management.html#FT_Set_Renderer">FT_Set_Renderer</a></td><td><a href="ft2-tt_driver.html#TT_INTERPRETER_VERSION_XXX">TT_INTERPRETER_VERSION_35</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_SUBPIXELS</a></td><td><a href="ft2-base_interface.html#FT_Set_Transform">FT_Set_Transform</a></td><td><a href="ft2-tt_driver.html#TT_INTERPRETER_VERSION_XXX">TT_INTERPRETER_VERSION_38</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_TRUNCATE</a></td><td><a href="ft2-multiple_masters.html#FT_Set_Var_Blend_Coordinates">FT_Set_Var_Blend_Coordinates</a></td><td><a href="ft2-tt_driver.html#TT_INTERPRETER_VERSION_XXX">TT_INTERPRETER_VERSION_XXX</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_GLYPH_BBOX_UNSCALED</a></td><td><a href="ft2-multiple_masters.html#FT_Set_Var_Design_Coordinates">FT_Set_Var_Design_Coordinates</a></td><td><a href="ft2-truetype_tables.html#TT_ISO_ID_XXX">TT_ISO_ID_10646</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Glyph_Format">FT_GLYPH_FORMAT_BITMAP</a></td><td><a href="ft2-header_file_macros.html#FT_SFNT_NAMES_H">FT_SFNT_NAMES_H</a></td><td><a href="ft2-truetype_tables.html#TT_ISO_ID_XXX">TT_ISO_ID_7BIT_ASCII</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Glyph_Format">FT_GLYPH_FORMAT_COMPOSITE</a></td><td><a href="ft2-truetype_tables.html#FT_Sfnt_Table_Info">FT_Sfnt_Table_Info</a></td><td><a href="ft2-truetype_tables.html#TT_ISO_ID_XXX">TT_ISO_ID_8859_1</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Glyph_Format">FT_GLYPH_FORMAT_NONE</a></td><td><a href="ft2-truetype_tables.html#FT_Sfnt_Tag">FT_Sfnt_Tag</a></td><td><a href="ft2-truetype_tables.html#TT_ISO_ID_XXX">TT_ISO_ID_XXX</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Glyph_Format">FT_GLYPH_FORMAT_OUTLINE</a></td><td><a href="ft2-sfnt_names.html#FT_SfntName">FT_SfntName</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_ARABIC</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Glyph_Format">FT_GLYPH_FORMAT_PLOTTER</a></td><td><a href="ft2-basic_types.html#FT_Short">FT_Short</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_ARMENIAN</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_GLYPH_H">FT_GLYPH_H</a></td><td><a href="ft2-base_interface.html#FT_Size_Request_Type">FT_SIZE_REQUEST_TYPE_BBOX</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_BENGALI</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a></td><td><a href="ft2-base_interface.html#FT_Size_Request_Type">FT_SIZE_REQUEST_TYPE_CELL</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_BURMESE</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_Glyph_BBox_Mode">FT_Glyph_BBox_Mode</a></td><td><a href="ft2-base_interface.html#FT_Size_Request_Type">FT_SIZE_REQUEST_TYPE_NOMINAL</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_DEVANAGARI</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_Glyph_Copy">FT_Glyph_Copy</a></td><td><a href="ft2-base_interface.html#FT_Size_Request_Type">FT_SIZE_REQUEST_TYPE_REAL_DIM</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_GEEZ</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Glyph_Format">FT_Glyph_Format</a></td><td><a href="ft2-base_interface.html#FT_Size_Request_Type">FT_SIZE_REQUEST_TYPE_SCALES</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_GEORGIAN</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_Glyph_Get_CBox">FT_Glyph_Get_CBox</a></td><td><a href="ft2-header_file_macros.html#FT_SIZES_H">FT_SIZES_H</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_GREEK</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Glyph_Metrics">FT_Glyph_Metrics</a></td><td><a href="ft2-computations.html#FT_Sin">FT_Sin</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_GUJARATI</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_stroker.html#FT_Glyph_Stroke">FT_Glyph_Stroke</a></td><td><a href="ft2-base_interface.html#FT_Size">FT_Size</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_GURMUKHI</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_stroker.html#FT_Glyph_StrokeBorder">FT_Glyph_StrokeBorder</a></td><td><a href="ft2-base_interface.html#FT_Size_Internal">FT_Size_Internal</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_HEBREW</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_Glyph_To_Bitmap">FT_Glyph_To_Bitmap</a></td><td><a href="ft2-base_interface.html#FT_Size_Metrics">FT_Size_Metrics</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_JAPANESE</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_Glyph_Transform">FT_Glyph_Transform</a></td><td><a href="ft2-base_interface.html#FT_Size_Request">FT_Size_Request</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_KANNADA</a></td></tr>
|
||||
<tr><td><a href="ft2-glyph_management.html#FT_GlyphRec">FT_GlyphRec</a></td><td><a href="ft2-base_interface.html#FT_Size_Request_Type">FT_Size_Request_Type</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_KHMER</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_GlyphSlot">FT_GlyphSlot</a></td><td><a href="ft2-base_interface.html#FT_Size_RequestRec">FT_Size_RequestRec</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_KOREAN</a></td></tr>
|
||||
<tr><td><a href="ft2-bitmap_handling.html#FT_GlyphSlot_Own_Bitmap">FT_GlyphSlot_Own_Bitmap</a></td><td><a href="ft2-base_interface.html#FT_SizeRec">FT_SizeRec</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_LAOTIAN</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_GlyphSlotRec">FT_GlyphSlotRec</a></td><td><a href="ft2-base_interface.html#FT_Slot_Internal">FT_Slot_Internal</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_MALAYALAM</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_GX_VALIDATE_H">FT_GX_VALIDATE_H</a></td><td><a href="ft2-raster.html#FT_Span">FT_Span</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_MALDIVIAN</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_GZIP_H">FT_GZIP_H</a></td><td><a href="ft2-raster.html#FT_SpanFunc">FT_SpanFunc</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_MONGOLIAN</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_HAS_FAST_GLYPHS">FT_HAS_FAST_GLYPHS</a></td><td><a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_STROKER_BORDER_LEFT</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_ORIYA</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_HAS_FIXED_SIZES">FT_HAS_FIXED_SIZES</a></td><td><a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_STROKER_BORDER_RIGHT</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_ROMAN</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_HAS_GLYPH_NAMES">FT_HAS_GLYPH_NAMES</a></td><td><a href="ft2-header_file_macros.html#FT_STROKER_H">FT_STROKER_H</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_RSYMBOL</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_HAS_HORIZONTAL">FT_HAS_HORIZONTAL</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_LineCap">FT_STROKER_LINECAP_BUTT</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_RUSSIAN</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_HAS_KERNING">FT_HAS_KERNING</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_LineCap">FT_STROKER_LINECAP_ROUND</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_SIMPLIFIED_CHINESE</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_HAS_MULTIPLE_MASTERS">FT_HAS_MULTIPLE_MASTERS</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_LineCap">FT_STROKER_LINECAP_SQUARE</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_SINDHI</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_HAS_VERTICAL">FT_HAS_VERTICAL</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_LineJoin">FT_STROKER_LINEJOIN_BEVEL</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_SINHALESE</a></td></tr>
|
||||
<tr><td><a href="ft2-type1_tables.html#FT_Has_PS_Glyph_Names">FT_Has_PS_Glyph_Names</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_LineJoin">FT_STROKER_LINEJOIN_MITER</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_SLAVIC</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_IMAGE_H">FT_IMAGE_H</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_LineJoin">FT_STROKER_LINEJOIN_MITER_FIXED</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_TAMIL</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_IMAGE_TAG">FT_IMAGE_TAG</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_LineJoin">FT_STROKER_LINEJOIN_MITER_VARIABLE</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_TELUGU</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_INCREMENTAL_H">FT_INCREMENTAL_H</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_LineJoin">FT_STROKER_LINEJOIN_ROUND</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_THAI</a></td></tr>
|
||||
<tr><td><a href="ft2-incremental.html#FT_Incremental">FT_Incremental</a></td><td><a href="ft2-base_interface.html#FT_STYLE_FLAG_XXX">FT_STYLE_FLAG_BOLD</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_TIBETAN</a></td></tr>
|
||||
<tr><td><a href="ft2-incremental.html#FT_Incremental_FreeGlyphDataFunc">FT_Incremental_FreeGlyphDataFunc</a></td><td><a href="ft2-base_interface.html#FT_STYLE_FLAG_XXX">FT_STYLE_FLAG_ITALIC</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_TRADITIONAL_CHINESE</a></td></tr>
|
||||
<tr><td><a href="ft2-incremental.html#FT_Incremental_FuncsRec">FT_Incremental_FuncsRec</a></td><td><a href="ft2-base_interface.html#FT_STYLE_FLAG_XXX">FT_STYLE_FLAG_XXX</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_UNINTERP</a></td></tr>
|
||||
<tr><td><a href="ft2-incremental.html#FT_Incremental_GetGlyphDataFunc">FT_Incremental_GetGlyphDataFunc</a></td><td><a href="ft2-system_interface.html#FT_Stream">FT_Stream</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_VIETNAMESE</a></td></tr>
|
||||
<tr><td><a href="ft2-incremental.html#FT_Incremental_GetGlyphMetricsFunc">FT_Incremental_GetGlyphMetricsFunc</a></td><td><a href="ft2-system_interface.html#FT_Stream_CloseFunc">FT_Stream_CloseFunc</a></td><td><a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_XXX</a></td></tr>
|
||||
<tr><td><a href="ft2-incremental.html#FT_Incremental_Interface">FT_Incremental_Interface</a></td><td><a href="ft2-system_interface.html#FT_Stream_IoFunc">FT_Stream_IoFunc</a></td><td><a href="ft2-truetype_tables.html#TT_MaxProfile">TT_MaxProfile</a></td></tr>
|
||||
<tr><td><a href="ft2-incremental.html#FT_Incremental_InterfaceRec">FT_Incremental_InterfaceRec</a></td><td><a href="ft2-bzip2.html#FT_Stream_OpenBzip2">FT_Stream_OpenBzip2</a></td><td><a href="ft2-truetype_tables.html#TT_MS_ID_XXX">TT_MS_ID_BIG_5</a></td></tr>
|
||||
<tr><td><a href="ft2-incremental.html#FT_Incremental_Metrics">FT_Incremental_Metrics</a></td><td><a href="ft2-gzip.html#FT_Stream_OpenGzip">FT_Stream_OpenGzip</a></td><td><a href="ft2-truetype_tables.html#TT_MS_ID_XXX">TT_MS_ID_GB2312</a></td></tr>
|
||||
<tr><td><a href="ft2-incremental.html#FT_Incremental_MetricsRec">FT_Incremental_MetricsRec</a></td><td><a href="ft2-lzw.html#FT_Stream_OpenLZW">FT_Stream_OpenLZW</a></td><td><a href="ft2-truetype_tables.html#TT_MS_ID_XXX">TT_MS_ID_JOHAB</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Init_FreeType">FT_Init_FreeType</a></td><td><a href="ft2-system_interface.html#FT_StreamDesc">FT_StreamDesc</a></td><td><a href="ft2-truetype_tables.html#TT_MS_ID_XXX">TT_MS_ID_SJIS</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Int">FT_Int</a></td><td><a href="ft2-system_interface.html#FT_StreamRec">FT_StreamRec</a></td><td><a href="ft2-truetype_tables.html#TT_MS_ID_XXX">TT_MS_ID_SYMBOL_CS</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Int16">FT_Int16</a></td><td><a href="ft2-basic_types.html#FT_String">FT_String</a></td><td><a href="ft2-truetype_tables.html#TT_MS_ID_XXX">TT_MS_ID_UCS_4</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Int32">FT_Int32</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a></td><td><a href="ft2-truetype_tables.html#TT_MS_ID_XXX">TT_MS_ID_UNICODE_CS</a></td></tr>
|
||||
<tr><td><a href="ft2-basic_types.html#FT_Int64">FT_Int64</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</a></td><td><a href="ft2-truetype_tables.html#TT_MS_ID_XXX">TT_MS_ID_WANSUNG</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_IS_CID_KEYED">FT_IS_CID_KEYED</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_ConicTo">FT_Stroker_ConicTo</a></td><td><a href="ft2-truetype_tables.html#TT_MS_ID_XXX">TT_MS_ID_XXX</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_IS_FIXED_WIDTH">FT_IS_FIXED_WIDTH</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_CubicTo">FT_Stroker_CubicTo</a></td><td><a href="ft2-truetype_tables.html#TT_OS2">TT_OS2</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_IS_SCALABLE">FT_IS_SCALABLE</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_Done">FT_Stroker_Done</a></td><td><a href="ft2-truetype_tables.html#TT_PCLT">TT_PCLT</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_IS_SFNT">FT_IS_SFNT</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_EndSubPath">FT_Stroker_EndSubPath</a></td><td><a href="ft2-truetype_tables.html#TT_PLATFORM_XXX">TT_PLATFORM_ADOBE</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_IS_TRICKY">FT_IS_TRICKY</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_Export">FT_Stroker_Export</a></td><td><a href="ft2-truetype_tables.html#TT_PLATFORM_XXX">TT_PLATFORM_APPLE_UNICODE</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Kerning_Mode">FT_KERNING_DEFAULT</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_ExportBorder">FT_Stroker_ExportBorder</a></td><td><a href="ft2-truetype_tables.html#TT_PLATFORM_XXX">TT_PLATFORM_CUSTOM</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Kerning_Mode">FT_KERNING_UNFITTED</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_GetBorderCounts">FT_Stroker_GetBorderCounts</a></td><td><a href="ft2-truetype_tables.html#TT_PLATFORM_XXX">TT_PLATFORM_ISO</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Kerning_Mode">FT_KERNING_UNSCALED</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_GetCounts">FT_Stroker_GetCounts</a></td><td><a href="ft2-truetype_tables.html#TT_PLATFORM_XXX">TT_PLATFORM_MACINTOSH</a></td></tr>
|
||||
<tr><td><a href="ft2-base_interface.html#FT_Kerning_Mode">FT_Kerning_Mode</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_LineCap">FT_Stroker_LineCap</a></td><td><a href="ft2-truetype_tables.html#TT_PLATFORM_XXX">TT_PLATFORM_MICROSOFT</a></td></tr>
|
||||
<tr><td><a href="ft2-lcd_filtering.html#FT_LcdFilter">FT_LCD_FILTER_DEFAULT</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_LineJoin">FT_Stroker_LineJoin</a></td><td><a href="ft2-truetype_tables.html#TT_PLATFORM_XXX">TT_PLATFORM_XXX</a></td></tr>
|
||||
<tr><td><a href="ft2-header_file_macros.html#FT_LCD_FILTER_H">FT_LCD_FILTER_H</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_LineTo">FT_Stroker_LineTo</a></td><td><a href="ft2-truetype_tables.html#TT_Postscript">TT_Postscript</a></td></tr>
|
||||
<tr><td><a href="ft2-lcd_filtering.html#FT_LcdFilter">FT_LCD_FILTER_LEGACY</a></td><td><a href="ft2-glyph_stroker.html#FT_Stroker_New">FT_Stroker_New</a></td><td><a href="ft2-truetype_tables.html#TT_VertHeader">TT_VertHeader</a></td></tr>
|
||||
</table>
|
||||
<hr>
|
||||
<table><tr><td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<center><font size=-2>generated on Wed Jun 19 23:29:20 2013</font></center></body>
|
||||
</html>
|
||||
@@ -1,206 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
LCD Filtering
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_LcdFilter">FT_LcdFilter</a></td><td></td><td><a href="#FT_Library_SetLcdFilterWeights">FT_Library_SetLcdFilterWeights</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Library_SetLcdFilter">FT_Library_SetLcdFilter</a></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The <a href="ft2-lcd_filtering.html#FT_Library_SetLcdFilter">FT_Library_SetLcdFilter</a> API can be used to specify a low-pass filter which is then applied to LCD-optimized bitmaps generated through <a href="ft2-base_interface.html#FT_Render_Glyph">FT_Render_Glyph</a>. This is useful to reduce color fringes which would occur with unfiltered rendering.</p>
|
||||
<p>Note that no filter is active by default, and that this function is <b>not</b> implemented in default builds of the library. You need to #define FT_CONFIG_OPTION_SUBPIXEL_RENDERING in your ‘ftoption.h’ file in order to activate it.</p>
|
||||
<p>FreeType generates alpha coverage maps, which are linear by nature. For instance, the value 0x80 in bitmap representation means that (within numerical precision) 0x80/0xff fraction of that pixel is covered by the glyph's outline. The blending function for placing text over a background is</p>
|
||||
<pre class="colored">
|
||||
dst = alpha * src + (1 - alpha) * dst ,
|
||||
</pre>
|
||||
<p>which is known as OVER. However, when calculating the output of the OVER operator, the source colors should first be transformed to a linear color space, then alpha blended in that space, and transformed back to the output color space.</p>
|
||||
<p>When linear light blending is used, the default FIR5 filtering weights (as given by FT_LCD_FILTER_DEFAULT) are no longer optimal, as they have been designed for black on white rendering while lacking gamma correction. To preserve color neutrality, weights for a FIR5 filter should be chosen according to two free parameters ‘a’ and ‘c’, and the FIR weights should be</p>
|
||||
<pre class="colored">
|
||||
[a - c, a + c, 2 * a, a + c, a - c] .
|
||||
</pre>
|
||||
<p>This formula generates equal weights for all the color primaries across the filter kernel, which makes it colorless. One suggested set of weights is</p>
|
||||
<pre class="colored">
|
||||
[0x10, 0x50, 0x60, 0x50, 0x10] ,
|
||||
</pre>
|
||||
<p>where ‘a’ has value 0x30 and ‘b’ value 0x20. The weights in filter may have a sum larger than 0x100, which increases coloration slightly but also improves contrast.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_LcdFilter">FT_LcdFilter</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_LCD_FILTER_H (freetype/ftlcdfil.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">enum</span> FT_LcdFilter_
|
||||
{
|
||||
<a href="ft2-lcd_filtering.html#FT_LcdFilter">FT_LCD_FILTER_NONE</a> = 0,
|
||||
<a href="ft2-lcd_filtering.html#FT_LcdFilter">FT_LCD_FILTER_DEFAULT</a> = 1,
|
||||
<a href="ft2-lcd_filtering.html#FT_LcdFilter">FT_LCD_FILTER_LIGHT</a> = 2,
|
||||
<a href="ft2-lcd_filtering.html#FT_LcdFilter">FT_LCD_FILTER_LEGACY</a> = 16,
|
||||
|
||||
FT_LCD_FILTER_MAX /* do not remove */
|
||||
|
||||
} <b>FT_LcdFilter</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A list of values to identify various types of LCD filters.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>FT_LCD_FILTER_NONE</b></td><td>
|
||||
<p>Do not perform filtering. When used with subpixel rendering, this results in sometimes severe color fringes.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_LCD_FILTER_DEFAULT</b></td><td>
|
||||
<p>The default filter reduces color fringes considerably, at the cost of a slight blurriness in the output.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_LCD_FILTER_LIGHT</b></td><td>
|
||||
<p>The light filter is a variant that produces less blurriness at the cost of slightly more color fringes than the default one. It might be better, depending on taste, your monitor, or your personal vision.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_LCD_FILTER_LEGACY</b></td><td>
|
||||
<p>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. In other words, it only works well if the TrueType bytecode interpreter is enabled <b>and</b> high-quality hinted fonts are used.</p>
|
||||
<p>This filter is only provided for comparison purposes, and might be disabled or stay unsupported in the future.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.3.0</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Library_SetLcdFilter">FT_Library_SetLcdFilter</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_LCD_FILTER_H (freetype/ftlcdfil.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Library_SetLcdFilter</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<a href="ft2-lcd_filtering.html#FT_LcdFilter">FT_LcdFilter</a> filter );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This function is used to apply color filtering to LCD decimated bitmaps, like the ones used when calling <a href="ft2-base_interface.html#FT_Render_Glyph">FT_Render_Glyph</a> with <a href="ft2-base_interface.html#FT_Render_Mode">FT_RENDER_MODE_LCD</a> or <a href="ft2-base_interface.html#FT_Render_Mode">FT_RENDER_MODE_LCD_V</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to the target library instance.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>filter</b></td><td>
|
||||
<p>The filter type.</p>
|
||||
<p>You can use <a href="ft2-lcd_filtering.html#FT_LcdFilter">FT_LCD_FILTER_NONE</a> here to disable this feature, or <a href="ft2-lcd_filtering.html#FT_LcdFilter">FT_LCD_FILTER_DEFAULT</a> to use a default filter that should work well on most LCD screens.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This feature is always disabled by default. Clients must make an explicit call to this function with a ‘filter’ value other than <a href="ft2-lcd_filtering.html#FT_LcdFilter">FT_LCD_FILTER_NONE</a> in order to enable it.</p>
|
||||
<p>Due to <b>PATENTS</b> covering subpixel rendering, this function doesn't do anything except returning ‘FT_Err_Unimplemented_Feature’ if the configuration macro FT_CONFIG_OPTION_SUBPIXEL_RENDERING is not defined in your build of the library, which should correspond to all default builds of FreeType.</p>
|
||||
<p>The filter affects glyph bitmaps rendered through <a href="ft2-base_interface.html#FT_Render_Glyph">FT_Render_Glyph</a>, <a href="ft2-outline_processing.html#FT_Outline_Get_Bitmap">FT_Outline_Get_Bitmap</a>, <a href="ft2-base_interface.html#FT_Load_Glyph">FT_Load_Glyph</a>, and <a href="ft2-base_interface.html#FT_Load_Char">FT_Load_Char</a>.</p>
|
||||
<p>It does <i>not</i> affect the output of <a href="ft2-outline_processing.html#FT_Outline_Render">FT_Outline_Render</a> and <a href="ft2-outline_processing.html#FT_Outline_Get_Bitmap">FT_Outline_Get_Bitmap</a>.</p>
|
||||
<p>If this feature is activated, the dimensions of LCD glyph bitmaps are either larger or taller than the dimensions of the corresponding outline with regards to the pixel grid. For example, for <a href="ft2-base_interface.html#FT_Render_Mode">FT_RENDER_MODE_LCD</a>, the filter adds up to 3 pixels to the left, and up to 3 pixels to the right.</p>
|
||||
<p>The bitmap offset values are adjusted correctly, so clients shouldn't need to modify their layout and glyph positioning code when enabling the filter.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.3.0</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Library_SetLcdFilterWeights">FT_Library_SetLcdFilterWeights</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_LCD_FILTER_H (freetype/ftlcdfil.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Library_SetLcdFilterWeights</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<span class="keyword">unsigned</span> <span class="keyword">char</span> *weights );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Use this function to override the filter weights selected by <a href="ft2-lcd_filtering.html#FT_Library_SetLcdFilter">FT_Library_SetLcdFilter</a>. By default, FreeType uses the quintuple (0x00, 0x55, 0x56, 0x55, 0x00) for FT_LCD_FILTER_LIGHT, and (0x10, 0x40, 0x70, 0x40, 0x10) for FT_LCD_FILTER_DEFAULT and FT_LCD_FILTER_LEGACY.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to the target library instance.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>weights</b></td><td>
|
||||
<p>A pointer to an array; the function copies the first five bytes and uses them to specify the filter weights.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>Due to <b>PATENTS</b> covering subpixel rendering, this function doesn't do anything except returning ‘FT_Err_Unimplemented_Feature’ if the configuration macro FT_CONFIG_OPTION_SUBPIXEL_RENDERING is not defined in your build of the library, which should correspond to all default builds of FreeType.</p>
|
||||
<p>This function must be called after <a href="ft2-lcd_filtering.html#FT_Library_SetLcdFilter">FT_Library_SetLcdFilter</a> to have any effect.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.4.0</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,486 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
List Processing
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_List">FT_List</a></td><td></td><td><a href="#FT_List_Add">FT_List_Add</a></td><td></td><td><a href="#FT_List_Iterate">FT_List_Iterate</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_ListNode">FT_ListNode</a></td><td></td><td><a href="#FT_List_Insert">FT_List_Insert</a></td><td></td><td><a href="#FT_List_Destructor">FT_List_Destructor</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_ListRec">FT_ListRec</a></td><td></td><td><a href="#FT_List_Remove">FT_List_Remove</a></td><td></td><td><a href="#FT_List_Finalize">FT_List_Finalize</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_ListNodeRec">FT_ListNodeRec</a></td><td></td><td><a href="#FT_List_Up">FT_List_Up</a></td><td></td><td></td></tr>
|
||||
<tr><td></td><td><a href="#FT_List_Find">FT_List_Find</a></td><td></td><td><a href="#FT_List_Iterator">FT_List_Iterator</a></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains various definitions related to list processing using doubly-linked nodes.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_List">FT_List</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPES_H (freetype/fttypes.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_ListRec_* <b>FT_List</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A handle to a list record (see <a href="ft2-list_processing.html#FT_ListRec">FT_ListRec</a>).</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_ListNode">FT_ListNode</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPES_H (freetype/fttypes.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_ListNodeRec_* <b>FT_ListNode</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Many elements and objects in FreeType are listed through an <a href="ft2-list_processing.html#FT_List">FT_List</a> record (see <a href="ft2-list_processing.html#FT_ListRec">FT_ListRec</a>). As its name suggests, an FT_ListNode is a handle to a single list element.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_ListRec">FT_ListRec</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPES_H (freetype/fttypes.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_ListRec_
|
||||
{
|
||||
<a href="ft2-list_processing.html#FT_ListNode">FT_ListNode</a> head;
|
||||
<a href="ft2-list_processing.html#FT_ListNode">FT_ListNode</a> tail;
|
||||
|
||||
} <b>FT_ListRec</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used to hold a simple doubly-linked list. These are used in many parts of FreeType.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>head</b></td><td>
|
||||
<p>The head (first element) of doubly-linked list.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>tail</b></td><td>
|
||||
<p>The tail (last element) of doubly-linked list.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_ListNodeRec">FT_ListNodeRec</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPES_H (freetype/fttypes.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_ListNodeRec_
|
||||
{
|
||||
<a href="ft2-list_processing.html#FT_ListNode">FT_ListNode</a> prev;
|
||||
<a href="ft2-list_processing.html#FT_ListNode">FT_ListNode</a> next;
|
||||
<span class="keyword">void</span>* data;
|
||||
|
||||
} <b>FT_ListNodeRec</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used to hold a single list element.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>prev</b></td><td>
|
||||
<p>The previous element in the list. NULL if first.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>next</b></td><td>
|
||||
<p>The next element in the list. NULL if last.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>data</b></td><td>
|
||||
<p>A typeless pointer to the listed object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_List_Find">FT_List_Find</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_LIST_H (freetype/ftlist.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-list_processing.html#FT_ListNode">FT_ListNode</a> )
|
||||
<b>FT_List_Find</b>( <a href="ft2-list_processing.html#FT_List">FT_List</a> list,
|
||||
<span class="keyword">void</span>* data );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Find the list node for a given listed object.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>list</b></td><td>
|
||||
<p>A pointer to the parent list.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>data</b></td><td>
|
||||
<p>The address of the listed object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>List node. NULL if it wasn't found.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_List_Add">FT_List_Add</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_LIST_H (freetype/ftlist.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_List_Add</b>( <a href="ft2-list_processing.html#FT_List">FT_List</a> list,
|
||||
<a href="ft2-list_processing.html#FT_ListNode">FT_ListNode</a> node );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Append an element to the end of a list.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>list</b></td><td>
|
||||
<p>A pointer to the parent list.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>node</b></td><td>
|
||||
<p>The node to append.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_List_Insert">FT_List_Insert</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_LIST_H (freetype/ftlist.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_List_Insert</b>( <a href="ft2-list_processing.html#FT_List">FT_List</a> list,
|
||||
<a href="ft2-list_processing.html#FT_ListNode">FT_ListNode</a> node );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Insert an element at the head of a list.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>list</b></td><td>
|
||||
<p>A pointer to parent list.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>node</b></td><td>
|
||||
<p>The node to insert.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_List_Remove">FT_List_Remove</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_LIST_H (freetype/ftlist.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_List_Remove</b>( <a href="ft2-list_processing.html#FT_List">FT_List</a> list,
|
||||
<a href="ft2-list_processing.html#FT_ListNode">FT_ListNode</a> node );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Remove a node from a list. This function doesn't check whether the node is in the list!</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>node</b></td><td>
|
||||
<p>The node to remove.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>list</b></td><td>
|
||||
<p>A pointer to the parent list.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_List_Up">FT_List_Up</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_LIST_H (freetype/ftlist.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_List_Up</b>( <a href="ft2-list_processing.html#FT_List">FT_List</a> list,
|
||||
<a href="ft2-list_processing.html#FT_ListNode">FT_ListNode</a> node );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Move a node to the head/top of a list. Used to maintain LRU lists.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>list</b></td><td>
|
||||
<p>A pointer to the parent list.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>node</b></td><td>
|
||||
<p>The node to move.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_List_Iterator">FT_List_Iterator</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_LIST_H (freetype/ftlist.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <a href="ft2-basic_types.html#FT_Error">FT_Error</a>
|
||||
(*<b>FT_List_Iterator</b>)( <a href="ft2-list_processing.html#FT_ListNode">FT_ListNode</a> node,
|
||||
<span class="keyword">void</span>* user );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>An FT_List iterator function which is called during a list parse by <a href="ft2-list_processing.html#FT_List_Iterate">FT_List_Iterate</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>node</b></td><td>
|
||||
<p>The current iteration list node.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>user</b></td><td>
|
||||
<p>A typeless pointer passed to <a href="ft2-list_processing.html#FT_List_Iterate">FT_List_Iterate</a>. Can be used to point to the iteration's state.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_List_Iterate">FT_List_Iterate</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_LIST_H (freetype/ftlist.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_List_Iterate</b>( <a href="ft2-list_processing.html#FT_List">FT_List</a> list,
|
||||
<a href="ft2-list_processing.html#FT_List_Iterator">FT_List_Iterator</a> iterator,
|
||||
<span class="keyword">void</span>* user );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Parse a list and calls a given iterator function on each element. Note that parsing is stopped as soon as one of the iterator calls returns a non-zero value.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>list</b></td><td>
|
||||
<p>A handle to the list.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>iterator</b></td><td>
|
||||
<p>An iterator function, called on each node of the list.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>user</b></td><td>
|
||||
<p>A user-supplied field which is passed as the second argument to the iterator.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The result (a FreeType error code) of the last iterator call.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_List_Destructor">FT_List_Destructor</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_LIST_H (freetype/ftlist.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</span>
|
||||
(*<b>FT_List_Destructor</b>)( <a href="ft2-system_interface.html#FT_Memory">FT_Memory</a> memory,
|
||||
<span class="keyword">void</span>* data,
|
||||
<span class="keyword">void</span>* user );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>An <a href="ft2-list_processing.html#FT_List">FT_List</a> iterator function which is called during a list finalization by <a href="ft2-list_processing.html#FT_List_Finalize">FT_List_Finalize</a> to destroy all elements in a given list.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>system</b></td><td>
|
||||
<p>The current system object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>data</b></td><td>
|
||||
<p>The current object to destroy.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>user</b></td><td>
|
||||
<p>A typeless pointer passed to <a href="ft2-list_processing.html#FT_List_Iterate">FT_List_Iterate</a>. It can be used to point to the iteration's state.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_List_Finalize">FT_List_Finalize</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_LIST_H (freetype/ftlist.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_List_Finalize</b>( <a href="ft2-list_processing.html#FT_List">FT_List</a> list,
|
||||
<a href="ft2-list_processing.html#FT_List_Destructor">FT_List_Destructor</a> destroy,
|
||||
<a href="ft2-system_interface.html#FT_Memory">FT_Memory</a> memory,
|
||||
<span class="keyword">void</span>* user );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Destroy all elements in the list as well as the list itself.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>list</b></td><td>
|
||||
<p>A handle to the list.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>destroy</b></td><td>
|
||||
<p>A list destructor that will be applied to each element of the list.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>memory</b></td><td>
|
||||
<p>The current memory object which handles deallocation.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>user</b></td><td>
|
||||
<p>A user-supplied field which is passed as the last argument to the destructor.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function expects that all nodes added by <a href="ft2-list_processing.html#FT_List_Add">FT_List_Add</a> or <a href="ft2-list_processing.html#FT_List_Insert">FT_List_Insert</a> have been dynamically allocated.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,94 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
LZW Streams
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_Stream_OpenLZW">FT_Stream_OpenLZW</a></td><td></td><td></td><td></td><td></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains the declaration of LZW-specific functions.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stream_OpenLZW">FT_Stream_OpenLZW</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_LZW_H (freetype/ftlzw.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Stream_OpenLZW</b>( <a href="ft2-system_interface.html#FT_Stream">FT_Stream</a> stream,
|
||||
<a href="ft2-system_interface.html#FT_Stream">FT_Stream</a> source );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Open a new stream to parse LZW-compressed font files. This is mainly used to support the compressed ‘*.pcf.Z’ fonts that come with XFree86.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stream</b></td><td>
|
||||
<p>The target embedding stream.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>source</b></td><td>
|
||||
<p>The source stream.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The source stream must be opened <i>before</i> calling this function.</p>
|
||||
<p>Calling the internal function ‘FT_Stream_Close’ on the new stream will <b>not</b> call ‘FT_Stream_Close’ on the source stream. None of the stream objects will be released to the heap.</p>
|
||||
<p>The stream implementation is very basic and resets the decompression process each time seeking backwards is needed within the stream</p>
|
||||
<p>In certain builds of the library, LZW compression recognition is automatically handled when calling <a href="ft2-base_interface.html#FT_New_Face">FT_New_Face</a> or <a href="ft2-base_interface.html#FT_Open_Face">FT_Open_Face</a>. This means that if no font driver is capable of handling the raw compressed file, the library will try to open a LZW stream from it and re-open the face with it.</p>
|
||||
<p>This function may return ‘FT_Err_Unimplemented_Feature’ if your build of FreeType was not compiled with LZW support.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,368 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Mac Specific Interface
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_New_Face_From_FOND">FT_New_Face_From_FOND</a></td><td></td><td><a href="#FT_GetFilePath_From_Mac_ATS_Name">FT_GetFilePath_From_Mac_ATS_Name</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_GetFile_From_Mac_Name">FT_GetFile_From_Mac_Name</a></td><td></td><td><a href="#FT_New_Face_From_FSSpec">FT_New_Face_From_FSSpec</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_GetFile_From_Mac_ATS_Name">FT_GetFile_From_Mac_ATS_Name</a></td><td></td><td><a href="#FT_New_Face_From_FSRef">FT_New_Face_From_FSRef</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The following definitions are only available if FreeType is compiled on a Macintosh.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_New_Face_From_FOND">FT_New_Face_From_FOND</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MAC_H (freetype/ftmac.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_New_Face_From_FOND</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
Handle fond,
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a> face_index,
|
||||
<a href="ft2-base_interface.html#FT_Face">FT_Face</a> *aface )
|
||||
FT_DEPRECATED_ATTRIBUTE;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Create a new face object from a FOND resource.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to the library resource.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>fond</b></td><td>
|
||||
<p>A FOND resource.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>face_index</b></td><td>
|
||||
<p>Only supported for the -1 ‘sanity check’ special case.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>aface</b></td><td>
|
||||
<p>A handle to a new face object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>notes</b></em></td></tr><tr><td>
|
||||
<p>This function can be used to create <a href="ft2-base_interface.html#FT_Face">FT_Face</a> objects from fonts that are installed in the system as follows.</p>
|
||||
<pre class="colored">
|
||||
fond = GetResource( 'FOND', fontName );
|
||||
error = FT_New_Face_From_FOND( library, fond, 0, &face );
|
||||
</pre>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_GetFile_From_Mac_Name">FT_GetFile_From_Mac_Name</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MAC_H (freetype/ftmac.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_GetFile_From_Mac_Name</b>( <span class="keyword">const</span> <span class="keyword">char</span>* fontName,
|
||||
FSSpec* pathSpec,
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a>* face_index )
|
||||
FT_DEPRECATED_ATTRIBUTE;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return an FSSpec for the disk file containing the named font.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>fontName</b></td><td>
|
||||
<p>Mac OS name of the font (e.g., Times New Roman Bold).</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>pathSpec</b></td><td>
|
||||
<p>FSSpec to the file. For passing to <a href="ft2-mac_specific.html#FT_New_Face_From_FSSpec">FT_New_Face_From_FSSpec</a>.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>face_index</b></td><td>
|
||||
<p>Index of the face. For passing to <a href="ft2-mac_specific.html#FT_New_Face_From_FSSpec">FT_New_Face_From_FSSpec</a>.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_GetFile_From_Mac_ATS_Name">FT_GetFile_From_Mac_ATS_Name</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MAC_H (freetype/ftmac.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_GetFile_From_Mac_ATS_Name</b>( <span class="keyword">const</span> <span class="keyword">char</span>* fontName,
|
||||
FSSpec* pathSpec,
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a>* face_index )
|
||||
FT_DEPRECATED_ATTRIBUTE;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return an FSSpec for the disk file containing the named font.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>fontName</b></td><td>
|
||||
<p>Mac OS name of the font in ATS framework.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>pathSpec</b></td><td>
|
||||
<p>FSSpec to the file. For passing to <a href="ft2-mac_specific.html#FT_New_Face_From_FSSpec">FT_New_Face_From_FSSpec</a>.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>face_index</b></td><td>
|
||||
<p>Index of the face. For passing to <a href="ft2-mac_specific.html#FT_New_Face_From_FSSpec">FT_New_Face_From_FSSpec</a>.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_GetFilePath_From_Mac_ATS_Name">FT_GetFilePath_From_Mac_ATS_Name</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MAC_H (freetype/ftmac.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_GetFilePath_From_Mac_ATS_Name</b>( <span class="keyword">const</span> <span class="keyword">char</span>* fontName,
|
||||
UInt8* path,
|
||||
UInt32 maxPathSize,
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a>* face_index )
|
||||
FT_DEPRECATED_ATTRIBUTE;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return a pathname of the disk file and face index for given font name which is handled by ATS framework.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>fontName</b></td><td>
|
||||
<p>Mac OS name of the font in ATS framework.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>path</b></td><td>
|
||||
<p>Buffer to store pathname of the file. For passing to <a href="ft2-base_interface.html#FT_New_Face">FT_New_Face</a>. The client must allocate this buffer before calling this function.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>maxPathSize</b></td><td>
|
||||
<p>Lengths of the buffer ‘path’ that client allocated.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>face_index</b></td><td>
|
||||
<p>Index of the face. For passing to <a href="ft2-base_interface.html#FT_New_Face">FT_New_Face</a>.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_New_Face_From_FSSpec">FT_New_Face_From_FSSpec</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MAC_H (freetype/ftmac.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_New_Face_From_FSSpec</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<span class="keyword">const</span> FSSpec *spec,
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a> face_index,
|
||||
<a href="ft2-base_interface.html#FT_Face">FT_Face</a> *aface )
|
||||
FT_DEPRECATED_ATTRIBUTE;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Create a new face object from a given resource and typeface index using an FSSpec to the font file.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to the library resource.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>spec</b></td><td>
|
||||
<p>FSSpec to the font file.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>face_index</b></td><td>
|
||||
<p>The index of the face within the resource. The first face has index 0.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>aface</b></td><td>
|
||||
<p>A handle to a new face object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p><a href="ft2-mac_specific.html#FT_New_Face_From_FSSpec">FT_New_Face_From_FSSpec</a> is identical to <a href="ft2-base_interface.html#FT_New_Face">FT_New_Face</a> except it accepts an FSSpec instead of a path.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_New_Face_From_FSRef">FT_New_Face_From_FSRef</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MAC_H (freetype/ftmac.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_New_Face_From_FSRef</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<span class="keyword">const</span> FSRef *ref,
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a> face_index,
|
||||
<a href="ft2-base_interface.html#FT_Face">FT_Face</a> *aface )
|
||||
FT_DEPRECATED_ATTRIBUTE;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Create a new face object from a given resource and typeface index using an FSRef to the font file.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to the library resource.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>spec</b></td><td>
|
||||
<p>FSRef to the font file.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>face_index</b></td><td>
|
||||
<p>The index of the face within the resource. The first face has index 0.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>aface</b></td><td>
|
||||
<p>A handle to a new face object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p><a href="ft2-mac_specific.html#FT_New_Face_From_FSRef">FT_New_Face_From_FSRef</a> is identical to <a href="ft2-base_interface.html#FT_New_Face">FT_New_Face</a> except it accepts an FSRef instead of a path.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,819 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Module Management
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_Module_Constructor">FT_Module_Constructor</a></td><td></td><td><a href="#FT_Remove_Module">FT_Remove_Module</a></td><td></td><td><a href="#FT_Set_Debug_Hook">FT_Set_Debug_Hook</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Module_Destructor">FT_Module_Destructor</a></td><td></td><td><a href="#FT_Property_Set">FT_Property_Set</a></td><td></td><td><a href="#FT_Add_Default_Modules">FT_Add_Default_Modules</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Module_Requester">FT_Module_Requester</a></td><td></td><td><a href="#FT_Property_Get">FT_Property_Get</a></td><td></td><td><a href="#FT_Renderer_Class">FT_Renderer_Class</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Module_Class">FT_Module_Class</a></td><td></td><td><a href="#FT_Reference_Library">FT_Reference_Library</a></td><td></td><td><a href="#FT_Get_Renderer">FT_Get_Renderer</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Add_Module">FT_Add_Module</a></td><td></td><td><a href="#FT_New_Library">FT_New_Library</a></td><td></td><td><a href="#FT_Set_Renderer">FT_Set_Renderer</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Get_Module">FT_Get_Module</a></td><td></td><td><a href="#FT_Done_Library">FT_Done_Library</a></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The definitions below are used to manage modules within FreeType. Modules can be added, upgraded, and removed at runtime. Additionally, some module properties can be controlled also.</p>
|
||||
<p>Here is a list of possible values of the ‘module_name’ field in the <a href="ft2-module_management.html#FT_Module_Class">FT_Module_Class</a> structure.</p>
|
||||
<pre class="colored">
|
||||
autofitter
|
||||
bdf
|
||||
cff
|
||||
gxvalid
|
||||
otvalid
|
||||
pcf
|
||||
pfr
|
||||
psaux
|
||||
pshinter
|
||||
psnames
|
||||
raster1, raster5
|
||||
sfnt
|
||||
smooth, smooth-lcd, smooth-lcdv
|
||||
truetype
|
||||
type1
|
||||
type42
|
||||
t1cid
|
||||
winfonts
|
||||
</pre>
|
||||
<p>Note that the FreeType Cache sub-system is not a FreeType module.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Module_Constructor">FT_Module_Constructor</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <a href="ft2-basic_types.html#FT_Error">FT_Error</a>
|
||||
(*<b>FT_Module_Constructor</b>)( <a href="ft2-base_interface.html#FT_Module">FT_Module</a> module );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A function used to initialize (not create) a new module object.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>module</b></td><td>
|
||||
<p>The module to initialize.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Module_Destructor">FT_Module_Destructor</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</span>
|
||||
(*<b>FT_Module_Destructor</b>)( <a href="ft2-base_interface.html#FT_Module">FT_Module</a> module );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A function used to finalize (not destroy) a given module object.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>module</b></td><td>
|
||||
<p>The module to finalize.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Module_Requester">FT_Module_Requester</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> FT_Module_Interface
|
||||
(*<b>FT_Module_Requester</b>)( <a href="ft2-base_interface.html#FT_Module">FT_Module</a> module,
|
||||
<span class="keyword">const</span> <span class="keyword">char</span>* name );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A function used to query a given module for a specific interface.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>module</b></td><td>
|
||||
<p>The module to be searched.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>name</b></td><td>
|
||||
<p>The name of the interface in the module.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Module_Class">FT_Module_Class</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_Module_Class_
|
||||
{
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> module_flags;
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a> module_size;
|
||||
<span class="keyword">const</span> <a href="ft2-basic_types.html#FT_String">FT_String</a>* module_name;
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> module_version;
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> module_requires;
|
||||
|
||||
<span class="keyword">const</span> <span class="keyword">void</span>* module_interface;
|
||||
|
||||
<a href="ft2-module_management.html#FT_Module_Constructor">FT_Module_Constructor</a> module_init;
|
||||
<a href="ft2-module_management.html#FT_Module_Destructor">FT_Module_Destructor</a> module_done;
|
||||
<a href="ft2-module_management.html#FT_Module_Requester">FT_Module_Requester</a> get_interface;
|
||||
|
||||
} <b>FT_Module_Class</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The module class descriptor.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>module_flags</b></td><td>
|
||||
<p>Bit flags describing the module.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>module_size</b></td><td>
|
||||
<p>The size of one module object/instance in bytes.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>module_name</b></td><td>
|
||||
<p>The name of the module.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>module_version</b></td><td>
|
||||
<p>The version, as a 16.16 fixed number (major.minor).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>module_requires</b></td><td>
|
||||
<p>The version of FreeType this module requires, as a 16.16 fixed number (major.minor). Starts at version 2.0, i.e., 0x20000.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>module_init</b></td><td>
|
||||
<p>The initializing function.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>module_done</b></td><td>
|
||||
<p>The finalizing function.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>get_interface</b></td><td>
|
||||
<p>The interface requesting function.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Add_Module">FT_Add_Module</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Add_Module</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<span class="keyword">const</span> <a href="ft2-module_management.html#FT_Module_Class">FT_Module_Class</a>* clazz );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Add a new module to a given library instance.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to the library object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>clazz</b></td><td>
|
||||
<p>A pointer to class descriptor for the module.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>An error will be returned if a module already exists by that name, or if the module requires a version of FreeType that is too great.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_Module">FT_Get_Module</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-base_interface.html#FT_Module">FT_Module</a> )
|
||||
<b>FT_Get_Module</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<span class="keyword">const</span> <span class="keyword">char</span>* module_name );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Find a module by its name.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to the library object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>module_name</b></td><td>
|
||||
<p>The module's name (as an ASCII string).</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>A module handle. 0 if none was found.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>FreeType's internal modules aren't documented very well, and you should look up the source code for details.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Remove_Module">FT_Remove_Module</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Remove_Module</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<a href="ft2-base_interface.html#FT_Module">FT_Module</a> module );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Remove a given module from a library instance.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to a library object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>module</b></td><td>
|
||||
<p>A handle to a module object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The module object is destroyed by the function in case of success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Property_Set">FT_Property_Set</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Property_Set</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<span class="keyword">const</span> <a href="ft2-basic_types.html#FT_String">FT_String</a>* module_name,
|
||||
<span class="keyword">const</span> <a href="ft2-basic_types.html#FT_String">FT_String</a>* property_name,
|
||||
<span class="keyword">const</span> <span class="keyword">void</span>* value );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Set a property for a given module.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to the library the module is part of.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>module_name</b></td><td>
|
||||
<p>The module name.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>property_name</b></td><td>
|
||||
<p>The property name. Properties are described in the ‘Synopsis’ subsection of the module's documentation.</p>
|
||||
<p>Note that only a few modules have properties.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>value</b></td><td>
|
||||
<p>A generic pointer to a variable or structure which gives the new value of the property. The exact definition of ‘value’ is dependent on the property; see the ‘Synopsis’ subsection of the module's documentation.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>If ‘module_name’ isn't a valid module name, or ‘property_name’ doesn't specify a valid property, or if ‘value’ doesn't represent a valid value for the given property, an error is returned.</p>
|
||||
<p>The following example sets property ‘bar’ (a simple integer) in module ‘foo’ to value 1.</p>
|
||||
<pre class="colored">
|
||||
FT_UInt bar;
|
||||
|
||||
|
||||
bar = 1;
|
||||
FT_Property_Set( library, "foo", "bar", &bar );
|
||||
</pre>
|
||||
<p>Note that the FreeType Cache sub-system doesn't recognize module property changes. To avoid glyph lookup confusion within the cache you should call <a href="ft2-cache_subsystem.html#FTC_Manager_Reset">FTC_Manager_Reset</a> to completely flush the cache if a module property gets changed after <a href="ft2-cache_subsystem.html#FTC_Manager_New">FTC_Manager_New</a> has been called.</p>
|
||||
<p>It is not possible to set properties of the FreeType Cache sub-system itself with FT_Property_Set; use ?FTC_Property_Set? instead.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.4.11</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Property_Get">FT_Property_Get</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Property_Get</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<span class="keyword">const</span> <a href="ft2-basic_types.html#FT_String">FT_String</a>* module_name,
|
||||
<span class="keyword">const</span> <a href="ft2-basic_types.html#FT_String">FT_String</a>* property_name,
|
||||
<span class="keyword">void</span>* value );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Get a module's property value.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to the library the module is part of.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>module_name</b></td><td>
|
||||
<p>The module name.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>property_name</b></td><td>
|
||||
<p>The property name. Properties are described in the ‘Synopsis’ subsection of the module's documentation.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>value</b></td><td>
|
||||
<p>A generic pointer to a variable or structure which gives the value of the property. The exact definition of ‘value’ is dependent on the property; see the ‘Synopsis’ subsection of the module's documentation.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>If ‘module_name’ isn't a valid module name, or ‘property_name’ doesn't specify a valid property, or if ‘value’ doesn't represent a valid value for the given property, an error is returned.</p>
|
||||
<p>The following example gets property ‘baz’ (a range) in module ‘foo’.</p>
|
||||
<pre class="colored">
|
||||
typedef range_
|
||||
{
|
||||
FT_Int32 min;
|
||||
FT_Int32 max;
|
||||
|
||||
} range;
|
||||
|
||||
range baz;
|
||||
|
||||
|
||||
FT_Property_Get( library, "foo", "baz", &baz );
|
||||
</pre>
|
||||
<p>It is not possible to retrieve properties of the FreeType Cache sub-system with FT_Property_Get; use ?FTC_Property_Get? instead.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.4.11</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Reference_Library">FT_Reference_Library</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Reference_Library</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A counter gets initialized to 1 at the time an <a href="ft2-base_interface.html#FT_Library">FT_Library</a> structure is created. This function increments the counter. <a href="ft2-module_management.html#FT_Done_Library">FT_Done_Library</a> then only destroys a library if the counter is 1, otherwise it simply decrements the counter.</p>
|
||||
<p>This function helps in managing life-cycles of structures which reference <a href="ft2-base_interface.html#FT_Library">FT_Library</a> objects.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to a target library object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.4.2</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_New_Library">FT_New_Library</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_New_Library</b>( <a href="ft2-system_interface.html#FT_Memory">FT_Memory</a> memory,
|
||||
<a href="ft2-base_interface.html#FT_Library">FT_Library</a> *alibrary );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This function is used to create a new FreeType library instance from a given memory object. It is thus possible to use libraries with distinct memory allocators within the same program.</p>
|
||||
<p>Normally, you would call this function (followed by a call to <a href="ft2-module_management.html#FT_Add_Default_Modules">FT_Add_Default_Modules</a> or a series of calls to <a href="ft2-module_management.html#FT_Add_Module">FT_Add_Module</a>) instead of <a href="ft2-base_interface.html#FT_Init_FreeType">FT_Init_FreeType</a> to initialize the FreeType library.</p>
|
||||
<p>Don't use <a href="ft2-base_interface.html#FT_Done_FreeType">FT_Done_FreeType</a> but <a href="ft2-module_management.html#FT_Done_Library">FT_Done_Library</a> to destroy a library instance.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>memory</b></td><td>
|
||||
<p>A handle to the original memory object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>alibrary</b></td><td>
|
||||
<p>A pointer to handle of a new library object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>See the discussion of reference counters in the description of <a href="ft2-module_management.html#FT_Reference_Library">FT_Reference_Library</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Done_Library">FT_Done_Library</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Done_Library</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Discard a given library object. This closes all drivers and discards all resource objects.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to the target library.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>See the discussion of reference counters in the description of <a href="ft2-module_management.html#FT_Reference_Library">FT_Reference_Library</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Set_Debug_Hook">FT_Set_Debug_Hook</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Set_Debug_Hook</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> hook_index,
|
||||
FT_DebugHook_Func debug_hook );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Set a debug hook function for debugging the interpreter of a font format.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to the library object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>hook_index</b></td><td>
|
||||
<p>The index of the debug hook. You should use the values defined in ‘ftobjs.h’, e.g., ‘FT_DEBUG_HOOK_TRUETYPE’.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>debug_hook</b></td><td>
|
||||
<p>The function used to debug the interpreter.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>Currently, four debug hook slots are available, but only two (for the TrueType and the Type 1 interpreter) are defined.</p>
|
||||
<p>Since the internal headers of FreeType are no longer installed, the symbol ‘FT_DEBUG_HOOK_TRUETYPE’ isn't available publicly. This is a bug and will be fixed in a forthcoming release.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Add_Default_Modules">FT_Add_Default_Modules</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Add_Default_Modules</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Add the set of default drivers to a given library object. This is only useful when you create a library object with <a href="ft2-module_management.html#FT_New_Library">FT_New_Library</a> (usually to plug a custom memory manager).</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to a new library object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Renderer_Class">FT_Renderer_Class</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_RENDER_H (freetype/ftrender.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_Renderer_Class_
|
||||
{
|
||||
<a href="ft2-module_management.html#FT_Module_Class">FT_Module_Class</a> root;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Glyph_Format">FT_Glyph_Format</a> glyph_format;
|
||||
|
||||
FT_Renderer_RenderFunc render_glyph;
|
||||
FT_Renderer_TransformFunc transform_glyph;
|
||||
FT_Renderer_GetCBoxFunc get_glyph_cbox;
|
||||
FT_Renderer_SetModeFunc set_mode;
|
||||
|
||||
<a href="ft2-raster.html#FT_Raster_Funcs">FT_Raster_Funcs</a>* raster_class;
|
||||
|
||||
} <b>FT_Renderer_Class</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The renderer module class descriptor.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>root</b></td><td>
|
||||
<p>The root <a href="ft2-module_management.html#FT_Module_Class">FT_Module_Class</a> fields.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>glyph_format</b></td><td>
|
||||
<p>The glyph image format this renderer handles.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>render_glyph</b></td><td>
|
||||
<p>A method used to render the image that is in a given glyph slot into a bitmap.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>transform_glyph</b></td><td>
|
||||
<p>A method used to transform the image that is in a given glyph slot.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>get_glyph_cbox</b></td><td>
|
||||
<p>A method used to access the glyph's cbox.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>set_mode</b></td><td>
|
||||
<p>A method used to pass additional parameters.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>raster_class</b></td><td>
|
||||
<p>For <a href="ft2-basic_types.html#FT_Glyph_Format">FT_GLYPH_FORMAT_OUTLINE</a> renderers only. This is a pointer to its raster's class.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_Renderer">FT_Get_Renderer</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_RENDER_H (freetype/ftrender.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-base_interface.html#FT_Renderer">FT_Renderer</a> )
|
||||
<b>FT_Get_Renderer</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<a href="ft2-basic_types.html#FT_Glyph_Format">FT_Glyph_Format</a> format );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve the current renderer for a given glyph format.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to the library object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>format</b></td><td>
|
||||
<p>The glyph format.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>A renderer handle. 0 if none found.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>An error will be returned if a module already exists by that name, or if the module requires a version of FreeType that is too great.</p>
|
||||
<p>To add a new renderer, simply use <a href="ft2-module_management.html#FT_Add_Module">FT_Add_Module</a>. To retrieve a renderer by its name, use <a href="ft2-module_management.html#FT_Get_Module">FT_Get_Module</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Set_Renderer">FT_Set_Renderer</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_RENDER_H (freetype/ftrender.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Set_Renderer</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<a href="ft2-base_interface.html#FT_Renderer">FT_Renderer</a> renderer,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> num_params,
|
||||
<a href="ft2-base_interface.html#FT_Parameter">FT_Parameter</a>* parameters );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Set the current renderer to use, and set additional mode.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A handle to the library object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>renderer</b></td><td>
|
||||
<p>A handle to the renderer object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>num_params</b></td><td>
|
||||
<p>The number of additional parameters.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>parameters</b></td><td>
|
||||
<p>Additional parameters.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>In case of success, the renderer will be used to convert glyph images in the renderer's known format into bitmaps.</p>
|
||||
<p>This doesn't change the current renderer for other formats.</p>
|
||||
<p>Currently, only the B/W renderer, if compiled with FT_RASTER_OPTION_ANTI_ALIASING (providing a 5-levels anti-aliasing mode; this option must be set directly in ‘ftraster.c’ and is undefined by default) accepts a single tag ‘pal5’ to set its gray palette as a character string with 5 elements. Consequently, the third and fourth argument are zero normally.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,511 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Multiple Masters
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_MM_Axis">FT_MM_Axis</a></td><td></td><td><a href="#FT_Get_MM_Var">FT_Get_MM_Var</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Multi_Master">FT_Multi_Master</a></td><td></td><td><a href="#FT_Set_MM_Design_Coordinates">FT_Set_MM_Design_Coordinates</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Var_Axis">FT_Var_Axis</a></td><td></td><td><a href="#FT_Set_Var_Design_Coordinates">FT_Set_Var_Design_Coordinates</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Var_Named_Style">FT_Var_Named_Style</a></td><td></td><td><a href="#FT_Set_MM_Blend_Coordinates">FT_Set_MM_Blend_Coordinates</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_MM_Var">FT_MM_Var</a></td><td></td><td><a href="#FT_Set_Var_Blend_Coordinates">FT_Set_Var_Blend_Coordinates</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Get_Multi_Master">FT_Get_Multi_Master</a></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The following types and functions are used to manage Multiple Master fonts, i.e., the selection of specific design instances by setting design axis coordinates.</p>
|
||||
<p>George Williams has extended this interface to make it work with both Type 1 Multiple Masters fonts and GX distortable (var) fonts. Some of these routines only work with MM fonts, others will work with both types. They are similar enough that a consistent interface makes sense.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_MM_Axis">FT_MM_Axis</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MULTIPLE_MASTERS_H (freetype/ftmm.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_MM_Axis_
|
||||
{
|
||||
<a href="ft2-basic_types.html#FT_String">FT_String</a>* name;
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a> minimum;
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a> maximum;
|
||||
|
||||
} <b>FT_MM_Axis</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A simple structure used to model a given axis in design space for Multiple Masters fonts.</p>
|
||||
<p>This structure can't be used for GX var fonts.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>name</b></td><td>
|
||||
<p>The axis's name.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>minimum</b></td><td>
|
||||
<p>The axis's minimum design coordinate.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>maximum</b></td><td>
|
||||
<p>The axis's maximum design coordinate.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Multi_Master">FT_Multi_Master</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MULTIPLE_MASTERS_H (freetype/ftmm.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_Multi_Master_
|
||||
{
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> num_axis;
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> num_designs;
|
||||
<a href="ft2-multiple_masters.html#FT_MM_Axis">FT_MM_Axis</a> axis[T1_MAX_MM_AXIS];
|
||||
|
||||
} <b>FT_Multi_Master</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used to model the axes and space of a Multiple Masters font.</p>
|
||||
<p>This structure can't be used for GX var fonts.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>num_axis</b></td><td>
|
||||
<p>Number of axes. Cannot exceed 4.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>num_designs</b></td><td>
|
||||
<p>Number of designs; should be normally 2^num_axis even though the Type 1 specification strangely allows for intermediate designs to be present. This number cannot exceed 16.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>axis</b></td><td>
|
||||
<p>A table of axis descriptors.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Var_Axis">FT_Var_Axis</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MULTIPLE_MASTERS_H (freetype/ftmm.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_Var_Axis_
|
||||
{
|
||||
<a href="ft2-basic_types.html#FT_String">FT_String</a>* name;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> minimum;
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> def;
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> maximum;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> tag;
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> strid;
|
||||
|
||||
} <b>FT_Var_Axis</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A simple structure used to model a given axis in design space for Multiple Masters and GX var fonts.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>name</b></td><td>
|
||||
<p>The axis's name. Not always meaningful for GX.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>minimum</b></td><td>
|
||||
<p>The axis's minimum design coordinate.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>def</b></td><td>
|
||||
<p>The axis's default design coordinate. FreeType computes meaningful default values for MM; it is then an integer value, not in 16.16 format.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>maximum</b></td><td>
|
||||
<p>The axis's maximum design coordinate.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>tag</b></td><td>
|
||||
<p>The axis's tag (the GX equivalent to ‘name’). FreeType provides default values for MM if possible.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>strid</b></td><td>
|
||||
<p>The entry in ‘name’ table (another GX version of ‘name’). Not meaningful for MM.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Var_Named_Style">FT_Var_Named_Style</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MULTIPLE_MASTERS_H (freetype/ftmm.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_Var_Named_Style_
|
||||
{
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a>* coords;
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> strid;
|
||||
|
||||
} <b>FT_Var_Named_Style</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A simple structure used to model a named style in a GX var font.</p>
|
||||
<p>This structure can't be used for MM fonts.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>coords</b></td><td>
|
||||
<p>The design coordinates for this style. This is an array with one entry for each axis.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>strid</b></td><td>
|
||||
<p>The entry in ‘name’ table identifying this style.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_MM_Var">FT_MM_Var</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MULTIPLE_MASTERS_H (freetype/ftmm.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_MM_Var_
|
||||
{
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> num_axis;
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> num_designs;
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> num_namedstyles;
|
||||
<a href="ft2-multiple_masters.html#FT_Var_Axis">FT_Var_Axis</a>* axis;
|
||||
<a href="ft2-multiple_masters.html#FT_Var_Named_Style">FT_Var_Named_Style</a>* namedstyle;
|
||||
|
||||
} <b>FT_MM_Var</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used to model the axes and space of a Multiple Masters or GX var distortable font.</p>
|
||||
<p>Some fields are specific to one format and not to the other.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>num_axis</b></td><td>
|
||||
<p>The number of axes. The maximum value is 4 for MM; no limit in GX.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>num_designs</b></td><td>
|
||||
<p>The number of designs; should be normally 2^num_axis for MM fonts. Not meaningful for GX (where every glyph could have a different number of designs).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>num_namedstyles</b></td><td>
|
||||
<p>The number of named styles; only meaningful for GX which allows certain design coordinates to have a string ID (in the ‘name’ table) associated with them. The font can tell the user that, for example, Weight=1.5 is ‘Bold’.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>axis</b></td><td>
|
||||
<p>A table of axis descriptors. GX fonts contain slightly more data than MM.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>namedstyles</b></td><td>
|
||||
<p>A table of named styles. Only meaningful with GX.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_Multi_Master">FT_Get_Multi_Master</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MULTIPLE_MASTERS_H (freetype/ftmm.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_Multi_Master</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-multiple_masters.html#FT_Multi_Master">FT_Multi_Master</a> *amaster );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve the Multiple Master descriptor of a given font.</p>
|
||||
<p>This function can't be used with GX fonts.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the source face.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>amaster</b></td><td>
|
||||
<p>The Multiple Masters descriptor.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_MM_Var">FT_Get_MM_Var</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MULTIPLE_MASTERS_H (freetype/ftmm.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_MM_Var</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-multiple_masters.html#FT_MM_Var">FT_MM_Var</a>* *amaster );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve the Multiple Master/GX var descriptor of a given font.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the source face.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>amaster</b></td><td>
|
||||
<p>The Multiple Masters/GX var descriptor. Allocates a data structure, which the user must free (a single call to FT_FREE will do it).</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Set_MM_Design_Coordinates">FT_Set_MM_Design_Coordinates</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MULTIPLE_MASTERS_H (freetype/ftmm.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Set_MM_Design_Coordinates</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> num_coords,
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a>* coords );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>For Multiple Masters fonts, choose an interpolated font design through design coordinates.</p>
|
||||
<p>This function can't be used with GX fonts.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the source face.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>num_coords</b></td><td>
|
||||
<p>The number of design coordinates (must be equal to the number of axes in the font).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>coords</b></td><td>
|
||||
<p>An array of design coordinates.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Set_Var_Design_Coordinates">FT_Set_Var_Design_Coordinates</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MULTIPLE_MASTERS_H (freetype/ftmm.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Set_Var_Design_Coordinates</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> num_coords,
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a>* coords );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>For Multiple Master or GX Var fonts, choose an interpolated font design through design coordinates.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the source face.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>num_coords</b></td><td>
|
||||
<p>The number of design coordinates (must be equal to the number of axes in the font).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>coords</b></td><td>
|
||||
<p>An array of design coordinates.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Set_MM_Blend_Coordinates">FT_Set_MM_Blend_Coordinates</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MULTIPLE_MASTERS_H (freetype/ftmm.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Set_MM_Blend_Coordinates</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> num_coords,
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a>* coords );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>For Multiple Masters and GX var fonts, choose an interpolated font design through normalized blend coordinates.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>inout</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the source face.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>num_coords</b></td><td>
|
||||
<p>The number of design coordinates (must be equal to the number of axes in the font).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>coords</b></td><td>
|
||||
<p>The design coordinates array (each element must be between 0 and 1.0).</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Set_Var_Blend_Coordinates">FT_Set_Var_Blend_Coordinates</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MULTIPLE_MASTERS_H (freetype/ftmm.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Set_Var_Blend_Coordinates</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> num_coords,
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a>* coords );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This is another name of <a href="ft2-multiple_masters.html#FT_Set_MM_Blend_Coordinates">FT_Set_MM_Blend_Coordinates</a>.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,208 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
OpenType Validation
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_VALIDATE_OTXXX">FT_VALIDATE_OTXXX</a></td><td></td><td><a href="#FT_OpenType_Validate">FT_OpenType_Validate</a></td><td></td><td><a href="#FT_OpenType_Free">FT_OpenType_Free</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains the declaration of functions to validate some OpenType tables (BASE, GDEF, GPOS, GSUB, JSTF, MATH).</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_VALIDATE_OTXXX">FT_VALIDATE_OTXXX</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_OPENTYPE_VALIDATE_H (freetype/ftotval.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_BASE</a> 0x0100
|
||||
#define <a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_GDEF</a> 0x0200
|
||||
#define <a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_GPOS</a> 0x0400
|
||||
#define <a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_GSUB</a> 0x0800
|
||||
#define <a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_JSTF</a> 0x1000
|
||||
#define <a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_MATH</a> 0x2000
|
||||
|
||||
#define <a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_OT</a> <a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_BASE</a> | \
|
||||
<a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_GDEF</a> | \
|
||||
<a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_GPOS</a> | \
|
||||
<a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_GSUB</a> | \
|
||||
<a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_JSTF</a> | \
|
||||
<a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_MATH</a>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A list of bit-field constants used with <a href="ft2-ot_validation.html#FT_OpenType_Validate">FT_OpenType_Validate</a> to indicate which OpenType tables should be validated.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>FT_VALIDATE_BASE</b></td><td>
|
||||
<p>Validate BASE table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_GDEF</b></td><td>
|
||||
<p>Validate GDEF table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_GPOS</b></td><td>
|
||||
<p>Validate GPOS table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_GSUB</b></td><td>
|
||||
<p>Validate GSUB table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_JSTF</b></td><td>
|
||||
<p>Validate JSTF table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_MATH</b></td><td>
|
||||
<p>Validate MATH table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_VALIDATE_OT</b></td><td>
|
||||
<p>Validate all OpenType tables (BASE, GDEF, GPOS, GSUB, JSTF, MATH).</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_OpenType_Validate">FT_OpenType_Validate</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_OPENTYPE_VALIDATE_H (freetype/ftotval.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_OpenType_Validate</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> validation_flags,
|
||||
<a href="ft2-basic_types.html#FT_Bytes">FT_Bytes</a> *BASE_table,
|
||||
<a href="ft2-basic_types.html#FT_Bytes">FT_Bytes</a> *GDEF_table,
|
||||
<a href="ft2-basic_types.html#FT_Bytes">FT_Bytes</a> *GPOS_table,
|
||||
<a href="ft2-basic_types.html#FT_Bytes">FT_Bytes</a> *GSUB_table,
|
||||
<a href="ft2-basic_types.html#FT_Bytes">FT_Bytes</a> *JSTF_table );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Validate various OpenType tables to assure that all offsets and indices are valid. The idea is that a higher-level library which actually does the text layout can access those tables without error checking (which can be quite time consuming).</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the input face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>validation_flags</b></td><td>
|
||||
<p>A bit field which specifies the tables to be validated. See <a href="ft2-ot_validation.html#FT_VALIDATE_OTXXX">FT_VALIDATE_OTXXX</a> for possible values.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>BASE_table</b></td><td>
|
||||
<p>A pointer to the BASE table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>GDEF_table</b></td><td>
|
||||
<p>A pointer to the GDEF table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>GPOS_table</b></td><td>
|
||||
<p>A pointer to the GPOS table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>GSUB_table</b></td><td>
|
||||
<p>A pointer to the GSUB table.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>JSTF_table</b></td><td>
|
||||
<p>A pointer to the JSTF table.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function only works with OpenType fonts, returning an error otherwise.</p>
|
||||
<p>After use, the application should deallocate the five tables with <a href="ft2-ot_validation.html#FT_OpenType_Free">FT_OpenType_Free</a>. A NULL value indicates that the table either doesn't exist in the font, or the application hasn't asked for validation.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_OpenType_Free">FT_OpenType_Free</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_OPENTYPE_VALIDATE_H (freetype/ftotval.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_OpenType_Free</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_Bytes">FT_Bytes</a> table );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Free the buffer allocated by OpenType validator.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the input face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>table</b></td><td>
|
||||
<p>The pointer to the buffer that is allocated by <a href="ft2-ot_validation.html#FT_OpenType_Validate">FT_OpenType_Validate</a>.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function must be used to free the buffer allocated by <a href="ft2-ot_validation.html#FT_OpenType_Validate">FT_OpenType_Validate</a> only.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,206 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
PFR Fonts
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_Get_PFR_Metrics">FT_Get_PFR_Metrics</a></td><td></td><td><a href="#FT_Get_PFR_Kerning">FT_Get_PFR_Kerning</a></td><td></td><td><a href="#FT_Get_PFR_Advance">FT_Get_PFR_Advance</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains the declaration of PFR-specific functions.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_PFR_Metrics">FT_Get_PFR_Metrics</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_PFR_H (freetype/ftpfr.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_PFR_Metrics</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> *aoutline_resolution,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> *ametrics_resolution,
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> *ametrics_x_scale,
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> *ametrics_y_scale );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return the outline and metrics resolutions of a given PFR face.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>Handle to the input face. It can be a non-PFR face.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>aoutline_resolution</b></td><td>
|
||||
<p>Outline resolution. This is equivalent to ‘face->units_per_EM’ for non-PFR fonts. Optional (parameter can be NULL).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>ametrics_resolution</b></td><td>
|
||||
<p>Metrics resolution. This is equivalent to ‘outline_resolution’ for non-PFR fonts. Optional (parameter can be NULL).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>ametrics_x_scale</b></td><td>
|
||||
<p>A 16.16 fixed-point number used to scale distance expressed in metrics units to device sub-pixels. This is equivalent to ‘face->size->x_scale’, but for metrics only. Optional (parameter can be NULL).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>ametrics_y_scale</b></td><td>
|
||||
<p>Same as ‘ametrics_x_scale’ but for the vertical direction. optional (parameter can be NULL).</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>If the input face is not a PFR, this function will return an error. However, in all cases, it will return valid values.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_PFR_Kerning">FT_Get_PFR_Kerning</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_PFR_H (freetype/ftpfr.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_PFR_Kerning</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> left,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> right,
|
||||
<a href="ft2-basic_types.html#FT_Vector">FT_Vector</a> *avector );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return the kerning pair corresponding to two glyphs in a PFR face. The distance is expressed in metrics units, unlike the result of <a href="ft2-base_interface.html#FT_Get_Kerning">FT_Get_Kerning</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the input face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>left</b></td><td>
|
||||
<p>Index of the left glyph.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>right</b></td><td>
|
||||
<p>Index of the right glyph.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>avector</b></td><td>
|
||||
<p>A kerning vector.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function always return distances in original PFR metrics units. This is unlike <a href="ft2-base_interface.html#FT_Get_Kerning">FT_Get_Kerning</a> with the <a href="ft2-base_interface.html#FT_Kerning_Mode">FT_KERNING_UNSCALED</a> mode, which always returns distances converted to outline units.</p>
|
||||
<p>You can use the value of the ‘x_scale’ and ‘y_scale’ parameters returned by <a href="ft2-pfr_fonts.html#FT_Get_PFR_Metrics">FT_Get_PFR_Metrics</a> to scale these to device sub-pixels.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_PFR_Advance">FT_Get_PFR_Advance</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_PFR_H (freetype/ftpfr.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_PFR_Advance</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> gindex,
|
||||
<a href="ft2-basic_types.html#FT_Pos">FT_Pos</a> *aadvance );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return a given glyph advance, expressed in original metrics units, from a PFR font.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the input face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>gindex</b></td><td>
|
||||
<p>The glyph index.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>aadvance</b></td><td>
|
||||
<p>The glyph advance in metrics units.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>You can use the ‘x_scale’ or ‘y_scale’ results of <a href="ft2-pfr_fonts.html#FT_Get_PFR_Metrics">FT_Get_PFR_Metrics</a> to convert the advance to device sub-pixels (i.e., 1/64th of pixels).</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,186 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Quick retrieval of advance values
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_ADVANCE_FLAG_FAST_ONLY">FT_ADVANCE_FLAG_FAST_ONLY</a></td><td></td><td><a href="#FT_Get_Advances">FT_Get_Advances</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Get_Advance">FT_Get_Advance</a></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains functions to quickly extract advance values without handling glyph outlines, if possible.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_ADVANCE_FLAG_FAST_ONLY">FT_ADVANCE_FLAG_FAST_ONLY</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_ADVANCES_H (freetype/ftadvanc.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_ADVANCE_FLAG_FAST_ONLY</b> 0x20000000UL
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A bit-flag to be OR-ed with the ‘flags’ parameter of the <a href="ft2-quick_advance.html#FT_Get_Advance">FT_Get_Advance</a> and <a href="ft2-quick_advance.html#FT_Get_Advances">FT_Get_Advances</a> functions.</p>
|
||||
<p>If set, it indicates that you want these functions to fail if the corresponding hinting mode or font driver doesn't allow for very quick advance computation.</p>
|
||||
<p>Typically, glyphs which are either unscaled, unhinted, bitmapped, or light-hinted can have their advance width computed very quickly.</p>
|
||||
<p>Normal and bytecode hinted modes, which require loading, scaling, and hinting of the glyph outline, are extremely slow by comparison.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_Advance">FT_Get_Advance</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_ADVANCES_H (freetype/ftadvanc.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_Advance</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> gindex,
|
||||
<a href="ft2-basic_types.html#FT_Int32">FT_Int32</a> load_flags,
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> *padvance );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve the advance value of a given glyph outline in an <a href="ft2-base_interface.html#FT_Face">FT_Face</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>The source <a href="ft2-base_interface.html#FT_Face">FT_Face</a> handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>gindex</b></td><td>
|
||||
<p>The glyph index.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>load_flags</b></td><td>
|
||||
<p>A set of bit flags similar to those used when calling <a href="ft2-base_interface.html#FT_Load_Glyph">FT_Load_Glyph</a>, used to determine what kind of advances you need.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>padvance</b></td><td>
|
||||
<p>The advance value. If scaling is performed (based on the value of ‘load_flags’), the advance value is in 16.16 format. Otherwise, it is in font units.</p>
|
||||
<p>If <a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_VERTICAL_LAYOUT</a> is set, this is the vertical advance corresponding to a vertical layout. Otherwise, it is the horizontal advance in a horizontal layout.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function may fail if you use <a href="ft2-quick_advance.html#FT_ADVANCE_FLAG_FAST_ONLY">FT_ADVANCE_FLAG_FAST_ONLY</a> and if the corresponding font backend doesn't have a quick way to retrieve the advances.</p>
|
||||
<p>A scaled advance is returned in 16.16 format but isn't transformed by the affine transformation specified by <a href="ft2-base_interface.html#FT_Set_Transform">FT_Set_Transform</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_Advances">FT_Get_Advances</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_ADVANCES_H (freetype/ftadvanc.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_Advances</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> start,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> count,
|
||||
<a href="ft2-basic_types.html#FT_Int32">FT_Int32</a> load_flags,
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> *padvances );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve the advance values of several glyph outlines in an <a href="ft2-base_interface.html#FT_Face">FT_Face</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>The source <a href="ft2-base_interface.html#FT_Face">FT_Face</a> handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>start</b></td><td>
|
||||
<p>The first glyph index.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>count</b></td><td>
|
||||
<p>The number of advance values you want to retrieve.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>load_flags</b></td><td>
|
||||
<p>A set of bit flags similar to those used when calling <a href="ft2-base_interface.html#FT_Load_Glyph">FT_Load_Glyph</a>.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>padvance</b></td><td>
|
||||
<p>The advance values. This array, to be provided by the caller, must contain at least ‘count’ elements.</p>
|
||||
<p>If scaling is performed (based on the value of ‘load_flags’), the advance values are in 16.16 format. Otherwise, they are in font units.</p>
|
||||
<p>If <a href="ft2-base_interface.html#FT_LOAD_XXX">FT_LOAD_VERTICAL_LAYOUT</a> is set, these are the vertical advances corresponding to a vertical layout. Otherwise, they are the horizontal advances in a horizontal layout.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function may fail if you use <a href="ft2-quick_advance.html#FT_ADVANCE_FLAG_FAST_ONLY">FT_ADVANCE_FLAG_FAST_ONLY</a> and if the corresponding font backend doesn't have a quick way to retrieve the advances.</p>
|
||||
<p>Scaled advances are returned in 16.16 format but aren't transformed by the affine transformation specified by <a href="ft2-base_interface.html#FT_Set_Transform">FT_Set_Transform</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,606 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Scanline Converter
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_Raster">FT_Raster</a></td><td></td><td><a href="#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_XXX</a></td><td></td><td><a href="#FT_Raster_SetModeFunc">FT_Raster_SetModeFunc</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Span">FT_Span</a></td><td></td><td><a href="#FT_Raster_Params">FT_Raster_Params</a></td><td></td><td><a href="#FT_Raster_RenderFunc">FT_Raster_RenderFunc</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_SpanFunc">FT_SpanFunc</a></td><td></td><td><a href="#FT_Raster_NewFunc">FT_Raster_NewFunc</a></td><td></td><td><a href="#FT_Raster_Funcs">FT_Raster_Funcs</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Raster_BitTest_Func">FT_Raster_BitTest_Func</a></td><td></td><td><a href="#FT_Raster_DoneFunc">FT_Raster_DoneFunc</a></td><td></td><td></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Raster_BitSet_Func">FT_Raster_BitSet_Func</a></td><td></td><td><a href="#FT_Raster_ResetFunc">FT_Raster_ResetFunc</a></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains technical definitions.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Raster">FT_Raster</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_IMAGE_H (freetype/ftimage.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_RasterRec_* <b>FT_Raster</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A handle (pointer) to a raster object. Each object can be used independently to convert an outline into a bitmap or pixmap.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Span">FT_Span</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_IMAGE_H (freetype/ftimage.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_Span_
|
||||
{
|
||||
<span class="keyword">short</span> x;
|
||||
<span class="keyword">unsigned</span> <span class="keyword">short</span> len;
|
||||
<span class="keyword">unsigned</span> <span class="keyword">char</span> coverage;
|
||||
|
||||
} <b>FT_Span</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used to model a single span of gray (or black) pixels when rendering a monochrome or anti-aliased bitmap.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>x</b></td><td>
|
||||
<p>The span's horizontal start position.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>len</b></td><td>
|
||||
<p>The span's length in pixels.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>coverage</b></td><td>
|
||||
<p>The span color/coverage, ranging from 0 (background) to 255 (foreground). Only used for anti-aliased rendering.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This structure is used by the span drawing callback type named <a href="ft2-raster.html#FT_SpanFunc">FT_SpanFunc</a> which takes the y coordinate of the span as a a parameter.</p>
|
||||
<p>The coverage value is always between 0 and 255. If you want less gray values, the callback function has to reduce them.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_SpanFunc">FT_SpanFunc</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_IMAGE_H (freetype/ftimage.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</span>
|
||||
(*<b>FT_SpanFunc</b>)( <span class="keyword">int</span> y,
|
||||
<span class="keyword">int</span> count,
|
||||
<span class="keyword">const</span> <a href="ft2-raster.html#FT_Span">FT_Span</a>* spans,
|
||||
<span class="keyword">void</span>* user );
|
||||
|
||||
#define FT_Raster_Span_Func <b>FT_SpanFunc</b>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A function used as a call-back by the anti-aliased renderer in order to let client applications draw themselves the gray pixel spans on each scan line.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>y</b></td><td>
|
||||
<p>The scanline's y coordinate.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>count</b></td><td>
|
||||
<p>The number of spans to draw on this scanline.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>spans</b></td><td>
|
||||
<p>A table of ‘count’ spans to draw on the scanline.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>user</b></td><td>
|
||||
<p>User-supplied data that is passed to the callback.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This callback allows client applications to directly render the gray spans of the anti-aliased bitmap to any kind of surfaces.</p>
|
||||
<p>This can be used to write anti-aliased outlines directly to a given background bitmap, and even perform translucency.</p>
|
||||
<p>Note that the ‘count’ field cannot be greater than a fixed value defined by the ‘FT_MAX_GRAY_SPANS’ configuration macro in ‘ftoption.h’. By default, this value is set to 32, which means that if there are more than 32 spans on a given scanline, the callback is called several times with the same ‘y’ parameter in order to draw all callbacks.</p>
|
||||
<p>Otherwise, the callback is only called once per scan-line, and only for those scanlines that do have ‘gray’ pixels on them.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Raster_BitTest_Func">FT_Raster_BitTest_Func</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_IMAGE_H (freetype/ftimage.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">int</span>
|
||||
(*<b>FT_Raster_BitTest_Func</b>)( <span class="keyword">int</span> y,
|
||||
<span class="keyword">int</span> x,
|
||||
<span class="keyword">void</span>* user );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>THIS TYPE IS DEPRECATED. DO NOT USE IT.</p>
|
||||
<p>A function used as a call-back by the monochrome scan-converter to test whether a given target pixel is already set to the drawing ‘color’. These tests are crucial to implement drop-out control per-se the TrueType spec.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>y</b></td><td>
|
||||
<p>The pixel's y coordinate.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>x</b></td><td>
|
||||
<p>The pixel's x coordinate.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>user</b></td><td>
|
||||
<p>User-supplied data that is passed to the callback.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>1 if the pixel is ‘set’, 0 otherwise.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Raster_BitSet_Func">FT_Raster_BitSet_Func</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_IMAGE_H (freetype/ftimage.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</span>
|
||||
(*<b>FT_Raster_BitSet_Func</b>)( <span class="keyword">int</span> y,
|
||||
<span class="keyword">int</span> x,
|
||||
<span class="keyword">void</span>* user );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>THIS TYPE IS DEPRECATED. DO NOT USE IT.</p>
|
||||
<p>A function used as a call-back by the monochrome scan-converter to set an individual target pixel. This is crucial to implement drop-out control according to the TrueType specification.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>y</b></td><td>
|
||||
<p>The pixel's y coordinate.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>x</b></td><td>
|
||||
<p>The pixel's x coordinate.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>user</b></td><td>
|
||||
<p>User-supplied data that is passed to the callback.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>1 if the pixel is ‘set’, 0 otherwise.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_XXX</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_IMAGE_H (freetype/ftimage.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_DEFAULT</a> 0x0
|
||||
#define <a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_AA</a> 0x1
|
||||
#define <a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_DIRECT</a> 0x2
|
||||
#define <a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_CLIP</a> 0x4
|
||||
|
||||
/* deprecated */
|
||||
#define ft_raster_flag_default <a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_DEFAULT</a>
|
||||
#define ft_raster_flag_aa <a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_AA</a>
|
||||
#define ft_raster_flag_direct <a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_DIRECT</a>
|
||||
#define ft_raster_flag_clip <a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_CLIP</a>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A list of bit flag constants as used in the ‘flags’ field of a <a href="ft2-raster.html#FT_Raster_Params">FT_Raster_Params</a> structure.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>FT_RASTER_FLAG_DEFAULT</b></td><td>
|
||||
<p>This value is 0.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_RASTER_FLAG_AA</b></td><td>
|
||||
<p>This flag is set to indicate that an anti-aliased glyph image should be generated. Otherwise, it will be monochrome (1-bit).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_RASTER_FLAG_DIRECT</b></td><td>
|
||||
<p>This flag is set to indicate direct rendering. In this mode, client applications must provide their own span callback. This lets them directly draw or compose over an existing bitmap. If this bit is not set, the target pixmap's buffer <i>must</i> be zeroed before rendering.</p>
|
||||
<p>Note that for now, direct rendering is only possible with anti-aliased glyphs.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_RASTER_FLAG_CLIP</b></td><td>
|
||||
<p>This flag is only used in direct rendering mode. If set, the output will be clipped to a box specified in the ‘clip_box’ field of the <a href="ft2-raster.html#FT_Raster_Params">FT_Raster_Params</a> structure.</p>
|
||||
<p>Note that by default, the glyph bitmap is clipped to the target pixmap, except in direct rendering mode where all spans are generated if no clipping box is set.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Raster_Params">FT_Raster_Params</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_IMAGE_H (freetype/ftimage.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_Raster_Params_
|
||||
{
|
||||
<span class="keyword">const</span> <a href="ft2-basic_types.html#FT_Bitmap">FT_Bitmap</a>* target;
|
||||
<span class="keyword">const</span> <span class="keyword">void</span>* source;
|
||||
<span class="keyword">int</span> flags;
|
||||
<a href="ft2-raster.html#FT_SpanFunc">FT_SpanFunc</a> gray_spans;
|
||||
<a href="ft2-raster.html#FT_SpanFunc">FT_SpanFunc</a> black_spans; /* doesn't work! */
|
||||
<a href="ft2-raster.html#FT_Raster_BitTest_Func">FT_Raster_BitTest_Func</a> bit_test; /* doesn't work! */
|
||||
<a href="ft2-raster.html#FT_Raster_BitSet_Func">FT_Raster_BitSet_Func</a> bit_set; /* doesn't work! */
|
||||
<span class="keyword">void</span>* user;
|
||||
<a href="ft2-basic_types.html#FT_BBox">FT_BBox</a> clip_box;
|
||||
|
||||
} <b>FT_Raster_Params</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure to hold the arguments used by a raster's render function.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>target</b></td><td>
|
||||
<p>The target bitmap.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>source</b></td><td>
|
||||
<p>A pointer to the source glyph image (e.g., an <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a>).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>flags</b></td><td>
|
||||
<p>The rendering flags.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>gray_spans</b></td><td>
|
||||
<p>The gray span drawing callback.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>black_spans</b></td><td>
|
||||
<p>The black span drawing callback. UNIMPLEMENTED!</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>bit_test</b></td><td>
|
||||
<p>The bit test callback. UNIMPLEMENTED!</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>bit_set</b></td><td>
|
||||
<p>The bit set callback. UNIMPLEMENTED!</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>user</b></td><td>
|
||||
<p>User-supplied data that is passed to each drawing callback.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>clip_box</b></td><td>
|
||||
<p>An optional clipping box. It is only used in direct rendering mode. Note that coordinates here should be expressed in <i>integer</i> pixels (and not in 26.6 fixed-point units).</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>An anti-aliased glyph bitmap is drawn if the <a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_AA</a> bit flag is set in the ‘flags’ field, otherwise a monochrome bitmap is generated.</p>
|
||||
<p>If the <a href="ft2-raster.html#FT_RASTER_FLAG_XXX">FT_RASTER_FLAG_DIRECT</a> bit flag is set in ‘flags’, the raster will call the ‘gray_spans’ callback to draw gray pixel spans, in the case of an aa glyph bitmap, it will call ‘black_spans’, and ‘bit_test’ and ‘bit_set’ in the case of a monochrome bitmap. This allows direct composition over a pre-existing bitmap through user-provided callbacks to perform the span drawing/composition.</p>
|
||||
<p>Note that the ‘bit_test’ and ‘bit_set’ callbacks are required when rendering a monochrome bitmap, as they are crucial to implement correct drop-out control as defined in the TrueType specification.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Raster_NewFunc">FT_Raster_NewFunc</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_IMAGE_H (freetype/ftimage.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">int</span>
|
||||
(*<b>FT_Raster_NewFunc</b>)( <span class="keyword">void</span>* memory,
|
||||
<a href="ft2-raster.html#FT_Raster">FT_Raster</a>* raster );
|
||||
|
||||
#define FT_Raster_New_Func <b>FT_Raster_NewFunc</b>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A function used to create a new raster object.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>memory</b></td><td>
|
||||
<p>A handle to the memory allocator.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>raster</b></td><td>
|
||||
<p>A handle to the new raster object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>Error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The ‘memory’ parameter is a typeless pointer in order to avoid un-wanted dependencies on the rest of the FreeType code. In practice, it is an <a href="ft2-system_interface.html#FT_Memory">FT_Memory</a> object, i.e., a handle to the standard FreeType memory allocator. However, this field can be completely ignored by a given raster implementation.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Raster_DoneFunc">FT_Raster_DoneFunc</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_IMAGE_H (freetype/ftimage.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</span>
|
||||
(*<b>FT_Raster_DoneFunc</b>)( <a href="ft2-raster.html#FT_Raster">FT_Raster</a> raster );
|
||||
|
||||
#define FT_Raster_Done_Func <b>FT_Raster_DoneFunc</b>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A function used to destroy a given raster object.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>raster</b></td><td>
|
||||
<p>A handle to the raster object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Raster_ResetFunc">FT_Raster_ResetFunc</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_IMAGE_H (freetype/ftimage.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</span>
|
||||
(*<b>FT_Raster_ResetFunc</b>)( <a href="ft2-raster.html#FT_Raster">FT_Raster</a> raster,
|
||||
<span class="keyword">unsigned</span> <span class="keyword">char</span>* pool_base,
|
||||
<span class="keyword">unsigned</span> <span class="keyword">long</span> pool_size );
|
||||
|
||||
#define FT_Raster_Reset_Func <b>FT_Raster_ResetFunc</b>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>FreeType provides an area of memory called the ‘render pool’, available to all registered rasters. This pool can be freely used during a given scan-conversion but is shared by all rasters. Its content is thus transient.</p>
|
||||
<p>This function is called each time the render pool changes, or just after a new raster object is created.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>raster</b></td><td>
|
||||
<p>A handle to the new raster object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>pool_base</b></td><td>
|
||||
<p>The address in memory of the render pool.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>pool_size</b></td><td>
|
||||
<p>The size in bytes of the render pool.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>Rasters can ignore the render pool and rely on dynamic memory allocation if they want to (a handle to the memory allocator is passed to the raster constructor). However, this is not recommended for efficiency purposes.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Raster_SetModeFunc">FT_Raster_SetModeFunc</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_IMAGE_H (freetype/ftimage.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">int</span>
|
||||
(*<b>FT_Raster_SetModeFunc</b>)( <a href="ft2-raster.html#FT_Raster">FT_Raster</a> raster,
|
||||
<span class="keyword">unsigned</span> <span class="keyword">long</span> mode,
|
||||
<span class="keyword">void</span>* args );
|
||||
|
||||
#define FT_Raster_Set_Mode_Func <b>FT_Raster_SetModeFunc</b>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This function is a generic facility to change modes or attributes in a given raster. This can be used for debugging purposes, or simply to allow implementation-specific ‘features’ in a given raster module.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>raster</b></td><td>
|
||||
<p>A handle to the new raster object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>mode</b></td><td>
|
||||
<p>A 4-byte tag used to name the mode or property.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>args</b></td><td>
|
||||
<p>A pointer to the new mode/property to use.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Raster_RenderFunc">FT_Raster_RenderFunc</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_IMAGE_H (freetype/ftimage.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">int</span>
|
||||
(*<b>FT_Raster_RenderFunc</b>)( <a href="ft2-raster.html#FT_Raster">FT_Raster</a> raster,
|
||||
<span class="keyword">const</span> <a href="ft2-raster.html#FT_Raster_Params">FT_Raster_Params</a>* params );
|
||||
|
||||
#define FT_Raster_Render_Func <b>FT_Raster_RenderFunc</b>
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Invoke a given raster to scan-convert a given glyph image into a target bitmap.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>raster</b></td><td>
|
||||
<p>A handle to the raster object.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>params</b></td><td>
|
||||
<p>A pointer to an <a href="ft2-raster.html#FT_Raster_Params">FT_Raster_Params</a> structure used to store the rendering parameters.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>Error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The exact format of the source image depends on the raster's glyph format defined in its <a href="ft2-raster.html#FT_Raster_Funcs">FT_Raster_Funcs</a> structure. It can be an <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a> or anything else in order to support a large array of glyph formats.</p>
|
||||
<p>Note also that the render function can fail and return a ‘FT_Err_Unimplemented_Feature’ error code if the raster used does not support direct composition.</p>
|
||||
<p>XXX: For now, the standard raster doesn't support direct composition but this should change for the final release (see the files ‘demos/src/ftgrays.c’ and ‘demos/src/ftgrays2.c’ for examples of distinct implementations which support direct composition).</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Raster_Funcs">FT_Raster_Funcs</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_IMAGE_H (freetype/ftimage.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_Raster_Funcs_
|
||||
{
|
||||
<a href="ft2-basic_types.html#FT_Glyph_Format">FT_Glyph_Format</a> glyph_format;
|
||||
<a href="ft2-raster.html#FT_Raster_NewFunc">FT_Raster_NewFunc</a> raster_new;
|
||||
<a href="ft2-raster.html#FT_Raster_ResetFunc">FT_Raster_ResetFunc</a> raster_reset;
|
||||
<a href="ft2-raster.html#FT_Raster_SetModeFunc">FT_Raster_SetModeFunc</a> raster_set_mode;
|
||||
<a href="ft2-raster.html#FT_Raster_RenderFunc">FT_Raster_RenderFunc</a> raster_render;
|
||||
<a href="ft2-raster.html#FT_Raster_DoneFunc">FT_Raster_DoneFunc</a> raster_done;
|
||||
|
||||
} <b>FT_Raster_Funcs</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used to describe a given raster class to the library.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>glyph_format</b></td><td>
|
||||
<p>The supported glyph format for this raster.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>raster_new</b></td><td>
|
||||
<p>The raster constructor.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>raster_reset</b></td><td>
|
||||
<p>Used to reset the render pool within the raster.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>raster_render</b></td><td>
|
||||
<p>A function to render a glyph into a given bitmap.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>raster_done</b></td><td>
|
||||
<p>The raster destructor.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,232 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
SFNT Names
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_SfntName">FT_SfntName</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Get_Sfnt_Name_Count">FT_Get_Sfnt_Name_Count</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Get_Sfnt_Name">FT_Get_Sfnt_Name</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_PARAM_TAG_IGNORE_PREFERRED_FAMILY">FT_PARAM_TAG_IGNORE_PREFERRED_FAMILY</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_PARAM_TAG_IGNORE_PREFERRED_SUBFAMILY">FT_PARAM_TAG_IGNORE_PREFERRED_SUBFAMILY</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>The TrueType and OpenType specifications allow the inclusion of a special ‘names table’ in font files. This table contains textual (and internationalized) information regarding the font, like family name, copyright, version, etc.</p>
|
||||
<p>The definitions below are used to access them if available.</p>
|
||||
<p>Note that this has nothing to do with glyph names!</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_SfntName">FT_SfntName</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SFNT_NAMES_H (freetype/ftsnames.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_SfntName_
|
||||
{
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> platform_id;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> encoding_id;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> language_id;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> name_id;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a>* string; /* this string is *not* null-terminated! */
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> string_len; /* in bytes */
|
||||
|
||||
} <b>FT_SfntName</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used to model an SFNT ‘name’ table entry.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>platform_id</b></td><td>
|
||||
<p>The platform ID for ‘string’.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>encoding_id</b></td><td>
|
||||
<p>The encoding ID for ‘string’.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>language_id</b></td><td>
|
||||
<p>The language ID for ‘string’.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>name_id</b></td><td>
|
||||
<p>An identifier for ‘string’.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>string</b></td><td>
|
||||
<p>The ‘name’ string. Note that its format differs depending on the (platform,encoding) pair. It can be a Pascal String, a UTF-16 one, etc.</p>
|
||||
<p>Generally speaking, the string is not zero-terminated. Please refer to the TrueType specification for details.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>string_len</b></td><td>
|
||||
<p>The length of ‘string’ in bytes.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>Possible values for ‘platform_id’, ‘encoding_id’, ‘language_id’, and ‘name_id’ are given in the file ‘ttnameid.h’. For details please refer to the TrueType or OpenType specification.</p>
|
||||
<p>See also <a href="ft2-truetype_tables.html#TT_PLATFORM_XXX">TT_PLATFORM_XXX</a>, <a href="ft2-truetype_tables.html#TT_APPLE_ID_XXX">TT_APPLE_ID_XXX</a>, <a href="ft2-truetype_tables.html#TT_MAC_ID_XXX">TT_MAC_ID_XXX</a>, <a href="ft2-truetype_tables.html#TT_ISO_ID_XXX">TT_ISO_ID_XXX</a>, and <a href="ft2-truetype_tables.html#TT_MS_ID_XXX">TT_MS_ID_XXX</a>.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_Sfnt_Name_Count">FT_Get_Sfnt_Name_Count</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SFNT_NAMES_H (freetype/ftsnames.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> )
|
||||
<b>FT_Get_Sfnt_Name_Count</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve the number of name strings in the SFNT ‘name’ table.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the source face.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The number of strings in the ‘name’ table.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_Sfnt_Name">FT_Get_Sfnt_Name</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SFNT_NAMES_H (freetype/ftsnames.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_Sfnt_Name</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> idx,
|
||||
<a href="ft2-sfnt_names.html#FT_SfntName">FT_SfntName</a> *aname );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve a string of the SFNT ‘name’ table for a given index.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the source face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>idx</b></td><td>
|
||||
<p>The index of the ‘name’ string.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>aname</b></td><td>
|
||||
<p>The indexed <a href="ft2-sfnt_names.html#FT_SfntName">FT_SfntName</a> structure.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The ‘string’ array returned in the ‘aname’ structure is not null-terminated. The application should deallocate it if it is no longer in use.</p>
|
||||
<p>Use <a href="ft2-sfnt_names.html#FT_Get_Sfnt_Name_Count">FT_Get_Sfnt_Name_Count</a> to get the total number of available ‘name’ table entries, then do a loop until you get the right platform, encoding, and name ID.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_PARAM_TAG_IGNORE_PREFERRED_FAMILY">FT_PARAM_TAG_IGNORE_PREFERRED_FAMILY</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SFNT_NAMES_H (freetype/ftsnames.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_PARAM_TAG_IGNORE_PREFERRED_FAMILY</b> <a href="ft2-basic_types.html#FT_MAKE_TAG">FT_MAKE_TAG</a>( 'i', 'g', 'p', 'f' )
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A constant used as the tag of <a href="ft2-base_interface.html#FT_Parameter">FT_Parameter</a> structures to make FT_Open_Face() ignore preferred family subfamily names in ‘name’ table since OpenType version 1.4. For backwards compatibility with legacy systems which has 4-face-per-family restriction.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_PARAM_TAG_IGNORE_PREFERRED_SUBFAMILY">FT_PARAM_TAG_IGNORE_PREFERRED_SUBFAMILY</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SFNT_NAMES_H (freetype/ftsnames.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <b>FT_PARAM_TAG_IGNORE_PREFERRED_SUBFAMILY</b> <a href="ft2-basic_types.html#FT_MAKE_TAG">FT_MAKE_TAG</a>( 'i', 'g', 'p', 's' )
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A constant used as the tag of <a href="ft2-base_interface.html#FT_Parameter">FT_Parameter</a> structures to make FT_Open_Face() ignore preferred subfamily names in ‘name’ table since OpenType version 1.4. For backwards compatibility with legacy systems which has 4-face-per-family restriction.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,164 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Size Management
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_New_Size">FT_New_Size</a></td><td></td><td><a href="#FT_Done_Size">FT_Done_Size</a></td><td></td><td><a href="#FT_Activate_Size">FT_Activate_Size</a></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>When creating a new face object (e.g., with <a href="ft2-base_interface.html#FT_New_Face">FT_New_Face</a>), an <a href="ft2-base_interface.html#FT_Size">FT_Size</a> object is automatically created and used to store all pixel-size dependent information, available in the ‘face->size’ field.</p>
|
||||
<p>It is however possible to create more sizes for a given face, mostly in order to manage several character pixel sizes of the same font family and style. See <a href="ft2-sizes_management.html#FT_New_Size">FT_New_Size</a> and <a href="ft2-sizes_management.html#FT_Done_Size">FT_Done_Size</a>.</p>
|
||||
<p>Note that <a href="ft2-base_interface.html#FT_Set_Pixel_Sizes">FT_Set_Pixel_Sizes</a> and <a href="ft2-base_interface.html#FT_Set_Char_Size">FT_Set_Char_Size</a> only modify the contents of the current ‘active’ size; you thus need to use <a href="ft2-sizes_management.html#FT_Activate_Size">FT_Activate_Size</a> to change it.</p>
|
||||
<p>99% of applications won't need the functions provided here, especially if they use the caching sub-system, so be cautious when using these.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_New_Size">FT_New_Size</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SIZES_H (freetype/ftsizes.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_New_Size</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-base_interface.html#FT_Size">FT_Size</a>* size );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Create a new size object from a given face object.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to a parent face object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>asize</b></td><td>
|
||||
<p>A handle to a new size object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>You need to call <a href="ft2-sizes_management.html#FT_Activate_Size">FT_Activate_Size</a> in order to select the new size for upcoming calls to <a href="ft2-base_interface.html#FT_Set_Pixel_Sizes">FT_Set_Pixel_Sizes</a>, <a href="ft2-base_interface.html#FT_Set_Char_Size">FT_Set_Char_Size</a>, <a href="ft2-base_interface.html#FT_Load_Glyph">FT_Load_Glyph</a>, <a href="ft2-base_interface.html#FT_Load_Char">FT_Load_Char</a>, etc.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Done_Size">FT_Done_Size</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SIZES_H (freetype/ftsizes.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Done_Size</b>( <a href="ft2-base_interface.html#FT_Size">FT_Size</a> size );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Discard a given size object. Note that <a href="ft2-base_interface.html#FT_Done_Face">FT_Done_Face</a> automatically discards all size objects allocated with <a href="ft2-sizes_management.html#FT_New_Size">FT_New_Size</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>size</b></td><td>
|
||||
<p>A handle to a target size object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Activate_Size">FT_Activate_Size</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SIZES_H (freetype/ftsizes.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Activate_Size</b>( <a href="ft2-base_interface.html#FT_Size">FT_Size</a> size );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Even though it is possible to create several size objects for a given face (see <a href="ft2-sizes_management.html#FT_New_Size">FT_New_Size</a> for details), functions like <a href="ft2-base_interface.html#FT_Load_Glyph">FT_Load_Glyph</a> or <a href="ft2-base_interface.html#FT_Load_Char">FT_Load_Char</a> only use the one which has been activated last to determine the ‘current character pixel size’.</p>
|
||||
<p>This function can be used to ‘activate’ a previously created size object.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>size</b></td><td>
|
||||
<p>A handle to a target size object.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>If ‘face’ is the size's parent face object, this function changes the value of ‘face->size’ to the input size handle.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,415 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
System Interface
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_Memory">FT_Memory</a></td><td></td><td><a href="#FT_MemoryRec">FT_MemoryRec</a></td><td></td><td><a href="#FT_Stream_CloseFunc">FT_Stream_CloseFunc</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Alloc_Func">FT_Alloc_Func</a></td><td></td><td><a href="#FT_Stream">FT_Stream</a></td><td></td><td><a href="#FT_StreamRec">FT_StreamRec</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Free_Func">FT_Free_Func</a></td><td></td><td><a href="#FT_StreamDesc">FT_StreamDesc</a></td><td></td><td></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Realloc_Func">FT_Realloc_Func</a></td><td></td><td><a href="#FT_Stream_IoFunc">FT_Stream_IoFunc</a></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains various definitions related to memory management and i/o access. You need to understand this information if you want to use a custom memory manager or you own i/o streams.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Memory">FT_Memory</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SYSTEM_H (freetype/ftsystem.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_MemoryRec_* <b>FT_Memory</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A handle to a given memory manager object, defined with an <a href="ft2-system_interface.html#FT_MemoryRec">FT_MemoryRec</a> structure.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Alloc_Func">FT_Alloc_Func</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SYSTEM_H (freetype/ftsystem.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</span>*
|
||||
(*<b>FT_Alloc_Func</b>)( <a href="ft2-system_interface.html#FT_Memory">FT_Memory</a> memory,
|
||||
<span class="keyword">long</span> size );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A function used to allocate ‘size’ bytes from ‘memory’.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>memory</b></td><td>
|
||||
<p>A handle to the source memory manager.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>size</b></td><td>
|
||||
<p>The size in bytes to allocate.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>Address of new memory block. 0 in case of failure.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Free_Func">FT_Free_Func</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SYSTEM_H (freetype/ftsystem.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</span>
|
||||
(*<b>FT_Free_Func</b>)( <a href="ft2-system_interface.html#FT_Memory">FT_Memory</a> memory,
|
||||
<span class="keyword">void</span>* block );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A function used to release a given block of memory.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>memory</b></td><td>
|
||||
<p>A handle to the source memory manager.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>block</b></td><td>
|
||||
<p>The address of the target memory block.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Realloc_Func">FT_Realloc_Func</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SYSTEM_H (freetype/ftsystem.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</span>*
|
||||
(*<b>FT_Realloc_Func</b>)( <a href="ft2-system_interface.html#FT_Memory">FT_Memory</a> memory,
|
||||
<span class="keyword">long</span> cur_size,
|
||||
<span class="keyword">long</span> new_size,
|
||||
<span class="keyword">void</span>* block );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A function used to re-allocate a given block of memory.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>memory</b></td><td>
|
||||
<p>A handle to the source memory manager.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>cur_size</b></td><td>
|
||||
<p>The block's current size in bytes.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>new_size</b></td><td>
|
||||
<p>The block's requested new size.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>block</b></td><td>
|
||||
<p>The block's current address.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>New block address. 0 in case of memory shortage.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>In case of error, the old block must still be available.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_MemoryRec">FT_MemoryRec</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SYSTEM_H (freetype/ftsystem.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">struct</span> FT_MemoryRec_
|
||||
{
|
||||
<span class="keyword">void</span>* user;
|
||||
<a href="ft2-system_interface.html#FT_Alloc_Func">FT_Alloc_Func</a> alloc;
|
||||
<a href="ft2-system_interface.html#FT_Free_Func">FT_Free_Func</a> free;
|
||||
<a href="ft2-system_interface.html#FT_Realloc_Func">FT_Realloc_Func</a> realloc;
|
||||
};
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used to describe a given memory manager to FreeType 2.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>fields</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>user</b></td><td>
|
||||
<p>A generic typeless pointer for user data.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>alloc</b></td><td>
|
||||
<p>A pointer type to an allocation function.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>free</b></td><td>
|
||||
<p>A pointer type to an memory freeing function.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>realloc</b></td><td>
|
||||
<p>A pointer type to a reallocation function.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stream">FT_Stream</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SYSTEM_H (freetype/ftsystem.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_StreamRec_* <b>FT_Stream</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A handle to an input stream.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_StreamDesc">FT_StreamDesc</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SYSTEM_H (freetype/ftsystem.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">union</span> FT_StreamDesc_
|
||||
{
|
||||
<span class="keyword">long</span> value;
|
||||
<span class="keyword">void</span>* pointer;
|
||||
|
||||
} <b>FT_StreamDesc</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A union type used to store either a long or a pointer. This is used to store a file descriptor or a ‘FILE*’ in an input stream.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stream_IoFunc">FT_Stream_IoFunc</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SYSTEM_H (freetype/ftsystem.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">unsigned</span> <span class="keyword">long</span>
|
||||
(*<b>FT_Stream_IoFunc</b>)( <a href="ft2-system_interface.html#FT_Stream">FT_Stream</a> stream,
|
||||
<span class="keyword">unsigned</span> <span class="keyword">long</span> offset,
|
||||
<span class="keyword">unsigned</span> <span class="keyword">char</span>* buffer,
|
||||
<span class="keyword">unsigned</span> <span class="keyword">long</span> count );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A function used to seek and read data from a given input stream.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stream</b></td><td>
|
||||
<p>A handle to the source stream.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>offset</b></td><td>
|
||||
<p>The offset of read in stream (always from start).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>buffer</b></td><td>
|
||||
<p>The address of the read buffer.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>count</b></td><td>
|
||||
<p>The number of bytes to read from the stream.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The number of bytes effectively read by the stream.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function might be called to perform a seek or skip operation with a ‘count’ of 0. A non-zero return value then indicates an error.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Stream_CloseFunc">FT_Stream_CloseFunc</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SYSTEM_H (freetype/ftsystem.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">void</span>
|
||||
(*<b>FT_Stream_CloseFunc</b>)( <a href="ft2-system_interface.html#FT_Stream">FT_Stream</a> stream );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A function used to close a given input stream.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>stream</b></td><td>
|
||||
<p>A handle to the target stream.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_StreamRec">FT_StreamRec</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_SYSTEM_H (freetype/ftsystem.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_StreamRec_
|
||||
{
|
||||
<span class="keyword">unsigned</span> <span class="keyword">char</span>* base;
|
||||
<span class="keyword">unsigned</span> <span class="keyword">long</span> size;
|
||||
<span class="keyword">unsigned</span> <span class="keyword">long</span> pos;
|
||||
|
||||
<a href="ft2-system_interface.html#FT_StreamDesc">FT_StreamDesc</a> descriptor;
|
||||
<a href="ft2-system_interface.html#FT_StreamDesc">FT_StreamDesc</a> pathname;
|
||||
<a href="ft2-system_interface.html#FT_Stream_IoFunc">FT_Stream_IoFunc</a> read;
|
||||
<a href="ft2-system_interface.html#FT_Stream_CloseFunc">FT_Stream_CloseFunc</a> close;
|
||||
|
||||
<a href="ft2-system_interface.html#FT_Memory">FT_Memory</a> memory;
|
||||
<span class="keyword">unsigned</span> <span class="keyword">char</span>* cursor;
|
||||
<span class="keyword">unsigned</span> <span class="keyword">char</span>* limit;
|
||||
|
||||
} <b>FT_StreamRec</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used to describe an input stream.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>base</b></td><td>
|
||||
<p>For memory-based streams, this is the address of the first stream byte in memory. This field should always be set to NULL for disk-based streams.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>size</b></td><td>
|
||||
<p>The stream size in bytes.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>pos</b></td><td>
|
||||
<p>The current position within the stream.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>descriptor</b></td><td>
|
||||
<p>This field is a union that can hold an integer or a pointer. It is used by stream implementations to store file descriptors or ‘FILE*’ pointers.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>pathname</b></td><td>
|
||||
<p>This field is completely ignored by FreeType. However, it is often useful during debugging to use it to store the stream's filename (where available).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>read</b></td><td>
|
||||
<p>The stream's input function.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>close</b></td><td>
|
||||
<p>The stream's close function.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>memory</b></td><td>
|
||||
<p>The memory manager to use to preload frames. This is set internally by FreeType and shouldn't be touched by stream implementations.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>cursor</b></td><td>
|
||||
<p>This field is set and used internally by FreeType when parsing frames.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>limit</b></td><td>
|
||||
<p>This field is set and used internally by FreeType when parsing frames.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,235 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>Table of Contents</h1></center>
|
||||
<br><table align=center width="75%"><tr><td><h2>General Remarks</h2><ul class="empty"><li>
|
||||
<table cellpadding=5>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-user_allocation.html">User allocation</a></td><td>
|
||||
<p>How client applications should allocate FreeType data structures.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</li></ul></td></tr></table>
|
||||
<br><table align=center width="75%"><tr><td><h2>Core API</h2><ul class="empty"><li>
|
||||
<table cellpadding=5>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-version.html">FreeType Version</a></td><td>
|
||||
<p>Functions and macros related to FreeType versions.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-basic_types.html">Basic Data Types</a></td><td>
|
||||
<p>The basic data types defined by the library.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-base_interface.html">Base Interface</a></td><td>
|
||||
<p>The FreeType 2 base font interface.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-glyph_variants.html">Glyph Variants</a></td><td>
|
||||
<p>The FreeType 2 interface to Unicode Ideographic Variation Sequences (IVS), using the SFNT cmap format 14.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-glyph_management.html">Glyph Management</a></td><td>
|
||||
<p>Generic interface to manage individual glyph data.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-mac_specific.html">Mac Specific Interface</a></td><td>
|
||||
<p>Only available on the Macintosh.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-sizes_management.html">Size Management</a></td><td>
|
||||
<p>Managing multiple sizes per face.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-header_file_macros.html">Header File Macros</a></td><td>
|
||||
<p>Macro definitions used to #include specific header files.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</li></ul></td></tr></table>
|
||||
<br><table align=center width="75%"><tr><td><h2>Format-Specific API</h2><ul class="empty"><li>
|
||||
<table cellpadding=5>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-multiple_masters.html">Multiple Masters</a></td><td>
|
||||
<p>How to manage Multiple Masters fonts.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-truetype_tables.html">TrueType Tables</a></td><td>
|
||||
<p>TrueType specific table types and functions.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-type1_tables.html">Type 1 Tables</a></td><td>
|
||||
<p>Type 1 (PostScript) specific font tables.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-sfnt_names.html">SFNT Names</a></td><td>
|
||||
<p>Access the names embedded in TrueType and OpenType files.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-bdf_fonts.html">BDF and PCF Files</a></td><td>
|
||||
<p>BDF and PCF specific API.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-cid_fonts.html">CID Fonts</a></td><td>
|
||||
<p>CID-keyed font specific API.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-pfr_fonts.html">PFR Fonts</a></td><td>
|
||||
<p>PFR/TrueDoc specific API.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-winfnt_fonts.html">Window FNT Files</a></td><td>
|
||||
<p>Windows FNT specific API.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-font_formats.html">Font Formats</a></td><td>
|
||||
<p>Getting the font format.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-gasp_table.html">Gasp Table</a></td><td>
|
||||
<p>Retrieving TrueType ‘gasp’ table entries.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</li></ul></td></tr></table>
|
||||
<br><table align=center width="75%"><tr><td><h2>Controlling FreeType Modules</h2><ul class="empty"><li>
|
||||
<table cellpadding=5>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-auto_hinter.html">The auto-hinter</a></td><td>
|
||||
<p>Controlling the auto-hinting module.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-cff_driver.html">The CFF driver</a></td><td>
|
||||
<p>Controlling the CFF driver module.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-tt_driver.html">The TrueType driver</a></td><td>
|
||||
<p>Controlling the TrueType driver module.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</li></ul></td></tr></table>
|
||||
<br><table align=center width="75%"><tr><td><h2>Cache Sub-System</h2><ul class="empty"><li>
|
||||
<table cellpadding=5>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-cache_subsystem.html">Cache Sub-System</a></td><td>
|
||||
<p>How to cache face, size, and glyph data with FreeType 2.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</li></ul></td></tr></table>
|
||||
<br><table align=center width="75%"><tr><td><h2>Support API</h2><ul class="empty"><li>
|
||||
<table cellpadding=5>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-computations.html">Computations</a></td><td>
|
||||
<p>Crunching fixed numbers and vectors.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-list_processing.html">List Processing</a></td><td>
|
||||
<p>Simple management of lists.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-outline_processing.html">Outline Processing</a></td><td>
|
||||
<p>Functions to create, transform, and render vectorial glyph images.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-quick_advance.html">Quick retrieval of advance values</a></td><td>
|
||||
<p>Retrieve horizontal and vertical advance values without processing glyph outlines, if possible.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-bitmap_handling.html">Bitmap Handling</a></td><td>
|
||||
<p>Handling FT_Bitmap objects.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-raster.html">Scanline Converter</a></td><td>
|
||||
<p>How vectorial outlines are converted into bitmaps and pixmaps.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-glyph_stroker.html">Glyph Stroker</a></td><td>
|
||||
<p>Generating bordered and stroked glyphs.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-system_interface.html">System Interface</a></td><td>
|
||||
<p>How FreeType manages memory and i/o.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-module_management.html">Module Management</a></td><td>
|
||||
<p>How to add, upgrade, remove, and control modules from FreeType.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-gzip.html">GZIP Streams</a></td><td>
|
||||
<p>Using gzip-compressed font files.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-lzw.html">LZW Streams</a></td><td>
|
||||
<p>Using LZW-compressed font files.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-bzip2.html">BZIP2 Streams</a></td><td>
|
||||
<p>Using bzip2-compressed font files.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-lcd_filtering.html">LCD Filtering</a></td><td>
|
||||
<p>Reduce color fringes of LCD-optimized bitmaps.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</li></ul></td></tr></table>
|
||||
<br><table align=center width="75%"><tr><td><h2>Miscellaneous</h2><ul class="empty"><li>
|
||||
<table cellpadding=5>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-ot_validation.html">OpenType Validation</a></td><td>
|
||||
<p>An API to validate OpenType tables.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-incremental.html">Incremental Loading</a></td><td>
|
||||
<p>Custom Glyph Loading.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-truetype_engine.html">The TrueType Engine</a></td><td>
|
||||
<p>TrueType bytecode support.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td class="left">
|
||||
<a href="ft2-gx_validation.html">TrueTypeGX/AAT Validation</a></td><td>
|
||||
<p>An API to validate TrueTypeGX/AAT tables.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</li></ul></td></tr></table>
|
||||
<br><table align=center width="75%"><tr><td><h2><a href="ft2-index.html">Global Index</a></h2><ul class="empty"><li></li></ul></td></tr></table>
|
||||
<hr>
|
||||
<table><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
</tr></table>
|
||||
|
||||
<center><font size=-2>generated on Wed Jun 19 23:29:20 2013</font></center></body>
|
||||
</html>
|
||||
@@ -1,132 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
The TrueType Engine
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_TrueTypeEngineType">FT_TrueTypeEngineType</a></td><td></td><td><a href="#FT_Get_TrueType_Engine_Type">FT_Get_TrueType_Engine_Type</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains a function used to query the level of TrueType bytecode support compiled in this version of the library.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_TrueTypeEngineType">FT_TrueTypeEngineType</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">enum</span> FT_TrueTypeEngineType_
|
||||
{
|
||||
<a href="ft2-truetype_engine.html#FT_TrueTypeEngineType">FT_TRUETYPE_ENGINE_TYPE_NONE</a> = 0,
|
||||
<a href="ft2-truetype_engine.html#FT_TrueTypeEngineType">FT_TRUETYPE_ENGINE_TYPE_UNPATENTED</a>,
|
||||
<a href="ft2-truetype_engine.html#FT_TrueTypeEngineType">FT_TRUETYPE_ENGINE_TYPE_PATENTED</a>
|
||||
|
||||
} <b>FT_TrueTypeEngineType</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A list of values describing which kind of TrueType bytecode engine is implemented in a given FT_Library instance. It is used by the <a href="ft2-truetype_engine.html#FT_Get_TrueType_Engine_Type">FT_Get_TrueType_Engine_Type</a> function.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td colspan=0><b>FT_TRUETYPE_ENGINE_TYPE_NONE</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>The library doesn't implement any kind of bytecode interpreter.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_TRUETYPE_ENGINE_TYPE_UNPATENTED</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>The library implements a bytecode interpreter that doesn't support the patented operations of the TrueType virtual machine.</p>
|
||||
<p>Its main use is to load certain Asian fonts which position and scale glyph components with bytecode instructions. It produces bad output for most other fonts.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>FT_TRUETYPE_ENGINE_TYPE_PATENTED</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>The library implements a bytecode interpreter that covers the full instruction set of the TrueType virtual machine (this was governed by patents until May 2010, hence the name).</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.2</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_TrueType_Engine_Type">FT_Get_TrueType_Engine_Type</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_MODULE_H (freetype/ftmodapi.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-truetype_engine.html#FT_TrueTypeEngineType">FT_TrueTypeEngineType</a> )
|
||||
<b>FT_Get_TrueType_Engine_Type</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return an <a href="ft2-truetype_engine.html#FT_TrueTypeEngineType">FT_TrueTypeEngineType</a> value to indicate which level of the TrueType virtual machine a given library instance supports.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A library instance.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>A value indicating which level is supported.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.2</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,120 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
The TrueType driver
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#interpreter-version">interpreter-version</a></td><td></td><td><a href="#TT_INTERPRETER_VERSION_XXX">TT_INTERPRETER_VERSION_XXX</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>While FreeType's TrueType driver doesn't expose API functions by itself, it is possible to control its behaviour with <a href="ft2-module_management.html#FT_Property_Set">FT_Property_Set</a> and <a href="ft2-module_management.html#FT_Property_Get">FT_Property_Get</a>. The following lists the available properties together with the necessary macros and structures.</p>
|
||||
<p>The TrueType driver's module name is ‘truetype’.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="interpreter-version">interpreter-version</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Currently, two versions are available which represent the bytecode interpreter with and without subpixel hinting support, respectively. The default is subpixel support if TT_CONFIG_OPTION_SUBPIXEL_HINTING is defined, and no subpixel support otherwise (since it isn't available then).</p>
|
||||
<p>If subpixel hinting is on, many TrueType bytecode instructions behave differently compared to B/W or grayscale rendering. The main idea is to render at a much increased horizontal resolution, then sampling down the created output to subpixel precision. However, many older fonts are not suited to this and must be specially taken care of by applying (hardcoded) font-specific tweaks.</p>
|
||||
<p>Details on subpixel hinting and some of the necessary tweaks can be found in Greg Hitchcock's whitepaper at ‘http://www.microsoft.com/typography/cleartype/truetypecleartype.aspx’.</p>
|
||||
<p>The following example code demonstrates how to activate subpixel hinting (omitting the error handling).</p>
|
||||
<pre class="colored">
|
||||
FT_Library library;
|
||||
FT_Face face;
|
||||
FT_UInt interpreter_version = TT_INTERPRETER_VERSION_38;
|
||||
|
||||
|
||||
FT_Init_FreeType( &library );
|
||||
|
||||
FT_Property_Set( library, "truetype",
|
||||
"interpreter-version",
|
||||
&interpreter_version );
|
||||
</pre>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This property can be used with <a href="ft2-module_management.html#FT_Property_Get">FT_Property_Get</a> also.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="TT_INTERPRETER_VERSION_XXX">TT_INTERPRETER_VERSION_XXX</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TRUETYPE_DRIVER_H (freetype/ftttdrv.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <a href="ft2-tt_driver.html#TT_INTERPRETER_VERSION_XXX">TT_INTERPRETER_VERSION_35</a> 35
|
||||
#define <a href="ft2-tt_driver.html#TT_INTERPRETER_VERSION_XXX">TT_INTERPRETER_VERSION_38</a> 38
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A list of constants used for the <a href="ft2-tt_driver.html#interpreter-version">interpreter-version</a> property to select the hinting engine for Truetype fonts.</p>
|
||||
<p>The numeric value in the constant names represents the version number as returned by the ‘GETINFO’ bytecode instruction.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td colspan=0><b>TT_INTERPRETER_VERSION_35</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Version 35 corresponds to MS rasterizer v.1.7 as used e.g. in Windows 98; only grayscale and B/W rasterizing is supported.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td colspan=0><b>TT_INTERPRETER_VERSION_38</b></td></tr>
|
||||
<tr valign=top><td></td><td>
|
||||
<p>Version 38 corresponds to MS rasterizer v.1.9; it is roughly equivalent to the hinting provided by DirectWrite ClearType (as can be found, for example, in the Internet Explorer 9 running on Windows 7).</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This property controls the behaviour of the bytecode interpreter and thus how outlines get hinted. It does <b>not</b> control how glyph get rasterized! In particular, it does not control subpixel color filtering.</p>
|
||||
<p>If FreeType has not been compiled with configuration option FT_CONFIG_OPTION_SUBPIXEL_HINTING, selecting version 38 causes an ‘FT_Err_Unimplemented_Feature’ error.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,689 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Type 1 Tables
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#PS_FontInfoRec">PS_FontInfoRec</a></td><td></td><td><a href="#T1_Blend_Flags">T1_Blend_Flags</a></td><td></td><td><a href="#FT_Has_PS_Glyph_Names">FT_Has_PS_Glyph_Names</a></td></tr>
|
||||
<tr><td></td><td><a href="#PS_FontInfo">PS_FontInfo</a></td><td></td><td><a href="#CID_FaceDictRec">CID_FaceDictRec</a></td><td></td><td><a href="#FT_Get_PS_Font_Info">FT_Get_PS_Font_Info</a></td></tr>
|
||||
<tr><td></td><td><a href="#T1_FontInfo">T1_FontInfo</a></td><td></td><td><a href="#CID_FaceDict">CID_FaceDict</a></td><td></td><td><a href="#FT_Get_PS_Font_Private">FT_Get_PS_Font_Private</a></td></tr>
|
||||
<tr><td></td><td><a href="#PS_PrivateRec">PS_PrivateRec</a></td><td></td><td><a href="#CID_FaceInfoRec">CID_FaceInfoRec</a></td><td></td><td><a href="#T1_EncodingType">T1_EncodingType</a></td></tr>
|
||||
<tr><td></td><td><a href="#PS_Private">PS_Private</a></td><td></td><td><a href="#CID_FaceInfo">CID_FaceInfo</a></td><td></td><td><a href="#PS_Dict_Keys">PS_Dict_Keys</a></td></tr>
|
||||
<tr><td></td><td><a href="#T1_Private">T1_Private</a></td><td></td><td><a href="#CID_Info">CID_Info</a></td><td></td><td><a href="#FT_Get_PS_Font_Value">FT_Get_PS_Font_Value</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains the definition of Type 1-specific tables, including structures related to other PostScript font formats.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="PS_FontInfoRec">PS_FontInfoRec</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> PS_FontInfoRec_
|
||||
{
|
||||
<a href="ft2-basic_types.html#FT_String">FT_String</a>* version;
|
||||
<a href="ft2-basic_types.html#FT_String">FT_String</a>* notice;
|
||||
<a href="ft2-basic_types.html#FT_String">FT_String</a>* full_name;
|
||||
<a href="ft2-basic_types.html#FT_String">FT_String</a>* family_name;
|
||||
<a href="ft2-basic_types.html#FT_String">FT_String</a>* weight;
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a> italic_angle;
|
||||
<a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> is_fixed_pitch;
|
||||
<a href="ft2-basic_types.html#FT_Short">FT_Short</a> underline_position;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> underline_thickness;
|
||||
|
||||
} <b>PS_FontInfoRec</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used to model a Type 1 or Type 2 FontInfo dictionary. Note that for Multiple Master fonts, each instance has its own FontInfo dictionary.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="PS_FontInfo">PS_FontInfo</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> PS_FontInfoRec_* <b>PS_FontInfo</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A handle to a <a href="ft2-type1_tables.html#PS_FontInfoRec">PS_FontInfoRec</a> structure.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="T1_FontInfo">T1_FontInfo</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <a href="ft2-type1_tables.html#PS_FontInfoRec">PS_FontInfoRec</a> <b>T1_FontInfo</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This type is equivalent to <a href="ft2-type1_tables.html#PS_FontInfoRec">PS_FontInfoRec</a>. It is deprecated but kept to maintain source compatibility between various versions of FreeType.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="PS_PrivateRec">PS_PrivateRec</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> PS_PrivateRec_
|
||||
{
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> unique_id;
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> lenIV;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> num_blue_values;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> num_other_blues;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> num_family_blues;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> num_family_other_blues;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Short">FT_Short</a> blue_values[14];
|
||||
<a href="ft2-basic_types.html#FT_Short">FT_Short</a> other_blues[10];
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Short">FT_Short</a> family_blues [14];
|
||||
<a href="ft2-basic_types.html#FT_Short">FT_Short</a> family_other_blues[10];
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> blue_scale;
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> blue_shift;
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> blue_fuzz;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> standard_width[1];
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> standard_height[1];
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> num_snap_widths;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> num_snap_heights;
|
||||
<a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> force_bold;
|
||||
<a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> round_stem_up;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Short">FT_Short</a> snap_widths [13]; /* including std width */
|
||||
<a href="ft2-basic_types.html#FT_Short">FT_Short</a> snap_heights[13]; /* including std height */
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> expansion_factor;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a> language_group;
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a> password;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Short">FT_Short</a> min_feature[2];
|
||||
|
||||
} <b>PS_PrivateRec</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used to model a Type 1 or Type 2 private dictionary. Note that for Multiple Master fonts, each instance has its own Private dictionary.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="PS_Private">PS_Private</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> PS_PrivateRec_* <b>PS_Private</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A handle to a <a href="ft2-type1_tables.html#PS_PrivateRec">PS_PrivateRec</a> structure.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="T1_Private">T1_Private</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <a href="ft2-type1_tables.html#PS_PrivateRec">PS_PrivateRec</a> <b>T1_Private</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This type is equivalent to <a href="ft2-type1_tables.html#PS_PrivateRec">PS_PrivateRec</a>. It is deprecated but kept to maintain source compatibility between various versions of FreeType.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="T1_Blend_Flags">T1_Blend_Flags</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">enum</span> T1_Blend_Flags_
|
||||
{
|
||||
/*# required fields in a FontInfo blend dictionary */
|
||||
T1_BLEND_UNDERLINE_POSITION = 0,
|
||||
T1_BLEND_UNDERLINE_THICKNESS,
|
||||
T1_BLEND_ITALIC_ANGLE,
|
||||
|
||||
/*# required fields in a Private blend dictionary */
|
||||
T1_BLEND_BLUE_VALUES,
|
||||
T1_BLEND_OTHER_BLUES,
|
||||
T1_BLEND_STANDARD_WIDTH,
|
||||
T1_BLEND_STANDARD_HEIGHT,
|
||||
T1_BLEND_STEM_SNAP_WIDTHS,
|
||||
T1_BLEND_STEM_SNAP_HEIGHTS,
|
||||
T1_BLEND_BLUE_SCALE,
|
||||
T1_BLEND_BLUE_SHIFT,
|
||||
T1_BLEND_FAMILY_BLUES,
|
||||
T1_BLEND_FAMILY_OTHER_BLUES,
|
||||
T1_BLEND_FORCE_BOLD,
|
||||
|
||||
/*# never remove */
|
||||
T1_BLEND_MAX
|
||||
|
||||
} <b>T1_Blend_Flags</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A set of flags used to indicate which fields are present in a given blend dictionary (font info or private). Used to support Multiple Masters fonts.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="CID_FaceDictRec">CID_FaceDictRec</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> CID_FaceDictRec_
|
||||
{
|
||||
<a href="ft2-type1_tables.html#PS_PrivateRec">PS_PrivateRec</a> private_dict;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> len_buildchar;
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> forcebold_threshold;
|
||||
<a href="ft2-basic_types.html#FT_Pos">FT_Pos</a> stroke_width;
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> expansion_factor;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> paint_type;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> font_type;
|
||||
<a href="ft2-basic_types.html#FT_Matrix">FT_Matrix</a> font_matrix;
|
||||
<a href="ft2-basic_types.html#FT_Vector">FT_Vector</a> font_offset;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> num_subrs;
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> subrmap_offset;
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> sd_bytes;
|
||||
|
||||
} <b>CID_FaceDictRec</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used to represent data in a CID top-level dictionary.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="CID_FaceDict">CID_FaceDict</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> CID_FaceDictRec_* <b>CID_FaceDict</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A handle to a <a href="ft2-type1_tables.html#CID_FaceDictRec">CID_FaceDictRec</a> structure.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="CID_FaceInfoRec">CID_FaceInfoRec</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> CID_FaceInfoRec_
|
||||
{
|
||||
<a href="ft2-basic_types.html#FT_String">FT_String</a>* cid_font_name;
|
||||
<a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> cid_version;
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> cid_font_type;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_String">FT_String</a>* registry;
|
||||
<a href="ft2-basic_types.html#FT_String">FT_String</a>* ordering;
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> supplement;
|
||||
|
||||
<a href="ft2-type1_tables.html#PS_FontInfoRec">PS_FontInfoRec</a> font_info;
|
||||
<a href="ft2-basic_types.html#FT_BBox">FT_BBox</a> font_bbox;
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> uid_base;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> num_xuid;
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> xuid[16];
|
||||
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> cidmap_offset;
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> fd_bytes;
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> gd_bytes;
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> cid_count;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> num_dicts;
|
||||
<a href="ft2-type1_tables.html#CID_FaceDict">CID_FaceDict</a> font_dicts;
|
||||
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> data_offset;
|
||||
|
||||
} <b>CID_FaceInfoRec</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A structure used to represent CID Face information.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="CID_FaceInfo">CID_FaceInfo</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> CID_FaceInfoRec_* <b>CID_FaceInfo</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A handle to a <a href="ft2-type1_tables.html#CID_FaceInfoRec">CID_FaceInfoRec</a> structure.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="CID_Info">CID_Info</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <a href="ft2-type1_tables.html#CID_FaceInfoRec">CID_FaceInfoRec</a> <b>CID_Info</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This type is equivalent to <a href="ft2-type1_tables.html#CID_FaceInfoRec">CID_FaceInfoRec</a>. It is deprecated but kept to maintain source compatibility between various versions of FreeType.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Has_PS_Glyph_Names">FT_Has_PS_Glyph_Names</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Int">FT_Int</a> )
|
||||
<b>FT_Has_PS_Glyph_Names</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return true if a given face provides reliable PostScript glyph names. This is similar to using the <a href="ft2-base_interface.html#FT_HAS_GLYPH_NAMES">FT_HAS_GLYPH_NAMES</a> macro, except that certain fonts (mostly TrueType) contain incorrect glyph name tables.</p>
|
||||
<p>When this function returns true, the caller is sure that the glyph names returned by <a href="ft2-base_interface.html#FT_Get_Glyph_Name">FT_Get_Glyph_Name</a> are reliable.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>face handle</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>Boolean. True if glyph names are reliable.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_PS_Font_Info">FT_Get_PS_Font_Info</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_PS_Font_Info</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-type1_tables.html#PS_FontInfo">PS_FontInfo</a> afont_info );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve the <a href="ft2-type1_tables.html#PS_FontInfoRec">PS_FontInfoRec</a> structure corresponding to a given PostScript font.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>PostScript face handle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>afont_info</b></td><td>
|
||||
<p>Output font info structure pointer.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The string pointers within the font info structure are owned by the face and don't need to be freed by the caller.</p>
|
||||
<p>If the font's format is not PostScript-based, this function will return the ‘FT_Err_Invalid_Argument’ error code.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_PS_Font_Private">FT_Get_PS_Font_Private</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_PS_Font_Private</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-type1_tables.html#PS_Private">PS_Private</a> afont_private );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve the <a href="ft2-type1_tables.html#PS_PrivateRec">PS_PrivateRec</a> structure corresponding to a given PostScript font.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>PostScript face handle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>afont_private</b></td><td>
|
||||
<p>Output private dictionary structure pointer.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The string pointers within the <a href="ft2-type1_tables.html#PS_PrivateRec">PS_PrivateRec</a> structure are owned by the face and don't need to be freed by the caller.</p>
|
||||
<p>If the font's format is not PostScript-based, this function returns the ‘FT_Err_Invalid_Argument’ error code.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="T1_EncodingType">T1_EncodingType</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">enum</span> T1_EncodingType_
|
||||
{
|
||||
T1_ENCODING_TYPE_NONE = 0,
|
||||
T1_ENCODING_TYPE_ARRAY,
|
||||
T1_ENCODING_TYPE_STANDARD,
|
||||
T1_ENCODING_TYPE_ISOLATIN1,
|
||||
T1_ENCODING_TYPE_EXPERT
|
||||
|
||||
} <b>T1_EncodingType</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>An enumeration describing the ‘Encoding’ entry in a Type 1 dictionary.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="PS_Dict_Keys">PS_Dict_Keys</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">enum</span> PS_Dict_Keys_
|
||||
{
|
||||
/* conventionally in the font dictionary */
|
||||
PS_DICT_FONT_TYPE, /* <a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> */
|
||||
PS_DICT_FONT_MATRIX, /* <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> */
|
||||
PS_DICT_FONT_BBOX, /* <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> */
|
||||
PS_DICT_PAINT_TYPE, /* <a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> */
|
||||
PS_DICT_FONT_NAME, /* <a href="ft2-basic_types.html#FT_String">FT_String</a>* */
|
||||
PS_DICT_UNIQUE_ID, /* <a href="ft2-basic_types.html#FT_Int">FT_Int</a> */
|
||||
PS_DICT_NUM_CHAR_STRINGS, /* <a href="ft2-basic_types.html#FT_Int">FT_Int</a> */
|
||||
PS_DICT_CHAR_STRING_KEY, /* <a href="ft2-basic_types.html#FT_String">FT_String</a>* */
|
||||
PS_DICT_CHAR_STRING, /* <a href="ft2-basic_types.html#FT_String">FT_String</a>* */
|
||||
PS_DICT_ENCODING_TYPE, /* <a href="ft2-type1_tables.html#T1_EncodingType">T1_EncodingType</a> */
|
||||
PS_DICT_ENCODING_ENTRY, /* <a href="ft2-basic_types.html#FT_String">FT_String</a>* */
|
||||
|
||||
/* conventionally in the font Private dictionary */
|
||||
PS_DICT_NUM_SUBRS, /* <a href="ft2-basic_types.html#FT_Int">FT_Int</a> */
|
||||
PS_DICT_SUBR, /* <a href="ft2-basic_types.html#FT_String">FT_String</a>* */
|
||||
PS_DICT_STD_HW, /* <a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> */
|
||||
PS_DICT_STD_VW, /* <a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> */
|
||||
PS_DICT_NUM_BLUE_VALUES, /* <a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> */
|
||||
PS_DICT_BLUE_VALUE, /* <a href="ft2-basic_types.html#FT_Short">FT_Short</a> */
|
||||
PS_DICT_BLUE_FUZZ, /* <a href="ft2-basic_types.html#FT_Int">FT_Int</a> */
|
||||
PS_DICT_NUM_OTHER_BLUES, /* <a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> */
|
||||
PS_DICT_OTHER_BLUE, /* <a href="ft2-basic_types.html#FT_Short">FT_Short</a> */
|
||||
PS_DICT_NUM_FAMILY_BLUES, /* <a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> */
|
||||
PS_DICT_FAMILY_BLUE, /* <a href="ft2-basic_types.html#FT_Short">FT_Short</a> */
|
||||
PS_DICT_NUM_FAMILY_OTHER_BLUES, /* <a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> */
|
||||
PS_DICT_FAMILY_OTHER_BLUE, /* <a href="ft2-basic_types.html#FT_Short">FT_Short</a> */
|
||||
PS_DICT_BLUE_SCALE, /* <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a> */
|
||||
PS_DICT_BLUE_SHIFT, /* <a href="ft2-basic_types.html#FT_Int">FT_Int</a> */
|
||||
PS_DICT_NUM_STEM_SNAP_H, /* <a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> */
|
||||
PS_DICT_STEM_SNAP_H, /* <a href="ft2-basic_types.html#FT_Short">FT_Short</a> */
|
||||
PS_DICT_NUM_STEM_SNAP_V, /* <a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> */
|
||||
PS_DICT_STEM_SNAP_V, /* <a href="ft2-basic_types.html#FT_Short">FT_Short</a> */
|
||||
PS_DICT_FORCE_BOLD, /* <a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> */
|
||||
PS_DICT_RND_STEM_UP, /* <a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> */
|
||||
PS_DICT_MIN_FEATURE, /* <a href="ft2-basic_types.html#FT_Short">FT_Short</a> */
|
||||
PS_DICT_LEN_IV, /* <a href="ft2-basic_types.html#FT_Int">FT_Int</a> */
|
||||
PS_DICT_PASSWORD, /* <a href="ft2-basic_types.html#FT_Long">FT_Long</a> */
|
||||
PS_DICT_LANGUAGE_GROUP, /* <a href="ft2-basic_types.html#FT_Long">FT_Long</a> */
|
||||
|
||||
/* conventionally in the font FontInfo dictionary */
|
||||
PS_DICT_VERSION, /* <a href="ft2-basic_types.html#FT_String">FT_String</a>* */
|
||||
PS_DICT_NOTICE, /* <a href="ft2-basic_types.html#FT_String">FT_String</a>* */
|
||||
PS_DICT_FULL_NAME, /* <a href="ft2-basic_types.html#FT_String">FT_String</a>* */
|
||||
PS_DICT_FAMILY_NAME, /* <a href="ft2-basic_types.html#FT_String">FT_String</a>* */
|
||||
PS_DICT_WEIGHT, /* <a href="ft2-basic_types.html#FT_String">FT_String</a>* */
|
||||
PS_DICT_IS_FIXED_PITCH, /* <a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> */
|
||||
PS_DICT_UNDERLINE_POSITION, /* <a href="ft2-basic_types.html#FT_Short">FT_Short</a> */
|
||||
PS_DICT_UNDERLINE_THICKNESS, /* <a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> */
|
||||
PS_DICT_FS_TYPE, /* <a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> */
|
||||
PS_DICT_ITALIC_ANGLE, /* <a href="ft2-basic_types.html#FT_Long">FT_Long</a> */
|
||||
|
||||
PS_DICT_MAX = PS_DICT_ITALIC_ANGLE
|
||||
|
||||
} <b>PS_Dict_Keys</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>An enumeration used in calls to <a href="ft2-type1_tables.html#FT_Get_PS_Font_Value">FT_Get_PS_Font_Value</a> to identify the Type 1 dictionary entry to retrieve.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_PS_Font_Value">FT_Get_PS_Font_Value</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_TYPE1_TABLES_H (freetype/t1tables.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Long">FT_Long</a> )
|
||||
<b>FT_Get_PS_Font_Value</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-type1_tables.html#PS_Dict_Keys">PS_Dict_Keys</a> key,
|
||||
<a href="ft2-basic_types.html#FT_UInt">FT_UInt</a> idx,
|
||||
<span class="keyword">void</span> *value,
|
||||
<a href="ft2-basic_types.html#FT_Long">FT_Long</a> value_len );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve the value for the supplied key from a PostScript font.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>PostScript face handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>key</b></td><td>
|
||||
<p>An enumeration value representing the dictionary key to retrieve.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>idx</b></td><td>
|
||||
<p>For array values, this specifies the index to be returned.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>value</b></td><td>
|
||||
<p>A pointer to memory into which to write the value.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>valen_len</b></td><td>
|
||||
<p>The size, in bytes, of the memory supplied for the value.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>value</b></td><td>
|
||||
<p>The value matching the above key, if it exists.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The amount of memory (in bytes) required to hold the requested value (if it exists, -1 otherwise).</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The values returned are not pointers into the internal structures of the face, but are ‘fresh’ copies, so that the memory containing them belongs to the calling application. This also enforces the ‘read-only’ nature of these values, i.e., this function cannot be used to manipulate the face.</p>
|
||||
<p>‘value’ is a void pointer because the values returned can be of various types.</p>
|
||||
<p>If either ‘value’ is NULL or ‘value_len’ is too small, just the required memory size for the requested entry is returned.</p>
|
||||
<p>The ‘idx’ parameter is used, not only to retrieve elements of, for example, the FontMatrix or FontBBox, but also to retrieve name keys from the CharStrings dictionary, and the charstrings themselves. It is ignored for atomic values.</p>
|
||||
<p>PS_DICT_BLUE_SCALE returns a value that is scaled up by 1000. To get the value as in the font stream, you need to divide by 65536000.0 (to remove the FT_Fixed scale, and the x1000 scale).</p>
|
||||
<p>IMPORTANT: Only key/value pairs read by the FreeType interpreter can be retrieved. So, for example, PostScript procedures such as NP, ND, and RD are not available. Arbitrary keys are, obviously, not be available either.</p>
|
||||
<p>If the font's format is not PostScript-based, this function returns the ‘FT_Err_Invalid_Argument’ error code.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,47 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
User allocation
|
||||
</h1></center>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>FreeType assumes that structures allocated by the user and passed as arguments are zeroed out except for the actual data. In other words, it is recommended to use ‘calloc’ (or variants of it) instead of ‘malloc’ for allocation.</p>
|
||||
</td></tr></table><br>
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,219 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
FreeType Version
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FREETYPE_XXX">FREETYPE_XXX</a></td><td></td><td><a href="#FT_Face_CheckTrueTypePatents">FT_Face_CheckTrueTypePatents</a></td></tr>
|
||||
<tr><td></td><td><a href="#FT_Library_Version">FT_Library_Version</a></td><td></td><td><a href="#FT_Face_SetUnpatentedHinting">FT_Face_SetUnpatentedHinting</a></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Note that those functions and macros are of limited use because even a new release of FreeType with only documentation changes increases the version number.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FREETYPE_XXX">FREETYPE_XXX</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <a href="ft2-version.html#FREETYPE_XXX">FREETYPE_MAJOR</a> 2
|
||||
#define <a href="ft2-version.html#FREETYPE_XXX">FREETYPE_MINOR</a> 5
|
||||
#define <a href="ft2-version.html#FREETYPE_XXX">FREETYPE_PATCH</a> 0
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>These three macros identify the FreeType source code version. Use <a href="ft2-version.html#FT_Library_Version">FT_Library_Version</a> to access them at runtime.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>FREETYPE_MAJOR</b></td><td>
|
||||
<p>The major version number.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FREETYPE_MINOR</b></td><td>
|
||||
<p>The minor version number.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FREETYPE_PATCH</b></td><td>
|
||||
<p>The patch level.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The version number of FreeType if built as a dynamic link library with the ‘libtool’ package is <i>not</i> controlled by these three macros.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Library_Version">FT_Library_Version</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <span class="keyword">void</span> )
|
||||
<b>FT_Library_Version</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a> library,
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> *amajor,
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> *aminor,
|
||||
<a href="ft2-basic_types.html#FT_Int">FT_Int</a> *apatch );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Return the version of the FreeType library being used. This is useful when dynamically linking to the library, since one cannot use the macros <a href="ft2-version.html#FREETYPE_XXX">FREETYPE_MAJOR</a>, <a href="ft2-version.html#FREETYPE_XXX">FREETYPE_MINOR</a>, and <a href="ft2-version.html#FREETYPE_XXX">FREETYPE_PATCH</a>.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>library</b></td><td>
|
||||
<p>A source library handle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>amajor</b></td><td>
|
||||
<p>The major version number.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>aminor</b></td><td>
|
||||
<p>The minor version number.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>apatch</b></td><td>
|
||||
<p>The patch version number.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>The reason why this function takes a ‘library’ argument is because certain programs implement library initialization in a custom way that doesn't use <a href="ft2-base_interface.html#FT_Init_FreeType">FT_Init_FreeType</a>.</p>
|
||||
<p>In such cases, the library version might not be available before the library object has been created.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Face_CheckTrueTypePatents">FT_Face_CheckTrueTypePatents</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> )
|
||||
<b>FT_Face_CheckTrueTypePatents</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Parse all bytecode instructions of a TrueType font file to check whether any of the patented opcodes are used. This is only useful if you want to be able to use the unpatented hinter with fonts that do <b>not</b> use these opcodes.</p>
|
||||
<p>Note that this function parses <b>all</b> glyph instructions in the font file, which may be slow.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A face handle.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>1 if this is a TrueType font that uses one of the patented opcodes, 0 otherwise.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>Since May 2010, TrueType hinting is no longer patented.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.3.5</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Face_SetUnpatentedHinting">FT_Face_SetUnpatentedHinting</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_FREETYPE_H (freetype/freetype.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> )
|
||||
<b>FT_Face_SetUnpatentedHinting</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-basic_types.html#FT_Bool">FT_Bool</a> value );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Enable or disable the unpatented hinter for a given face. Only enable it if you have determined that the face doesn't use any patented opcodes (see <a href="ft2-version.html#FT_Face_CheckTrueTypePatents">FT_Face_CheckTrueTypePatents</a>).</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A face handle.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>value</b></td><td>
|
||||
<p>New boolean setting.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>The old setting value. This will always be false if this is not an SFNT font, or if the unpatented hinter is not compiled in this instance of the library.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>Since May 2010, TrueType hinting is no longer patented.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>since</b></em></td></tr><tr><td>
|
||||
<p>2.3.5</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,278 +0,0 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>FreeType-2.5.0 API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<table align=center><tr><td><font size=-1>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>FreeType-2.5.0 API Reference</h1></center>
|
||||
|
||||
<center><h1>
|
||||
Window FNT Files
|
||||
</h1></center>
|
||||
<h2>Synopsis</h2>
|
||||
<table align=center cellspacing=5 cellpadding=0 border=0>
|
||||
<tr><td></td><td><a href="#FT_WinFNT_ID_XXX">FT_WinFNT_ID_XXX</a></td><td></td><td><a href="#FT_WinFNT_Header">FT_WinFNT_Header</a></td><td></td><td></td></tr>
|
||||
<tr><td></td><td><a href="#FT_WinFNT_HeaderRec">FT_WinFNT_HeaderRec</a></td><td></td><td><a href="#FT_Get_WinFNT_Header">FT_Get_WinFNT_Header</a></td><td></td><td></td></tr>
|
||||
</table><br><br>
|
||||
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>This section contains the declaration of Windows FNT specific functions.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_WinFNT_ID_XXX">FT_WinFNT_ID_XXX</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_WINFONTS_H (freetype/ftwinfnt.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1252</a> 0
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_DEFAULT</a> 1
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_SYMBOL</a> 2
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_MAC</a> 77
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP932</a> 128
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP949</a> 129
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1361</a> 130
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP936</a> 134
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP950</a> 136
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1253</a> 161
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1254</a> 162
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1258</a> 163
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1255</a> 177
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1256</a> 178
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1257</a> 186
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1251</a> 204
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP874</a> 222
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_CP1250</a> 238
|
||||
#define <a href="ft2-winfnt_fonts.html#FT_WinFNT_ID_XXX">FT_WinFNT_ID_OEM</a> 255
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A list of valid values for the ‘charset’ byte in <a href="ft2-winfnt_fonts.html#FT_WinFNT_HeaderRec">FT_WinFNT_HeaderRec</a>. Exact mapping tables for the various cpXXXX encodings (except for cp1361) can be found at ftp://ftp.unicode.org in the MAPPINGS/VENDORS/MICSFT/WINDOWS subdirectory. cp1361 is roughly a superset of MAPPINGS/OBSOLETE/EASTASIA/KSC/JOHAB.TXT.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>values</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_DEFAULT</b></td><td>
|
||||
<p>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 return value (of the related Windows API) simply denotes failure.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_SYMBOL</b></td><td>
|
||||
<p>There is no known mapping table available.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_MAC</b></td><td>
|
||||
<p>Mac Roman encoding.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_OEM</b></td><td>
|
||||
<p>From Michael Pöttgen <michael@poettgen.de>:</p>
|
||||
<p>The ‘Windows Font Mapping’ article says that FT_WinFNT_ID_OEM is used for the charset of vector fonts, like ‘modern.fon’, ‘roman.fon’, and ‘script.fon’ on Windows.</p>
|
||||
<p>The ‘CreateFont’ documentation says: The FT_WinFNT_ID_OEM value specifies a character set that is operating-system dependent.</p>
|
||||
<p>The ‘IFIMETRICS’ documentation from the ‘Windows Driver Development Kit’ says: This font supports an OEM-specific character set. The OEM character set is system dependent.</p>
|
||||
<p>In general OEM, as opposed to ANSI (i.e., cp1252), denotes the second default codepage that most international versions of Windows have. It is one of the OEM codepages from</p>
|
||||
<p>http://www.microsoft.com/globaldev/reference/cphome.mspx,</p>
|
||||
<p>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.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP874</b></td><td>
|
||||
<p>A superset of Thai TIS 620 and ISO 8859-11.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP932</b></td><td>
|
||||
<p>A superset of Japanese Shift-JIS (with minor deviations).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP936</b></td><td>
|
||||
<p>A superset of simplified Chinese GB 2312-1980 (with different ordering and minor deviations).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP949</b></td><td>
|
||||
<p>A superset of Korean Hangul KS C 5601-1987 (with different ordering and minor deviations).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP950</b></td><td>
|
||||
<p>A superset of traditional Chinese Big 5 ETen (with different ordering and minor deviations).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP1250</b></td><td>
|
||||
<p>A superset of East European ISO 8859-2 (with slightly different ordering).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP1251</b></td><td>
|
||||
<p>A superset of Russian ISO 8859-5 (with different ordering).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP1252</b></td><td>
|
||||
<p>ANSI encoding. A superset of ISO 8859-1.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP1253</b></td><td>
|
||||
<p>A superset of Greek ISO 8859-7 (with minor modifications).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP1254</b></td><td>
|
||||
<p>A superset of Turkish ISO 8859-9.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP1255</b></td><td>
|
||||
<p>A superset of Hebrew ISO 8859-8 (with some modifications).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP1256</b></td><td>
|
||||
<p>A superset of Arabic ISO 8859-6 (with different ordering).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP1257</b></td><td>
|
||||
<p>A superset of Baltic ISO 8859-13 (with some deviations).</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP1258</b></td><td>
|
||||
<p>For Vietnamese. This encoding doesn't cover all necessary characters.</p>
|
||||
</td></tr>
|
||||
<tr valign=top><td><b>FT_WinFNT_ID_CP1361</b></td><td>
|
||||
<p>Korean (Johab).</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_WinFNT_HeaderRec">FT_WinFNT_HeaderRec</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_WINFONTS_H (freetype/ftwinfnt.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_WinFNT_HeaderRec_
|
||||
{
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> version;
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> file_size;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> copyright[60];
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> file_type;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> nominal_point_size;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> vertical_resolution;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> horizontal_resolution;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> ascent;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> internal_leading;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> external_leading;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> italic;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> underline;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> strike_out;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> weight;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> charset;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> pixel_width;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> pixel_height;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> pitch_and_family;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> avg_width;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> max_width;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> first_char;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> last_char;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> default_char;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> break_char;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> bytes_per_row;
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> device_offset;
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> face_name_offset;
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> bits_pointer;
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> bits_offset;
|
||||
<a href="ft2-basic_types.html#FT_Byte">FT_Byte</a> reserved;
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> flags;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> A_space;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> B_space;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> C_space;
|
||||
<a href="ft2-basic_types.html#FT_UShort">FT_UShort</a> color_table_offset;
|
||||
<a href="ft2-basic_types.html#FT_ULong">FT_ULong</a> reserved1[4];
|
||||
|
||||
} <b>FT_WinFNT_HeaderRec</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Windows FNT Header info.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_WinFNT_Header">FT_WinFNT_Header</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_WINFONTS_H (freetype/ftwinfnt.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
<span class="keyword">typedef</span> <span class="keyword">struct</span> FT_WinFNT_HeaderRec_* <b>FT_WinFNT_Header</b>;
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>A handle to an <a href="ft2-winfnt_fonts.html#FT_WinFNT_HeaderRec">FT_WinFNT_HeaderRec</a> structure.</p>
|
||||
</td></tr></table><br>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
<table align=center width="75%"><tr><td>
|
||||
<h4><a name="FT_Get_WinFNT_Header">FT_Get_WinFNT_Header</a></h4>
|
||||
<table align=center width="87%"><tr><td>
|
||||
Defined in FT_WINFONTS_H (freetype/ftwinfnt.h).
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>
|
||||
|
||||
FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
|
||||
<b>FT_Get_WinFNT_Header</b>( <a href="ft2-base_interface.html#FT_Face">FT_Face</a> face,
|
||||
<a href="ft2-winfnt_fonts.html#FT_WinFNT_HeaderRec">FT_WinFNT_HeaderRec</a> *aheader );
|
||||
|
||||
</pre></table><br>
|
||||
<table align=center width="87%"><tr><td>
|
||||
<p>Retrieve a Windows FNT font info header.</p>
|
||||
</td></tr></table><br>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>input</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>face</b></td><td>
|
||||
<p>A handle to the input face.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>output</b></em></td></tr><tr><td>
|
||||
<p></p>
|
||||
<table cellpadding=3 border=0>
|
||||
<tr valign=top><td><b>aheader</b></td><td>
|
||||
<p>The WinFNT header.</p>
|
||||
</td></tr>
|
||||
</table>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>return</b></em></td></tr><tr><td>
|
||||
<p>FreeType error code. 0 means success.</p>
|
||||
</td></tr></table>
|
||||
<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>note</b></em></td></tr><tr><td>
|
||||
<p>This function only works with Windows FNT faces, returning an error otherwise.</p>
|
||||
</td></tr></table>
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="ft2-index.html">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="ft2-toc.html">TOC</a>]</font></td></tr></table>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
@@ -1,151 +0,0 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftcffdrv.h */
|
||||
/* */
|
||||
/* FreeType API for controlling the CFF driver (specification only). */
|
||||
/* */
|
||||
/* Copyright 2013 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
#ifndef __FTCFFDRV_H__
|
||||
#define __FTCFFDRV_H__
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_FREETYPE_H
|
||||
|
||||
#ifdef FREETYPE_H
|
||||
#error "freetype.h of FreeType 1 has been loaded!"
|
||||
#error "Please fix the directory search order for header files"
|
||||
#error "so that freetype.h of FreeType 2 is found first."
|
||||
#endif
|
||||
|
||||
|
||||
FT_BEGIN_HEADER
|
||||
|
||||
|
||||
/**************************************************************************
|
||||
*
|
||||
* @section:
|
||||
* cff_driver
|
||||
*
|
||||
* @title:
|
||||
* The CFF driver
|
||||
*
|
||||
* @abstract:
|
||||
* Controlling the CFF driver module.
|
||||
*
|
||||
* @description:
|
||||
* While FreeType's CFF driver doesn't expose API functions by itself,
|
||||
* it is possible to control its behaviour with @FT_Property_Set and
|
||||
* @FT_Property_Get. The following lists the available properties
|
||||
* together with the necessary macros and structures.
|
||||
*
|
||||
* The CFF driver's module name is `cff'.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
/**************************************************************************
|
||||
*
|
||||
* @property:
|
||||
* hinting-engine
|
||||
*
|
||||
* @description:
|
||||
* Thanks to Adobe, which contributed a new hinting (and parsing)
|
||||
* engine, an application can select between `freetype' and `adobe' if
|
||||
* compiled with CFF_CONFIG_OPTION_OLD_ENGINE. If this configuration
|
||||
* macro isn't defined, `hinting-engine' does nothing.
|
||||
*
|
||||
* The default engine is `freetype' if CFF_CONFIG_OPTION_OLD_ENGINE is
|
||||
* defined, and `adobe' otherwise.
|
||||
*
|
||||
* The following example code demonstrates how to select Adobe's hinting
|
||||
* engine (omitting the error handling).
|
||||
*
|
||||
* {
|
||||
* FT_Library library;
|
||||
* FT_Face face;
|
||||
* FT_UInt hinting_engine = FT_CFF_HINTING_ADOBE;
|
||||
*
|
||||
*
|
||||
* FT_Init_FreeType( &library );
|
||||
*
|
||||
* FT_Property_Set( library, "cff",
|
||||
* "hinting-engine", &hinting_engine );
|
||||
* }
|
||||
*
|
||||
* @note:
|
||||
* This property can be used with @FT_Property_Get also.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
/**************************************************************************
|
||||
*
|
||||
* @enum:
|
||||
* FT_CFF_HINTING_XXX
|
||||
*
|
||||
* @description:
|
||||
* A list of constants used for the @hinting-engine property to select
|
||||
* the hinting engine for CFF fonts.
|
||||
*
|
||||
* @values:
|
||||
* FT_CFF_HINTING_FREETYPE ::
|
||||
* Use the old FreeType hinting engine.
|
||||
*
|
||||
* FT_CFF_HINTING_ADOBE ::
|
||||
* Use the hinting engine contributed by Adobe.
|
||||
*
|
||||
*/
|
||||
#define FT_CFF_HINTING_FREETYPE 0
|
||||
#define FT_CFF_HINTING_ADOBE 1
|
||||
|
||||
|
||||
/**************************************************************************
|
||||
*
|
||||
* @property:
|
||||
* no-stem-darkening
|
||||
*
|
||||
* @description:
|
||||
* By default, the Adobe CFF engine darkens stems at smaller sizes,
|
||||
* regardless of hinting, to enhance contrast. Setting this property,
|
||||
* stem darkening gets switched off.
|
||||
*
|
||||
* Note that stem darkening is never applied if @FT_LOAD_NO_SCALE is set.
|
||||
*
|
||||
* {
|
||||
* FT_Library library;
|
||||
* FT_Face face;
|
||||
* FT_Bool no_stem_darkening = TRUE;
|
||||
*
|
||||
*
|
||||
* FT_Init_FreeType( &library );
|
||||
*
|
||||
* FT_Property_Set( library, "cff",
|
||||
* "no-stem-darkening", &no_stem_darkening );
|
||||
* }
|
||||
*
|
||||
* @note:
|
||||
* This property can be used with @FT_Property_Get also.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
/* */
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
|
||||
#endif /* __FTCFFDRV_H__ */
|
||||
|
||||
|
||||
/* END */
|
||||
@@ -1,150 +0,0 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftttdrv.h */
|
||||
/* */
|
||||
/* FreeType API for controlling the TrueType driver */
|
||||
/* (specification only). */
|
||||
/* */
|
||||
/* Copyright 2013 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
#ifndef __FTTTDRV_H__
|
||||
#define __FTTTDRV_H__
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_FREETYPE_H
|
||||
|
||||
#ifdef FREETYPE_H
|
||||
#error "freetype.h of FreeType 1 has been loaded!"
|
||||
#error "Please fix the directory search order for header files"
|
||||
#error "so that freetype.h of FreeType 2 is found first."
|
||||
#endif
|
||||
|
||||
|
||||
FT_BEGIN_HEADER
|
||||
|
||||
|
||||
/**************************************************************************
|
||||
*
|
||||
* @section:
|
||||
* tt_driver
|
||||
*
|
||||
* @title:
|
||||
* The TrueType driver
|
||||
*
|
||||
* @abstract:
|
||||
* Controlling the TrueType driver module.
|
||||
*
|
||||
* @description:
|
||||
* While FreeType's TrueType driver doesn't expose API functions by
|
||||
* itself, it is possible to control its behaviour with @FT_Property_Set
|
||||
* and @FT_Property_Get. The following lists the available properties
|
||||
* together with the necessary macros and structures.
|
||||
*
|
||||
* The TrueType driver's module name is `truetype'.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
/**************************************************************************
|
||||
*
|
||||
* @property:
|
||||
* interpreter-version
|
||||
*
|
||||
* @description:
|
||||
* Currently, two versions are available which represent the bytecode
|
||||
* interpreter with and without subpixel hinting support,
|
||||
* respectively. The default is subpixel support if
|
||||
* TT_CONFIG_OPTION_SUBPIXEL_HINTING is defined, and no subpixel
|
||||
* support otherwise (since it isn't available then).
|
||||
*
|
||||
* If subpixel hinting is on, many TrueType bytecode instructions
|
||||
* behave differently compared to B/W or grayscale rendering. The
|
||||
* main idea is to render at a much increased horizontal resolution,
|
||||
* then sampling down the created output to subpixel precision.
|
||||
* However, many older fonts are not suited to this and must be
|
||||
* specially taken care of by applying (hardcoded) font-specific
|
||||
* tweaks.
|
||||
*
|
||||
* Details on subpixel hinting and some of the necessary tweaks can be
|
||||
* found in Greg Hitchcock's whitepaper at
|
||||
* `http://www.microsoft.com/typography/cleartype/truetypecleartype.aspx'.
|
||||
*
|
||||
* The following example code demonstrates how to activate subpixel
|
||||
* hinting (omitting the error handling).
|
||||
*
|
||||
* {
|
||||
* FT_Library library;
|
||||
* FT_Face face;
|
||||
* FT_UInt interpreter_version = TT_INTERPRETER_VERSION_38;
|
||||
*
|
||||
*
|
||||
* FT_Init_FreeType( &library );
|
||||
*
|
||||
* FT_Property_Set( library, "truetype",
|
||||
* "interpreter-version",
|
||||
* &interpreter_version );
|
||||
* }
|
||||
*
|
||||
* @note:
|
||||
* This property can be used with @FT_Property_Get also.
|
||||
*
|
||||
*/
|
||||
|
||||
|
||||
/**************************************************************************
|
||||
*
|
||||
* @enum:
|
||||
* TT_INTERPRETER_VERSION_XXX
|
||||
*
|
||||
* @description:
|
||||
* A list of constants used for the @interpreter-version property to
|
||||
* select the hinting engine for Truetype fonts.
|
||||
*
|
||||
* The numeric value in the constant names represents the version
|
||||
* number as returned by the `GETINFO' bytecode instruction.
|
||||
*
|
||||
* @values:
|
||||
* TT_INTERPRETER_VERSION_35 ::
|
||||
* Version~35 corresponds to MS rasterizer v.1.7 as used e.g. in
|
||||
* Windows~98; only grayscale and B/W rasterizing is supported.
|
||||
*
|
||||
* TT_INTERPRETER_VERSION_38 ::
|
||||
* Version~38 corresponds to MS rasterizer v.1.9; it is roughly
|
||||
* equivalent to the hinting provided by DirectWrite ClearType (as
|
||||
* can be found, for example, in the Internet Explorer~9 running on
|
||||
* Windows~7).
|
||||
*
|
||||
* @note:
|
||||
* This property controls the behaviour of the bytecode interpreter
|
||||
* and thus how outlines get hinted. It does *not* control how glyph
|
||||
* get rasterized! In particular, it does not control subpixel color
|
||||
* filtering.
|
||||
*
|
||||
* If FreeType has not been compiled with configuration option
|
||||
* FT_CONFIG_OPTION_SUBPIXEL_HINTING, selecting version~38 causes an
|
||||
* `FT_Err_Unimplemented_Feature' error.
|
||||
*
|
||||
*/
|
||||
#define TT_INTERPRETER_VERSION_35 35
|
||||
#define TT_INTERPRETER_VERSION_38 38
|
||||
|
||||
|
||||
/* */
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
|
||||
#endif /* __FTTTDRV_H__ */
|
||||
|
||||
|
||||
/* END */
|
||||
@@ -1,304 +0,0 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* afglobal.c */
|
||||
/* */
|
||||
/* Auto-fitter routines to compute global hinting values (body). */
|
||||
/* */
|
||||
/* Copyright 2003-2013 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
#include "afglobal.h"
|
||||
#include "afdummy.h"
|
||||
#include "aflatin.h"
|
||||
#include "afcjk.h"
|
||||
#include "afindic.h"
|
||||
#include "afpic.h"
|
||||
|
||||
#include "aferrors.h"
|
||||
|
||||
#ifdef FT_OPTION_AUTOFIT2
|
||||
#include "aflatin2.h"
|
||||
#endif
|
||||
|
||||
#ifndef FT_CONFIG_OPTION_PIC
|
||||
|
||||
/* when updating this table, don't forget to update */
|
||||
/* AF_SCRIPT_CLASSES_COUNT and autofit_module_class_pic_init */
|
||||
|
||||
/* populate this list when you add new scripts */
|
||||
static AF_ScriptClass const af_script_classes[] =
|
||||
{
|
||||
&af_dummy_script_class,
|
||||
#ifdef FT_OPTION_AUTOFIT2
|
||||
&af_latin2_script_class,
|
||||
#endif
|
||||
&af_latin_script_class,
|
||||
&af_cjk_script_class,
|
||||
&af_indic_script_class,
|
||||
NULL /* do not remove */
|
||||
};
|
||||
|
||||
#endif /* !FT_CONFIG_OPTION_PIC */
|
||||
|
||||
|
||||
/* Compute the script index of each glyph within a given face. */
|
||||
|
||||
static FT_Error
|
||||
af_face_globals_compute_script_coverage( AF_FaceGlobals globals )
|
||||
{
|
||||
FT_Error error;
|
||||
FT_Face face = globals->face;
|
||||
FT_CharMap old_charmap = face->charmap;
|
||||
FT_Byte* gscripts = globals->glyph_scripts;
|
||||
FT_UInt ss;
|
||||
FT_UInt i;
|
||||
|
||||
|
||||
/* the value AF_SCRIPT_NONE means `uncovered glyph' */
|
||||
FT_MEM_SET( globals->glyph_scripts,
|
||||
AF_SCRIPT_NONE,
|
||||
globals->glyph_count );
|
||||
|
||||
error = FT_Select_Charmap( face, FT_ENCODING_UNICODE );
|
||||
if ( error )
|
||||
{
|
||||
/*
|
||||
* Ignore this error; we simply use the fallback script.
|
||||
* XXX: Shouldn't we rather disable hinting?
|
||||
*/
|
||||
error = FT_Err_Ok;
|
||||
goto Exit;
|
||||
}
|
||||
|
||||
/* scan each script in a Unicode charmap */
|
||||
for ( ss = 0; AF_SCRIPT_CLASSES_GET[ss]; ss++ )
|
||||
{
|
||||
AF_ScriptClass clazz = AF_SCRIPT_CLASSES_GET[ss];
|
||||
AF_Script_UniRange range;
|
||||
|
||||
|
||||
if ( clazz->script_uni_ranges == NULL )
|
||||
continue;
|
||||
|
||||
/*
|
||||
* Scan all Unicode points in the range and set the corresponding
|
||||
* glyph script index.
|
||||
*/
|
||||
for ( range = clazz->script_uni_ranges; range->first != 0; range++ )
|
||||
{
|
||||
FT_ULong charcode = range->first;
|
||||
FT_UInt gindex;
|
||||
|
||||
|
||||
gindex = FT_Get_Char_Index( face, charcode );
|
||||
|
||||
if ( gindex != 0 &&
|
||||
gindex < (FT_ULong)globals->glyph_count &&
|
||||
gscripts[gindex] == AF_SCRIPT_NONE )
|
||||
gscripts[gindex] = (FT_Byte)ss;
|
||||
|
||||
for (;;)
|
||||
{
|
||||
charcode = FT_Get_Next_Char( face, charcode, &gindex );
|
||||
|
||||
if ( gindex == 0 || charcode > range->last )
|
||||
break;
|
||||
|
||||
if ( gindex < (FT_ULong)globals->glyph_count &&
|
||||
gscripts[gindex] == AF_SCRIPT_NONE )
|
||||
gscripts[gindex] = (FT_Byte)ss;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/* mark ASCII digits */
|
||||
for ( i = 0x30; i <= 0x39; i++ )
|
||||
{
|
||||
FT_UInt gindex = FT_Get_Char_Index( face, i );
|
||||
|
||||
|
||||
if ( gindex != 0 && gindex < (FT_ULong)globals->glyph_count )
|
||||
gscripts[gindex] |= AF_DIGIT;
|
||||
}
|
||||
|
||||
Exit:
|
||||
/*
|
||||
* By default, all uncovered glyphs are set to the fallback script.
|
||||
* XXX: Shouldn't we disable hinting or do something similar?
|
||||
*/
|
||||
if ( globals->module->fallback_script != AF_SCRIPT_NONE )
|
||||
{
|
||||
FT_Long nn;
|
||||
|
||||
|
||||
for ( nn = 0; nn < globals->glyph_count; nn++ )
|
||||
{
|
||||
if ( ( gscripts[nn] & ~AF_DIGIT ) == AF_SCRIPT_NONE )
|
||||
{
|
||||
gscripts[nn] &= ~AF_SCRIPT_NONE;
|
||||
gscripts[nn] |= globals->module->fallback_script;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
FT_Set_Charmap( face, old_charmap );
|
||||
return error;
|
||||
}
|
||||
|
||||
|
||||
FT_LOCAL_DEF( FT_Error )
|
||||
af_face_globals_new( FT_Face face,
|
||||
AF_FaceGlobals *aglobals,
|
||||
AF_Module module )
|
||||
{
|
||||
FT_Error error;
|
||||
FT_Memory memory;
|
||||
AF_FaceGlobals globals = NULL;
|
||||
|
||||
|
||||
memory = face->memory;
|
||||
|
||||
if ( FT_ALLOC( globals, sizeof ( *globals ) +
|
||||
face->num_glyphs * sizeof ( FT_Byte ) ) )
|
||||
goto Exit;
|
||||
|
||||
globals->face = face;
|
||||
globals->glyph_count = face->num_glyphs;
|
||||
globals->glyph_scripts = (FT_Byte*)( globals + 1 );
|
||||
globals->module = module;
|
||||
|
||||
error = af_face_globals_compute_script_coverage( globals );
|
||||
if ( error )
|
||||
{
|
||||
af_face_globals_free( globals );
|
||||
globals = NULL;
|
||||
}
|
||||
|
||||
globals->increase_x_height = AF_PROP_INCREASE_X_HEIGHT_MAX;
|
||||
|
||||
Exit:
|
||||
*aglobals = globals;
|
||||
return error;
|
||||
}
|
||||
|
||||
|
||||
FT_LOCAL_DEF( void )
|
||||
af_face_globals_free( AF_FaceGlobals globals )
|
||||
{
|
||||
if ( globals )
|
||||
{
|
||||
FT_Memory memory = globals->face->memory;
|
||||
FT_UInt nn;
|
||||
|
||||
|
||||
for ( nn = 0; nn < AF_SCRIPT_MAX; nn++ )
|
||||
{
|
||||
if ( globals->metrics[nn] )
|
||||
{
|
||||
AF_ScriptClass clazz = AF_SCRIPT_CLASSES_GET[nn];
|
||||
|
||||
|
||||
FT_ASSERT( globals->metrics[nn]->clazz == clazz );
|
||||
|
||||
if ( clazz->script_metrics_done )
|
||||
clazz->script_metrics_done( globals->metrics[nn] );
|
||||
|
||||
FT_FREE( globals->metrics[nn] );
|
||||
}
|
||||
}
|
||||
|
||||
globals->glyph_count = 0;
|
||||
globals->glyph_scripts = NULL; /* no need to free this one! */
|
||||
globals->face = NULL;
|
||||
|
||||
FT_FREE( globals );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
FT_LOCAL_DEF( FT_Error )
|
||||
af_face_globals_get_metrics( AF_FaceGlobals globals,
|
||||
FT_UInt gindex,
|
||||
FT_UInt options,
|
||||
AF_ScriptMetrics *ametrics )
|
||||
{
|
||||
AF_ScriptMetrics metrics = NULL;
|
||||
FT_UInt gidx;
|
||||
AF_ScriptClass clazz;
|
||||
FT_UInt script = options & 15;
|
||||
const FT_Offset script_max = sizeof ( AF_SCRIPT_CLASSES_GET ) /
|
||||
sizeof ( AF_SCRIPT_CLASSES_GET[0] );
|
||||
FT_Error error = FT_Err_Ok;
|
||||
|
||||
|
||||
if ( gindex >= (FT_ULong)globals->glyph_count )
|
||||
{
|
||||
error = FT_THROW( Invalid_Argument );
|
||||
goto Exit;
|
||||
}
|
||||
|
||||
gidx = script;
|
||||
if ( gidx == 0 || gidx + 1 >= script_max )
|
||||
gidx = globals->glyph_scripts[gindex] & AF_SCRIPT_NONE;
|
||||
|
||||
clazz = AF_SCRIPT_CLASSES_GET[gidx];
|
||||
if ( script == 0 )
|
||||
script = clazz->script;
|
||||
|
||||
metrics = globals->metrics[clazz->script];
|
||||
if ( metrics == NULL )
|
||||
{
|
||||
/* create the global metrics object if necessary */
|
||||
FT_Memory memory = globals->face->memory;
|
||||
|
||||
|
||||
if ( FT_ALLOC( metrics, clazz->script_metrics_size ) )
|
||||
goto Exit;
|
||||
|
||||
metrics->clazz = clazz;
|
||||
metrics->globals = globals;
|
||||
|
||||
if ( clazz->script_metrics_init )
|
||||
{
|
||||
error = clazz->script_metrics_init( metrics, globals->face );
|
||||
if ( error )
|
||||
{
|
||||
if ( clazz->script_metrics_done )
|
||||
clazz->script_metrics_done( metrics );
|
||||
|
||||
FT_FREE( metrics );
|
||||
goto Exit;
|
||||
}
|
||||
}
|
||||
|
||||
globals->metrics[clazz->script] = metrics;
|
||||
}
|
||||
|
||||
Exit:
|
||||
*ametrics = metrics;
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
|
||||
FT_LOCAL_DEF( FT_Bool )
|
||||
af_face_globals_is_digit( AF_FaceGlobals globals,
|
||||
FT_UInt gindex )
|
||||
{
|
||||
if ( gindex < (FT_ULong)globals->glyph_count )
|
||||
return (FT_Bool)( globals->glyph_scripts[gindex] & AF_DIGIT );
|
||||
|
||||
return (FT_Bool)0;
|
||||
}
|
||||
|
||||
|
||||
/* END */
|
||||
@@ -1,109 +0,0 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* afglobal.h */
|
||||
/* */
|
||||
/* Auto-fitter routines to compute global hinting values */
|
||||
/* (specification). */
|
||||
/* */
|
||||
/* Copyright 2003-2005, 2007, 2009, 2011-2012 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
#ifndef __AFGLOBAL_H__
|
||||
#define __AFGLOBAL_H__
|
||||
|
||||
|
||||
#include "aftypes.h"
|
||||
#include "afmodule.h"
|
||||
|
||||
|
||||
FT_BEGIN_HEADER
|
||||
|
||||
|
||||
/*
|
||||
* Default values and flags for both autofitter globals (found in
|
||||
* AF_ModuleRec) and face globals (in AF_FaceGlobalsRec).
|
||||
*/
|
||||
|
||||
/* index of fallback script in `af_script_classes' */
|
||||
#define AF_SCRIPT_FALLBACK 2
|
||||
/* a bit mask indicating an uncovered glyph */
|
||||
#define AF_SCRIPT_NONE 0x7F
|
||||
/* if this flag is set, we have an ASCII digit */
|
||||
#define AF_DIGIT 0x80
|
||||
|
||||
/* `increase-x-height' property */
|
||||
#define AF_PROP_INCREASE_X_HEIGHT_MIN 6
|
||||
#define AF_PROP_INCREASE_X_HEIGHT_MAX 0
|
||||
|
||||
|
||||
/************************************************************************/
|
||||
/************************************************************************/
|
||||
/***** *****/
|
||||
/***** F A C E G L O B A L S *****/
|
||||
/***** *****/
|
||||
/************************************************************************/
|
||||
/************************************************************************/
|
||||
|
||||
|
||||
/*
|
||||
* Note that glyph_scripts[] is used to map each glyph into
|
||||
* an index into the `af_script_classes' array.
|
||||
*
|
||||
*/
|
||||
typedef struct AF_FaceGlobalsRec_
|
||||
{
|
||||
FT_Face face;
|
||||
FT_Long glyph_count; /* same as face->num_glyphs */
|
||||
FT_Byte* glyph_scripts;
|
||||
|
||||
/* per-face auto-hinter properties */
|
||||
FT_UInt increase_x_height;
|
||||
|
||||
AF_ScriptMetrics metrics[AF_SCRIPT_MAX];
|
||||
|
||||
AF_Module module; /* to access global properties */
|
||||
|
||||
} AF_FaceGlobalsRec;
|
||||
|
||||
|
||||
/*
|
||||
* model the global hints data for a given face, decomposed into
|
||||
* script-specific items
|
||||
*/
|
||||
|
||||
FT_LOCAL( FT_Error )
|
||||
af_face_globals_new( FT_Face face,
|
||||
AF_FaceGlobals *aglobals,
|
||||
AF_Module module );
|
||||
|
||||
FT_LOCAL( FT_Error )
|
||||
af_face_globals_get_metrics( AF_FaceGlobals globals,
|
||||
FT_UInt gindex,
|
||||
FT_UInt options,
|
||||
AF_ScriptMetrics *ametrics );
|
||||
|
||||
FT_LOCAL( void )
|
||||
af_face_globals_free( AF_FaceGlobals globals );
|
||||
|
||||
FT_LOCAL_DEF( FT_Bool )
|
||||
af_face_globals_is_digit( AF_FaceGlobals globals,
|
||||
FT_UInt gindex );
|
||||
|
||||
/* */
|
||||
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
#endif /* __AFGLOBAL_H__ */
|
||||
|
||||
|
||||
/* END */
|
||||
@@ -1,561 +0,0 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* afloader.c */
|
||||
/* */
|
||||
/* Auto-fitter glyph loading routines (body). */
|
||||
/* */
|
||||
/* Copyright 2003-2009, 2011-2013 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
#include "afglobal.h"
|
||||
#include "afloader.h"
|
||||
#include "afhints.h"
|
||||
#include "aferrors.h"
|
||||
#include "afmodule.h"
|
||||
|
||||
|
||||
/* Initialize glyph loader. */
|
||||
|
||||
FT_LOCAL_DEF( FT_Error )
|
||||
af_loader_init( AF_Module module )
|
||||
{
|
||||
AF_Loader loader = module->loader;
|
||||
FT_Memory memory = module->root.library->memory;
|
||||
|
||||
|
||||
FT_ZERO( loader );
|
||||
|
||||
af_glyph_hints_init( &loader->hints, memory );
|
||||
#ifdef FT_DEBUG_AUTOFIT
|
||||
_af_debug_hints = &loader->hints;
|
||||
#endif
|
||||
return FT_GlyphLoader_New( memory, &loader->gloader );
|
||||
}
|
||||
|
||||
|
||||
/* Reset glyph loader and compute globals if necessary. */
|
||||
|
||||
FT_LOCAL_DEF( FT_Error )
|
||||
af_loader_reset( AF_Module module,
|
||||
FT_Face face )
|
||||
{
|
||||
FT_Error error = FT_Err_Ok;
|
||||
AF_Loader loader = module->loader;
|
||||
|
||||
|
||||
loader->face = face;
|
||||
loader->globals = (AF_FaceGlobals)face->autohint.data;
|
||||
|
||||
FT_GlyphLoader_Rewind( loader->gloader );
|
||||
|
||||
if ( loader->globals == NULL )
|
||||
{
|
||||
error = af_face_globals_new( face, &loader->globals, module );
|
||||
if ( !error )
|
||||
{
|
||||
face->autohint.data =
|
||||
(FT_Pointer)loader->globals;
|
||||
face->autohint.finalizer =
|
||||
(FT_Generic_Finalizer)af_face_globals_free;
|
||||
}
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
|
||||
/* Finalize glyph loader. */
|
||||
|
||||
FT_LOCAL_DEF( void )
|
||||
af_loader_done( AF_Module module )
|
||||
{
|
||||
AF_Loader loader = module->loader;
|
||||
|
||||
|
||||
af_glyph_hints_done( &loader->hints );
|
||||
|
||||
loader->face = NULL;
|
||||
loader->globals = NULL;
|
||||
|
||||
#ifdef FT_DEBUG_AUTOFIT
|
||||
_af_debug_hints = NULL;
|
||||
#endif
|
||||
FT_GlyphLoader_Done( loader->gloader );
|
||||
loader->gloader = NULL;
|
||||
}
|
||||
|
||||
|
||||
/* Load a single glyph component. This routine calls itself */
|
||||
/* recursively, if necessary, and does the main work of */
|
||||
/* `af_loader_load_glyph.' */
|
||||
|
||||
static FT_Error
|
||||
af_loader_load_g( AF_Loader loader,
|
||||
AF_Scaler scaler,
|
||||
FT_UInt glyph_index,
|
||||
FT_Int32 load_flags,
|
||||
FT_UInt depth )
|
||||
{
|
||||
FT_Error error;
|
||||
FT_Face face = loader->face;
|
||||
FT_GlyphLoader gloader = loader->gloader;
|
||||
AF_ScriptMetrics metrics = loader->metrics;
|
||||
AF_GlyphHints hints = &loader->hints;
|
||||
FT_GlyphSlot slot = face->glyph;
|
||||
FT_Slot_Internal internal = slot->internal;
|
||||
FT_Int32 flags;
|
||||
|
||||
|
||||
flags = load_flags | FT_LOAD_LINEAR_DESIGN;
|
||||
error = FT_Load_Glyph( face, glyph_index, flags );
|
||||
if ( error )
|
||||
goto Exit;
|
||||
|
||||
loader->transformed = internal->glyph_transformed;
|
||||
if ( loader->transformed )
|
||||
{
|
||||
FT_Matrix inverse;
|
||||
|
||||
|
||||
loader->trans_matrix = internal->glyph_matrix;
|
||||
loader->trans_delta = internal->glyph_delta;
|
||||
|
||||
inverse = loader->trans_matrix;
|
||||
FT_Matrix_Invert( &inverse );
|
||||
FT_Vector_Transform( &loader->trans_delta, &inverse );
|
||||
}
|
||||
|
||||
switch ( slot->format )
|
||||
{
|
||||
case FT_GLYPH_FORMAT_OUTLINE:
|
||||
/* translate the loaded glyph when an internal transform is needed */
|
||||
if ( loader->transformed )
|
||||
FT_Outline_Translate( &slot->outline,
|
||||
loader->trans_delta.x,
|
||||
loader->trans_delta.y );
|
||||
|
||||
/* copy the outline points in the loader's current */
|
||||
/* extra points which are used to keep original glyph coordinates */
|
||||
error = FT_GLYPHLOADER_CHECK_POINTS( gloader,
|
||||
slot->outline.n_points + 4,
|
||||
slot->outline.n_contours );
|
||||
if ( error )
|
||||
goto Exit;
|
||||
|
||||
FT_ARRAY_COPY( gloader->current.outline.points,
|
||||
slot->outline.points,
|
||||
slot->outline.n_points );
|
||||
|
||||
FT_ARRAY_COPY( gloader->current.outline.contours,
|
||||
slot->outline.contours,
|
||||
slot->outline.n_contours );
|
||||
|
||||
FT_ARRAY_COPY( gloader->current.outline.tags,
|
||||
slot->outline.tags,
|
||||
slot->outline.n_points );
|
||||
|
||||
gloader->current.outline.n_points = slot->outline.n_points;
|
||||
gloader->current.outline.n_contours = slot->outline.n_contours;
|
||||
|
||||
/* compute original horizontal phantom points (and ignore */
|
||||
/* vertical ones) */
|
||||
loader->pp1.x = hints->x_delta;
|
||||
loader->pp1.y = hints->y_delta;
|
||||
loader->pp2.x = FT_MulFix( slot->metrics.horiAdvance,
|
||||
hints->x_scale ) + hints->x_delta;
|
||||
loader->pp2.y = hints->y_delta;
|
||||
|
||||
/* be sure to check for spacing glyphs */
|
||||
if ( slot->outline.n_points == 0 )
|
||||
goto Hint_Metrics;
|
||||
|
||||
/* now load the slot image into the auto-outline and run the */
|
||||
/* automatic hinting process */
|
||||
if ( metrics->clazz->script_hints_apply )
|
||||
metrics->clazz->script_hints_apply( hints,
|
||||
&gloader->current.outline,
|
||||
metrics );
|
||||
|
||||
/* we now need to adjust the metrics according to the change in */
|
||||
/* width/positioning that occurred during the hinting process */
|
||||
if ( scaler->render_mode != FT_RENDER_MODE_LIGHT )
|
||||
{
|
||||
FT_Pos old_rsb, old_lsb, new_lsb;
|
||||
FT_Pos pp1x_uh, pp2x_uh;
|
||||
AF_AxisHints axis = &hints->axis[AF_DIMENSION_HORZ];
|
||||
AF_Edge edge1 = axis->edges; /* leftmost edge */
|
||||
AF_Edge edge2 = edge1 +
|
||||
axis->num_edges - 1; /* rightmost edge */
|
||||
|
||||
|
||||
if ( axis->num_edges > 1 && AF_HINTS_DO_ADVANCE( hints ) )
|
||||
{
|
||||
old_rsb = loader->pp2.x - edge2->opos;
|
||||
old_lsb = edge1->opos;
|
||||
new_lsb = edge1->pos;
|
||||
|
||||
/* remember unhinted values to later account */
|
||||
/* for rounding errors */
|
||||
|
||||
pp1x_uh = new_lsb - old_lsb;
|
||||
pp2x_uh = edge2->pos + old_rsb;
|
||||
|
||||
/* prefer too much space over too little space */
|
||||
/* for very small sizes */
|
||||
|
||||
if ( old_lsb < 24 )
|
||||
pp1x_uh -= 8;
|
||||
|
||||
if ( old_rsb < 24 )
|
||||
pp2x_uh += 8;
|
||||
|
||||
loader->pp1.x = FT_PIX_ROUND( pp1x_uh );
|
||||
loader->pp2.x = FT_PIX_ROUND( pp2x_uh );
|
||||
|
||||
if ( loader->pp1.x >= new_lsb && old_lsb > 0 )
|
||||
loader->pp1.x -= 64;
|
||||
|
||||
if ( loader->pp2.x <= edge2->pos && old_rsb > 0 )
|
||||
loader->pp2.x += 64;
|
||||
|
||||
slot->lsb_delta = loader->pp1.x - pp1x_uh;
|
||||
slot->rsb_delta = loader->pp2.x - pp2x_uh;
|
||||
}
|
||||
else
|
||||
{
|
||||
FT_Pos pp1x = loader->pp1.x;
|
||||
FT_Pos pp2x = loader->pp2.x;
|
||||
|
||||
|
||||
loader->pp1.x = FT_PIX_ROUND( pp1x );
|
||||
loader->pp2.x = FT_PIX_ROUND( pp2x );
|
||||
|
||||
slot->lsb_delta = loader->pp1.x - pp1x;
|
||||
slot->rsb_delta = loader->pp2.x - pp2x;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
FT_Pos pp1x = loader->pp1.x;
|
||||
FT_Pos pp2x = loader->pp2.x;
|
||||
|
||||
|
||||
loader->pp1.x = FT_PIX_ROUND( pp1x + hints->xmin_delta );
|
||||
loader->pp2.x = FT_PIX_ROUND( pp2x + hints->xmax_delta );
|
||||
|
||||
slot->lsb_delta = loader->pp1.x - pp1x;
|
||||
slot->rsb_delta = loader->pp2.x - pp2x;
|
||||
}
|
||||
|
||||
/* good, we simply add the glyph to our loader's base */
|
||||
FT_GlyphLoader_Add( gloader );
|
||||
break;
|
||||
|
||||
case FT_GLYPH_FORMAT_COMPOSITE:
|
||||
{
|
||||
FT_UInt nn, num_subglyphs = slot->num_subglyphs;
|
||||
FT_UInt num_base_subgs, start_point;
|
||||
FT_SubGlyph subglyph;
|
||||
|
||||
|
||||
start_point = gloader->base.outline.n_points;
|
||||
|
||||
/* first of all, copy the subglyph descriptors in the glyph loader */
|
||||
error = FT_GlyphLoader_CheckSubGlyphs( gloader, num_subglyphs );
|
||||
if ( error )
|
||||
goto Exit;
|
||||
|
||||
FT_ARRAY_COPY( gloader->current.subglyphs,
|
||||
slot->subglyphs,
|
||||
num_subglyphs );
|
||||
|
||||
gloader->current.num_subglyphs = num_subglyphs;
|
||||
num_base_subgs = gloader->base.num_subglyphs;
|
||||
|
||||
/* now read each subglyph independently */
|
||||
for ( nn = 0; nn < num_subglyphs; nn++ )
|
||||
{
|
||||
FT_Vector pp1, pp2;
|
||||
FT_Pos x, y;
|
||||
FT_UInt num_points, num_new_points, num_base_points;
|
||||
|
||||
|
||||
/* gloader.current.subglyphs can change during glyph loading due */
|
||||
/* to re-allocation -- we must recompute the current subglyph on */
|
||||
/* each iteration */
|
||||
subglyph = gloader->base.subglyphs + num_base_subgs + nn;
|
||||
|
||||
pp1 = loader->pp1;
|
||||
pp2 = loader->pp2;
|
||||
|
||||
num_base_points = gloader->base.outline.n_points;
|
||||
|
||||
error = af_loader_load_g( loader, scaler, subglyph->index,
|
||||
load_flags, depth + 1 );
|
||||
if ( error )
|
||||
goto Exit;
|
||||
|
||||
/* recompute subglyph pointer */
|
||||
subglyph = gloader->base.subglyphs + num_base_subgs + nn;
|
||||
|
||||
if ( subglyph->flags & FT_SUBGLYPH_FLAG_USE_MY_METRICS )
|
||||
{
|
||||
pp1 = loader->pp1;
|
||||
pp2 = loader->pp2;
|
||||
}
|
||||
else
|
||||
{
|
||||
loader->pp1 = pp1;
|
||||
loader->pp2 = pp2;
|
||||
}
|
||||
|
||||
num_points = gloader->base.outline.n_points;
|
||||
num_new_points = num_points - num_base_points;
|
||||
|
||||
/* now perform the transformation required for this subglyph */
|
||||
|
||||
if ( subglyph->flags & ( FT_SUBGLYPH_FLAG_SCALE |
|
||||
FT_SUBGLYPH_FLAG_XY_SCALE |
|
||||
FT_SUBGLYPH_FLAG_2X2 ) )
|
||||
{
|
||||
FT_Vector* cur = gloader->base.outline.points +
|
||||
num_base_points;
|
||||
FT_Vector* limit = cur + num_new_points;
|
||||
|
||||
|
||||
for ( ; cur < limit; cur++ )
|
||||
FT_Vector_Transform( cur, &subglyph->transform );
|
||||
}
|
||||
|
||||
/* apply offset */
|
||||
|
||||
if ( !( subglyph->flags & FT_SUBGLYPH_FLAG_ARGS_ARE_XY_VALUES ) )
|
||||
{
|
||||
FT_Int k = subglyph->arg1;
|
||||
FT_UInt l = subglyph->arg2;
|
||||
FT_Vector* p1;
|
||||
FT_Vector* p2;
|
||||
|
||||
|
||||
if ( start_point + k >= num_base_points ||
|
||||
l >= (FT_UInt)num_new_points )
|
||||
{
|
||||
error = FT_THROW( Invalid_Composite );
|
||||
goto Exit;
|
||||
}
|
||||
|
||||
l += num_base_points;
|
||||
|
||||
/* for now, only use the current point coordinates; */
|
||||
/* we eventually may consider another approach */
|
||||
p1 = gloader->base.outline.points + start_point + k;
|
||||
p2 = gloader->base.outline.points + start_point + l;
|
||||
|
||||
x = p1->x - p2->x;
|
||||
y = p1->y - p2->y;
|
||||
}
|
||||
else
|
||||
{
|
||||
x = FT_MulFix( subglyph->arg1, hints->x_scale ) + hints->x_delta;
|
||||
y = FT_MulFix( subglyph->arg2, hints->y_scale ) + hints->y_delta;
|
||||
|
||||
x = FT_PIX_ROUND( x );
|
||||
y = FT_PIX_ROUND( y );
|
||||
}
|
||||
|
||||
{
|
||||
FT_Outline dummy = gloader->base.outline;
|
||||
|
||||
|
||||
dummy.points += num_base_points;
|
||||
dummy.n_points = (short)num_new_points;
|
||||
|
||||
FT_Outline_Translate( &dummy, x, y );
|
||||
}
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
/* we don't support other formats (yet?) */
|
||||
error = FT_THROW( Unimplemented_Feature );
|
||||
}
|
||||
|
||||
Hint_Metrics:
|
||||
if ( depth == 0 )
|
||||
{
|
||||
FT_BBox bbox;
|
||||
FT_Vector vvector;
|
||||
|
||||
|
||||
vvector.x = slot->metrics.vertBearingX - slot->metrics.horiBearingX;
|
||||
vvector.y = slot->metrics.vertBearingY - slot->metrics.horiBearingY;
|
||||
vvector.x = FT_MulFix( vvector.x, metrics->scaler.x_scale );
|
||||
vvector.y = FT_MulFix( vvector.y, metrics->scaler.y_scale );
|
||||
|
||||
/* transform the hinted outline if needed */
|
||||
if ( loader->transformed )
|
||||
{
|
||||
FT_Outline_Transform( &gloader->base.outline, &loader->trans_matrix );
|
||||
FT_Vector_Transform( &vvector, &loader->trans_matrix );
|
||||
}
|
||||
#if 1
|
||||
/* we must translate our final outline by -pp1.x and compute */
|
||||
/* the new metrics */
|
||||
if ( loader->pp1.x )
|
||||
FT_Outline_Translate( &gloader->base.outline, -loader->pp1.x, 0 );
|
||||
#endif
|
||||
FT_Outline_Get_CBox( &gloader->base.outline, &bbox );
|
||||
|
||||
bbox.xMin = FT_PIX_FLOOR( bbox.xMin );
|
||||
bbox.yMin = FT_PIX_FLOOR( bbox.yMin );
|
||||
bbox.xMax = FT_PIX_CEIL( bbox.xMax );
|
||||
bbox.yMax = FT_PIX_CEIL( bbox.yMax );
|
||||
|
||||
slot->metrics.width = bbox.xMax - bbox.xMin;
|
||||
slot->metrics.height = bbox.yMax - bbox.yMin;
|
||||
slot->metrics.horiBearingX = bbox.xMin;
|
||||
slot->metrics.horiBearingY = bbox.yMax;
|
||||
|
||||
slot->metrics.vertBearingX = FT_PIX_FLOOR( bbox.xMin + vvector.x );
|
||||
slot->metrics.vertBearingY = FT_PIX_FLOOR( bbox.yMax + vvector.y );
|
||||
|
||||
/* for mono-width fonts (like Andale, Courier, etc.) we need */
|
||||
/* to keep the original rounded advance width; ditto for */
|
||||
/* digits if all have the same advance width */
|
||||
#if 0
|
||||
if ( !FT_IS_FIXED_WIDTH( slot->face ) )
|
||||
slot->metrics.horiAdvance = loader->pp2.x - loader->pp1.x;
|
||||
else
|
||||
slot->metrics.horiAdvance = FT_MulFix( slot->metrics.horiAdvance,
|
||||
x_scale );
|
||||
#else
|
||||
if ( scaler->render_mode != FT_RENDER_MODE_LIGHT &&
|
||||
( FT_IS_FIXED_WIDTH( slot->face ) ||
|
||||
( af_face_globals_is_digit( loader->globals, glyph_index ) &&
|
||||
metrics->digits_have_same_width ) ) )
|
||||
{
|
||||
slot->metrics.horiAdvance = FT_MulFix( slot->metrics.horiAdvance,
|
||||
metrics->scaler.x_scale );
|
||||
|
||||
/* Set delta values to 0. Otherwise code that uses them is */
|
||||
/* going to ruin the fixed advance width. */
|
||||
slot->lsb_delta = 0;
|
||||
slot->rsb_delta = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* non-spacing glyphs must stay as-is */
|
||||
if ( slot->metrics.horiAdvance )
|
||||
slot->metrics.horiAdvance = loader->pp2.x - loader->pp1.x;
|
||||
}
|
||||
#endif
|
||||
|
||||
slot->metrics.vertAdvance = FT_MulFix( slot->metrics.vertAdvance,
|
||||
metrics->scaler.y_scale );
|
||||
|
||||
slot->metrics.horiAdvance = FT_PIX_ROUND( slot->metrics.horiAdvance );
|
||||
slot->metrics.vertAdvance = FT_PIX_ROUND( slot->metrics.vertAdvance );
|
||||
|
||||
/* now copy outline into glyph slot */
|
||||
FT_GlyphLoader_Rewind( internal->loader );
|
||||
error = FT_GlyphLoader_CopyPoints( internal->loader, gloader );
|
||||
if ( error )
|
||||
goto Exit;
|
||||
|
||||
/* reassign all outline fields except flags to protect them */
|
||||
slot->outline.n_contours = internal->loader->base.outline.n_contours;
|
||||
slot->outline.n_points = internal->loader->base.outline.n_points;
|
||||
slot->outline.points = internal->loader->base.outline.points;
|
||||
slot->outline.tags = internal->loader->base.outline.tags;
|
||||
slot->outline.contours = internal->loader->base.outline.contours;
|
||||
|
||||
slot->format = FT_GLYPH_FORMAT_OUTLINE;
|
||||
}
|
||||
|
||||
Exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
|
||||
/* Load a glyph. */
|
||||
|
||||
FT_LOCAL_DEF( FT_Error )
|
||||
af_loader_load_glyph( AF_Module module,
|
||||
FT_Face face,
|
||||
FT_UInt gindex,
|
||||
FT_Int32 load_flags )
|
||||
{
|
||||
FT_Error error;
|
||||
FT_Size size = face->size;
|
||||
AF_Loader loader = module->loader;
|
||||
AF_ScalerRec scaler;
|
||||
|
||||
|
||||
if ( !size )
|
||||
return FT_THROW( Invalid_Argument );
|
||||
|
||||
FT_ZERO( &scaler );
|
||||
|
||||
scaler.face = face;
|
||||
scaler.x_scale = size->metrics.x_scale;
|
||||
scaler.x_delta = 0; /* XXX: TODO: add support for sub-pixel hinting */
|
||||
scaler.y_scale = size->metrics.y_scale;
|
||||
scaler.y_delta = 0; /* XXX: TODO: add support for sub-pixel hinting */
|
||||
|
||||
scaler.render_mode = FT_LOAD_TARGET_MODE( load_flags );
|
||||
scaler.flags = 0; /* XXX: fix this */
|
||||
|
||||
error = af_loader_reset( module, face );
|
||||
if ( !error )
|
||||
{
|
||||
AF_ScriptMetrics metrics;
|
||||
FT_UInt options = 0;
|
||||
|
||||
|
||||
#ifdef FT_OPTION_AUTOFIT2
|
||||
/* XXX: undocumented hook to activate the latin2 hinter */
|
||||
if ( load_flags & ( 1UL << 20 ) )
|
||||
options = 2;
|
||||
#endif
|
||||
|
||||
error = af_face_globals_get_metrics( loader->globals, gindex,
|
||||
options, &metrics );
|
||||
if ( !error )
|
||||
{
|
||||
loader->metrics = metrics;
|
||||
|
||||
if ( metrics->clazz->script_metrics_scale )
|
||||
metrics->clazz->script_metrics_scale( metrics, &scaler );
|
||||
else
|
||||
metrics->scaler = scaler;
|
||||
|
||||
load_flags |= FT_LOAD_NO_SCALE | FT_LOAD_IGNORE_TRANSFORM;
|
||||
load_flags &= ~FT_LOAD_RENDER;
|
||||
|
||||
if ( metrics->clazz->script_hints_init )
|
||||
{
|
||||
error = metrics->clazz->script_hints_init( &loader->hints,
|
||||
metrics );
|
||||
if ( error )
|
||||
goto Exit;
|
||||
}
|
||||
|
||||
error = af_loader_load_g( loader, &scaler, gindex, load_flags, 0 );
|
||||
}
|
||||
}
|
||||
Exit:
|
||||
return error;
|
||||
}
|
||||
|
||||
|
||||
/* END */
|
||||
@@ -1,264 +0,0 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* afmodule.c */
|
||||
/* */
|
||||
/* Auto-fitter module implementation (body). */
|
||||
/* */
|
||||
/* Copyright 2003-2006, 2009, 2011-2013 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
#include "afglobal.h"
|
||||
#include "afmodule.h"
|
||||
#include "afloader.h"
|
||||
#include "aferrors.h"
|
||||
#include "afpic.h"
|
||||
|
||||
#ifdef FT_DEBUG_AUTOFIT
|
||||
int _af_debug_disable_horz_hints;
|
||||
int _af_debug_disable_vert_hints;
|
||||
int _af_debug_disable_blue_hints;
|
||||
void* _af_debug_hints;
|
||||
#endif
|
||||
|
||||
#include FT_INTERNAL_OBJECTS_H
|
||||
#include FT_INTERNAL_DEBUG_H
|
||||
#include FT_AUTOHINTER_H
|
||||
#include FT_SERVICE_PROPERTIES_H
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* The macro FT_COMPONENT is used in trace mode. It is an implicit */
|
||||
/* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log */
|
||||
/* messages during execution. */
|
||||
/* */
|
||||
#undef FT_COMPONENT
|
||||
#define FT_COMPONENT trace_afmodule
|
||||
|
||||
|
||||
FT_Error
|
||||
af_property_get_face_globals( FT_Face face,
|
||||
AF_FaceGlobals* aglobals,
|
||||
AF_Module module )
|
||||
{
|
||||
FT_Error error = FT_Err_Ok;
|
||||
AF_FaceGlobals globals;
|
||||
|
||||
|
||||
if ( !face )
|
||||
return FT_THROW( Invalid_Argument );
|
||||
|
||||
globals = (AF_FaceGlobals)face->autohint.data;
|
||||
if ( !globals )
|
||||
{
|
||||
/* trigger computation of the global script data */
|
||||
/* in case it hasn't been done yet */
|
||||
error = af_face_globals_new( face, &globals, module );
|
||||
if ( !error )
|
||||
{
|
||||
face->autohint.data =
|
||||
(FT_Pointer)globals;
|
||||
face->autohint.finalizer =
|
||||
(FT_Generic_Finalizer)af_face_globals_free;
|
||||
}
|
||||
}
|
||||
|
||||
if ( !error )
|
||||
*aglobals = globals;
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
|
||||
FT_Error
|
||||
af_property_set( FT_Module ft_module,
|
||||
const char* property_name,
|
||||
const void* value )
|
||||
{
|
||||
FT_Error error = FT_Err_Ok;
|
||||
AF_Module module = (AF_Module)ft_module;
|
||||
|
||||
|
||||
if ( !ft_strcmp( property_name, "fallback-script" ) )
|
||||
{
|
||||
FT_UInt* fallback_script = (FT_UInt*)value;
|
||||
|
||||
|
||||
module->fallback_script = *fallback_script;
|
||||
|
||||
return error;
|
||||
}
|
||||
else if ( !ft_strcmp( property_name, "increase-x-height" ) )
|
||||
{
|
||||
FT_Prop_IncreaseXHeight* prop = (FT_Prop_IncreaseXHeight*)value;
|
||||
AF_FaceGlobals globals;
|
||||
|
||||
|
||||
error = af_property_get_face_globals( prop->face, &globals, module );
|
||||
if ( !error )
|
||||
globals->increase_x_height = prop->limit;
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
FT_TRACE0(( "af_property_set: missing property `%s'\n",
|
||||
property_name ));
|
||||
return FT_THROW( Missing_Property );
|
||||
}
|
||||
|
||||
|
||||
FT_Error
|
||||
af_property_get( FT_Module ft_module,
|
||||
const char* property_name,
|
||||
void* value )
|
||||
{
|
||||
FT_Error error = FT_Err_Ok;
|
||||
AF_Module module = (AF_Module)ft_module;
|
||||
FT_UInt fallback_script = module->fallback_script;
|
||||
|
||||
|
||||
if ( !ft_strcmp( property_name, "glyph-to-script-map" ) )
|
||||
{
|
||||
FT_Prop_GlyphToScriptMap* prop = (FT_Prop_GlyphToScriptMap*)value;
|
||||
AF_FaceGlobals globals;
|
||||
|
||||
|
||||
error = af_property_get_face_globals( prop->face, &globals, module );
|
||||
if ( !error )
|
||||
prop->map = globals->glyph_scripts;
|
||||
|
||||
return error;
|
||||
}
|
||||
else if ( !ft_strcmp( property_name, "fallback-script" ) )
|
||||
{
|
||||
FT_UInt* val = (FT_UInt*)value;
|
||||
|
||||
|
||||
*val = fallback_script;
|
||||
|
||||
return error;
|
||||
}
|
||||
else if ( !ft_strcmp( property_name, "increase-x-height" ) )
|
||||
{
|
||||
FT_Prop_IncreaseXHeight* prop = (FT_Prop_IncreaseXHeight*)value;
|
||||
AF_FaceGlobals globals;
|
||||
|
||||
|
||||
error = af_property_get_face_globals( prop->face, &globals, module );
|
||||
if ( !error )
|
||||
prop->limit = globals->increase_x_height;
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
|
||||
FT_TRACE0(( "af_property_get: missing property `%s'\n",
|
||||
property_name ));
|
||||
return FT_THROW( Missing_Property );
|
||||
}
|
||||
|
||||
|
||||
FT_DEFINE_SERVICE_PROPERTIESREC(
|
||||
af_service_properties,
|
||||
(FT_Properties_SetFunc)af_property_set,
|
||||
(FT_Properties_GetFunc)af_property_get )
|
||||
|
||||
|
||||
FT_DEFINE_SERVICEDESCREC1(
|
||||
af_services,
|
||||
FT_SERVICE_ID_PROPERTIES, &AF_SERVICE_PROPERTIES_GET )
|
||||
|
||||
|
||||
FT_CALLBACK_DEF( FT_Module_Interface )
|
||||
af_get_interface( FT_Module module,
|
||||
const char* module_interface )
|
||||
{
|
||||
/* AF_SERVICES_GET derefers `library' in PIC mode */
|
||||
#ifdef FT_CONFIG_OPTION_PIC
|
||||
FT_Library library;
|
||||
|
||||
|
||||
if ( !module )
|
||||
return NULL;
|
||||
library = module->library;
|
||||
if ( !library )
|
||||
return NULL;
|
||||
#else
|
||||
FT_UNUSED( module );
|
||||
#endif
|
||||
|
||||
return ft_service_list_lookup( AF_SERVICES_GET, module_interface );
|
||||
}
|
||||
|
||||
|
||||
FT_CALLBACK_DEF( FT_Error )
|
||||
af_autofitter_init( FT_Module ft_module ) /* AF_Module */
|
||||
{
|
||||
AF_Module module = (AF_Module)ft_module;
|
||||
|
||||
|
||||
module->fallback_script = AF_SCRIPT_FALLBACK;
|
||||
|
||||
return af_loader_init( module );
|
||||
}
|
||||
|
||||
|
||||
FT_CALLBACK_DEF( void )
|
||||
af_autofitter_done( FT_Module ft_module ) /* AF_Module */
|
||||
{
|
||||
AF_Module module = (AF_Module)ft_module;
|
||||
|
||||
|
||||
af_loader_done( module );
|
||||
}
|
||||
|
||||
|
||||
FT_CALLBACK_DEF( FT_Error )
|
||||
af_autofitter_load_glyph( AF_Module module,
|
||||
FT_GlyphSlot slot,
|
||||
FT_Size size,
|
||||
FT_UInt glyph_index,
|
||||
FT_Int32 load_flags )
|
||||
{
|
||||
FT_UNUSED( size );
|
||||
|
||||
return af_loader_load_glyph( module, slot->face,
|
||||
glyph_index, load_flags );
|
||||
}
|
||||
|
||||
|
||||
FT_DEFINE_AUTOHINTER_INTERFACE(
|
||||
af_autofitter_interface,
|
||||
NULL, /* reset_face */
|
||||
NULL, /* get_global_hints */
|
||||
NULL, /* done_global_hints */
|
||||
(FT_AutoHinter_GlyphLoadFunc)af_autofitter_load_glyph ) /* load_glyph */
|
||||
|
||||
|
||||
FT_DEFINE_MODULE(
|
||||
autofit_module_class,
|
||||
|
||||
FT_MODULE_HINTER,
|
||||
sizeof ( AF_ModuleRec ),
|
||||
|
||||
"autofitter",
|
||||
0x10000L, /* version 1.0 of the autofitter */
|
||||
0x20000L, /* requires FreeType 2.0 or above */
|
||||
|
||||
(const void*)&AF_INTERFACE_GET,
|
||||
|
||||
(FT_Module_Constructor)af_autofitter_init,
|
||||
(FT_Module_Destructor) af_autofitter_done,
|
||||
(FT_Module_Requester) af_get_interface )
|
||||
|
||||
|
||||
/* END */
|
||||
@@ -1,378 +0,0 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* aftypes.h */
|
||||
/* */
|
||||
/* Auto-fitter types (specification only). */
|
||||
/* */
|
||||
/* Copyright 2003-2009, 2011-2012 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************
|
||||
*
|
||||
* The auto-fitter is a complete rewrite of the old auto-hinter.
|
||||
* Its main feature is the ability to differentiate between different
|
||||
* scripts in order to apply language-specific rules.
|
||||
*
|
||||
* The code has also been compartmentized into several entities that
|
||||
* should make algorithmic experimentation easier than with the old
|
||||
* code.
|
||||
*
|
||||
* Finally, we get rid of the Catharon license, since this code is
|
||||
* released under the FreeType one.
|
||||
*
|
||||
*************************************************************************/
|
||||
|
||||
|
||||
#ifndef __AFTYPES_H__
|
||||
#define __AFTYPES_H__
|
||||
|
||||
#include <ft2build.h>
|
||||
|
||||
#include FT_FREETYPE_H
|
||||
#include FT_OUTLINE_H
|
||||
#include FT_INTERNAL_OBJECTS_H
|
||||
#include FT_INTERNAL_DEBUG_H
|
||||
|
||||
|
||||
FT_BEGIN_HEADER
|
||||
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
/***** *****/
|
||||
/***** D E B U G G I N G *****/
|
||||
/***** *****/
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
|
||||
#ifdef FT_DEBUG_AUTOFIT
|
||||
|
||||
#include FT_CONFIG_STANDARD_LIBRARY_H
|
||||
|
||||
extern int _af_debug_disable_horz_hints;
|
||||
extern int _af_debug_disable_vert_hints;
|
||||
extern int _af_debug_disable_blue_hints;
|
||||
extern void* _af_debug_hints;
|
||||
|
||||
#endif /* FT_DEBUG_AUTOFIT */
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
/***** *****/
|
||||
/***** U T I L I T Y S T U F F *****/
|
||||
/***** *****/
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
|
||||
typedef struct AF_WidthRec_
|
||||
{
|
||||
FT_Pos org; /* original position/width in font units */
|
||||
FT_Pos cur; /* current/scaled position/width in device sub-pixels */
|
||||
FT_Pos fit; /* current/fitted position/width in device sub-pixels */
|
||||
|
||||
} AF_WidthRec, *AF_Width;
|
||||
|
||||
|
||||
FT_LOCAL( void )
|
||||
af_sort_pos( FT_UInt count,
|
||||
FT_Pos* table );
|
||||
|
||||
FT_LOCAL( void )
|
||||
af_sort_and_quantize_widths( FT_UInt* count,
|
||||
AF_Width widths,
|
||||
FT_Pos threshold );
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
/***** *****/
|
||||
/***** A N G L E T Y P E S *****/
|
||||
/***** *****/
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
|
||||
/*
|
||||
* The auto-fitter doesn't need a very high angular accuracy;
|
||||
* this allows us to speed up some computations considerably with a
|
||||
* light Cordic algorithm (see afangles.c).
|
||||
*/
|
||||
|
||||
typedef FT_Int AF_Angle;
|
||||
|
||||
|
||||
#define AF_ANGLE_PI 256
|
||||
#define AF_ANGLE_2PI ( AF_ANGLE_PI * 2 )
|
||||
#define AF_ANGLE_PI2 ( AF_ANGLE_PI / 2 )
|
||||
#define AF_ANGLE_PI4 ( AF_ANGLE_PI / 4 )
|
||||
|
||||
|
||||
#if 0
|
||||
/*
|
||||
* compute the angle of a given 2-D vector
|
||||
*/
|
||||
FT_LOCAL( AF_Angle )
|
||||
af_angle_atan( FT_Pos dx,
|
||||
FT_Pos dy );
|
||||
|
||||
|
||||
/*
|
||||
* compute `angle2 - angle1'; the result is always within
|
||||
* the range [-AF_ANGLE_PI .. AF_ANGLE_PI - 1]
|
||||
*/
|
||||
FT_LOCAL( AF_Angle )
|
||||
af_angle_diff( AF_Angle angle1,
|
||||
AF_Angle angle2 );
|
||||
#endif /* 0 */
|
||||
|
||||
|
||||
#define AF_ANGLE_DIFF( result, angle1, angle2 ) \
|
||||
FT_BEGIN_STMNT \
|
||||
AF_Angle _delta = (angle2) - (angle1); \
|
||||
\
|
||||
\
|
||||
_delta %= AF_ANGLE_2PI; \
|
||||
if ( _delta < 0 ) \
|
||||
_delta += AF_ANGLE_2PI; \
|
||||
\
|
||||
if ( _delta > AF_ANGLE_PI ) \
|
||||
_delta -= AF_ANGLE_2PI; \
|
||||
\
|
||||
result = _delta; \
|
||||
FT_END_STMNT
|
||||
|
||||
|
||||
/* opaque handle to glyph-specific hints -- see `afhints.h' for more
|
||||
* details
|
||||
*/
|
||||
typedef struct AF_GlyphHintsRec_* AF_GlyphHints;
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
/***** *****/
|
||||
/***** S C A L E R S *****/
|
||||
/***** *****/
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
|
||||
/*
|
||||
* A scaler models the target pixel device that will receive the
|
||||
* auto-hinted glyph image.
|
||||
*/
|
||||
|
||||
typedef enum AF_ScalerFlags_
|
||||
{
|
||||
AF_SCALER_FLAG_NO_HORIZONTAL = 1, /* disable horizontal hinting */
|
||||
AF_SCALER_FLAG_NO_VERTICAL = 2, /* disable vertical hinting */
|
||||
AF_SCALER_FLAG_NO_ADVANCE = 4 /* disable advance hinting */
|
||||
|
||||
} AF_ScalerFlags;
|
||||
|
||||
|
||||
typedef struct AF_ScalerRec_
|
||||
{
|
||||
FT_Face face; /* source font face */
|
||||
FT_Fixed x_scale; /* from font units to 1/64th device pixels */
|
||||
FT_Fixed y_scale; /* from font units to 1/64th device pixels */
|
||||
FT_Pos x_delta; /* in 1/64th device pixels */
|
||||
FT_Pos y_delta; /* in 1/64th device pixels */
|
||||
FT_Render_Mode render_mode; /* monochrome, anti-aliased, LCD, etc. */
|
||||
FT_UInt32 flags; /* additional control flags, see above */
|
||||
|
||||
} AF_ScalerRec, *AF_Scaler;
|
||||
|
||||
|
||||
#define AF_SCALER_EQUAL_SCALES( a, b ) \
|
||||
( (a)->x_scale == (b)->x_scale && \
|
||||
(a)->y_scale == (b)->y_scale && \
|
||||
(a)->x_delta == (b)->x_delta && \
|
||||
(a)->y_delta == (b)->y_delta )
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
/***** *****/
|
||||
/***** S C R I P T S *****/
|
||||
/***** *****/
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
|
||||
/*
|
||||
* The list of known scripts. Each different script corresponds to the
|
||||
* following information:
|
||||
*
|
||||
* - A set of Unicode ranges to test whether the face supports the
|
||||
* script.
|
||||
*
|
||||
* - A specific global analyzer that will compute global metrics
|
||||
* specific to the script.
|
||||
*
|
||||
* - A specific glyph analyzer that will compute segments and
|
||||
* edges for each glyph covered by the script.
|
||||
*
|
||||
* - A specific grid-fitting algorithm that will distort the
|
||||
* scaled glyph outline according to the results of the glyph
|
||||
* analyzer.
|
||||
*
|
||||
* Note that a given analyzer and/or grid-fitting algorithm can be
|
||||
* used by more than one script.
|
||||
*/
|
||||
|
||||
typedef enum AF_Script_
|
||||
{
|
||||
AF_SCRIPT_DUMMY = 0,
|
||||
AF_SCRIPT_LATIN = 1,
|
||||
AF_SCRIPT_CJK = 2,
|
||||
AF_SCRIPT_INDIC = 3,
|
||||
#ifdef FT_OPTION_AUTOFIT2
|
||||
AF_SCRIPT_LATIN2 = 4,
|
||||
#endif
|
||||
|
||||
/* add new scripts here. Don't forget to update the list in */
|
||||
/* `afglobal.c'. */
|
||||
|
||||
AF_SCRIPT_MAX /* do not remove */
|
||||
|
||||
} AF_Script;
|
||||
|
||||
|
||||
typedef struct AF_ScriptClassRec_ const* AF_ScriptClass;
|
||||
typedef struct AF_FaceGlobalsRec_* AF_FaceGlobals;
|
||||
|
||||
typedef struct AF_ScriptMetricsRec_
|
||||
{
|
||||
AF_ScriptClass clazz;
|
||||
AF_ScalerRec scaler;
|
||||
FT_Bool digits_have_same_width;
|
||||
|
||||
AF_FaceGlobals globals; /* to access properties */
|
||||
|
||||
} AF_ScriptMetricsRec, *AF_ScriptMetrics;
|
||||
|
||||
|
||||
/* This function parses an FT_Face to compute global metrics for
|
||||
* a specific script.
|
||||
*/
|
||||
typedef FT_Error
|
||||
(*AF_Script_InitMetricsFunc)( AF_ScriptMetrics metrics,
|
||||
FT_Face face );
|
||||
|
||||
typedef void
|
||||
(*AF_Script_ScaleMetricsFunc)( AF_ScriptMetrics metrics,
|
||||
AF_Scaler scaler );
|
||||
|
||||
typedef void
|
||||
(*AF_Script_DoneMetricsFunc)( AF_ScriptMetrics metrics );
|
||||
|
||||
|
||||
typedef FT_Error
|
||||
(*AF_Script_InitHintsFunc)( AF_GlyphHints hints,
|
||||
AF_ScriptMetrics metrics );
|
||||
|
||||
typedef void
|
||||
(*AF_Script_ApplyHintsFunc)( AF_GlyphHints hints,
|
||||
FT_Outline* outline,
|
||||
AF_ScriptMetrics metrics );
|
||||
|
||||
|
||||
typedef struct AF_Script_UniRangeRec_
|
||||
{
|
||||
FT_UInt32 first;
|
||||
FT_UInt32 last;
|
||||
|
||||
} AF_Script_UniRangeRec;
|
||||
|
||||
#define AF_UNIRANGE_REC( a, b ) { (FT_UInt32)(a), (FT_UInt32)(b) }
|
||||
|
||||
typedef const AF_Script_UniRangeRec *AF_Script_UniRange;
|
||||
|
||||
|
||||
typedef struct AF_ScriptClassRec_
|
||||
{
|
||||
AF_Script script;
|
||||
AF_Script_UniRange script_uni_ranges; /* last must be { 0, 0 } */
|
||||
FT_UInt32 standard_char; /* for default width and height */
|
||||
|
||||
FT_Offset script_metrics_size;
|
||||
AF_Script_InitMetricsFunc script_metrics_init;
|
||||
AF_Script_ScaleMetricsFunc script_metrics_scale;
|
||||
AF_Script_DoneMetricsFunc script_metrics_done;
|
||||
|
||||
AF_Script_InitHintsFunc script_hints_init;
|
||||
AF_Script_ApplyHintsFunc script_hints_apply;
|
||||
|
||||
} AF_ScriptClassRec;
|
||||
|
||||
|
||||
/* Declare and define vtables for classes */
|
||||
#ifndef FT_CONFIG_OPTION_PIC
|
||||
|
||||
#define AF_DECLARE_SCRIPT_CLASS( script_class ) \
|
||||
FT_CALLBACK_TABLE const AF_ScriptClassRec \
|
||||
script_class;
|
||||
|
||||
#define AF_DEFINE_SCRIPT_CLASS( script_class, script_, ranges, def_char, \
|
||||
m_size, \
|
||||
m_init, m_scale, m_done, h_init, h_apply ) \
|
||||
FT_CALLBACK_TABLE_DEF const AF_ScriptClassRec script_class = \
|
||||
{ \
|
||||
script_, \
|
||||
ranges, \
|
||||
def_char, \
|
||||
\
|
||||
m_size, \
|
||||
\
|
||||
m_init, \
|
||||
m_scale, \
|
||||
m_done, \
|
||||
\
|
||||
h_init, \
|
||||
h_apply \
|
||||
};
|
||||
|
||||
#else /* FT_CONFIG_OPTION_PIC */
|
||||
|
||||
#define AF_DECLARE_SCRIPT_CLASS( script_class ) \
|
||||
FT_LOCAL( void ) \
|
||||
FT_Init_Class_ ## script_class( AF_ScriptClassRec* ac );
|
||||
|
||||
#define AF_DEFINE_SCRIPT_CLASS( script_class, script_, ranges, def_char, \
|
||||
m_size, \
|
||||
m_init, m_scale, m_done, h_init, h_apply ) \
|
||||
FT_LOCAL_DEF( void ) \
|
||||
FT_Init_Class_ ## script_class( AF_ScriptClassRec* ac ) \
|
||||
{ \
|
||||
ac->script = script_; \
|
||||
ac->script_uni_ranges = ranges; \
|
||||
ac->default_char = def_char; \
|
||||
\
|
||||
ac->script_metrics_size = m_size; \
|
||||
\
|
||||
ac->script_metrics_init = m_init; \
|
||||
ac->script_metrics_scale = m_scale; \
|
||||
ac->script_metrics_done = m_done; \
|
||||
\
|
||||
ac->script_hints_init = h_init; \
|
||||
ac->script_hints_apply = h_apply; \
|
||||
}
|
||||
|
||||
#endif /* FT_CONFIG_OPTION_PIC */
|
||||
|
||||
|
||||
/* */
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
#endif /* __AFTYPES_H__ */
|
||||
|
||||
|
||||
/* END */
|
||||
@@ -1,60 +0,0 @@
|
||||
# FreeType 2 src/base Jamfile
|
||||
#
|
||||
# Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
SubDir FT2_TOP $(FT2_SRC_DIR) base ;
|
||||
|
||||
|
||||
{
|
||||
local _sources ;
|
||||
|
||||
if $(FT2_MULTI)
|
||||
{
|
||||
_sources = ftadvanc ftcalc ftdbgmem ftgloadr
|
||||
ftobjs ftoutln ftrfork ftsnames
|
||||
ftstream fttrigon ftutil
|
||||
basepic ftpic
|
||||
;
|
||||
}
|
||||
else
|
||||
{
|
||||
_sources = ftbase ;
|
||||
}
|
||||
|
||||
Library $(FT2_LIB) : $(_sources).c ;
|
||||
}
|
||||
|
||||
# Add the optional/replaceable files.
|
||||
#
|
||||
{
|
||||
local _sources = bbox bdf bitmap debug gasp
|
||||
glyph gxval init lcdfil mm
|
||||
otval pfr stroke synth system
|
||||
type1 winfnt xf86 patent
|
||||
;
|
||||
|
||||
Library $(FT2_LIB) : ft$(_sources).c ;
|
||||
}
|
||||
|
||||
# Add Macintosh-specific file to the library when necessary.
|
||||
#
|
||||
if $(MAC)
|
||||
{
|
||||
Library $(FT2_LIB) : ftmac.c ;
|
||||
}
|
||||
else if $(OS) = MACOSX
|
||||
{
|
||||
if $(FT2_MULTI)
|
||||
{
|
||||
Library $(FT2_LIB) : ftmac.c ;
|
||||
}
|
||||
}
|
||||
|
||||
# end of src/base Jamfile
|
||||
@@ -1,974 +0,0 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftcalc.c */
|
||||
/* */
|
||||
/* Arithmetic computations (body). */
|
||||
/* */
|
||||
/* Copyright 1996-2006, 2008, 2012-2013 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Support for 1-complement arithmetic has been totally dropped in this */
|
||||
/* release. You can still write your own code if you need it. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Implementing basic computation routines. */
|
||||
/* */
|
||||
/* FT_MulDiv(), FT_MulFix(), FT_DivFix(), FT_RoundFix(), FT_CeilFix(), */
|
||||
/* and FT_FloorFix() are declared in freetype.h. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_GLYPH_H
|
||||
#include FT_TRIGONOMETRY_H
|
||||
#include FT_INTERNAL_CALC_H
|
||||
#include FT_INTERNAL_DEBUG_H
|
||||
#include FT_INTERNAL_OBJECTS_H
|
||||
|
||||
#ifdef FT_MULFIX_INLINED
|
||||
#undef FT_MulFix
|
||||
#endif
|
||||
|
||||
/* we need to emulate a 64-bit data type if a real one isn't available */
|
||||
|
||||
#ifndef FT_LONG64
|
||||
|
||||
typedef struct FT_Int64_
|
||||
{
|
||||
FT_UInt32 lo;
|
||||
FT_UInt32 hi;
|
||||
|
||||
} FT_Int64;
|
||||
|
||||
#endif /* !FT_LONG64 */
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* The macro FT_COMPONENT is used in trace mode. It is an implicit */
|
||||
/* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log */
|
||||
/* messages during execution. */
|
||||
/* */
|
||||
#undef FT_COMPONENT
|
||||
#define FT_COMPONENT trace_calc
|
||||
|
||||
|
||||
/* The following three functions are available regardless of whether */
|
||||
/* FT_LONG64 is defined. */
|
||||
|
||||
/* documentation is in freetype.h */
|
||||
|
||||
FT_EXPORT_DEF( FT_Fixed )
|
||||
FT_RoundFix( FT_Fixed a )
|
||||
{
|
||||
return ( a >= 0 ) ? ( a + 0x8000L ) & ~0xFFFFL
|
||||
: -((-a + 0x8000L ) & ~0xFFFFL );
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in freetype.h */
|
||||
|
||||
FT_EXPORT_DEF( FT_Fixed )
|
||||
FT_CeilFix( FT_Fixed a )
|
||||
{
|
||||
return ( a >= 0 ) ? ( a + 0xFFFFL ) & ~0xFFFFL
|
||||
: -((-a + 0xFFFFL ) & ~0xFFFFL );
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in freetype.h */
|
||||
|
||||
FT_EXPORT_DEF( FT_Fixed )
|
||||
FT_FloorFix( FT_Fixed a )
|
||||
{
|
||||
return ( a >= 0 ) ? a & ~0xFFFFL
|
||||
: -((-a) & ~0xFFFFL );
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF ( FT_Int )
|
||||
FT_MSB( FT_UInt32 z )
|
||||
{
|
||||
FT_Int shift = 0;
|
||||
|
||||
/* determine msb bit index in `shift' */
|
||||
if ( z >= ( 1L << 16 ) )
|
||||
{
|
||||
z >>= 16;
|
||||
shift += 16;
|
||||
}
|
||||
if ( z >= ( 1L << 8 ) )
|
||||
{
|
||||
z >>= 8;
|
||||
shift += 8;
|
||||
}
|
||||
if ( z >= ( 1L << 4 ) )
|
||||
{
|
||||
z >>= 4;
|
||||
shift += 4;
|
||||
}
|
||||
if ( z >= ( 1L << 2 ) )
|
||||
{
|
||||
z >>= 2;
|
||||
shift += 2;
|
||||
}
|
||||
if ( z >= ( 1L << 1 ) )
|
||||
{
|
||||
z >>= 1;
|
||||
shift += 1;
|
||||
}
|
||||
|
||||
return shift;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftcalc.h */
|
||||
|
||||
FT_BASE_DEF( FT_Fixed )
|
||||
FT_Hypot( FT_Fixed x,
|
||||
FT_Fixed y )
|
||||
{
|
||||
FT_Vector v;
|
||||
|
||||
|
||||
v.x = x;
|
||||
v.y = y;
|
||||
|
||||
return FT_Vector_Length( &v );
|
||||
}
|
||||
|
||||
|
||||
#ifdef FT_LONG64
|
||||
|
||||
|
||||
/* documentation is in freetype.h */
|
||||
|
||||
FT_EXPORT_DEF( FT_Long )
|
||||
FT_MulDiv( FT_Long a,
|
||||
FT_Long b,
|
||||
FT_Long c )
|
||||
{
|
||||
FT_Int s;
|
||||
FT_Long d;
|
||||
|
||||
|
||||
s = 1;
|
||||
if ( a < 0 ) { a = -a; s = -1; }
|
||||
if ( b < 0 ) { b = -b; s = -s; }
|
||||
if ( c < 0 ) { c = -c; s = -s; }
|
||||
|
||||
d = (FT_Long)( c > 0 ? ( (FT_Int64)a * b + ( c >> 1 ) ) / c
|
||||
: 0x7FFFFFFFL );
|
||||
|
||||
return ( s > 0 ) ? d : -d;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftcalc.h */
|
||||
|
||||
FT_BASE_DEF( FT_Long )
|
||||
FT_MulDiv_No_Round( FT_Long a,
|
||||
FT_Long b,
|
||||
FT_Long c )
|
||||
{
|
||||
FT_Int s;
|
||||
FT_Long d;
|
||||
|
||||
|
||||
s = 1;
|
||||
if ( a < 0 ) { a = -a; s = -1; }
|
||||
if ( b < 0 ) { b = -b; s = -s; }
|
||||
if ( c < 0 ) { c = -c; s = -s; }
|
||||
|
||||
d = (FT_Long)( c > 0 ? (FT_Int64)a * b / c
|
||||
: 0x7FFFFFFFL );
|
||||
|
||||
return ( s > 0 ) ? d : -d;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in freetype.h */
|
||||
|
||||
FT_EXPORT_DEF( FT_Long )
|
||||
FT_MulFix( FT_Long a,
|
||||
FT_Long b )
|
||||
{
|
||||
#ifdef FT_MULFIX_ASSEMBLER
|
||||
|
||||
return FT_MULFIX_ASSEMBLER( a, b );
|
||||
|
||||
#else
|
||||
|
||||
FT_Int s = 1;
|
||||
FT_Long c;
|
||||
|
||||
|
||||
if ( a < 0 )
|
||||
{
|
||||
a = -a;
|
||||
s = -1;
|
||||
}
|
||||
|
||||
if ( b < 0 )
|
||||
{
|
||||
b = -b;
|
||||
s = -s;
|
||||
}
|
||||
|
||||
c = (FT_Long)( ( (FT_Int64)a * b + 0x8000L ) >> 16 );
|
||||
|
||||
return ( s > 0 ) ? c : -c;
|
||||
|
||||
#endif /* FT_MULFIX_ASSEMBLER */
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in freetype.h */
|
||||
|
||||
FT_EXPORT_DEF( FT_Long )
|
||||
FT_DivFix( FT_Long a,
|
||||
FT_Long b )
|
||||
{
|
||||
FT_Int32 s;
|
||||
FT_UInt32 q;
|
||||
|
||||
|
||||
s = 1;
|
||||
if ( a < 0 )
|
||||
{
|
||||
a = -a;
|
||||
s = -1;
|
||||
}
|
||||
if ( b < 0 )
|
||||
{
|
||||
b = -b;
|
||||
s = -s;
|
||||
}
|
||||
|
||||
if ( b == 0 )
|
||||
/* check for division by 0 */
|
||||
q = 0x7FFFFFFFL;
|
||||
else
|
||||
/* compute result directly */
|
||||
q = (FT_UInt32)( ( ( (FT_UInt64)a << 16 ) + ( b >> 1 ) ) / b );
|
||||
|
||||
return ( s < 0 ? -(FT_Long)q : (FT_Long)q );
|
||||
}
|
||||
|
||||
|
||||
#else /* !FT_LONG64 */
|
||||
|
||||
|
||||
static void
|
||||
ft_multo64( FT_UInt32 x,
|
||||
FT_UInt32 y,
|
||||
FT_Int64 *z )
|
||||
{
|
||||
FT_UInt32 lo1, hi1, lo2, hi2, lo, hi, i1, i2;
|
||||
|
||||
|
||||
lo1 = x & 0x0000FFFFU; hi1 = x >> 16;
|
||||
lo2 = y & 0x0000FFFFU; hi2 = y >> 16;
|
||||
|
||||
lo = lo1 * lo2;
|
||||
i1 = lo1 * hi2;
|
||||
i2 = lo2 * hi1;
|
||||
hi = hi1 * hi2;
|
||||
|
||||
/* Check carry overflow of i1 + i2 */
|
||||
i1 += i2;
|
||||
hi += (FT_UInt32)( i1 < i2 ) << 16;
|
||||
|
||||
hi += i1 >> 16;
|
||||
i1 = i1 << 16;
|
||||
|
||||
/* Check carry overflow of i1 + lo */
|
||||
lo += i1;
|
||||
hi += ( lo < i1 );
|
||||
|
||||
z->lo = lo;
|
||||
z->hi = hi;
|
||||
}
|
||||
|
||||
|
||||
static FT_UInt32
|
||||
ft_div64by32( FT_UInt32 hi,
|
||||
FT_UInt32 lo,
|
||||
FT_UInt32 y )
|
||||
{
|
||||
FT_UInt32 r, q;
|
||||
FT_Int i;
|
||||
|
||||
|
||||
q = 0;
|
||||
r = hi;
|
||||
|
||||
if ( r >= y )
|
||||
return (FT_UInt32)0x7FFFFFFFL;
|
||||
|
||||
i = 32;
|
||||
do
|
||||
{
|
||||
r <<= 1;
|
||||
q <<= 1;
|
||||
r |= lo >> 31;
|
||||
|
||||
if ( r >= y )
|
||||
{
|
||||
r -= y;
|
||||
q |= 1;
|
||||
}
|
||||
lo <<= 1;
|
||||
} while ( --i );
|
||||
|
||||
return q;
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
FT_Add64( FT_Int64* x,
|
||||
FT_Int64* y,
|
||||
FT_Int64 *z )
|
||||
{
|
||||
register FT_UInt32 lo, hi;
|
||||
|
||||
|
||||
lo = x->lo + y->lo;
|
||||
hi = x->hi + y->hi + ( lo < x->lo );
|
||||
|
||||
z->lo = lo;
|
||||
z->hi = hi;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in freetype.h */
|
||||
|
||||
/* The FT_MulDiv function has been optimized thanks to ideas from */
|
||||
/* Graham Asher. The trick is to optimize computation when everything */
|
||||
/* fits within 32-bits (a rather common case). */
|
||||
/* */
|
||||
/* we compute 'a*b+c/2', then divide it by 'c'. (positive values) */
|
||||
/* */
|
||||
/* 46340 is FLOOR(SQRT(2^31-1)). */
|
||||
/* */
|
||||
/* if ( a <= 46340 && b <= 46340 ) then ( a*b <= 0x7FFEA810 ) */
|
||||
/* */
|
||||
/* 0x7FFFFFFF - 0x7FFEA810 = 0x157F0 */
|
||||
/* */
|
||||
/* if ( c < 0x157F0*2 ) then ( a*b+c/2 <= 0x7FFFFFFF ) */
|
||||
/* */
|
||||
/* and 2*0x157F0 = 176096 */
|
||||
/* */
|
||||
|
||||
FT_EXPORT_DEF( FT_Long )
|
||||
FT_MulDiv( FT_Long a,
|
||||
FT_Long b,
|
||||
FT_Long c )
|
||||
{
|
||||
long s;
|
||||
|
||||
|
||||
/* XXX: this function does not allow 64-bit arguments */
|
||||
if ( a == 0 || b == c )
|
||||
return a;
|
||||
|
||||
s = a; a = FT_ABS( a );
|
||||
s ^= b; b = FT_ABS( b );
|
||||
s ^= c; c = FT_ABS( c );
|
||||
|
||||
if ( a <= 46340L && b <= 46340L && c <= 176095L && c > 0 )
|
||||
a = ( a * b + ( c >> 1 ) ) / c;
|
||||
|
||||
else if ( (FT_Int32)c > 0 )
|
||||
{
|
||||
FT_Int64 temp, temp2;
|
||||
|
||||
|
||||
ft_multo64( (FT_Int32)a, (FT_Int32)b, &temp );
|
||||
|
||||
temp2.hi = 0;
|
||||
temp2.lo = (FT_UInt32)(c >> 1);
|
||||
FT_Add64( &temp, &temp2, &temp );
|
||||
a = ft_div64by32( temp.hi, temp.lo, (FT_Int32)c );
|
||||
}
|
||||
else
|
||||
a = 0x7FFFFFFFL;
|
||||
|
||||
return ( s < 0 ? -a : a );
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( FT_Long )
|
||||
FT_MulDiv_No_Round( FT_Long a,
|
||||
FT_Long b,
|
||||
FT_Long c )
|
||||
{
|
||||
long s;
|
||||
|
||||
|
||||
if ( a == 0 || b == c )
|
||||
return a;
|
||||
|
||||
s = a; a = FT_ABS( a );
|
||||
s ^= b; b = FT_ABS( b );
|
||||
s ^= c; c = FT_ABS( c );
|
||||
|
||||
if ( a <= 46340L && b <= 46340L && c > 0 )
|
||||
a = a * b / c;
|
||||
|
||||
else if ( (FT_Int32)c > 0 )
|
||||
{
|
||||
FT_Int64 temp;
|
||||
|
||||
|
||||
ft_multo64( (FT_Int32)a, (FT_Int32)b, &temp );
|
||||
a = ft_div64by32( temp.hi, temp.lo, (FT_Int32)c );
|
||||
}
|
||||
else
|
||||
a = 0x7FFFFFFFL;
|
||||
|
||||
return ( s < 0 ? -a : a );
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in freetype.h */
|
||||
|
||||
FT_EXPORT_DEF( FT_Long )
|
||||
FT_MulFix( FT_Long a,
|
||||
FT_Long b )
|
||||
{
|
||||
#ifdef FT_MULFIX_ASSEMBLER
|
||||
|
||||
return FT_MULFIX_ASSEMBLER( a, b );
|
||||
|
||||
#elif 0
|
||||
|
||||
/*
|
||||
* This code is nonportable. See comment below.
|
||||
*
|
||||
* However, on a platform where right-shift of a signed quantity fills
|
||||
* the leftmost bits by copying the sign bit, it might be faster.
|
||||
*/
|
||||
|
||||
FT_Long sa, sb;
|
||||
FT_ULong ua, ub;
|
||||
|
||||
|
||||
if ( a == 0 || b == 0x10000L )
|
||||
return a;
|
||||
|
||||
/*
|
||||
* This is a clever way of converting a signed number `a' into its
|
||||
* absolute value (stored back into `a') and its sign. The sign is
|
||||
* stored in `sa'; 0 means `a' was positive or zero, and -1 means `a'
|
||||
* was negative. (Similarly for `b' and `sb').
|
||||
*
|
||||
* Unfortunately, it doesn't work (at least not portably).
|
||||
*
|
||||
* It makes the assumption that right-shift on a negative signed value
|
||||
* fills the leftmost bits by copying the sign bit. This is wrong.
|
||||
* According to K&R 2nd ed, section `A7.8 Shift Operators' on page 206,
|
||||
* the result of right-shift of a negative signed value is
|
||||
* implementation-defined. At least one implementation fills the
|
||||
* leftmost bits with 0s (i.e., it is exactly the same as an unsigned
|
||||
* right shift). This means that when `a' is negative, `sa' ends up
|
||||
* with the value 1 rather than -1. After that, everything else goes
|
||||
* wrong.
|
||||
*/
|
||||
sa = ( a >> ( sizeof ( a ) * 8 - 1 ) );
|
||||
a = ( a ^ sa ) - sa;
|
||||
sb = ( b >> ( sizeof ( b ) * 8 - 1 ) );
|
||||
b = ( b ^ sb ) - sb;
|
||||
|
||||
ua = (FT_ULong)a;
|
||||
ub = (FT_ULong)b;
|
||||
|
||||
if ( ua <= 2048 && ub <= 1048576L )
|
||||
ua = ( ua * ub + 0x8000U ) >> 16;
|
||||
else
|
||||
{
|
||||
FT_ULong al = ua & 0xFFFFU;
|
||||
|
||||
|
||||
ua = ( ua >> 16 ) * ub + al * ( ub >> 16 ) +
|
||||
( ( al * ( ub & 0xFFFFU ) + 0x8000U ) >> 16 );
|
||||
}
|
||||
|
||||
sa ^= sb,
|
||||
ua = (FT_ULong)(( ua ^ sa ) - sa);
|
||||
|
||||
return (FT_Long)ua;
|
||||
|
||||
#else /* 0 */
|
||||
|
||||
FT_Long s;
|
||||
FT_ULong ua, ub;
|
||||
|
||||
|
||||
if ( a == 0 || b == 0x10000L )
|
||||
return a;
|
||||
|
||||
s = a; a = FT_ABS( a );
|
||||
s ^= b; b = FT_ABS( b );
|
||||
|
||||
ua = (FT_ULong)a;
|
||||
ub = (FT_ULong)b;
|
||||
|
||||
if ( ua <= 2048 && ub <= 1048576L )
|
||||
ua = ( ua * ub + 0x8000UL ) >> 16;
|
||||
else
|
||||
{
|
||||
FT_ULong al = ua & 0xFFFFUL;
|
||||
|
||||
|
||||
ua = ( ua >> 16 ) * ub + al * ( ub >> 16 ) +
|
||||
( ( al * ( ub & 0xFFFFUL ) + 0x8000UL ) >> 16 );
|
||||
}
|
||||
|
||||
return ( s < 0 ? -(FT_Long)ua : (FT_Long)ua );
|
||||
|
||||
#endif /* 0 */
|
||||
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in freetype.h */
|
||||
|
||||
FT_EXPORT_DEF( FT_Long )
|
||||
FT_DivFix( FT_Long a,
|
||||
FT_Long b )
|
||||
{
|
||||
FT_Int32 s;
|
||||
FT_UInt32 q;
|
||||
|
||||
|
||||
/* XXX: this function does not allow 64-bit arguments */
|
||||
s = (FT_Int32)a; a = FT_ABS( a );
|
||||
s ^= (FT_Int32)b; b = FT_ABS( b );
|
||||
|
||||
if ( (FT_UInt32)b == 0 )
|
||||
{
|
||||
/* check for division by 0 */
|
||||
q = (FT_UInt32)0x7FFFFFFFL;
|
||||
}
|
||||
else if ( ( a >> 16 ) == 0 )
|
||||
{
|
||||
/* compute result directly */
|
||||
q = (FT_UInt32)( ( (FT_ULong)a << 16 ) + ( b >> 1 ) ) / (FT_UInt32)b;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* we need more bits; we have to do it by hand */
|
||||
FT_Int64 temp, temp2;
|
||||
|
||||
|
||||
temp.hi = (FT_Int32)( a >> 16 );
|
||||
temp.lo = (FT_UInt32)a << 16;
|
||||
temp2.hi = 0;
|
||||
temp2.lo = (FT_UInt32)( b >> 1 );
|
||||
FT_Add64( &temp, &temp2, &temp );
|
||||
q = ft_div64by32( temp.hi, temp.lo, (FT_Int32)b );
|
||||
}
|
||||
|
||||
return ( s < 0 ? -(FT_Int32)q : (FT_Int32)q );
|
||||
}
|
||||
|
||||
|
||||
#if 0
|
||||
|
||||
/* documentation is in ftcalc.h */
|
||||
|
||||
FT_EXPORT_DEF( void )
|
||||
FT_MulTo64( FT_Int32 x,
|
||||
FT_Int32 y,
|
||||
FT_Int64 *z )
|
||||
{
|
||||
FT_Int32 s;
|
||||
|
||||
|
||||
s = x; x = FT_ABS( x );
|
||||
s ^= y; y = FT_ABS( y );
|
||||
|
||||
ft_multo64( x, y, z );
|
||||
|
||||
if ( s < 0 )
|
||||
{
|
||||
z->lo = (FT_UInt32)-(FT_Int32)z->lo;
|
||||
z->hi = ~z->hi + !( z->lo );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/* apparently, the second version of this code is not compiled correctly */
|
||||
/* on Mac machines with the MPW C compiler.. tsk, tsk, tsk... */
|
||||
|
||||
#if 1
|
||||
|
||||
FT_EXPORT_DEF( FT_Int32 )
|
||||
FT_Div64by32( FT_Int64* x,
|
||||
FT_Int32 y )
|
||||
{
|
||||
FT_Int32 s;
|
||||
FT_UInt32 q, r, i, lo;
|
||||
|
||||
|
||||
s = x->hi;
|
||||
if ( s < 0 )
|
||||
{
|
||||
x->lo = (FT_UInt32)-(FT_Int32)x->lo;
|
||||
x->hi = ~x->hi + !x->lo;
|
||||
}
|
||||
s ^= y; y = FT_ABS( y );
|
||||
|
||||
/* Shortcut */
|
||||
if ( x->hi == 0 )
|
||||
{
|
||||
if ( y > 0 )
|
||||
q = x->lo / y;
|
||||
else
|
||||
q = 0x7FFFFFFFL;
|
||||
|
||||
return ( s < 0 ? -(FT_Int32)q : (FT_Int32)q );
|
||||
}
|
||||
|
||||
r = x->hi;
|
||||
lo = x->lo;
|
||||
|
||||
if ( r >= (FT_UInt32)y ) /* we know y is to be treated as unsigned here */
|
||||
return ( s < 0 ? 0x80000001UL : 0x7FFFFFFFUL );
|
||||
/* Return Max/Min Int32 if division overflow. */
|
||||
/* This includes division by zero! */
|
||||
q = 0;
|
||||
for ( i = 0; i < 32; i++ )
|
||||
{
|
||||
r <<= 1;
|
||||
q <<= 1;
|
||||
r |= lo >> 31;
|
||||
|
||||
if ( r >= (FT_UInt32)y )
|
||||
{
|
||||
r -= y;
|
||||
q |= 1;
|
||||
}
|
||||
lo <<= 1;
|
||||
}
|
||||
|
||||
return ( s < 0 ? -(FT_Int32)q : (FT_Int32)q );
|
||||
}
|
||||
|
||||
#else /* 0 */
|
||||
|
||||
FT_EXPORT_DEF( FT_Int32 )
|
||||
FT_Div64by32( FT_Int64* x,
|
||||
FT_Int32 y )
|
||||
{
|
||||
FT_Int32 s;
|
||||
FT_UInt32 q;
|
||||
|
||||
|
||||
s = x->hi;
|
||||
if ( s < 0 )
|
||||
{
|
||||
x->lo = (FT_UInt32)-(FT_Int32)x->lo;
|
||||
x->hi = ~x->hi + !x->lo;
|
||||
}
|
||||
s ^= y; y = FT_ABS( y );
|
||||
|
||||
/* Shortcut */
|
||||
if ( x->hi == 0 )
|
||||
{
|
||||
if ( y > 0 )
|
||||
q = ( x->lo + ( y >> 1 ) ) / y;
|
||||
else
|
||||
q = 0x7FFFFFFFL;
|
||||
|
||||
return ( s < 0 ? -(FT_Int32)q : (FT_Int32)q );
|
||||
}
|
||||
|
||||
q = ft_div64by32( x->hi, x->lo, y );
|
||||
|
||||
return ( s < 0 ? -(FT_Int32)q : (FT_Int32)q );
|
||||
}
|
||||
|
||||
#endif /* 0 */
|
||||
|
||||
#endif /* 0 */
|
||||
|
||||
|
||||
#endif /* FT_LONG64 */
|
||||
|
||||
|
||||
/* documentation is in ftglyph.h */
|
||||
|
||||
FT_EXPORT_DEF( void )
|
||||
FT_Matrix_Multiply( const FT_Matrix* a,
|
||||
FT_Matrix *b )
|
||||
{
|
||||
FT_Fixed xx, xy, yx, yy;
|
||||
|
||||
|
||||
if ( !a || !b )
|
||||
return;
|
||||
|
||||
xx = FT_MulFix( a->xx, b->xx ) + FT_MulFix( a->xy, b->yx );
|
||||
xy = FT_MulFix( a->xx, b->xy ) + FT_MulFix( a->xy, b->yy );
|
||||
yx = FT_MulFix( a->yx, b->xx ) + FT_MulFix( a->yy, b->yx );
|
||||
yy = FT_MulFix( a->yx, b->xy ) + FT_MulFix( a->yy, b->yy );
|
||||
|
||||
b->xx = xx; b->xy = xy;
|
||||
b->yx = yx; b->yy = yy;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftglyph.h */
|
||||
|
||||
FT_EXPORT_DEF( FT_Error )
|
||||
FT_Matrix_Invert( FT_Matrix* matrix )
|
||||
{
|
||||
FT_Pos delta, xx, yy;
|
||||
|
||||
|
||||
if ( !matrix )
|
||||
return FT_THROW( Invalid_Argument );
|
||||
|
||||
/* compute discriminant */
|
||||
delta = FT_MulFix( matrix->xx, matrix->yy ) -
|
||||
FT_MulFix( matrix->xy, matrix->yx );
|
||||
|
||||
if ( !delta )
|
||||
return FT_THROW( Invalid_Argument ); /* matrix can't be inverted */
|
||||
|
||||
matrix->xy = - FT_DivFix( matrix->xy, delta );
|
||||
matrix->yx = - FT_DivFix( matrix->yx, delta );
|
||||
|
||||
xx = matrix->xx;
|
||||
yy = matrix->yy;
|
||||
|
||||
matrix->xx = FT_DivFix( yy, delta );
|
||||
matrix->yy = FT_DivFix( xx, delta );
|
||||
|
||||
return FT_Err_Ok;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftcalc.h */
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
FT_Matrix_Multiply_Scaled( const FT_Matrix* a,
|
||||
FT_Matrix *b,
|
||||
FT_Long scaling )
|
||||
{
|
||||
FT_Fixed xx, xy, yx, yy;
|
||||
|
||||
FT_Long val = 0x10000L * scaling;
|
||||
|
||||
|
||||
if ( !a || !b )
|
||||
return;
|
||||
|
||||
xx = FT_MulDiv( a->xx, b->xx, val ) + FT_MulDiv( a->xy, b->yx, val );
|
||||
xy = FT_MulDiv( a->xx, b->xy, val ) + FT_MulDiv( a->xy, b->yy, val );
|
||||
yx = FT_MulDiv( a->yx, b->xx, val ) + FT_MulDiv( a->yy, b->yx, val );
|
||||
yy = FT_MulDiv( a->yx, b->xy, val ) + FT_MulDiv( a->yy, b->yy, val );
|
||||
|
||||
b->xx = xx; b->xy = xy;
|
||||
b->yx = yx; b->yy = yy;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftcalc.h */
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
FT_Vector_Transform_Scaled( FT_Vector* vector,
|
||||
const FT_Matrix* matrix,
|
||||
FT_Long scaling )
|
||||
{
|
||||
FT_Pos xz, yz;
|
||||
|
||||
FT_Long val = 0x10000L * scaling;
|
||||
|
||||
|
||||
if ( !vector || !matrix )
|
||||
return;
|
||||
|
||||
xz = FT_MulDiv( vector->x, matrix->xx, val ) +
|
||||
FT_MulDiv( vector->y, matrix->xy, val );
|
||||
|
||||
yz = FT_MulDiv( vector->x, matrix->yx, val ) +
|
||||
FT_MulDiv( vector->y, matrix->yy, val );
|
||||
|
||||
vector->x = xz;
|
||||
vector->y = yz;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftcalc.h */
|
||||
|
||||
FT_BASE_DEF( FT_Int32 )
|
||||
FT_SqrtFixed( FT_Int32 x )
|
||||
{
|
||||
FT_UInt32 root, rem_hi, rem_lo, test_div;
|
||||
FT_Int count;
|
||||
|
||||
|
||||
root = 0;
|
||||
|
||||
if ( x > 0 )
|
||||
{
|
||||
rem_hi = 0;
|
||||
rem_lo = x;
|
||||
count = 24;
|
||||
do
|
||||
{
|
||||
rem_hi = ( rem_hi << 2 ) | ( rem_lo >> 30 );
|
||||
rem_lo <<= 2;
|
||||
root <<= 1;
|
||||
test_div = ( root << 1 ) + 1;
|
||||
|
||||
if ( rem_hi >= test_div )
|
||||
{
|
||||
rem_hi -= test_div;
|
||||
root += 1;
|
||||
}
|
||||
} while ( --count );
|
||||
}
|
||||
|
||||
return (FT_Int32)root;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftcalc.h */
|
||||
|
||||
FT_BASE_DEF( FT_Int )
|
||||
ft_corner_orientation( FT_Pos in_x,
|
||||
FT_Pos in_y,
|
||||
FT_Pos out_x,
|
||||
FT_Pos out_y )
|
||||
{
|
||||
FT_Long result; /* avoid overflow on 16-bit system */
|
||||
|
||||
|
||||
/* deal with the trivial cases quickly */
|
||||
if ( in_y == 0 )
|
||||
{
|
||||
if ( in_x >= 0 )
|
||||
result = out_y;
|
||||
else
|
||||
result = -out_y;
|
||||
}
|
||||
else if ( in_x == 0 )
|
||||
{
|
||||
if ( in_y >= 0 )
|
||||
result = -out_x;
|
||||
else
|
||||
result = out_x;
|
||||
}
|
||||
else if ( out_y == 0 )
|
||||
{
|
||||
if ( out_x >= 0 )
|
||||
result = in_y;
|
||||
else
|
||||
result = -in_y;
|
||||
}
|
||||
else if ( out_x == 0 )
|
||||
{
|
||||
if ( out_y >= 0 )
|
||||
result = -in_x;
|
||||
else
|
||||
result = in_x;
|
||||
}
|
||||
else /* general case */
|
||||
{
|
||||
#ifdef FT_LONG64
|
||||
|
||||
FT_Int64 delta = (FT_Int64)in_x * out_y - (FT_Int64)in_y * out_x;
|
||||
|
||||
|
||||
if ( delta == 0 )
|
||||
result = 0;
|
||||
else
|
||||
result = 1 - 2 * ( delta < 0 );
|
||||
|
||||
#else
|
||||
|
||||
FT_Int64 z1, z2;
|
||||
|
||||
|
||||
/* XXX: this function does not allow 64-bit arguments */
|
||||
ft_multo64( (FT_Int32)in_x, (FT_Int32)out_y, &z1 );
|
||||
ft_multo64( (FT_Int32)in_y, (FT_Int32)out_x, &z2 );
|
||||
|
||||
if ( z1.hi > z2.hi )
|
||||
result = +1;
|
||||
else if ( z1.hi < z2.hi )
|
||||
result = -1;
|
||||
else if ( z1.lo > z2.lo )
|
||||
result = +1;
|
||||
else if ( z1.lo < z2.lo )
|
||||
result = -1;
|
||||
else
|
||||
result = 0;
|
||||
|
||||
#endif
|
||||
}
|
||||
|
||||
/* XXX: only the sign of return value, +1/0/-1 must be used */
|
||||
return (FT_Int)result;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftcalc.h */
|
||||
|
||||
FT_BASE_DEF( FT_Int )
|
||||
ft_corner_is_flat( FT_Pos in_x,
|
||||
FT_Pos in_y,
|
||||
FT_Pos out_x,
|
||||
FT_Pos out_y )
|
||||
{
|
||||
FT_Pos ax = in_x;
|
||||
FT_Pos ay = in_y;
|
||||
|
||||
FT_Pos d_in, d_out, d_corner;
|
||||
|
||||
|
||||
if ( ax < 0 )
|
||||
ax = -ax;
|
||||
if ( ay < 0 )
|
||||
ay = -ay;
|
||||
d_in = ax + ay;
|
||||
|
||||
ax = out_x;
|
||||
if ( ax < 0 )
|
||||
ax = -ax;
|
||||
ay = out_y;
|
||||
if ( ay < 0 )
|
||||
ay = -ay;
|
||||
d_out = ax + ay;
|
||||
|
||||
ax = out_x + in_x;
|
||||
if ( ax < 0 )
|
||||
ax = -ax;
|
||||
ay = out_y + in_y;
|
||||
if ( ay < 0 )
|
||||
ay = -ay;
|
||||
d_corner = ax + ay;
|
||||
|
||||
return ( d_in + d_out - d_corner ) < ( d_corner >> 4 );
|
||||
}
|
||||
|
||||
|
||||
/* END */
|
||||
@@ -1,75 +0,0 @@
|
||||
#
|
||||
# FreeType 2 GZip support configuration rules
|
||||
#
|
||||
|
||||
|
||||
# Copyright 2002, 2003 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# gzip driver directory
|
||||
#
|
||||
GZIP_DIR := $(SRC_DIR)/gzip
|
||||
|
||||
|
||||
# compilation flags for the driver
|
||||
#
|
||||
ifeq ($(SYSTEM_ZLIB),)
|
||||
GZIP_COMPILE := $(FT_COMPILE) $I$(subst /,$(COMPILER_SEP),$(GZIP_DIR))
|
||||
else
|
||||
GZIP_COMPILE := $(FT_COMPILE)
|
||||
endif
|
||||
|
||||
|
||||
# gzip support sources (i.e., C files)
|
||||
#
|
||||
GZIP_DRV_SRC := $(GZIP_DIR)/ftgzip.c
|
||||
|
||||
# gzip support headers
|
||||
#
|
||||
GZIP_DRV_H :=
|
||||
|
||||
|
||||
# gzip driver object(s)
|
||||
#
|
||||
# GZIP_DRV_OBJ_M is used during `multi' builds
|
||||
# GZIP_DRV_OBJ_S is used during `single' builds
|
||||
#
|
||||
ifeq ($(SYSTEM_ZLIB),)
|
||||
GZIP_DRV_OBJ_M := $(GZIP_DRV_SRC:$(GZIP_DIR)/%.c=$(OBJ_DIR)/%.$O)
|
||||
else
|
||||
GZIP_DRV_OBJ_M := $(OBJ_DIR)/ftgzip.$O
|
||||
endif
|
||||
GZIP_DRV_OBJ_S := $(OBJ_DIR)/ftgzip.$O
|
||||
|
||||
# gzip support source file for single build
|
||||
#
|
||||
GZIP_DRV_SRC_S := $(GZIP_DIR)/ftgzip.c
|
||||
|
||||
|
||||
# gzip support - single object
|
||||
#
|
||||
$(GZIP_DRV_OBJ_S): $(GZIP_DRV_SRC_S) $(GZIP_DRV_SRC) $(FREETYPE_H) \
|
||||
$(GZIP_DRV_H)
|
||||
$(GZIP_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $(GZIP_DRV_SRC_S))
|
||||
|
||||
|
||||
# gzip support - multiple objects
|
||||
#
|
||||
$(OBJ_DIR)/%.$O: $(GZIP_DIR)/%.c $(FREETYPE_H) $(GZIP_DRV_H)
|
||||
$(GZIP_COMPILE) $T$(subst /,$(COMPILER_SEP),$@ $<)
|
||||
|
||||
|
||||
# update main driver object lists
|
||||
#
|
||||
DRV_OBJS_S += $(GZIP_DRV_OBJ_S)
|
||||
DRV_OBJS_M += $(GZIP_DRV_OBJ_M)
|
||||
|
||||
|
||||
# EOF
|
||||
@@ -1,347 +0,0 @@
|
||||
# Sources (c) 2002-2004, 2006-2009, 2012
|
||||
# David Turner <david@freetype.org>
|
||||
#
|
||||
#
|
||||
# this file contains definitions of classes needed to decompose
|
||||
# C sources files into a series of multi-line "blocks". There are
|
||||
# two kinds of blocks:
|
||||
#
|
||||
# - normal blocks, which contain source code or ordinary comments
|
||||
#
|
||||
# - documentation blocks, which have restricted formatting, and
|
||||
# whose text always start with a documentation markup tag like
|
||||
# "<Function>", "<Type>", etc..
|
||||
#
|
||||
# the routines used to process the content of documentation blocks
|
||||
# are not contained here, but in "content.py"
|
||||
#
|
||||
# the classes and methods found here only deal with text parsing
|
||||
# and basic documentation block extraction
|
||||
#
|
||||
|
||||
import fileinput, re, sys, os, string
|
||||
|
||||
|
||||
|
||||
################################################################
|
||||
##
|
||||
## BLOCK FORMAT PATTERN
|
||||
##
|
||||
## A simple class containing compiled regular expressions used
|
||||
## to detect potential documentation format block comments within
|
||||
## C source code
|
||||
##
|
||||
## note that the 'column' pattern must contain a group that will
|
||||
## be used to "unbox" the content of documentation comment blocks
|
||||
##
|
||||
class SourceBlockFormat:
|
||||
|
||||
def __init__( self, id, start, column, end ):
|
||||
"""create a block pattern, used to recognize special documentation blocks"""
|
||||
self.id = id
|
||||
self.start = re.compile( start, re.VERBOSE )
|
||||
self.column = re.compile( column, re.VERBOSE )
|
||||
self.end = re.compile( end, re.VERBOSE )
|
||||
|
||||
|
||||
|
||||
#
|
||||
# format 1 documentation comment blocks look like the following:
|
||||
#
|
||||
# /************************************/
|
||||
# /* */
|
||||
# /* */
|
||||
# /* */
|
||||
# /************************************/
|
||||
#
|
||||
# we define a few regular expressions here to detect them
|
||||
#
|
||||
|
||||
start = r'''
|
||||
\s* # any number of whitespace
|
||||
/\*{2,}/ # followed by '/' and at least two asterisks then '/'
|
||||
\s*$ # probably followed by whitespace
|
||||
'''
|
||||
|
||||
column = r'''
|
||||
\s* # any number of whitespace
|
||||
/\*{1} # followed by '/' and precisely one asterisk
|
||||
([^*].*) # followed by anything (group 1)
|
||||
\*{1}/ # followed by one asterisk and a '/'
|
||||
\s*$ # probably followed by whitespace
|
||||
'''
|
||||
|
||||
re_source_block_format1 = SourceBlockFormat( 1, start, column, start )
|
||||
|
||||
|
||||
#
|
||||
# format 2 documentation comment blocks look like the following:
|
||||
#
|
||||
# /************************************ (at least 2 asterisks)
|
||||
# *
|
||||
# *
|
||||
# *
|
||||
# *
|
||||
# **/ (1 or more asterisks at the end)
|
||||
#
|
||||
# we define a few regular expressions here to detect them
|
||||
#
|
||||
start = r'''
|
||||
\s* # any number of whitespace
|
||||
/\*{2,} # followed by '/' and at least two asterisks
|
||||
\s*$ # probably followed by whitespace
|
||||
'''
|
||||
|
||||
column = r'''
|
||||
\s* # any number of whitespace
|
||||
\*{1}(?!/) # followed by precisely one asterisk not followed by `/'
|
||||
(.*) # then anything (group1)
|
||||
'''
|
||||
|
||||
end = r'''
|
||||
\s* # any number of whitespace
|
||||
\*+/ # followed by at least one asterisk, then '/'
|
||||
'''
|
||||
|
||||
re_source_block_format2 = SourceBlockFormat( 2, start, column, end )
|
||||
|
||||
|
||||
#
|
||||
# the list of supported documentation block formats, we could add new ones
|
||||
# relatively easily
|
||||
#
|
||||
re_source_block_formats = [re_source_block_format1, re_source_block_format2]
|
||||
|
||||
|
||||
#
|
||||
# the following regular expressions corresponds to markup tags
|
||||
# within the documentation comment blocks. they're equivalent
|
||||
# despite their different syntax
|
||||
#
|
||||
# notice how each markup tag _must_ begin a new line
|
||||
#
|
||||
re_markup_tag1 = re.compile( r'''\s*<((?:\w|-)*)>''' ) # <xxxx> format
|
||||
re_markup_tag2 = re.compile( r'''\s*@((?:\w|-)*):''' ) # @xxxx: format
|
||||
|
||||
#
|
||||
# the list of supported markup tags, we could add new ones relatively
|
||||
# easily
|
||||
#
|
||||
re_markup_tags = [re_markup_tag1, re_markup_tag2]
|
||||
|
||||
#
|
||||
# used to detect a cross-reference, after markup tags have been stripped
|
||||
#
|
||||
re_crossref = re.compile( r'@((?:\w|-)*)(.*)' )
|
||||
|
||||
#
|
||||
# used to detect italic and bold styles in paragraph text
|
||||
#
|
||||
re_italic = re.compile( r"_(\w(\w|')*)_(.*)" ) # _italic_
|
||||
re_bold = re.compile( r"\*(\w(\w|')*)\*(.*)" ) # *bold*
|
||||
|
||||
#
|
||||
# used to detect the end of commented source lines
|
||||
#
|
||||
re_source_sep = re.compile( r'\s*/\*\s*\*/' )
|
||||
|
||||
#
|
||||
# used to perform cross-reference within source output
|
||||
#
|
||||
re_source_crossref = re.compile( r'(\W*)(\w*)' )
|
||||
|
||||
#
|
||||
# a list of reserved source keywords
|
||||
#
|
||||
re_source_keywords = re.compile( '''\\b ( typedef |
|
||||
struct |
|
||||
enum |
|
||||
union |
|
||||
const |
|
||||
char |
|
||||
int |
|
||||
short |
|
||||
long |
|
||||
void |
|
||||
signed |
|
||||
unsigned |
|
||||
\#include |
|
||||
\#define |
|
||||
\#undef |
|
||||
\#if |
|
||||
\#ifdef |
|
||||
\#ifndef |
|
||||
\#else |
|
||||
\#endif ) \\b''', re.VERBOSE )
|
||||
|
||||
|
||||
################################################################
|
||||
##
|
||||
## SOURCE BLOCK CLASS
|
||||
##
|
||||
## A SourceProcessor is in charge of reading a C source file
|
||||
## and decomposing it into a series of different "SourceBlocks".
|
||||
## each one of these blocks can be made of the following data:
|
||||
##
|
||||
## - A documentation comment block that starts with "/**" and
|
||||
## whose exact format will be discussed later
|
||||
##
|
||||
## - normal sources lines, including comments
|
||||
##
|
||||
## the important fields in a text block are the following ones:
|
||||
##
|
||||
## self.lines : a list of text lines for the corresponding block
|
||||
##
|
||||
## self.content : for documentation comment blocks only, this is the
|
||||
## block content that has been "unboxed" from its
|
||||
## decoration. This is None for all other blocks
|
||||
## (i.e. sources or ordinary comments with no starting
|
||||
## markup tag)
|
||||
##
|
||||
class SourceBlock:
|
||||
|
||||
def __init__( self, processor, filename, lineno, lines ):
|
||||
self.processor = processor
|
||||
self.filename = filename
|
||||
self.lineno = lineno
|
||||
self.lines = lines[:]
|
||||
self.format = processor.format
|
||||
self.content = []
|
||||
|
||||
if self.format == None:
|
||||
return
|
||||
|
||||
words = []
|
||||
|
||||
# extract comment lines
|
||||
lines = []
|
||||
|
||||
for line0 in self.lines:
|
||||
m = self.format.column.match( line0 )
|
||||
if m:
|
||||
lines.append( m.group( 1 ) )
|
||||
|
||||
# now, look for a markup tag
|
||||
for l in lines:
|
||||
l = string.strip( l )
|
||||
if len( l ) > 0:
|
||||
for tag in re_markup_tags:
|
||||
if tag.match( l ):
|
||||
self.content = lines
|
||||
return
|
||||
|
||||
def location( self ):
|
||||
return "(" + self.filename + ":" + repr( self.lineno ) + ")"
|
||||
|
||||
# debugging only - not used in normal operations
|
||||
def dump( self ):
|
||||
if self.content:
|
||||
print "{{{content start---"
|
||||
for l in self.content:
|
||||
print l
|
||||
print "---content end}}}"
|
||||
return
|
||||
|
||||
fmt = ""
|
||||
if self.format:
|
||||
fmt = repr( self.format.id ) + " "
|
||||
|
||||
for line in self.lines:
|
||||
print line
|
||||
|
||||
|
||||
|
||||
################################################################
|
||||
##
|
||||
## SOURCE PROCESSOR CLASS
|
||||
##
|
||||
## The SourceProcessor is in charge of reading a C source file
|
||||
## and decomposing it into a series of different "SourceBlock"
|
||||
## objects.
|
||||
##
|
||||
## each one of these blocks can be made of the following data:
|
||||
##
|
||||
## - A documentation comment block that starts with "/**" and
|
||||
## whose exact format will be discussed later
|
||||
##
|
||||
## - normal sources lines, include comments
|
||||
##
|
||||
##
|
||||
class SourceProcessor:
|
||||
|
||||
def __init__( self ):
|
||||
"""initialize a source processor"""
|
||||
self.blocks = []
|
||||
self.filename = None
|
||||
self.format = None
|
||||
self.lines = []
|
||||
|
||||
def reset( self ):
|
||||
"""reset a block processor, clean all its blocks"""
|
||||
self.blocks = []
|
||||
self.format = None
|
||||
|
||||
def parse_file( self, filename ):
|
||||
"""parse a C source file, and add its blocks to the processor's list"""
|
||||
self.reset()
|
||||
|
||||
self.filename = filename
|
||||
|
||||
fileinput.close()
|
||||
self.format = None
|
||||
self.lineno = 0
|
||||
self.lines = []
|
||||
|
||||
for line in fileinput.input( filename ):
|
||||
# strip trailing newlines, important on Windows machines!
|
||||
if line[-1] == '\012':
|
||||
line = line[0:-1]
|
||||
|
||||
if self.format == None:
|
||||
self.process_normal_line( line )
|
||||
else:
|
||||
if self.format.end.match( line ):
|
||||
# that's a normal block end, add it to 'lines' and
|
||||
# create a new block
|
||||
self.lines.append( line )
|
||||
self.add_block_lines()
|
||||
elif self.format.column.match( line ):
|
||||
# that's a normal column line, add it to 'lines'
|
||||
self.lines.append( line )
|
||||
else:
|
||||
# humm.. this is an unexpected block end,
|
||||
# create a new block, but don't process the line
|
||||
self.add_block_lines()
|
||||
|
||||
# we need to process the line again
|
||||
self.process_normal_line( line )
|
||||
|
||||
# record the last lines
|
||||
self.add_block_lines()
|
||||
|
||||
def process_normal_line( self, line ):
|
||||
"""process a normal line and check whether it is the start of a new block"""
|
||||
for f in re_source_block_formats:
|
||||
if f.start.match( line ):
|
||||
self.add_block_lines()
|
||||
self.format = f
|
||||
self.lineno = fileinput.filelineno()
|
||||
|
||||
self.lines.append( line )
|
||||
|
||||
def add_block_lines( self ):
|
||||
"""add the current accumulated lines and create a new block"""
|
||||
if self.lines != []:
|
||||
block = SourceBlock( self, self.filename, self.lineno, self.lines )
|
||||
|
||||
self.blocks.append( block )
|
||||
self.format = None
|
||||
self.lines = []
|
||||
|
||||
# debugging only, not used in normal operations
|
||||
def dump( self ):
|
||||
"""print all blocks in a processor"""
|
||||
for b in self.blocks:
|
||||
b.dump()
|
||||
|
||||
# eof
|
||||
@@ -1,593 +0,0 @@
|
||||
# ToHTML (c) 2002, 2003, 2005, 2006, 2007, 2008
|
||||
# David Turner <david@freetype.org>
|
||||
|
||||
from sources import *
|
||||
from content import *
|
||||
from formatter import *
|
||||
|
||||
import time
|
||||
|
||||
|
||||
# The following defines the HTML header used by all generated pages.
|
||||
html_header_1 = """\
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||
"http://www.w3.org/TR/html4/loose.dtd">
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
||||
<title>\
|
||||
"""
|
||||
|
||||
html_header_2 = """\
|
||||
API Reference</title>
|
||||
<style type="text/css">
|
||||
body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
|
||||
color: #000000;
|
||||
background: #FFFFFF; }
|
||||
|
||||
p { text-align: justify; }
|
||||
h1 { text-align: center; }
|
||||
li { text-align: justify; }
|
||||
td { padding: 0 0.5em 0 0.5em; }
|
||||
td.left { padding: 0 0.5em 0 0.5em;
|
||||
text-align: left; }
|
||||
|
||||
a:link { color: #0000EF; }
|
||||
a:visited { color: #51188E; }
|
||||
a:hover { color: #FF0000; }
|
||||
|
||||
span.keyword { font-family: monospace;
|
||||
text-align: left;
|
||||
white-space: pre;
|
||||
color: darkblue; }
|
||||
|
||||
pre.colored { color: blue; }
|
||||
|
||||
ul.empty { list-style-type: none; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
"""
|
||||
|
||||
html_header_3 = """
|
||||
<table align=center><tr><td><font size=-1>[<a href="\
|
||||
"""
|
||||
|
||||
html_header_3i = """
|
||||
<table align=center><tr><td width="100%"></td>
|
||||
<td><font size=-1>[<a href="\
|
||||
"""
|
||||
|
||||
html_header_4 = """\
|
||||
">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-1>[<a href="\
|
||||
"""
|
||||
|
||||
html_header_5 = """\
|
||||
">TOC</a>]</font></td></tr></table>
|
||||
<center><h1>\
|
||||
"""
|
||||
|
||||
html_header_5t = """\
|
||||
">Index</a>]</font></td>
|
||||
<td width="100%"></td></tr></table>
|
||||
<center><h1>\
|
||||
"""
|
||||
|
||||
html_header_6 = """\
|
||||
API Reference</h1></center>
|
||||
"""
|
||||
|
||||
|
||||
# The HTML footer used by all generated pages.
|
||||
html_footer = """\
|
||||
</body>
|
||||
</html>\
|
||||
"""
|
||||
|
||||
# The header and footer used for each section.
|
||||
section_title_header = "<center><h1>"
|
||||
section_title_footer = "</h1></center>"
|
||||
|
||||
# The header and footer used for code segments.
|
||||
code_header = '<pre class="colored">'
|
||||
code_footer = '</pre>'
|
||||
|
||||
# Paragraph header and footer.
|
||||
para_header = "<p>"
|
||||
para_footer = "</p>"
|
||||
|
||||
# Block header and footer.
|
||||
block_header = '<table align=center width="75%"><tr><td>'
|
||||
block_footer_start = """\
|
||||
</td></tr></table>
|
||||
<hr width="75%">
|
||||
<table align=center width="75%"><tr><td><font size=-2>[<a href="\
|
||||
"""
|
||||
block_footer_middle = """\
|
||||
">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
<td><font size=-2>[<a href="\
|
||||
"""
|
||||
block_footer_end = """\
|
||||
">TOC</a>]</font></td></tr></table>
|
||||
"""
|
||||
|
||||
# Description header/footer.
|
||||
description_header = '<table align=center width="87%"><tr><td>'
|
||||
description_footer = "</td></tr></table><br>"
|
||||
|
||||
# Marker header/inter/footer combination.
|
||||
marker_header = '<table align=center width="87%" cellpadding=5><tr bgcolor="#EEEEFF"><td><em><b>'
|
||||
marker_inter = "</b></em></td></tr><tr><td>"
|
||||
marker_footer = "</td></tr></table>"
|
||||
|
||||
# Header location header/footer.
|
||||
header_location_header = '<table align=center width="87%"><tr><td>'
|
||||
header_location_footer = "</td></tr></table><br>"
|
||||
|
||||
# Source code extracts header/footer.
|
||||
source_header = '<table align=center width="87%"><tr bgcolor="#D6E8FF"><td><pre>\n'
|
||||
source_footer = "\n</pre></table><br>"
|
||||
|
||||
# Chapter header/inter/footer.
|
||||
chapter_header = '<br><table align=center width="75%"><tr><td><h2>'
|
||||
chapter_inter = '</h2><ul class="empty"><li>'
|
||||
chapter_footer = '</li></ul></td></tr></table>'
|
||||
|
||||
# Index footer.
|
||||
index_footer_start = """\
|
||||
<hr>
|
||||
<table><tr><td width="100%"></td>
|
||||
<td><font size=-2>[<a href="\
|
||||
"""
|
||||
index_footer_end = """\
|
||||
">TOC</a>]</font></td></tr></table>
|
||||
"""
|
||||
|
||||
# TOC footer.
|
||||
toc_footer_start = """\
|
||||
<hr>
|
||||
<table><tr><td><font size=-2>[<a href="\
|
||||
"""
|
||||
toc_footer_end = """\
|
||||
">Index</a>]</font></td>
|
||||
<td width="100%"></td>
|
||||
</tr></table>
|
||||
"""
|
||||
|
||||
|
||||
# source language keyword coloration/styling
|
||||
keyword_prefix = '<span class="keyword">'
|
||||
keyword_suffix = '</span>'
|
||||
|
||||
section_synopsis_header = '<h2>Synopsis</h2>'
|
||||
section_synopsis_footer = ''
|
||||
|
||||
|
||||
# Translate a single line of source to HTML. This will convert
|
||||
# a "<" into "<.", ">" into ">.", etc.
|
||||
def html_quote( line ):
|
||||
result = string.replace( line, "&", "&" )
|
||||
result = string.replace( result, "<", "<" )
|
||||
result = string.replace( result, ">", ">" )
|
||||
return result
|
||||
|
||||
|
||||
# same as 'html_quote', but ignores left and right brackets
|
||||
def html_quote0( line ):
|
||||
return string.replace( line, "&", "&" )
|
||||
|
||||
|
||||
def dump_html_code( lines, prefix = "" ):
|
||||
# clean the last empty lines
|
||||
l = len( self.lines )
|
||||
while l > 0 and string.strip( self.lines[l - 1] ) == "":
|
||||
l = l - 1
|
||||
|
||||
# The code footer should be directly appended to the last code
|
||||
# line to avoid an additional blank line.
|
||||
print prefix + code_header,
|
||||
for line in self.lines[0 : l + 1]:
|
||||
print '\n' + prefix + html_quote( line ),
|
||||
print prefix + code_footer,
|
||||
|
||||
|
||||
|
||||
class HtmlFormatter( Formatter ):
|
||||
|
||||
def __init__( self, processor, project_title, file_prefix ):
|
||||
Formatter.__init__( self, processor )
|
||||
|
||||
global html_header_1, html_header_2, html_header_3
|
||||
global html_header_4, html_header_5, html_footer
|
||||
|
||||
if file_prefix:
|
||||
file_prefix = file_prefix + "-"
|
||||
else:
|
||||
file_prefix = ""
|
||||
|
||||
self.headers = processor.headers
|
||||
self.project_title = project_title
|
||||
self.file_prefix = file_prefix
|
||||
self.html_header = html_header_1 + project_title + \
|
||||
html_header_2 + \
|
||||
html_header_3 + file_prefix + "index.html" + \
|
||||
html_header_4 + file_prefix + "toc.html" + \
|
||||
html_header_5 + project_title + \
|
||||
html_header_6
|
||||
|
||||
self.html_index_header = html_header_1 + project_title + \
|
||||
html_header_2 + \
|
||||
html_header_3i + file_prefix + "toc.html" + \
|
||||
html_header_5 + project_title + \
|
||||
html_header_6
|
||||
|
||||
self.html_toc_header = html_header_1 + project_title + \
|
||||
html_header_2 + \
|
||||
html_header_3 + file_prefix + "index.html" + \
|
||||
html_header_5t + project_title + \
|
||||
html_header_6
|
||||
|
||||
self.html_footer = "<center><font size=""-2"">generated on " + \
|
||||
time.asctime( time.localtime( time.time() ) ) + \
|
||||
"</font></center>" + html_footer
|
||||
|
||||
self.columns = 3
|
||||
|
||||
def make_section_url( self, section ):
|
||||
return self.file_prefix + section.name + ".html"
|
||||
|
||||
def make_block_url( self, block ):
|
||||
return self.make_section_url( block.section ) + "#" + block.name
|
||||
|
||||
def make_html_words( self, words ):
|
||||
""" convert a series of simple words into some HTML text """
|
||||
line = ""
|
||||
if words:
|
||||
line = html_quote( words[0] )
|
||||
for w in words[1:]:
|
||||
line = line + " " + html_quote( w )
|
||||
|
||||
return line
|
||||
|
||||
def make_html_word( self, word ):
|
||||
"""analyze a simple word to detect cross-references and styling"""
|
||||
# look for cross-references
|
||||
m = re_crossref.match( word )
|
||||
if m:
|
||||
try:
|
||||
name = m.group( 1 )
|
||||
rest = m.group( 2 )
|
||||
block = self.identifiers[name]
|
||||
url = self.make_block_url( block )
|
||||
return '<a href="' + url + '">' + name + '</a>' + rest
|
||||
except:
|
||||
# we detected a cross-reference to an unknown item
|
||||
sys.stderr.write( \
|
||||
"WARNING: undefined cross reference '" + name + "'.\n" )
|
||||
return '?' + name + '?' + rest
|
||||
|
||||
# look for italics and bolds
|
||||
m = re_italic.match( word )
|
||||
if m:
|
||||
name = m.group( 1 )
|
||||
rest = m.group( 3 )
|
||||
return '<i>' + name + '</i>' + rest
|
||||
|
||||
m = re_bold.match( word )
|
||||
if m:
|
||||
name = m.group( 1 )
|
||||
rest = m.group( 3 )
|
||||
return '<b>' + name + '</b>' + rest
|
||||
|
||||
return html_quote( word )
|
||||
|
||||
def make_html_para( self, words ):
|
||||
""" convert words of a paragraph into tagged HTML text, handle xrefs """
|
||||
line = ""
|
||||
if words:
|
||||
line = self.make_html_word( words[0] )
|
||||
for word in words[1:]:
|
||||
line = line + " " + self.make_html_word( word )
|
||||
# convert `...' quotations into real left and right single quotes
|
||||
line = re.sub( r"(^|\W)`(.*?)'(\W|$)", \
|
||||
r'\1‘\2’\3', \
|
||||
line )
|
||||
# convert tilde into non-breakable space
|
||||
line = string.replace( line, "~", " " )
|
||||
|
||||
return para_header + line + para_footer
|
||||
|
||||
def make_html_code( self, lines ):
|
||||
""" convert a code sequence to HTML """
|
||||
line = code_header + '\n'
|
||||
for l in lines:
|
||||
line = line + html_quote( l ) + '\n'
|
||||
|
||||
return line + code_footer
|
||||
|
||||
def make_html_items( self, items ):
|
||||
""" convert a field's content into some valid HTML """
|
||||
lines = []
|
||||
for item in items:
|
||||
if item.lines:
|
||||
lines.append( self.make_html_code( item.lines ) )
|
||||
else:
|
||||
lines.append( self.make_html_para( item.words ) )
|
||||
|
||||
return string.join( lines, '\n' )
|
||||
|
||||
def print_html_items( self, items ):
|
||||
print self.make_html_items( items )
|
||||
|
||||
def print_html_field( self, field ):
|
||||
if field.name:
|
||||
print "<table><tr valign=top><td><b>" + field.name + "</b></td><td>"
|
||||
|
||||
print self.make_html_items( field.items )
|
||||
|
||||
if field.name:
|
||||
print "</td></tr></table>"
|
||||
|
||||
def html_source_quote( self, line, block_name = None ):
|
||||
result = ""
|
||||
while line:
|
||||
m = re_source_crossref.match( line )
|
||||
if m:
|
||||
name = m.group( 2 )
|
||||
prefix = html_quote( m.group( 1 ) )
|
||||
length = len( m.group( 0 ) )
|
||||
|
||||
if name == block_name:
|
||||
# this is the current block name, if any
|
||||
result = result + prefix + '<b>' + name + '</b>'
|
||||
elif re_source_keywords.match( name ):
|
||||
# this is a C keyword
|
||||
result = result + prefix + keyword_prefix + name + keyword_suffix
|
||||
elif self.identifiers.has_key( name ):
|
||||
# this is a known identifier
|
||||
block = self.identifiers[name]
|
||||
result = result + prefix + '<a href="' + \
|
||||
self.make_block_url( block ) + '">' + name + '</a>'
|
||||
else:
|
||||
result = result + html_quote( line[:length] )
|
||||
|
||||
line = line[length:]
|
||||
else:
|
||||
result = result + html_quote( line )
|
||||
line = []
|
||||
|
||||
return result
|
||||
|
||||
def print_html_field_list( self, fields ):
|
||||
print "<p></p>"
|
||||
print "<table cellpadding=3 border=0>"
|
||||
for field in fields:
|
||||
if len( field.name ) > 22:
|
||||
print "<tr valign=top><td colspan=0><b>" + field.name + "</b></td></tr>"
|
||||
print "<tr valign=top><td></td><td>"
|
||||
else:
|
||||
print "<tr valign=top><td><b>" + field.name + "</b></td><td>"
|
||||
|
||||
self.print_html_items( field.items )
|
||||
print "</td></tr>"
|
||||
print "</table>"
|
||||
|
||||
def print_html_markup( self, markup ):
|
||||
table_fields = []
|
||||
for field in markup.fields:
|
||||
if field.name:
|
||||
# we begin a new series of field or value definitions, we
|
||||
# will record them in the 'table_fields' list before outputting
|
||||
# all of them as a single table
|
||||
#
|
||||
table_fields.append( field )
|
||||
else:
|
||||
if table_fields:
|
||||
self.print_html_field_list( table_fields )
|
||||
table_fields = []
|
||||
|
||||
self.print_html_items( field.items )
|
||||
|
||||
if table_fields:
|
||||
self.print_html_field_list( table_fields )
|
||||
|
||||
#
|
||||
# Formatting the index
|
||||
#
|
||||
def index_enter( self ):
|
||||
print self.html_index_header
|
||||
self.index_items = {}
|
||||
|
||||
def index_name_enter( self, name ):
|
||||
block = self.identifiers[name]
|
||||
url = self.make_block_url( block )
|
||||
self.index_items[name] = url
|
||||
|
||||
def index_exit( self ):
|
||||
# block_index already contains the sorted list of index names
|
||||
count = len( self.block_index )
|
||||
rows = ( count + self.columns - 1 ) / self.columns
|
||||
|
||||
print "<table align=center border=0 cellpadding=0 cellspacing=0>"
|
||||
for r in range( rows ):
|
||||
line = "<tr>"
|
||||
for c in range( self.columns ):
|
||||
i = r + c * rows
|
||||
if i < count:
|
||||
bname = self.block_index[r + c * rows]
|
||||
url = self.index_items[bname]
|
||||
line = line + '<td><a href="' + url + '">' + bname + '</a></td>'
|
||||
else:
|
||||
line = line + '<td></td>'
|
||||
line = line + "</tr>"
|
||||
print line
|
||||
|
||||
print "</table>"
|
||||
|
||||
print index_footer_start + \
|
||||
self.file_prefix + "toc.html" + \
|
||||
index_footer_end
|
||||
|
||||
print self.html_footer
|
||||
|
||||
self.index_items = {}
|
||||
|
||||
def index_dump( self, index_filename = None ):
|
||||
if index_filename == None:
|
||||
index_filename = self.file_prefix + "index.html"
|
||||
|
||||
Formatter.index_dump( self, index_filename )
|
||||
|
||||
#
|
||||
# Formatting the table of content
|
||||
#
|
||||
def toc_enter( self ):
|
||||
print self.html_toc_header
|
||||
print "<center><h1>Table of Contents</h1></center>"
|
||||
|
||||
def toc_chapter_enter( self, chapter ):
|
||||
print chapter_header + string.join( chapter.title ) + chapter_inter
|
||||
print "<table cellpadding=5>"
|
||||
|
||||
def toc_section_enter( self, section ):
|
||||
print '<tr valign=top><td class="left">'
|
||||
print '<a href="' + self.make_section_url( section ) + '">' + \
|
||||
section.title + '</a></td><td>'
|
||||
|
||||
print self.make_html_para( section.abstract )
|
||||
|
||||
def toc_section_exit( self, section ):
|
||||
print "</td></tr>"
|
||||
|
||||
def toc_chapter_exit( self, chapter ):
|
||||
print "</table>"
|
||||
print chapter_footer
|
||||
|
||||
def toc_index( self, index_filename ):
|
||||
print chapter_header + \
|
||||
'<a href="' + index_filename + '">Global Index</a>' + \
|
||||
chapter_inter + chapter_footer
|
||||
|
||||
def toc_exit( self ):
|
||||
print toc_footer_start + \
|
||||
self.file_prefix + "index.html" + \
|
||||
toc_footer_end
|
||||
|
||||
print self.html_footer
|
||||
|
||||
def toc_dump( self, toc_filename = None, index_filename = None ):
|
||||
if toc_filename == None:
|
||||
toc_filename = self.file_prefix + "toc.html"
|
||||
|
||||
if index_filename == None:
|
||||
index_filename = self.file_prefix + "index.html"
|
||||
|
||||
Formatter.toc_dump( self, toc_filename, index_filename )
|
||||
|
||||
#
|
||||
# Formatting sections
|
||||
#
|
||||
def section_enter( self, section ):
|
||||
print self.html_header
|
||||
|
||||
print section_title_header
|
||||
print section.title
|
||||
print section_title_footer
|
||||
|
||||
maxwidth = 0
|
||||
for b in section.blocks.values():
|
||||
if len( b.name ) > maxwidth:
|
||||
maxwidth = len( b.name )
|
||||
|
||||
width = 70 # XXX magic number
|
||||
if maxwidth <> 0:
|
||||
# print section synopsis
|
||||
print section_synopsis_header
|
||||
print "<table align=center cellspacing=5 cellpadding=0 border=0>"
|
||||
|
||||
columns = width / maxwidth
|
||||
if columns < 1:
|
||||
columns = 1
|
||||
|
||||
count = len( section.block_names )
|
||||
rows = ( count + columns - 1 ) / columns
|
||||
|
||||
for r in range( rows ):
|
||||
line = "<tr>"
|
||||
for c in range( columns ):
|
||||
i = r + c * rows
|
||||
line = line + '<td></td><td>'
|
||||
if i < count:
|
||||
name = section.block_names[i]
|
||||
line = line + '<a href="#' + name + '">' + name + '</a>'
|
||||
|
||||
line = line + '</td>'
|
||||
line = line + "</tr>"
|
||||
print line
|
||||
|
||||
print "</table><br><br>"
|
||||
print section_synopsis_footer
|
||||
|
||||
print description_header
|
||||
print self.make_html_items( section.description )
|
||||
print description_footer
|
||||
|
||||
def block_enter( self, block ):
|
||||
print block_header
|
||||
|
||||
# place html anchor if needed
|
||||
if block.name:
|
||||
print '<h4><a name="' + block.name + '">' + block.name + '</a></h4>'
|
||||
|
||||
# dump the block C source lines now
|
||||
if block.code:
|
||||
header = ''
|
||||
for f in self.headers.keys():
|
||||
if block.source.filename.find( f ) >= 0:
|
||||
header = self.headers[f] + ' (' + f + ')'
|
||||
break;
|
||||
|
||||
# if not header:
|
||||
# sys.stderr.write( \
|
||||
# 'WARNING: No header macro for ' + block.source.filename + '.\n' )
|
||||
|
||||
if header:
|
||||
print header_location_header
|
||||
print 'Defined in ' + header + '.'
|
||||
print header_location_footer
|
||||
|
||||
print source_header
|
||||
for l in block.code:
|
||||
print self.html_source_quote( l, block.name )
|
||||
print source_footer
|
||||
|
||||
def markup_enter( self, markup, block ):
|
||||
if markup.tag == "description":
|
||||
print description_header
|
||||
else:
|
||||
print marker_header + markup.tag + marker_inter
|
||||
|
||||
self.print_html_markup( markup )
|
||||
|
||||
def markup_exit( self, markup, block ):
|
||||
if markup.tag == "description":
|
||||
print description_footer
|
||||
else:
|
||||
print marker_footer
|
||||
|
||||
def block_exit( self, block ):
|
||||
print block_footer_start + self.file_prefix + "index.html" + \
|
||||
block_footer_middle + self.file_prefix + "toc.html" + \
|
||||
block_footer_end
|
||||
|
||||
def section_exit( self, section ):
|
||||
print html_footer
|
||||
|
||||
def section_dump_all( self ):
|
||||
for section in self.sections:
|
||||
self.section_dump( section, self.file_prefix + section.name + '.html' )
|
||||
|
||||
# eof
|
||||
@@ -0,0 +1,436 @@
|
||||
# CMakeLists.txt
|
||||
#
|
||||
# Copyright 2013-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# Written originally by John Cary <cary@txcorp.com>
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
#
|
||||
#
|
||||
# As a preliminary, create a compilation directory and change into it, for
|
||||
# example
|
||||
#
|
||||
# mkdir ~/freetype2.compiled
|
||||
# cd ~/freetype2.compiled
|
||||
#
|
||||
# Now you can say
|
||||
#
|
||||
# cmake <path-to-freetype2-src-dir>
|
||||
#
|
||||
# to create a Makefile that builds a static version of the library.
|
||||
#
|
||||
# For a dynamic library, use
|
||||
#
|
||||
# cmake <path-to-freetype2-src-dir> -D BUILD_SHARED_LIBS:BOOL=true
|
||||
#
|
||||
# For a framework on OS X, use
|
||||
#
|
||||
# cmake <path-to-freetype2-src-dir> -D BUILD_FRAMEWORK:BOOL=true -G Xcode
|
||||
#
|
||||
# instead.
|
||||
#
|
||||
# For an iOS static library, use
|
||||
#
|
||||
# cmake <path-to-freetype2-src-dir> -D IOS_PLATFORM=OS -G Xcode
|
||||
#
|
||||
# or
|
||||
#
|
||||
# cmake <path-to-freetype2-src-dir> -D IOS_PLATFORM=SIMULATOR -G Xcode
|
||||
#
|
||||
# Please refer to the cmake manual for further options, in particular, how
|
||||
# to modify compilation and linking parameters.
|
||||
#
|
||||
# Some notes.
|
||||
#
|
||||
# . `cmake' creates configuration files in
|
||||
#
|
||||
# <build-directory>/include/freetype/config
|
||||
#
|
||||
# which should be further modified if necessary.
|
||||
#
|
||||
# . You can use `cmake' directly on a freshly cloned FreeType git
|
||||
# repository.
|
||||
#
|
||||
# . `CMakeLists.txt' is provided as-is since it is normally not used by the
|
||||
# developer team.
|
||||
#
|
||||
# . If you want to disable the automatic generation of the distribution
|
||||
# targets, add the `-D FREETYPE_NO_DIST=true' command line argument.
|
||||
#
|
||||
# . Set the `WITH_ZLIB', `WITH_BZip2', `WITH_PNG', and `WITH_HarfBuzz'
|
||||
# CMake variables to `ON' or `OFF' to force or skip using a dependency.
|
||||
# Leave a variable undefined (which is the default) to use the dependency
|
||||
# only if it is available. Example:
|
||||
#
|
||||
# cmake ... -DWITH_ZLIB=ON -DWITH_HarfBuzz=OFF ...
|
||||
|
||||
|
||||
cmake_minimum_required(VERSION 2.6)
|
||||
|
||||
|
||||
include(CheckIncludeFile)
|
||||
|
||||
|
||||
# CMAKE_TOOLCHAIN_FILE must be set before `project' is called, which
|
||||
# configures the base build environment and references the toolchain file
|
||||
if (APPLE)
|
||||
if (DEFINED IOS_PLATFORM)
|
||||
if (NOT "${IOS_PLATFORM}" STREQUAL "OS"
|
||||
AND NOT "${IOS_PLATFORM}" STREQUAL "SIMULATOR")
|
||||
message(FATAL_ERROR
|
||||
"IOS_PLATFORM must be set to either OS or SIMULATOR")
|
||||
endif ()
|
||||
if (NOT "${CMAKE_GENERATOR}" STREQUAL "Xcode")
|
||||
message(AUTHOR_WARNING
|
||||
"You should use Xcode generator with IOS_PLATFORM enabled to get Universal builds.")
|
||||
endif ()
|
||||
if (BUILD_SHARED_LIBS)
|
||||
message(FATAL_ERROR
|
||||
"BUILD_SHARED_LIBS can not be on with IOS_PLATFORM enabled")
|
||||
endif ()
|
||||
if (BUILD_FRAMEWORK)
|
||||
message(FATAL_ERROR
|
||||
"BUILD_FRAMEWORK can not be on with IOS_PLATFORM enabled")
|
||||
endif ()
|
||||
|
||||
# iOS only uses static libraries
|
||||
set(BUILD_SHARED_LIBS OFF)
|
||||
|
||||
set(CMAKE_TOOLCHAIN_FILE
|
||||
${PROJECT_SOURCE_DIR}/builds/cmake/iOS.cmake)
|
||||
endif ()
|
||||
else ()
|
||||
if (DEFINED IOS_PLATFORM)
|
||||
message(FATAL_ERROR "IOS_PLATFORM is not supported on this platform")
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
|
||||
project(freetype)
|
||||
|
||||
|
||||
if (WIN32 AND NOT MINGW AND BUILD_SHARED_LIBS)
|
||||
message(FATAL_ERROR "Building shared libraries on Windows needs MinGW")
|
||||
endif ()
|
||||
|
||||
# Disallow in-source builds
|
||||
if ("${PROJECT_BINARY_DIR}" STREQUAL "${PROJECT_SOURCE_DIR}")
|
||||
message(FATAL_ERROR
|
||||
"
|
||||
In-source builds are not permitted! Make a separate folder for"
|
||||
" building, e.g.,"
|
||||
"
|
||||
mkdir build; cd build; cmake .."
|
||||
"
|
||||
Before that, remove the files created by this failed run with"
|
||||
"
|
||||
rm -rf CMakeCache.txt CMakeFiles")
|
||||
endif ()
|
||||
|
||||
|
||||
# Add local cmake modules
|
||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/builds/cmake)
|
||||
|
||||
|
||||
if (BUILD_FRAMEWORK)
|
||||
if (NOT "${CMAKE_GENERATOR}" STREQUAL "Xcode")
|
||||
message(FATAL_ERROR
|
||||
"You should use Xcode generator with BUILD_FRAMEWORK enabled")
|
||||
endif ()
|
||||
set(CMAKE_OSX_ARCHITECTURES "$(ARCHS_STANDARD_32_64_BIT)")
|
||||
set(BUILD_SHARED_LIBS ON)
|
||||
endif ()
|
||||
|
||||
|
||||
set(VERSION_MAJOR "2")
|
||||
set(VERSION_MINOR "6")
|
||||
set(VERSION_PATCH "2")
|
||||
|
||||
set(PROJECT_VERSION ${VERSION_MAJOR}.${VERSION_MINOR}.${VERSION_PATCH})
|
||||
set(SHARED_LIBRARY_VERSION ${VERSION_MAJOR}.${VERSION_MINOR})
|
||||
|
||||
|
||||
# Compiler definitions for building the library
|
||||
add_definitions(-DFT2_BUILD_LIBRARY)
|
||||
|
||||
|
||||
# Find dependencies
|
||||
foreach (d ZLIB BZip2 PNG HarfBuzz)
|
||||
string(TOUPPER "${d}" D)
|
||||
|
||||
if (DEFINED WITH_${d} OR DEFINED WITH_${D})
|
||||
if (WITH_${d} OR WITH_${D})
|
||||
find_package(${d} QUIET REQUIRED)
|
||||
endif ()
|
||||
else ()
|
||||
find_package(${d} QUIET)
|
||||
endif ()
|
||||
|
||||
if (${d}_FOUND OR ${D}_FOUND)
|
||||
message(STATUS "Building with ${d}")
|
||||
endif()
|
||||
endforeach ()
|
||||
|
||||
|
||||
message(STATUS
|
||||
"Creating directory ${PROJECT_BINARY_DIR}/include/freetype/config")
|
||||
file(MAKE_DIRECTORY "${PROJECT_BINARY_DIR}/include/freetype/config")
|
||||
|
||||
|
||||
# Create the configuration file
|
||||
message(STATUS
|
||||
"Creating file ${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h")
|
||||
|
||||
if (UNIX)
|
||||
check_include_file("unistd.h" HAVE_UNISTD_H)
|
||||
check_include_file("fcntl.h" HAVE_FCNTL_H)
|
||||
check_include_file("stdint.h" HAVE_STDINT_H)
|
||||
|
||||
file(READ "${PROJECT_SOURCE_DIR}/builds/unix/ftconfig.in"
|
||||
FTCONFIG_H)
|
||||
if (HAVE_UNISTD_H)
|
||||
string(REGEX REPLACE
|
||||
"#undef +(HAVE_UNISTD_H)" "#define \\1"
|
||||
FTCONFIG_H "${FTCONFIG_H}")
|
||||
endif ()
|
||||
if (HAVE_FCNTL_H)
|
||||
string(REGEX REPLACE
|
||||
"#undef +(HAVE_FCNTL_H)" "#define \\1"
|
||||
FTCONFIG_H "${FTCONFIG_H}")
|
||||
endif ()
|
||||
if (HAVE_STDINT_H)
|
||||
string(REGEX REPLACE
|
||||
"#undef +(HAVE_STDINT_H)" "#define \\1"
|
||||
FTCONFIG_H "${FTCONFIG_H}")
|
||||
endif ()
|
||||
string(REPLACE "/undef " "#undef "
|
||||
FTCONFIG_H "${FTCONFIG_H}")
|
||||
file(WRITE "${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h"
|
||||
"${FTCONFIG_H}")
|
||||
else ()
|
||||
file(READ "${PROJECT_SOURCE_DIR}/include/freetype/config/ftconfig.h"
|
||||
FTCONFIG_H)
|
||||
file(WRITE "${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h"
|
||||
"${FTCONFIG_H}")
|
||||
endif ()
|
||||
|
||||
|
||||
# Create the options file
|
||||
message(STATUS
|
||||
"Creating file ${PROJECT_BINARY_DIR}/include/freetype/config/ftoption.h")
|
||||
|
||||
file(READ "${PROJECT_SOURCE_DIR}/include/freetype/config/ftoption.h"
|
||||
FTOPTION_H)
|
||||
if (ZLIB_FOUND)
|
||||
string(REGEX REPLACE
|
||||
"/\\* +(#define +FT_CONFIG_OPTION_SYSTEM_ZLIB) +\\*/" "\\1"
|
||||
FTOPTION_H "${FTOPTION_H}")
|
||||
endif ()
|
||||
if (BZIP2_FOUND)
|
||||
string(REGEX REPLACE
|
||||
"/\\* +(#define +FT_CONFIG_OPTION_USE_BZIP2) +\\*/" "\\1"
|
||||
FTOPTION_H "${FTOPTION_H}")
|
||||
endif ()
|
||||
if (PNG_FOUND)
|
||||
string(REGEX REPLACE
|
||||
"/\\* +(#define +FT_CONFIG_OPTION_USE_PNG) +\\*/" "\\1"
|
||||
FTOPTION_H "${FTOPTION_H}")
|
||||
endif ()
|
||||
if (HARFBUZZ_FOUND)
|
||||
string(REGEX REPLACE
|
||||
"/\\* +(#define +FT_CONFIG_OPTION_USE_HARFBUZZ) +\\*/" "\\1"
|
||||
FTOPTION_H "${FTOPTION_H}")
|
||||
endif ()
|
||||
file(WRITE "${PROJECT_BINARY_DIR}/include/freetype/config/ftoption.h"
|
||||
"${FTOPTION_H}")
|
||||
|
||||
|
||||
# Specify library include directories
|
||||
include_directories("${PROJECT_SOURCE_DIR}/include")
|
||||
include_directories(BEFORE "${PROJECT_BINARY_DIR}/include")
|
||||
|
||||
|
||||
file(GLOB PUBLIC_HEADERS "include/ft2build.h" "include/freetype/*.h")
|
||||
file(GLOB PUBLIC_CONFIG_HEADERS "include/freetype/config/*.h")
|
||||
file(GLOB PRIVATE_HEADERS "include/freetype/internal/*.h")
|
||||
|
||||
|
||||
set(BASE_SRCS
|
||||
src/autofit/autofit.c
|
||||
src/base/ftbase.c
|
||||
src/base/ftbbox.c
|
||||
src/base/ftbdf.c
|
||||
src/base/ftbitmap.c
|
||||
src/base/ftcid.c
|
||||
src/base/ftfntfmt.c
|
||||
src/base/ftfstype.c
|
||||
src/base/ftgasp.c
|
||||
src/base/ftglyph.c
|
||||
src/base/ftgxval.c
|
||||
src/base/ftinit.c
|
||||
src/base/ftlcdfil.c
|
||||
src/base/ftmm.c
|
||||
src/base/ftotval.c
|
||||
src/base/ftpatent.c
|
||||
src/base/ftpfr.c
|
||||
src/base/ftstroke.c
|
||||
src/base/ftsynth.c
|
||||
src/base/ftsystem.c
|
||||
src/base/fttype1.c
|
||||
src/base/ftwinfnt.c
|
||||
src/bdf/bdf.c
|
||||
src/bzip2/ftbzip2.c
|
||||
src/cache/ftcache.c
|
||||
src/cff/cff.c
|
||||
src/cid/type1cid.c
|
||||
src/gzip/ftgzip.c
|
||||
src/lzw/ftlzw.c
|
||||
src/pcf/pcf.c
|
||||
src/pfr/pfr.c
|
||||
src/psaux/psaux.c
|
||||
src/pshinter/pshinter.c
|
||||
src/psnames/psnames.c
|
||||
src/raster/raster.c
|
||||
src/sfnt/sfnt.c
|
||||
src/smooth/smooth.c
|
||||
src/truetype/truetype.c
|
||||
src/type1/type1.c
|
||||
src/type42/type42.c
|
||||
src/winfonts/winfnt.c
|
||||
)
|
||||
|
||||
if (WIN32)
|
||||
set(BASE_SRCS ${BASE_SRCS} builds/windows/ftdebug.c)
|
||||
elseif (WINCE)
|
||||
set(BASE_SRCS ${BASE_SRCS} builds/wince/ftdebug.c)
|
||||
else ()
|
||||
set(BASE_SRCS ${BASE_SRCS} src/base/ftdebug.c)
|
||||
endif ()
|
||||
|
||||
|
||||
if (BUILD_FRAMEWORK)
|
||||
set(BASE_SRCS
|
||||
${BASE_SRCS}
|
||||
builds/mac/freetype-Info.plist
|
||||
)
|
||||
endif ()
|
||||
|
||||
set(CMAKE_DEBUG_POSTFIX d)
|
||||
|
||||
add_library(freetype
|
||||
${PUBLIC_HEADERS}
|
||||
${PUBLIC_CONFIG_HEADERS}
|
||||
${PRIVATE_HEADERS}
|
||||
${BASE_SRCS}
|
||||
)
|
||||
|
||||
|
||||
if (BUILD_SHARED_LIBS)
|
||||
set_target_properties(freetype PROPERTIES
|
||||
VERSION ${PROJECT_VERSION}
|
||||
SOVERSION ${SHARED_LIBRARY_VERSION}
|
||||
COMPILE_DEFINITIONS freetype_EXPORTS
|
||||
)
|
||||
endif ()
|
||||
|
||||
|
||||
if (BUILD_FRAMEWORK)
|
||||
set_property(SOURCE ${PUBLIC_CONFIG_HEADERS}
|
||||
PROPERTY MACOSX_PACKAGE_LOCATION Headers/config
|
||||
)
|
||||
set_target_properties(freetype PROPERTIES
|
||||
FRAMEWORK TRUE
|
||||
MACOSX_FRAMEWORK_INFO_PLIST builds/mac/freetype-Info.plist
|
||||
PUBLIC_HEADER "${PUBLIC_HEADERS}"
|
||||
XCODE_ATTRIBUTE_INSTALL_PATH "@rpath"
|
||||
)
|
||||
endif ()
|
||||
|
||||
if (NOT CMAKE_VERSION VERSION_LESS 2.8.11)
|
||||
target_include_directories(freetype
|
||||
PUBLIC $<INSTALL_INTERFACE:include/freetype2>)
|
||||
endif ()
|
||||
|
||||
if (CMAKE_VERSION VERSION_LESS 2.8.12)
|
||||
set(MAYBE_PRIVATE "")
|
||||
else ()
|
||||
set(MAYBE_PRIVATE "PRIVATE")
|
||||
endif ()
|
||||
|
||||
if (ZLIB_FOUND)
|
||||
target_link_libraries(freetype ${MAYBE_PRIVATE} ${ZLIB_LIBRARIES})
|
||||
include_directories(${ZLIB_INCLUDE_DIRS})
|
||||
endif ()
|
||||
if (BZIP2_FOUND)
|
||||
target_link_libraries(freetype ${MAYBE_PRIVATE} ${BZIP2_LIBRARIES})
|
||||
include_directories(${BZIP2_INCLUDE_DIR}) # not BZIP2_INCLUDE_DIRS
|
||||
endif ()
|
||||
if (PNG_FOUND)
|
||||
add_definitions(${PNG_DEFINITIONS})
|
||||
target_link_libraries(freetype ${MAYBE_PRIVATE} ${PNG_LIBRARIES})
|
||||
include_directories(${PNG_INCLUDE_DIRS})
|
||||
endif ()
|
||||
if (HARFBUZZ_FOUND)
|
||||
target_link_libraries(freetype ${MAYBE_PRIVATE} ${HARFBUZZ_LIBRARIES})
|
||||
include_directories(${HARFBUZZ_INCLUDE_DIRS})
|
||||
endif ()
|
||||
|
||||
|
||||
# Installations
|
||||
# Note the trailing slash in the argument to the `DIRECTORY' directive
|
||||
install(DIRECTORY ${PROJECT_SOURCE_DIR}/include/
|
||||
DESTINATION include/freetype2
|
||||
PATTERN "internal" EXCLUDE
|
||||
PATTERN "ftconfig.h" EXCLUDE
|
||||
PATTERN "ftoption.h" EXCLUDE
|
||||
)
|
||||
install(FILES
|
||||
${PROJECT_BINARY_DIR}/include/freetype/config/ftconfig.h
|
||||
${PROJECT_BINARY_DIR}/include/freetype/config/ftoption.h
|
||||
DESTINATION include/freetype2/freetype/config
|
||||
)
|
||||
install(TARGETS freetype
|
||||
EXPORT freetype-targets
|
||||
RUNTIME DESTINATION bin
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
||||
FRAMEWORK DESTINATION Library/Frameworks
|
||||
)
|
||||
install(EXPORT freetype-targets
|
||||
DESTINATION lib/cmake/freetype
|
||||
FILE freetype-config.cmake
|
||||
)
|
||||
|
||||
|
||||
# Packaging
|
||||
# CPack version numbers for release tarball name.
|
||||
set(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR})
|
||||
set(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR})
|
||||
set(CPACK_PACKAGE_VERSION_PATCH ${VERSION_PATCH}})
|
||||
if (NOT DEFINED CPACK_PACKAGE_DESCRIPTION_SUMMARY)
|
||||
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${CMAKE_PROJECT_NAME}")
|
||||
endif ()
|
||||
if (NOT DEFINED CPACK_SOURCE_PACKAGE_FILE_NAME)
|
||||
set(CPACK_SOURCE_PACKAGE_FILE_NAME
|
||||
"${CMAKE_PROJECT_NAME}-${PROJECT_VERSION}-r${PROJECT_REV}"
|
||||
CACHE INTERNAL "tarball basename"
|
||||
)
|
||||
endif ()
|
||||
set(CPACK_SOURCE_GENERATOR TGZ)
|
||||
set(CPACK_SOURCE_IGNORE_FILES
|
||||
"/CVS/;/.svn/;.swp$;.#;/#;/build/;/serial/;/ser/;/parallel/;/par/;~;/preconfig.out;/autom4te.cache/;/.config")
|
||||
set(CPACK_GENERATOR TGZ)
|
||||
include(CPack)
|
||||
|
||||
|
||||
# Add `make dist' target if FREETYPE_DIST is set (which is the default)
|
||||
if (NOT DEFINED FREETYPE_NO_DIST)
|
||||
add_custom_target(dist COMMAND ${CMAKE_MAKE_PROGRAM} package_source)
|
||||
endif ()
|
||||
|
||||
# eof
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -1,204 +1,209 @@
|
||||
# FreeType 2 top Jamfile.
|
||||
#
|
||||
# Copyright 2001-2011 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# The HDRMACRO is already defined in FTJam and is used to add
|
||||
# the content of certain macros to the list of included header
|
||||
# files.
|
||||
#
|
||||
# We can compile FreeType 2 with classic Jam however thanks to
|
||||
# the following code
|
||||
#
|
||||
if ! $(JAM_TOOLSET)
|
||||
{
|
||||
rule HDRMACRO
|
||||
{
|
||||
# nothing
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# We need to invoke a SubDir rule if the FT2 source directory top is not the
|
||||
# current directory. This allows us to build FreeType 2 as part of a larger
|
||||
# project easily.
|
||||
#
|
||||
if $(FT2_TOP) != $(DOT)
|
||||
{
|
||||
SubDir FT2_TOP ;
|
||||
}
|
||||
|
||||
|
||||
# The following macros define the include directory, the source directory,
|
||||
# and the final library name (without library extensions). They can be
|
||||
# replaced by other definitions when the library is compiled as part of
|
||||
# a larger project.
|
||||
#
|
||||
|
||||
# Name of FreeType include directory during compilation.
|
||||
# This is relative to FT2_TOP.
|
||||
#
|
||||
FT2_INCLUDE_DIR ?= include ;
|
||||
|
||||
# Name of FreeType source directory during compilation.
|
||||
# This is relative to FT2_TOP.
|
||||
#
|
||||
FT2_SRC_DIR ?= src ;
|
||||
|
||||
# Name of final library, without extension.
|
||||
#
|
||||
FT2_LIB ?= $(LIBPREFIX)freetype ;
|
||||
|
||||
|
||||
# Define FT2_BUILD_INCLUDE to point to your build-specific directory.
|
||||
# This is prepended to FT2_INCLUDE_DIR. It can be used to specify
|
||||
# the location of a custom <ft2build.h> which will point to custom
|
||||
# versions of `ftmodule.h' and `ftoption.h', for example.
|
||||
#
|
||||
FT2_BUILD_INCLUDE ?= ;
|
||||
|
||||
# The list of modules to compile on any given build of the library.
|
||||
# By default, this will contain _all_ modules defined in FT2_SRC_DIR.
|
||||
#
|
||||
# IMPORTANT: You'll need to change the content of `ftmodule.h' as well
|
||||
# if you modify this list or provide your own.
|
||||
#
|
||||
FT2_COMPONENTS ?= autofit # auto-fitter
|
||||
base # base component (public APIs)
|
||||
bdf # BDF font driver
|
||||
cache # cache sub-system
|
||||
cff # CFF/CEF font driver
|
||||
cid # PostScript CID-keyed font driver
|
||||
pcf # PCF font driver
|
||||
bzip2 # support for bzip2-compressed PCF font
|
||||
gzip # support for gzip-compressed PCF font
|
||||
lzw # support for LZW-compressed PCF font
|
||||
pfr # PFR/TrueDoc font driver
|
||||
psaux # common PostScript routines module
|
||||
pshinter # PostScript hinter module
|
||||
psnames # PostScript names handling
|
||||
raster # monochrome rasterizer
|
||||
smooth # anti-aliased rasterizer
|
||||
sfnt # SFNT-based format support routines
|
||||
truetype # TrueType font driver
|
||||
type1 # PostScript Type 1 font driver
|
||||
type42 # PostScript Type 42 (embedded TrueType) driver
|
||||
winfonts # Windows FON/FNT font driver
|
||||
;
|
||||
|
||||
|
||||
# Don't touch.
|
||||
#
|
||||
FT2_INCLUDE = $(FT2_BUILD_INCLUDE)
|
||||
[ FT2_SubDir $(FT2_INCLUDE_DIR) ] ;
|
||||
|
||||
FT2_SRC = [ FT2_SubDir $(FT2_SRC_DIR) ] ;
|
||||
|
||||
# Location of API Reference Documentation
|
||||
#
|
||||
if $(DOC_DIR)
|
||||
{
|
||||
DOC_DIR = $(DOCDIR:T) ;
|
||||
}
|
||||
else
|
||||
{
|
||||
DOC_DIR = docs/reference ;
|
||||
}
|
||||
|
||||
|
||||
# Only used by FreeType developers.
|
||||
#
|
||||
if $(DEBUG_HINTER)
|
||||
{
|
||||
CCFLAGS += -DDEBUG_HINTER ;
|
||||
}
|
||||
|
||||
|
||||
# We need `freetype2/include' in the current include path in order to
|
||||
# compile any part of FreeType 2.
|
||||
#: updating documentation for upcoming release
|
||||
|
||||
HDRS += $(FT2_INCLUDE) ;
|
||||
|
||||
|
||||
# We need to #define FT2_BUILD_LIBRARY so that our sources find the
|
||||
# internal headers
|
||||
#
|
||||
DEFINES += FT2_BUILD_LIBRARY ;
|
||||
|
||||
# Uncomment the following line if you want to build individual source files
|
||||
# for each FreeType 2 module. This is only useful during development, and
|
||||
# is better defined as an environment variable anyway!
|
||||
#
|
||||
# FT2_MULTI = true ;
|
||||
|
||||
|
||||
# The file <freetype/config/ftheader.h> is used to define macros that are
|
||||
# later used in #include statements. It needs to be parsed in order to
|
||||
# record these definitions.
|
||||
#
|
||||
HDRMACRO [ FT2_SubDir include freetype config ftheader.h ] ;
|
||||
HDRMACRO [ FT2_SubDir include freetype internal internal.h ] ;
|
||||
|
||||
|
||||
# Now include the Jamfile in `freetype2/src', used to drive the compilation
|
||||
# of each FreeType 2 component and/or module.
|
||||
#
|
||||
SubInclude FT2_TOP $(FT2_SRC_DIR) ;
|
||||
|
||||
# Handle the generation of the `ftexport.sym' file which contain the list
|
||||
# of exported symbols. This can be used on Unix by libtool.
|
||||
#
|
||||
SubInclude FT2_TOP $(FT2_SRC_DIR) tools ;
|
||||
|
||||
rule GenExportSymbols
|
||||
{
|
||||
local apinames = apinames$(SUFEXE) ;
|
||||
local headers = [ Glob $(2) : *.h ] ;
|
||||
|
||||
LOCATE on $(1) = $(ALL_LOCATE_TARGET) ;
|
||||
|
||||
APINAMES on $(1) = apinames$(SUFEXE) ;
|
||||
|
||||
Depends $(1) : $(apinames) $(headers) ;
|
||||
GenExportSymbols1 $(1) : $(headers) ;
|
||||
Clean clean : $(1) ;
|
||||
}
|
||||
|
||||
actions GenExportSymbols1 bind APINAMES
|
||||
{
|
||||
$(APINAMES) $(2) > $(1)
|
||||
}
|
||||
|
||||
GenExportSymbols ftexport.sym : include/freetype include/freetype/cache ;
|
||||
|
||||
# Test files (hinter debugging). Only used by FreeType developers.
|
||||
#
|
||||
if $(DEBUG_HINTER)
|
||||
{
|
||||
SubInclude FT2_TOP tests ;
|
||||
}
|
||||
|
||||
rule RefDoc
|
||||
{
|
||||
Depends $1 : all ;
|
||||
NotFile $1 ;
|
||||
Always $1 ;
|
||||
}
|
||||
|
||||
actions RefDoc
|
||||
{
|
||||
python $(FT2_SRC)/tools/docmaker/docmaker.py --prefix=ft2 --title=FreeType-2.5.0 --output=$(DOC_DIR) $(FT2_INCLUDE)/freetype/*.h $(FT2_INCLUDE)/freetype/config/*.h
|
||||
}
|
||||
|
||||
RefDoc refdoc ;
|
||||
|
||||
|
||||
# end of top Jamfile
|
||||
# FreeType 2 top Jamfile.
|
||||
#
|
||||
# Copyright 2001-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# The HDRMACRO is already defined in FTJam and is used to add
|
||||
# the content of certain macros to the list of included header
|
||||
# files.
|
||||
#
|
||||
# We can compile FreeType 2 with classic Jam however thanks to
|
||||
# the following code
|
||||
#
|
||||
if ! $(JAM_TOOLSET)
|
||||
{
|
||||
rule HDRMACRO
|
||||
{
|
||||
# nothing
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# We need to invoke a SubDir rule if the FT2 source directory top is not the
|
||||
# current directory. This allows us to build FreeType 2 as part of a larger
|
||||
# project easily.
|
||||
#
|
||||
if $(FT2_TOP) != $(DOT)
|
||||
{
|
||||
SubDir FT2_TOP ;
|
||||
}
|
||||
|
||||
|
||||
# The following macros define the include directory, the source directory,
|
||||
# and the final library name (without library extensions). They can be
|
||||
# replaced by other definitions when the library is compiled as part of
|
||||
# a larger project.
|
||||
#
|
||||
|
||||
# Name of FreeType include directory during compilation.
|
||||
# This is relative to FT2_TOP.
|
||||
#
|
||||
FT2_INCLUDE_DIR ?= include ;
|
||||
|
||||
# Name of FreeType source directory during compilation.
|
||||
# This is relative to FT2_TOP.
|
||||
#
|
||||
FT2_SRC_DIR ?= src ;
|
||||
|
||||
# Name of final library, without extension.
|
||||
#
|
||||
FT2_LIB ?= $(LIBPREFIX)freetype ;
|
||||
|
||||
|
||||
# Define FT2_BUILD_INCLUDE to point to your build-specific directory.
|
||||
# This is prepended to FT2_INCLUDE_DIR. It can be used to specify
|
||||
# the location of a custom <ft2build.h> which will point to custom
|
||||
# versions of `ftmodule.h' and `ftoption.h', for example.
|
||||
#
|
||||
FT2_BUILD_INCLUDE ?= ;
|
||||
|
||||
# The list of modules to compile on any given build of the library.
|
||||
# By default, this will contain _all_ modules defined in FT2_SRC_DIR.
|
||||
#
|
||||
# IMPORTANT: You'll need to change the content of `ftmodule.h' as well
|
||||
# if you modify this list or provide your own.
|
||||
#
|
||||
FT2_COMPONENTS ?= autofit # auto-fitter
|
||||
base # base component (public APIs)
|
||||
bdf # BDF font driver
|
||||
bzip2 # support for bzip2-compressed PCF font
|
||||
cache # cache sub-system
|
||||
cff # CFF/CEF font driver
|
||||
cid # PostScript CID-keyed font driver
|
||||
gzip # support for gzip-compressed PCF font
|
||||
lzw # support for LZW-compressed PCF font
|
||||
pcf # PCF font driver
|
||||
pfr # PFR/TrueDoc font driver
|
||||
psaux # common PostScript routines module
|
||||
pshinter # PostScript hinter module
|
||||
psnames # PostScript names handling
|
||||
raster # monochrome rasterizer
|
||||
sfnt # SFNT-based format support routines
|
||||
smooth # anti-aliased rasterizer
|
||||
truetype # TrueType font driver
|
||||
type1 # PostScript Type 1 font driver
|
||||
type42 # PostScript Type 42 (embedded TrueType) driver
|
||||
winfonts # Windows FON/FNT font driver
|
||||
;
|
||||
|
||||
|
||||
# Don't touch.
|
||||
#
|
||||
FT2_INCLUDE = $(FT2_BUILD_INCLUDE)
|
||||
[ FT2_SubDir $(FT2_INCLUDE_DIR) ] ;
|
||||
|
||||
FT2_SRC = [ FT2_SubDir $(FT2_SRC_DIR) ] ;
|
||||
|
||||
# Location of API Reference Documentation
|
||||
#
|
||||
if $(DOC_DIR)
|
||||
{
|
||||
DOC_DIR = $(DOCDIR:T) ;
|
||||
}
|
||||
else
|
||||
{
|
||||
DOC_DIR = docs/reference ;
|
||||
}
|
||||
|
||||
|
||||
# Only used by FreeType developers.
|
||||
#
|
||||
if $(DEBUG_HINTER)
|
||||
{
|
||||
CCFLAGS += -DDEBUG_HINTER ;
|
||||
}
|
||||
|
||||
|
||||
# We need `include' in the current include path in order to
|
||||
# compile any part of FreeType 2.
|
||||
#
|
||||
HDRS += $(FT2_INCLUDE) ;
|
||||
|
||||
|
||||
# We need to #define FT2_BUILD_LIBRARY so that our sources find the
|
||||
# internal headers
|
||||
#
|
||||
CCFLAGS += -DFT2_BUILD_LIBRARY ;
|
||||
|
||||
# Uncomment the following line if you want to build individual source files
|
||||
# for each FreeType 2 module. This is only useful during development, and
|
||||
# is better defined as an environment variable anyway!
|
||||
#
|
||||
# FT2_MULTI = true ;
|
||||
|
||||
|
||||
# The files `ftheader.h', `internal.h', and `ftserv.h' are used to define
|
||||
# macros that are later used in #include statements. They need to be parsed
|
||||
# in order to record these definitions.
|
||||
#
|
||||
HDRMACRO [ FT2_SubDir $(FT2_INCLUDE_DIR) freetype config ftheader.h ] ;
|
||||
HDRMACRO [ FT2_SubDir $(FT2_INCLUDE_DIR) freetype internal internal.h ] ;
|
||||
HDRMACRO [ FT2_SubDir $(FT2_INCLUDE_DIR) freetype internal ftserv.h ] ;
|
||||
|
||||
|
||||
# Now include the Jamfile in `freetype2/src', used to drive the compilation
|
||||
# of each FreeType 2 component and/or module.
|
||||
#
|
||||
SubInclude FT2_TOP $(FT2_SRC_DIR) ;
|
||||
|
||||
# Handle the generation of the `ftexport.sym' file, which contains the list
|
||||
# of exported symbols. This can be used on Unix by libtool.
|
||||
#
|
||||
SubInclude FT2_TOP $(FT2_SRC_DIR) tools ;
|
||||
|
||||
rule GenExportSymbols
|
||||
{
|
||||
local apinames = apinames$(SUFEXE) ;
|
||||
local headers = [ Glob $(2) : *.h ] ;
|
||||
|
||||
LOCATE on $(1) = $(ALL_LOCATE_TARGET) ;
|
||||
|
||||
APINAMES on $(1) = apinames$(SUFEXE) ;
|
||||
|
||||
Depends $(1) : $(apinames) $(headers) ;
|
||||
GenExportSymbols1 $(1) : $(headers) ;
|
||||
Clean clean : $(1) ;
|
||||
}
|
||||
|
||||
actions GenExportSymbols1 bind APINAMES
|
||||
{
|
||||
$(APINAMES) $(2) > $(1)
|
||||
}
|
||||
|
||||
GenExportSymbols ftexport.sym : include include/cache ;
|
||||
|
||||
# Test files (hinter debugging). Only used by FreeType developers.
|
||||
#
|
||||
if $(DEBUG_HINTER)
|
||||
{
|
||||
SubInclude FT2_TOP tests ;
|
||||
}
|
||||
|
||||
rule RefDoc
|
||||
{
|
||||
Depends $1 : all ;
|
||||
NotFile $1 ;
|
||||
Always $1 ;
|
||||
}
|
||||
|
||||
actions RefDoc
|
||||
{
|
||||
python $(FT2_SRC)/tools/docmaker/docmaker.py
|
||||
--prefix=ft2
|
||||
--title=FreeType-2.6.2
|
||||
--output=$(DOC_DIR)
|
||||
$(FT2_INCLUDE)/freetype/*.h
|
||||
$(FT2_INCLUDE)/freetype/config/*.h
|
||||
}
|
||||
|
||||
RefDoc refdoc ;
|
||||
|
||||
|
||||
# end of top Jamfile
|
||||
@@ -1,71 +1,71 @@
|
||||
# FreeType 2 JamRules.
|
||||
#
|
||||
# Copyright 2001, 2002, 2003 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# This file contains the Jam rules needed to build the FreeType 2 library.
|
||||
# It is shared by all Jamfiles and is included only once in the build
|
||||
# process.
|
||||
#
|
||||
|
||||
|
||||
# Call SubDirHdrs on a list of directories.
|
||||
#
|
||||
rule AddSubDirHdrs
|
||||
{
|
||||
local x ;
|
||||
|
||||
for x in $(<)
|
||||
{
|
||||
SubDirHdrs $(x) ;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# Determine prefix of library file. We must use "libxxxxx" on Unix systems,
|
||||
# while all other simply use the real name.
|
||||
#
|
||||
if $(UNIX)
|
||||
{
|
||||
LIBPREFIX ?= lib ;
|
||||
}
|
||||
else
|
||||
{
|
||||
LIBPREFIX ?= "" ;
|
||||
}
|
||||
|
||||
# FT2_TOP contains the location of the FreeType source directory. You can
|
||||
# set it to a specific value if you want to compile the library as part of a
|
||||
# larger project.
|
||||
#
|
||||
FT2_TOP ?= $(DOT) ;
|
||||
|
||||
# Define a new rule used to declare a sub directory of the Nirvana source
|
||||
# tree.
|
||||
#
|
||||
rule FT2_SubDir
|
||||
{
|
||||
if $(FT2_TOP) = $(DOT)
|
||||
{
|
||||
return [ FDirName $(<) ] ;
|
||||
}
|
||||
else
|
||||
{
|
||||
return [ FDirName $(FT2_TOP) $(<) ] ;
|
||||
}
|
||||
}
|
||||
|
||||
# We also set ALL_LOCATE_TARGET in order to place all object and library
|
||||
# files in "objs".
|
||||
#
|
||||
ALL_LOCATE_TARGET ?= [ FT2_SubDir objs ] ;
|
||||
|
||||
|
||||
# end of Jamrules
|
||||
# FreeType 2 JamRules.
|
||||
#
|
||||
# Copyright 2001-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# This file contains the Jam rules needed to build the FreeType 2 library.
|
||||
# It is shared by all Jamfiles and is included only once in the build
|
||||
# process.
|
||||
#
|
||||
|
||||
|
||||
# Call SubDirHdrs on a list of directories.
|
||||
#
|
||||
rule AddSubDirHdrs
|
||||
{
|
||||
local x ;
|
||||
|
||||
for x in $(<)
|
||||
{
|
||||
SubDirHdrs $(x) ;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
# Determine prefix of library file. We must use "libxxxxx" on Unix systems,
|
||||
# while all other simply use the real name.
|
||||
#
|
||||
if $(UNIX)
|
||||
{
|
||||
LIBPREFIX ?= lib ;
|
||||
}
|
||||
else
|
||||
{
|
||||
LIBPREFIX ?= "" ;
|
||||
}
|
||||
|
||||
# FT2_TOP contains the location of the FreeType source directory. You can
|
||||
# set it to a specific value if you want to compile the library as part of a
|
||||
# larger project.
|
||||
#
|
||||
FT2_TOP ?= $(DOT) ;
|
||||
|
||||
# Define a new rule used to declare a sub directory of the Nirvana source
|
||||
# tree.
|
||||
#
|
||||
rule FT2_SubDir
|
||||
{
|
||||
if $(FT2_TOP) = $(DOT)
|
||||
{
|
||||
return [ FDirName $(<) ] ;
|
||||
}
|
||||
else
|
||||
{
|
||||
return [ FDirName $(FT2_TOP) $(<) ] ;
|
||||
}
|
||||
}
|
||||
|
||||
# We also set ALL_LOCATE_TARGET in order to place all object and library
|
||||
# files in "objs".
|
||||
#
|
||||
ALL_LOCATE_TARGET ?= [ FT2_SubDir objs ] ;
|
||||
|
||||
|
||||
# end of Jamrules
|
||||
@@ -1,34 +1,34 @@
|
||||
#
|
||||
# FreeType 2 build system -- top-level Makefile
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2000, 2002, 2006 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# Project names
|
||||
#
|
||||
PROJECT := freetype
|
||||
PROJECT_TITLE := FreeType
|
||||
|
||||
# The variable TOP_DIR holds the path to the topmost directory in the project
|
||||
# engine source hierarchy. If it is not defined, default it to `.'.
|
||||
#
|
||||
TOP_DIR ?= .
|
||||
|
||||
# The variable OBJ_DIR gives the location where object files and the
|
||||
# FreeType library are built.
|
||||
#
|
||||
OBJ_DIR ?= $(TOP_DIR)/objs
|
||||
|
||||
|
||||
include $(TOP_DIR)/builds/toplevel.mk
|
||||
|
||||
# EOF
|
||||
#
|
||||
# FreeType 2 build system -- top-level Makefile
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# Project names
|
||||
#
|
||||
PROJECT := freetype
|
||||
PROJECT_TITLE := FreeType
|
||||
|
||||
# The variable TOP_DIR holds the path to the topmost directory in the project
|
||||
# engine source hierarchy. If it is not defined, default it to `.'.
|
||||
#
|
||||
TOP_DIR ?= .
|
||||
|
||||
# The variable OBJ_DIR gives the location where object files and the
|
||||
# FreeType library are built.
|
||||
#
|
||||
OBJ_DIR ?= $(TOP_DIR)/objs
|
||||
|
||||
|
||||
include $(TOP_DIR)/builds/toplevel.mk
|
||||
|
||||
# EOF
|
||||
@@ -1,83 +1,84 @@
|
||||
FreeType 2.5.0
|
||||
==============
|
||||
|
||||
Homepage: http://www.freetype.org
|
||||
|
||||
FreeType is a freely available software library to render fonts.
|
||||
|
||||
It is written in C, designed to be small, efficient, highly
|
||||
customizable, and portable while capable of producing high-quality
|
||||
output (glyph images) of most vector and bitmap font formats.
|
||||
|
||||
Please read the docs/CHANGES file, it contains IMPORTANT
|
||||
INFORMATION.
|
||||
|
||||
Read the files `docs/INSTALL*' for installation instructions; see
|
||||
the file `docs/LICENSE.TXT' for the available licenses.
|
||||
|
||||
The FreeType 2 API reference is located in `docs/reference'; use the
|
||||
file `ft2-doc.html' as the top entry point. Additional
|
||||
documentation is available as a separate package from our sites. Go
|
||||
to
|
||||
|
||||
http://download.savannah.gnu.org/releases/freetype/
|
||||
|
||||
and download one of the following files.
|
||||
|
||||
freetype-doc-2.5.0.tar.bz2
|
||||
freetype-doc-2.5.0.tar.gz
|
||||
ftdoc250.zip
|
||||
|
||||
To view the documentation online, go to
|
||||
|
||||
http://www.freetype.org/freetype2/documentation.html
|
||||
|
||||
|
||||
Mailing Lists
|
||||
=============
|
||||
|
||||
The preferred way of communication with the FreeType team is using
|
||||
e-mail lists.
|
||||
|
||||
general use and discussion: freetype@nongnu.org
|
||||
engine internals, porting, etc.: freetype-devel@nongnu.org
|
||||
announcements: freetype-announce@nongnu.org
|
||||
|
||||
The lists are moderated; see
|
||||
|
||||
http://www.freetype.org/contact.html
|
||||
|
||||
how to subscribe.
|
||||
|
||||
|
||||
Bugs
|
||||
====
|
||||
|
||||
Please report bugs by e-mail to `freetype-devel@nongnu.org'. Don't
|
||||
forget to send a detailed explanation of the problem -- there is
|
||||
nothing worse than receiving a terse message that only says `it
|
||||
doesn't work'.
|
||||
|
||||
Alternatively, you may submit a bug report at
|
||||
|
||||
https://savannah.nongnu.org/bugs/?group=freetype
|
||||
|
||||
|
||||
Enjoy!
|
||||
|
||||
|
||||
The FreeType Team
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
Copyright 2006-2013 by
|
||||
David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
|
||||
This file is part of the FreeType project, and may only be used,
|
||||
modified, and distributed under the terms of the FreeType project
|
||||
license, LICENSE.TXT. By continuing to use, modify, or distribute
|
||||
this file you indicate that you have read the license and understand
|
||||
and accept it fully.
|
||||
|
||||
|
||||
--- end of README ---
|
||||
FreeType 2.6.2
|
||||
==============
|
||||
|
||||
Homepage: http://www.freetype.org
|
||||
|
||||
FreeType is a freely available software library to render fonts.
|
||||
|
||||
It is written in C, designed to be small, efficient, highly
|
||||
customizable, and portable while capable of producing high-quality
|
||||
output (glyph images) of most vector and bitmap font formats.
|
||||
|
||||
Please read the docs/CHANGES file, it contains IMPORTANT
|
||||
INFORMATION.
|
||||
|
||||
Read the files `docs/INSTALL*' for installation instructions; see
|
||||
the file `docs/LICENSE.TXT' for the available licenses.
|
||||
|
||||
The FreeType 2 API reference is located in `docs/reference'; use the
|
||||
file `ft2-toc.html' as the top entry point. Additional
|
||||
documentation is available as a separate package from our sites. Go
|
||||
to
|
||||
|
||||
http://download.savannah.gnu.org/releases/freetype/
|
||||
|
||||
and download one of the following files.
|
||||
|
||||
freetype-doc-2.6.2.tar.bz2
|
||||
freetype-doc-2.6.2.tar.gz
|
||||
ftdoc262.zip
|
||||
|
||||
To view the documentation online, go to
|
||||
|
||||
http://www.freetype.org/freetype2/documentation.html
|
||||
|
||||
|
||||
Mailing Lists
|
||||
=============
|
||||
|
||||
The preferred way of communication with the FreeType team is using
|
||||
e-mail lists.
|
||||
|
||||
general use and discussion: freetype@nongnu.org
|
||||
engine internals, porting, etc.: freetype-devel@nongnu.org
|
||||
announcements: freetype-announce@nongnu.org
|
||||
git repository tracker: freetype-commit@nongnu.org
|
||||
|
||||
The lists are moderated; see
|
||||
|
||||
http://www.freetype.org/contact.html
|
||||
|
||||
how to subscribe.
|
||||
|
||||
|
||||
Bugs
|
||||
====
|
||||
|
||||
Please submit bug reports at
|
||||
|
||||
https://savannah.nongnu.org/bugs/?group=freetype
|
||||
|
||||
Alternatively, you might report bugs by e-mail to
|
||||
`freetype-devel@nongnu.org'. Don't forget to send a detailed
|
||||
explanation of the problem -- there is nothing worse than receiving
|
||||
a terse message that only says `it doesn't work'.
|
||||
|
||||
|
||||
Enjoy!
|
||||
|
||||
|
||||
The FreeType Team
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
Copyright 2006-2015 by
|
||||
David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
|
||||
This file is part of the FreeType project, and may only be used,
|
||||
modified, and distributed under the terms of the FreeType project
|
||||
license, LICENSE.TXT. By continuing to use, modify, or distribute
|
||||
this file you indicate that you have read the license and understand
|
||||
and accept it fully.
|
||||
|
||||
|
||||
--- end of README ---
|
||||
@@ -1,46 +1,50 @@
|
||||
The git archive doesn't contain pre-built configuration scripts for
|
||||
UNIXish platforms. To generate them say
|
||||
|
||||
sh autogen.sh
|
||||
|
||||
which in turn depends on the following packages:
|
||||
|
||||
automake (1.10.1)
|
||||
libtool (2.2.4)
|
||||
autoconf (2.62)
|
||||
|
||||
The versions given in parentheses are known to work. Newer versions
|
||||
should work too, of course. Note that autogen.sh also sets up proper
|
||||
file permissions for the `configure' and auxiliary scripts.
|
||||
|
||||
The autogen.sh script now checks the version of above three packages
|
||||
whether they match the numbers above. Otherwise it will complain and
|
||||
suggest either upgrading or using an environment variable to point to
|
||||
a more recent version of the required tool(s).
|
||||
|
||||
Note that `aclocal' is provided by the `automake' package on Linux,
|
||||
and that `libtoolize' is called `glibtoolize' on Darwin (OS X).
|
||||
|
||||
|
||||
For static builds which don't use platform specific optimizations, no
|
||||
configure script is necessary at all; saying
|
||||
|
||||
make setup ansi
|
||||
make
|
||||
|
||||
should work on all platforms which have GNU make (or makepp).
|
||||
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
Copyright 2005, 2006, 2007, 2008, 2009, 2010 by
|
||||
David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
|
||||
This file is part of the FreeType project, and may only be used,
|
||||
modified, and distributed under the terms of the FreeType project
|
||||
license, LICENSE.TXT. By continuing to use, modify, or distribute
|
||||
this file you indicate that you have read the license and understand
|
||||
and accept it fully.
|
||||
|
||||
|
||||
--- end of README.git ---
|
||||
The git archive doesn't contain pre-built configuration scripts for
|
||||
UNIXish platforms. To generate them say
|
||||
|
||||
sh autogen.sh
|
||||
|
||||
which in turn depends on the following packages:
|
||||
|
||||
automake (1.10.1)
|
||||
libtool (2.2.4)
|
||||
autoconf (2.62)
|
||||
|
||||
The versions given in parentheses are known to work. Newer versions
|
||||
should work too, of course. Note that autogen.sh also sets up proper
|
||||
file permissions for the `configure' and auxiliary scripts.
|
||||
|
||||
The autogen.sh script now checks the version of above three packages
|
||||
whether they match the numbers above. Otherwise it will complain and
|
||||
suggest either upgrading or using an environment variable to point to
|
||||
a more recent version of the required tool(s).
|
||||
|
||||
Note that `aclocal' is provided by the `automake' package on Linux,
|
||||
and that `libtoolize' is called `glibtoolize' on Darwin (OS X).
|
||||
|
||||
|
||||
For static builds which don't use platform specific optimizations, no
|
||||
configure script is necessary at all; saying
|
||||
|
||||
make setup ansi
|
||||
make
|
||||
|
||||
should work on all platforms which have GNU make (or makepp).
|
||||
|
||||
|
||||
Similarly, a build with `cmake' can be done directly from the git
|
||||
repository.
|
||||
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
Copyright 2005-2015 by
|
||||
David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
|
||||
This file is part of the FreeType project, and may only be used,
|
||||
modified, and distributed under the terms of the FreeType project
|
||||
license, LICENSE.TXT. By continuing to use, modify, or distribute
|
||||
this file you indicate that you have read the license and understand
|
||||
and accept it fully.
|
||||
|
||||
|
||||
--- end of README.git ---
|
||||
@@ -1,166 +1,165 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Copyright 2005, 2006, 2007, 2008, 2009, 2010 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
run ()
|
||||
{
|
||||
echo "running \`$*'"
|
||||
eval $*
|
||||
|
||||
if test $? != 0 ; then
|
||||
echo "error while running \`$*'"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
get_major_version ()
|
||||
{
|
||||
echo $1 | sed -e 's/\([0-9][0-9]*\)\..*/\1/g'
|
||||
}
|
||||
|
||||
get_minor_version ()
|
||||
{
|
||||
echo $1 | sed -e 's/[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/g'
|
||||
}
|
||||
|
||||
get_patch_version ()
|
||||
{
|
||||
# tricky: some version numbers don't include a patch
|
||||
# separated with a point, but something like 1.4-p6
|
||||
patch=`echo $1 | sed -e 's/[0-9][0-9]*\.[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/g'`
|
||||
if test "$patch" = "$1"; then
|
||||
patch=`echo $1 | sed -e 's/[0-9][0-9]*\.[0-9][0-9]*\-p\([0-9][0-9]*\).*/\1/g'`
|
||||
# if there isn't any patch number, default to 0
|
||||
if test "$patch" = "$1"; then
|
||||
patch=0
|
||||
fi
|
||||
fi
|
||||
echo $patch
|
||||
}
|
||||
|
||||
# $1: version to check
|
||||
# $2: minimum version
|
||||
|
||||
compare_to_minimum_version ()
|
||||
{
|
||||
MAJOR1=`get_major_version $1`
|
||||
MAJOR2=`get_major_version $2`
|
||||
if test $MAJOR1 -lt $MAJOR2; then
|
||||
echo 0
|
||||
return
|
||||
else
|
||||
if test $MAJOR1 -gt $MAJOR2; then
|
||||
echo 1
|
||||
return
|
||||
fi
|
||||
fi
|
||||
|
||||
MINOR1=`get_minor_version $1`
|
||||
MINOR2=`get_minor_version $2`
|
||||
if test $MINOR1 -lt $MINOR2; then
|
||||
echo 0
|
||||
return
|
||||
else
|
||||
if test $MINOR1 -gt $MINOR2; then
|
||||
echo 1
|
||||
return
|
||||
fi
|
||||
fi
|
||||
|
||||
PATCH1=`get_patch_version $1`
|
||||
PATCH2=`get_patch_version $2`
|
||||
if test $PATCH1 -lt $PATCH2; then
|
||||
echo 0
|
||||
else
|
||||
echo 1
|
||||
fi
|
||||
}
|
||||
|
||||
# check the version of a given tool against a minimum version number
|
||||
#
|
||||
# $1: tool path
|
||||
# $2: tool usual name (e.g. `aclocal')
|
||||
# $3: tool variable (e.g. `ACLOCAL')
|
||||
# $4: minimum version to check against
|
||||
# $5: option field index used to extract the tool version from the
|
||||
# output of --version
|
||||
|
||||
check_tool_version ()
|
||||
{
|
||||
field=$5
|
||||
# assume the output of "[TOOL] --version" is "toolname (GNU toolname foo bar) version"
|
||||
if test "$field"x = x; then
|
||||
field=3 # default to 3 for all GNU autotools, after filtering enclosed string
|
||||
fi
|
||||
version=`$1 --version | head -1 | sed 's/([^)]*)/()/g' | cut -d ' ' -f $field`
|
||||
version_check=`compare_to_minimum_version $version $4`
|
||||
if test "$version_check"x = 0x; then
|
||||
echo "ERROR: Your version of the \`$2' tool is too old."
|
||||
echo " Minimum version $4 is required (yours is version $version)."
|
||||
echo " Please upgrade or use the $3 variable to point to a more recent one."
|
||||
echo ""
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
if test ! -f ./builds/unix/configure.raw; then
|
||||
echo "You must be in the same directory as \`autogen.sh'."
|
||||
echo "Bootstrapping doesn't work if srcdir != builddir."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# On MacOS X, the GNU libtool is named `glibtool'.
|
||||
HOSTOS=`uname`
|
||||
if test "$LIBTOOLIZE"x != x; then
|
||||
:
|
||||
elif test "$HOSTOS"x = Darwinx; then
|
||||
LIBTOOLIZE=glibtoolize
|
||||
else
|
||||
LIBTOOLIZE=libtoolize
|
||||
fi
|
||||
|
||||
if test "$ACLOCAL"x = x; then
|
||||
ACLOCAL=aclocal
|
||||
fi
|
||||
|
||||
if test "$AUTOCONF"x = x; then
|
||||
AUTOCONF=autoconf
|
||||
fi
|
||||
|
||||
check_tool_version $ACLOCAL aclocal ACLOCAL 1.10.1
|
||||
check_tool_version $LIBTOOLIZE libtoolize LIBTOOLIZE 2.2.4
|
||||
check_tool_version $AUTOCONF autoconf AUTOCONF 2.62
|
||||
|
||||
# This sets freetype_major, freetype_minor, and freetype_patch.
|
||||
eval `sed -nf version.sed include/freetype/freetype.h`
|
||||
|
||||
# We set freetype-patch to an empty value if it is zero.
|
||||
if test "$freetype_patch" = ".0"; then
|
||||
freetype_patch=
|
||||
fi
|
||||
|
||||
cd builds/unix
|
||||
|
||||
echo "generating \`configure.ac'"
|
||||
sed -e "s;@VERSION@;$freetype_major$freetype_minor$freetype_patch;" \
|
||||
< configure.raw > configure.ac
|
||||
|
||||
run aclocal -I . --force
|
||||
run $LIBTOOLIZE --force --copy --install
|
||||
run autoconf --force
|
||||
|
||||
chmod +x mkinstalldirs
|
||||
chmod +x install-sh
|
||||
|
||||
cd ../..
|
||||
|
||||
chmod +x ./configure
|
||||
|
||||
# EOF
|
||||
#!/bin/sh
|
||||
|
||||
# Copyright 2005-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
run ()
|
||||
{
|
||||
echo "running \`$*'"
|
||||
eval $*
|
||||
|
||||
if test $? != 0 ; then
|
||||
echo "error while running \`$*'"
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
get_major_version ()
|
||||
{
|
||||
echo $1 | sed -e 's/\([0-9][0-9]*\)\..*/\1/g'
|
||||
}
|
||||
|
||||
get_minor_version ()
|
||||
{
|
||||
echo $1 | sed -e 's/[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/g'
|
||||
}
|
||||
|
||||
get_patch_version ()
|
||||
{
|
||||
# tricky: some version numbers don't include a patch
|
||||
# separated with a point, but something like 1.4-p6
|
||||
patch=`echo $1 | sed -e 's/[0-9][0-9]*\.[0-9][0-9]*\.\([0-9][0-9]*\).*/\1/g'`
|
||||
if test "$patch" = "$1"; then
|
||||
patch=`echo $1 | sed -e 's/[0-9][0-9]*\.[0-9][0-9]*\-p\([0-9][0-9]*\).*/\1/g'`
|
||||
# if there isn't any patch number, default to 0
|
||||
if test "$patch" = "$1"; then
|
||||
patch=0
|
||||
fi
|
||||
fi
|
||||
echo $patch
|
||||
}
|
||||
|
||||
# $1: version to check
|
||||
# $2: minimum version
|
||||
|
||||
compare_to_minimum_version ()
|
||||
{
|
||||
MAJOR1=`get_major_version $1`
|
||||
MAJOR2=`get_major_version $2`
|
||||
if test $MAJOR1 -lt $MAJOR2; then
|
||||
echo 0
|
||||
return
|
||||
else
|
||||
if test $MAJOR1 -gt $MAJOR2; then
|
||||
echo 1
|
||||
return
|
||||
fi
|
||||
fi
|
||||
|
||||
MINOR1=`get_minor_version $1`
|
||||
MINOR2=`get_minor_version $2`
|
||||
if test $MINOR1 -lt $MINOR2; then
|
||||
echo 0
|
||||
return
|
||||
else
|
||||
if test $MINOR1 -gt $MINOR2; then
|
||||
echo 1
|
||||
return
|
||||
fi
|
||||
fi
|
||||
|
||||
PATCH1=`get_patch_version $1`
|
||||
PATCH2=`get_patch_version $2`
|
||||
if test $PATCH1 -lt $PATCH2; then
|
||||
echo 0
|
||||
else
|
||||
echo 1
|
||||
fi
|
||||
}
|
||||
|
||||
# check the version of a given tool against a minimum version number
|
||||
#
|
||||
# $1: tool path
|
||||
# $2: tool usual name (e.g. `aclocal')
|
||||
# $3: tool variable (e.g. `ACLOCAL')
|
||||
# $4: minimum version to check against
|
||||
# $5: option field index used to extract the tool version from the
|
||||
# output of --version
|
||||
|
||||
check_tool_version ()
|
||||
{
|
||||
field=$5
|
||||
# assume the output of "[TOOL] --version" is "toolname (GNU toolname foo bar) version"
|
||||
if test "$field"x = x; then
|
||||
field=3 # default to 3 for all GNU autotools, after filtering enclosed string
|
||||
fi
|
||||
version=`$1 --version | head -1 | sed 's/([^)]*)/()/g' | cut -d ' ' -f $field`
|
||||
version_check=`compare_to_minimum_version $version $4`
|
||||
if test "$version_check"x = 0x; then
|
||||
echo "ERROR: Your version of the \`$2' tool is too old."
|
||||
echo " Minimum version $4 is required (yours is version $version)."
|
||||
echo " Please upgrade or use the $3 variable to point to a more recent one."
|
||||
echo ""
|
||||
exit 1
|
||||
fi
|
||||
}
|
||||
|
||||
if test ! -f ./builds/unix/configure.raw; then
|
||||
echo "You must be in the same directory as \`autogen.sh'."
|
||||
echo "Bootstrapping doesn't work if srcdir != builddir."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# On MacOS X, the GNU libtool is named `glibtool'.
|
||||
HOSTOS=`uname`
|
||||
if test "$LIBTOOLIZE"x != x; then
|
||||
:
|
||||
elif test "$HOSTOS"x = Darwinx; then
|
||||
LIBTOOLIZE=glibtoolize
|
||||
else
|
||||
LIBTOOLIZE=libtoolize
|
||||
fi
|
||||
|
||||
if test "$ACLOCAL"x = x; then
|
||||
ACLOCAL=aclocal
|
||||
fi
|
||||
|
||||
if test "$AUTOCONF"x = x; then
|
||||
AUTOCONF=autoconf
|
||||
fi
|
||||
|
||||
check_tool_version $ACLOCAL aclocal ACLOCAL 1.10.1
|
||||
check_tool_version $LIBTOOLIZE libtoolize LIBTOOLIZE 2.2.4
|
||||
check_tool_version $AUTOCONF autoconf AUTOCONF 2.62
|
||||
|
||||
# This sets freetype_major, freetype_minor, and freetype_patch.
|
||||
eval `sed -nf version.sed include/freetype/freetype.h`
|
||||
|
||||
# We set freetype-patch to an empty value if it is zero.
|
||||
if test "$freetype_patch" = ".0"; then
|
||||
freetype_patch=
|
||||
fi
|
||||
|
||||
cd builds/unix
|
||||
|
||||
echo "generating \`configure.ac'"
|
||||
sed -e "s;@VERSION@;$freetype_major$freetype_minor$freetype_patch;" \
|
||||
< configure.raw > configure.ac
|
||||
|
||||
run aclocal -I . --force
|
||||
run $LIBTOOLIZE --force --copy --install
|
||||
run autoconf --force
|
||||
|
||||
chmod +x install-sh
|
||||
|
||||
cd ../..
|
||||
|
||||
chmod +x ./configure
|
||||
|
||||
# EOF
|
||||
+110
-110
@@ -1,110 +1,110 @@
|
||||
|
||||
README for the builds/amiga subdirectory.
|
||||
|
||||
Copyright 2005 by
|
||||
Werner Lemberg and Detlef Würkner.
|
||||
|
||||
This file is part of the FreeType project, and may only be used, modified,
|
||||
and distributed under the terms of the FreeType project license,
|
||||
LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
indicate that you have read the license and understand and accept it
|
||||
fully.
|
||||
|
||||
|
||||
The makefile.os4 is for the AmigaOS4 SDK. To use it, type
|
||||
"make -f makefile.os4", it produces a link library libft2_ppc.a.
|
||||
|
||||
The makefile is for ppc-morphos-gcc-2.95.3-bin.tgz (gcc 2.95.3 hosted on
|
||||
68k-Amiga producing MorphOS-PPC-binaries from http://www.morphos.de).
|
||||
To use it, type "make assign", then "make"; it produces a link library
|
||||
libft2_ppc.a.
|
||||
|
||||
The smakefile is a makefile for Amiga SAS/C 6.58 (no longer available,
|
||||
latest sold version was 6.50, updates can be found in Aminet). It is
|
||||
based on the version found in the sourcecode of ttf.library 0.83b for
|
||||
FreeType 1.3.1 from Richard Griffith (ragriffi@sprynet.com,
|
||||
http://ragriffi.home.sprynet.com).
|
||||
|
||||
You will also need the latest include files and amiga.lib from the
|
||||
Amiga web site (http://www.amiga.com/3.9/download/NDK3.9.lha) for
|
||||
AmigaOS 3.9; the generated code should work under AmigaOS 2.04 and up.
|
||||
|
||||
To use it, call "smake assign" and then "smake" from the builds/amiga
|
||||
directory. The results are:
|
||||
|
||||
- A link library "ft2_680x0.lib" (where x depends on the setting of
|
||||
the CPU entry in the smakefile) containing all FreeType2 parts
|
||||
except of the init code, debugging code, and the system interface
|
||||
code.
|
||||
|
||||
- ftsystem.o, an object module containing the standard version of the
|
||||
system interface code which uses fopen() fclose() fread() fseek()
|
||||
ftell() malloc() realloc() and free() from lib:sc.lib (not pure).
|
||||
|
||||
- ftsystempure.o, an object module containing the pure version of the
|
||||
system interface code which uses Open() Close() Read() Seek()
|
||||
ExamineFH() AsmAllocPooled() AsmFreePooled() etc. This version can
|
||||
be used in both normal programs and in Amiga run-time shared system
|
||||
librarys (can be linked with lib:libinit.o, no copying of DATA and
|
||||
BSS hunks for each OpenLibrary() necessary). Source code is in
|
||||
src/base/ftsystem.c.
|
||||
|
||||
- ftdebug.o, an object module containing the standard version of the
|
||||
debugging code which uses vprintf() and exit() (not pure).
|
||||
Debugging can be turned on in FT:include/freetype/config/ftoption.h
|
||||
and with FT_SetTraceLevel().
|
||||
|
||||
- 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.
|
||||
Source code is in src/base/ftdebug.c.
|
||||
|
||||
- NO ftinit.o. Because linking with a link library should result in
|
||||
linking only the needed object modules in it, but standard
|
||||
ftsystem.o would force ALL FreeType2 modules to be linked to your
|
||||
program, I decided to use a different scheme: You must #include
|
||||
FT:src/base/ftinit.c in your sourcecode and specify with #define
|
||||
statements which modules you need. See
|
||||
include/freetype/config/ftmodule.h.
|
||||
|
||||
|
||||
To use in your own programs:
|
||||
|
||||
- Insert the #define and #include statements from top of
|
||||
include/freetype/config/ftmodule.h in your source code and uncomment
|
||||
the #define statements for the FreeType2 modules you need.
|
||||
|
||||
- You can use either PARAMETERS=REGISTER or PARAMETERS=STACK for
|
||||
calling the FreeType2 functions, because the link library and the
|
||||
object files are compiled with PARAMETERS=BOTH.
|
||||
|
||||
- "smake assign" (assign "FT:" to the FreeType2 main directory).
|
||||
|
||||
- Compile your program.
|
||||
|
||||
- Link with either ftsystem.o or ftsystempure.o, if debugging enabled
|
||||
with either ftdebug.o or (ftdebugpure.o and lib:debug.lib), and with
|
||||
ft2_680x0.lib as link library.
|
||||
|
||||
|
||||
To adapt to other compilers:
|
||||
|
||||
- The standard ANSI C maximum length of 31 significant characters in
|
||||
identifiers is not enough for FreeType2. Check if your compiler has
|
||||
a minimum length of 40 significant characters or can be switched to
|
||||
it. "idlen=40" is the option for SAS/C. Setting #define
|
||||
HAVE_LIMIT_ON_IDENTS in an include file may also work (not tested).
|
||||
|
||||
- Make sure that the include directory in builds/amiga is searched
|
||||
before the normal FreeType2 include directory, so you are able to
|
||||
replace problematic include files with your own version (same may be
|
||||
useful for the src directory).
|
||||
|
||||
- An example of how to replace/workaround a problematic include file
|
||||
is include/config/ftconfig.h; it changes a #define that would
|
||||
prevent SAS/C from generating XDEF's where it should do that and
|
||||
then includes the standard FreeType2 include file.
|
||||
|
||||
Local Variables:
|
||||
coding: latin-1
|
||||
End:
|
||||
|
||||
README for the builds/amiga subdirectory.
|
||||
|
||||
Copyright 2005-2015 by
|
||||
Werner Lemberg and Detlef Würkner.
|
||||
|
||||
This file is part of the FreeType project, and may only be used, modified,
|
||||
and distributed under the terms of the FreeType project license,
|
||||
LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
indicate that you have read the license and understand and accept it
|
||||
fully.
|
||||
|
||||
|
||||
The makefile.os4 is for the AmigaOS4 SDK. To use it, type
|
||||
"make -f makefile.os4", it produces a link library libft2_ppc.a.
|
||||
|
||||
The makefile is for ppc-morphos-gcc-2.95.3-bin.tgz (gcc 2.95.3 hosted on
|
||||
68k-Amiga producing MorphOS-PPC-binaries from http://www.morphos.de).
|
||||
To use it, type "make assign", then "make"; it produces a link library
|
||||
libft2_ppc.a.
|
||||
|
||||
The smakefile is a makefile for Amiga SAS/C 6.58 (no longer available,
|
||||
latest sold version was 6.50, updates can be found in Aminet). It is
|
||||
based on the version found in the sourcecode of ttf.library 0.83b for
|
||||
FreeType 1.3.1 from Richard Griffith (ragriffi@sprynet.com,
|
||||
http://ragriffi.home.sprynet.com).
|
||||
|
||||
You will also need the latest include files and amiga.lib from the
|
||||
Amiga web site (http://www.amiga.com/3.9/download/NDK3.9.lha) for
|
||||
AmigaOS 3.9; the generated code should work under AmigaOS 2.04 and up.
|
||||
|
||||
To use it, call "smake assign" and then "smake" from the builds/amiga
|
||||
directory. The results are:
|
||||
|
||||
- A link library "ft2_680x0.lib" (where x depends on the setting of
|
||||
the CPU entry in the smakefile) containing all FreeType2 parts
|
||||
except of the init code, debugging code, and the system interface
|
||||
code.
|
||||
|
||||
- ftsystem.o, an object module containing the standard version of the
|
||||
system interface code which uses fopen() fclose() fread() fseek()
|
||||
ftell() malloc() realloc() and free() from lib:sc.lib (not pure).
|
||||
|
||||
- ftsystempure.o, an object module containing the pure version of the
|
||||
system interface code which uses Open() Close() Read() Seek()
|
||||
ExamineFH() AsmAllocPooled() AsmFreePooled() etc. This version can
|
||||
be used in both normal programs and in Amiga run-time shared system
|
||||
librarys (can be linked with lib:libinit.o, no copying of DATA and
|
||||
BSS hunks for each OpenLibrary() necessary). Source code is in
|
||||
src/base/ftsystem.c.
|
||||
|
||||
- ftdebug.o, an object module containing the standard version of the
|
||||
debugging code which uses vprintf() and exit() (not pure).
|
||||
Debugging can be turned on in FT:include/freetype/config/ftoption.h
|
||||
and with FT_SetTraceLevel().
|
||||
|
||||
- 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.
|
||||
Source code is in src/base/ftdebug.c.
|
||||
|
||||
- NO ftinit.o. Because linking with a link library should result in
|
||||
linking only the needed object modules in it, but standard
|
||||
ftsystem.o would force ALL FreeType2 modules to be linked to your
|
||||
program, I decided to use a different scheme: You must #include
|
||||
FT:src/base/ftinit.c in your sourcecode and specify with #define
|
||||
statements which modules you need. See
|
||||
include/freetype/config/ftmodule.h.
|
||||
|
||||
|
||||
To use in your own programs:
|
||||
|
||||
- Insert the #define and #include statements from top of
|
||||
include/freetype/config/ftmodule.h in your source code and
|
||||
uncomment the #define statements for the FreeType2 modules you need.
|
||||
|
||||
- You can use either PARAMETERS=REGISTER or PARAMETERS=STACK for
|
||||
calling the FreeType2 functions, because the link library and the
|
||||
object files are compiled with PARAMETERS=BOTH.
|
||||
|
||||
- "smake assign" (assign "FT:" to the FreeType2 main directory).
|
||||
|
||||
- Compile your program.
|
||||
|
||||
- Link with either ftsystem.o or ftsystempure.o, if debugging enabled
|
||||
with either ftdebug.o or (ftdebugpure.o and lib:debug.lib), and with
|
||||
ft2_680x0.lib as link library.
|
||||
|
||||
|
||||
To adapt to other compilers:
|
||||
|
||||
- The standard ANSI C maximum length of 31 significant characters in
|
||||
identifiers is not enough for FreeType2. Check if your compiler has
|
||||
a minimum length of 40 significant characters or can be switched to
|
||||
it. "idlen=40" is the option for SAS/C. Setting #define
|
||||
HAVE_LIMIT_ON_IDENTS in an include file may also work (not tested).
|
||||
|
||||
- Make sure that the include directory in builds/amiga is searched
|
||||
before the normal FreeType2 include directory, so you are able to
|
||||
replace problematic include files with your own version (same may be
|
||||
useful for the src directory).
|
||||
|
||||
- An example of how to replace/workaround a problematic include file
|
||||
is include/freetype/config/ftconfig.h; it changes a #define that
|
||||
would prevent SAS/C from generating XDEF's where it should do that and
|
||||
then includes the standard FreeType2 include file.
|
||||
|
||||
Local Variables:
|
||||
coding: latin-1
|
||||
End:
|
||||
+55
-55
@@ -1,55 +1,55 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftconfig.h */
|
||||
/* */
|
||||
/* Amiga-specific configuration file (specification only). */
|
||||
/* */
|
||||
/* Copyright 2005, 2006, 2007 by */
|
||||
/* Werner Lemberg and Detlef Würkner. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
/*
|
||||
* This is an example how to override the default FreeType2 header files
|
||||
* with Amiga-specific changes. When the compiler searches this directory
|
||||
* before the default directory, we can do some modifications.
|
||||
*
|
||||
* Here we must change FT_EXPORT_DEF so that SAS/C does
|
||||
* generate the needed XDEFs.
|
||||
*/
|
||||
|
||||
#if 0
|
||||
#define FT_EXPORT_DEF( x ) extern x
|
||||
#endif
|
||||
|
||||
#undef FT_EXPORT_DEF
|
||||
#define FT_EXPORT_DEF( x ) x
|
||||
|
||||
/* Now include the original file */
|
||||
#ifndef __MORPHOS__
|
||||
#ifdef __SASC
|
||||
#include "FT:include/freetype/config/ftconfig.h"
|
||||
#else
|
||||
#include "/FT/include/freetype/config/ftconfig.h"
|
||||
#endif
|
||||
#else
|
||||
/* We must define that, it seems that
|
||||
* 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)
|
||||
*/
|
||||
#define _LIBC_LIMITS_H_
|
||||
#include "/FT/include/freetype/config/ftconfig.h"
|
||||
#endif
|
||||
|
||||
/*
|
||||
Local Variables:
|
||||
coding: latin-1
|
||||
End:
|
||||
*/
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftconfig.h */
|
||||
/* */
|
||||
/* Amiga-specific configuration file (specification only). */
|
||||
/* */
|
||||
/* Copyright 2005-2015 by */
|
||||
/* Werner Lemberg and Detlef Würkner. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
/*
|
||||
* This is an example how to override the default FreeType2 header files
|
||||
* with Amiga-specific changes. When the compiler searches this directory
|
||||
* before the default directory, we can do some modifications.
|
||||
*
|
||||
* Here we must change FT_EXPORT_DEF so that SAS/C does
|
||||
* generate the needed XDEFs.
|
||||
*/
|
||||
|
||||
#if 0
|
||||
#define FT_EXPORT_DEF( x ) extern x
|
||||
#endif
|
||||
|
||||
#undef FT_EXPORT_DEF
|
||||
#define FT_EXPORT_DEF( x ) x
|
||||
|
||||
/* Now include the original file */
|
||||
#ifndef __MORPHOS__
|
||||
#ifdef __SASC
|
||||
#include "FT:include/freetype/config/ftconfig.h"
|
||||
#else
|
||||
#include "/FT/include/freetype/config/ftconfig.h"
|
||||
#endif
|
||||
#else
|
||||
/* We must define that, it seems that
|
||||
* 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)
|
||||
*/
|
||||
#define _LIBC_LIMITS_H_
|
||||
#include "/FT/include/freetype/config/ftconfig.h"
|
||||
#endif
|
||||
|
||||
/*
|
||||
Local Variables:
|
||||
coding: latin-1
|
||||
End:
|
||||
*/
|
||||
+160
-160
@@ -1,160 +1,160 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftmodule.h */
|
||||
/* */
|
||||
/* Amiga-specific FreeType module selection. */
|
||||
/* */
|
||||
/* Copyright 2005 by */
|
||||
/* Werner Lemberg and Detlef Würkner. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
/*
|
||||
* To avoid that all your programs include all FreeType modules,
|
||||
* you copy the following piece of source code into your own
|
||||
* source file and specify which modules you really need in your
|
||||
* application by uncommenting the appropriate lines.
|
||||
*/
|
||||
/*
|
||||
//#define FT_USE_AUTOFIT // autofitter
|
||||
//#define FT_USE_RASTER // monochrome rasterizer
|
||||
//#define FT_USE_SMOOTH // anti-aliasing rasterizer
|
||||
//#define FT_USE_TT // truetype font driver
|
||||
//#define FT_USE_T1 // type1 font driver
|
||||
//#define FT_USE_T42 // type42 font driver
|
||||
//#define FT_USE_T1CID // cid-keyed type1 font driver // no cmap support
|
||||
//#define FT_USE_CFF // opentype font driver
|
||||
//#define FT_USE_BDF // bdf bitmap font driver
|
||||
//#define FT_USE_PCF // pcf bitmap font driver
|
||||
//#define FT_USE_PFR // pfr font driver
|
||||
//#define FT_USE_WINFNT // windows .fnt|.fon bitmap font driver
|
||||
//#define FT_USE_OTV // opentype validator
|
||||
//#define FT_USE_GXV // truetype gx validator
|
||||
#include "FT:src/base/ftinit.c"
|
||||
*/
|
||||
|
||||
/* Make sure that the needed support modules are built in.
|
||||
* Dependencies can be found by searching for FT_Get_Module.
|
||||
*/
|
||||
|
||||
#ifdef FT_USE_T42
|
||||
#define FT_USE_TT
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_TT
|
||||
#define FT_USE_SFNT
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_CFF
|
||||
#define FT_USE_SFNT
|
||||
#define FT_USE_PSHINT
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T1
|
||||
#define FT_USE_PSAUX
|
||||
#define FT_USE_PSHINT
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T1CID
|
||||
#define FT_USE_PSAUX
|
||||
#define FT_USE_PSHINT
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PSAUX
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_SFNT
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
/* Now include the modules */
|
||||
|
||||
#ifdef FT_USE_AUTOFIT
|
||||
FT_USE_MODULE( FT_Module_Class, autofit_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_TT
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, tt_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T1
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, t1_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_CFF
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, cff_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T1CID
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, t1cid_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PFR
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, pfr_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T42
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, t42_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_WINFNT
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, winfnt_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PCF
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, pcf_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PSAUX
|
||||
FT_USE_MODULE( FT_Module_Class, psaux_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PSNAMES
|
||||
FT_USE_MODULE( FT_Module_Class, psnames_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PSHINT
|
||||
FT_USE_MODULE( FT_Module_Class, pshinter_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_RASTER
|
||||
FT_USE_MODULE( FT_Renderer_Class, ft_raster1_renderer_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_SFNT
|
||||
FT_USE_MODULE( FT_Module_Class, sfnt_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_SMOOTH
|
||||
FT_USE_MODULE( FT_Renderer_Class, ft_smooth_renderer_class )
|
||||
FT_USE_MODULE( FT_Renderer_Class, ft_smooth_lcd_renderer_class )
|
||||
FT_USE_MODULE( FT_Renderer_Class, ft_smooth_lcdv_renderer_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_OTV
|
||||
FT_USE_MODULE( FT_Module_Class, otv_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_BDF
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, bdf_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_GXV
|
||||
FT_USE_MODULE( FT_Module_Class, gxv_module_class )
|
||||
#endif
|
||||
|
||||
/*
|
||||
Local Variables:
|
||||
coding: latin-1
|
||||
End:
|
||||
*/
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftmodule.h */
|
||||
/* */
|
||||
/* Amiga-specific FreeType module selection. */
|
||||
/* */
|
||||
/* Copyright 2005-2015 by */
|
||||
/* Werner Lemberg and Detlef Würkner. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
/*
|
||||
* To avoid that all your programs include all FreeType modules,
|
||||
* you copy the following piece of source code into your own
|
||||
* source file and specify which modules you really need in your
|
||||
* application by uncommenting the appropriate lines.
|
||||
*/
|
||||
/*
|
||||
//#define FT_USE_AUTOFIT // autofitter
|
||||
//#define FT_USE_RASTER // monochrome rasterizer
|
||||
//#define FT_USE_SMOOTH // anti-aliasing rasterizer
|
||||
//#define FT_USE_TT // truetype font driver
|
||||
//#define FT_USE_T1 // type1 font driver
|
||||
//#define FT_USE_T42 // type42 font driver
|
||||
//#define FT_USE_T1CID // cid-keyed type1 font driver // no cmap support
|
||||
//#define FT_USE_CFF // opentype font driver
|
||||
//#define FT_USE_BDF // bdf bitmap font driver
|
||||
//#define FT_USE_PCF // pcf bitmap font driver
|
||||
//#define FT_USE_PFR // pfr font driver
|
||||
//#define FT_USE_WINFNT // windows .fnt|.fon bitmap font driver
|
||||
//#define FT_USE_OTV // opentype validator
|
||||
//#define FT_USE_GXV // truetype gx validator
|
||||
#include "FT:src/base/ftinit.c"
|
||||
*/
|
||||
|
||||
/* Make sure that the needed support modules are built in.
|
||||
* Dependencies can be found by searching for FT_Get_Module.
|
||||
*/
|
||||
|
||||
#ifdef FT_USE_T42
|
||||
#define FT_USE_TT
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_TT
|
||||
#define FT_USE_SFNT
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_CFF
|
||||
#define FT_USE_SFNT
|
||||
#define FT_USE_PSHINT
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T1
|
||||
#define FT_USE_PSAUX
|
||||
#define FT_USE_PSHINT
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T1CID
|
||||
#define FT_USE_PSAUX
|
||||
#define FT_USE_PSHINT
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PSAUX
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_SFNT
|
||||
#define FT_USE_PSNAMES
|
||||
#endif
|
||||
|
||||
/* Now include the modules */
|
||||
|
||||
#ifdef FT_USE_AUTOFIT
|
||||
FT_USE_MODULE( FT_Module_Class, autofit_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_TT
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, tt_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T1
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, t1_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_CFF
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, cff_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T1CID
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, t1cid_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PFR
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, pfr_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_T42
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, t42_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_WINFNT
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, winfnt_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PCF
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, pcf_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PSAUX
|
||||
FT_USE_MODULE( FT_Module_Class, psaux_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PSNAMES
|
||||
FT_USE_MODULE( FT_Module_Class, psnames_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_PSHINT
|
||||
FT_USE_MODULE( FT_Module_Class, pshinter_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_RASTER
|
||||
FT_USE_MODULE( FT_Renderer_Class, ft_raster1_renderer_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_SFNT
|
||||
FT_USE_MODULE( FT_Module_Class, sfnt_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_SMOOTH
|
||||
FT_USE_MODULE( FT_Renderer_Class, ft_smooth_renderer_class )
|
||||
FT_USE_MODULE( FT_Renderer_Class, ft_smooth_lcd_renderer_class )
|
||||
FT_USE_MODULE( FT_Renderer_Class, ft_smooth_lcdv_renderer_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_OTV
|
||||
FT_USE_MODULE( FT_Module_Class, otv_module_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_BDF
|
||||
FT_USE_MODULE( FT_Driver_ClassRec, bdf_driver_class )
|
||||
#endif
|
||||
|
||||
#ifdef FT_USE_GXV
|
||||
FT_USE_MODULE( FT_Module_Class, gxv_module_class )
|
||||
#endif
|
||||
|
||||
/*
|
||||
Local Variables:
|
||||
coding: latin-1
|
||||
End:
|
||||
*/
|
||||
+299
-299
@@ -1,299 +1,299 @@
|
||||
#
|
||||
# Makefile for FreeType2 link library using ppc-morphos-gcc-2.95.3-bin.tgz
|
||||
# (gcc 2.95.3 hosted on 68k-Amiga producing MorphOS-PPC-binaries from
|
||||
# http://www.morphos.de)
|
||||
#
|
||||
|
||||
|
||||
# Copyright 2005, 2006, 2007, 2009 by
|
||||
# Werner Lemberg and Detlef Würkner.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
#
|
||||
# to build from the builds/amiga directory call
|
||||
#
|
||||
# make assign
|
||||
# make
|
||||
#
|
||||
# Your programs source code should start with this
|
||||
# (uncomment the parts you do not need to keep the program small):
|
||||
# ---8<---
|
||||
#define FT_USE_AUTOFIT // autofitter
|
||||
#define FT_USE_RASTER // monochrome rasterizer
|
||||
#define FT_USE_SMOOTH // anti-aliasing rasterizer
|
||||
#define FT_USE_TT // truetype font driver
|
||||
#define FT_USE_T1 // type1 font driver
|
||||
#define FT_USE_T42 // type42 font driver
|
||||
#define FT_USE_T1CID // cid-keyed type1 font driver
|
||||
#define FT_USE_CFF // opentype font driver
|
||||
#define FT_USE_BDF // bdf bitmap font driver
|
||||
#define FT_USE_PCF // pcf bitmap font driver
|
||||
#define FT_USE_PFR // pfr font driver
|
||||
#define FT_USE_WINFNT // windows .fnt|.fon bitmap font driver
|
||||
#define FT_USE_OTV // opentype validator
|
||||
#define FT_USE_GXV // truetype gx validator
|
||||
#include "FT:src/base/ftinit.c"
|
||||
# ---8<---
|
||||
#
|
||||
# link your programs with libft2_ppc.a and either ftsystem.ppc.o or ftsystempure.ppc.o
|
||||
# (and either ftdebug.ppc.o or ftdebugpure.ppc.o if you enabled FT_DEBUG_LEVEL_ERROR or
|
||||
# FT_DEBUG_LEVEL_TRACE in include/freetype/config/ftoption.h).
|
||||
|
||||
all: libft2_ppc.a ftsystem.ppc.o ftsystempure.ppc.o
|
||||
|
||||
assign:
|
||||
assign FT: //
|
||||
|
||||
FTSRC = /FT/src
|
||||
|
||||
CC = ppc-morphos-gcc
|
||||
AR = ppc-morphos-ar rc
|
||||
RANLIB = ppc-morphos-ranlib
|
||||
LD = ppc-morphos-ld
|
||||
CFLAGS = -DFT2_BUILD_LIBRARY -O2 -I/emu/emulinclude/includegcc -I/emu/include -Iinclude -I$(FTSRC) -I/FT/include
|
||||
|
||||
#
|
||||
# FreeType2 library base
|
||||
#
|
||||
ftbase.ppc.o: $(FTSRC)/base/ftbase.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftinit.ppc.o: $(FTSRC)/base/ftinit.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftsystem.ppc.o: $(FTSRC)/base/ftsystem.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
# pure version for use in run-time library etc
|
||||
ftsystempure.ppc.o: src/base/ftsystem.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftdebug.ppc.o: $(FTSRC)/base/ftdebug.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
# pure version for use in run-time library etc
|
||||
ftdebugpure.ppc.o: src/base/ftdebug.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library base extensions
|
||||
#
|
||||
ftbbox.ppc.o: $(FTSRC)/base/ftbbox.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftbdf.ppc.o: $(FTSRC)/base/ftbdf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftbitmap.ppc.o: $(FTSRC)/base/ftbitmap.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftcid.ppc.o: $(FTSRC)/base/ftcid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftfstype.ppc.o: $(FTSRC)/base/ftfstype.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftgasp.ppc.o: $(FTSRC)/base/ftgasp.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftglyph.ppc.o: $(FTSRC)/base/ftglyph.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftgxval.ppc.o: $(FTSRC)/base/ftgxval.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftlcdfil.ppc.o: $(FTSRC)/base/ftlcdfil.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftmm.ppc.o: $(FTSRC)/base/ftmm.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftotval.ppc.o: $(FTSRC)/base/ftotval.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftpatent.ppc.o: $(FTSRC)/base/ftpatent.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftpfr.ppc.o: $(FTSRC)/base/ftpfr.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftstroke.ppc.o: $(FTSRC)/base/ftstroke.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftsynth.ppc.o: $(FTSRC)/base/ftsynth.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
fttype1.ppc.o: $(FTSRC)/base/fttype1.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftwinfnt.ppc.o: $(FTSRC)/base/ftwinfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftxf86.ppc.o: $(FTSRC)/base/ftxf86.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library autofitting module
|
||||
#
|
||||
autofit.ppc.o: $(FTSRC)/autofit/autofit.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library postscript hinting module
|
||||
#
|
||||
pshinter.ppc.o: $(FTSRC)/pshinter/pshinter.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library PS support module
|
||||
#
|
||||
psaux.ppc.o: $(FTSRC)/psaux/psaux.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library PS glyph names module
|
||||
#
|
||||
psnames.ppc.o: $(FTSRC)/psnames/psnames.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library monochrome raster module
|
||||
#
|
||||
raster.ppc.o: $(FTSRC)/raster/raster.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library anti-aliasing raster module
|
||||
#
|
||||
smooth.ppc.o: $(FTSRC)/smooth/smooth.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library 'sfnt' module
|
||||
#
|
||||
sfnt.ppc.o: $(FTSRC)/sfnt/sfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library glyph and image caching system
|
||||
#
|
||||
ftcache.ppc.o: $(FTSRC)/cache/ftcache.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library OpenType font driver
|
||||
#
|
||||
cff.ppc.o: $(FTSRC)/cff/cff.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library TrueType font driver
|
||||
#
|
||||
truetype.ppc.o: $(FTSRC)/truetype/truetype.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library Type1 font driver
|
||||
#
|
||||
type1.ppc.o: $(FTSRC)/type1/type1.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library Type42 font driver
|
||||
#
|
||||
type42.ppc.o: $(FTSRC)/type42/type42.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library CID-keyed Type1 font driver
|
||||
#
|
||||
type1cid.ppc.o: $(FTSRC)/cid/type1cid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library BDF bitmap font driver
|
||||
#
|
||||
bdf.ppc.o: $(FTSRC)/bdf/bdf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library PCF bitmap font driver
|
||||
#
|
||||
pcf.ppc.o: $(FTSRC)/pcf/pcf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library gzip support for compressed PCF bitmap fonts
|
||||
#
|
||||
gzip.ppc.o: $(FTSRC)/gzip/ftgzip.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
# FreeType2 library bzip2 support for compressed PCF bitmap fonts
|
||||
#
|
||||
bzip2.ppc.o: $(FTSRC)/bzip2/ftbzip2.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library compress support for compressed PCF bitmap fonts
|
||||
#
|
||||
lzw.ppc.o: $(FTSRC)/lzw/ftlzw.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library PFR font driver
|
||||
#
|
||||
pfr.ppc.o: $(FTSRC)/pfr/pfr.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library Windows FNT/FON bitmap font driver
|
||||
#
|
||||
winfnt.ppc.o: $(FTSRC)/winfonts/winfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library TrueTypeGX Validator
|
||||
#
|
||||
gxvalid.ppc.o: $(FTSRC)/gxvalid/gxvalid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library OpenType validator
|
||||
#
|
||||
otvalid.ppc.o: $(FTSRC)/otvalid/otvalid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
BASEPPC = ftbase.ppc.o ftbbox.ppc.o ftbdf.ppc.o ftbitmap.ppc.o ftcid.ppc.o \
|
||||
ftfstype.ppc.o ftgasp.ppc.o ftglyph.ppc.o ftgxval.ppc.o \
|
||||
ftlcdfil.ppc.o ftmm.ppc.o ftotval.ppc.o ftpatent.ppc.o ftpfr.ppc.o \
|
||||
ftstroke.ppc.o ftsynth.ppc.o fttype1.ppc.o ftwinfnt.ppc.o \
|
||||
ftxf86.ppc.o
|
||||
|
||||
DEBUGPPC = ftdebug.ppc.o ftdebugpure.ppc.o
|
||||
|
||||
AFITPPC = autofit.ppc.o
|
||||
|
||||
GXVPPC = gxvalid.ppc.o
|
||||
|
||||
OTVPPC = otvalid.ppc.o
|
||||
|
||||
PSPPC = psaux.ppc.o psnames.ppc.o pshinter.ppc.o
|
||||
|
||||
RASTERPPC = raster.ppc.o smooth.ppc.o
|
||||
|
||||
FONTDPPC = cff.ppc.o type1.ppc.o type42.ppc.o type1cid.ppc.o truetype.ppc.o\
|
||||
bdf.ppc.o pcf.ppc.o pfr.ppc.o winfnt.ppc.o
|
||||
|
||||
libft2_ppc.a: $(BASEPPC) $(AFITPPC) $(GXVPPC) $(OTVPPC) $(PSPPC) $(RASTERPPC) sfnt.ppc.o ftcache.ppc.o $(FONTDPPC) gzip.ppc.o bzip2.ppc.o lzw.ppc.o
|
||||
$(AR) $@ $(BASEPPC) $(AFITPPC) $(GXVPPC) $(OTVPPC) $(PSPPC) $(RASTERPPC) sfnt.ppc.o ftcache.ppc.o $(FONTDPPC) gzip.ppc.o bzip2.ppc.o lzw.ppc.o
|
||||
-@ ($(RANLIB) $@ || true) >/dev/null 2>&1
|
||||
|
||||
#Local Variables:
|
||||
#coding: latin-1
|
||||
#End:
|
||||
#
|
||||
# Makefile for FreeType2 link library using ppc-morphos-gcc-2.95.3-bin.tgz
|
||||
# (gcc 2.95.3 hosted on 68k-Amiga producing MorphOS-PPC-binaries from
|
||||
# http://www.morphos.de)
|
||||
#
|
||||
|
||||
|
||||
# Copyright 2005-2015 by
|
||||
# Werner Lemberg and Detlef Würkner.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
#
|
||||
# to build from the builds/amiga directory call
|
||||
#
|
||||
# make assign
|
||||
# make
|
||||
#
|
||||
# Your programs source code should start with this
|
||||
# (uncomment the parts you do not need to keep the program small):
|
||||
# ---8<---
|
||||
#define FT_USE_AUTOFIT // autofitter
|
||||
#define FT_USE_RASTER // monochrome rasterizer
|
||||
#define FT_USE_SMOOTH // anti-aliasing rasterizer
|
||||
#define FT_USE_TT // truetype font driver
|
||||
#define FT_USE_T1 // type1 font driver
|
||||
#define FT_USE_T42 // type42 font driver
|
||||
#define FT_USE_T1CID // cid-keyed type1 font driver
|
||||
#define FT_USE_CFF // opentype font driver
|
||||
#define FT_USE_BDF // bdf bitmap font driver
|
||||
#define FT_USE_PCF // pcf bitmap font driver
|
||||
#define FT_USE_PFR // pfr font driver
|
||||
#define FT_USE_WINFNT // windows .fnt|.fon bitmap font driver
|
||||
#define FT_USE_OTV // opentype validator
|
||||
#define FT_USE_GXV // truetype gx validator
|
||||
#include "FT:src/base/ftinit.c"
|
||||
# ---8<---
|
||||
#
|
||||
# link your programs with libft2_ppc.a and either ftsystem.ppc.o or ftsystempure.ppc.o
|
||||
# (and either ftdebug.ppc.o or ftdebugpure.ppc.o if you enabled FT_DEBUG_LEVEL_ERROR or
|
||||
# FT_DEBUG_LEVEL_TRACE in include/freetype/config/ftoption.h).
|
||||
|
||||
all: libft2_ppc.a ftsystem.ppc.o ftsystempure.ppc.o
|
||||
|
||||
assign:
|
||||
assign FT: //
|
||||
|
||||
FTSRC = /FT/src
|
||||
|
||||
CC = ppc-morphos-gcc
|
||||
AR = ppc-morphos-ar rc
|
||||
RANLIB = ppc-morphos-ranlib
|
||||
LD = ppc-morphos-ld
|
||||
CFLAGS = -DFT2_BUILD_LIBRARY -O2 -I/emu/emulinclude/includegcc -I/emu/include -Iinclude -I$(FTSRC) -I/FT/include
|
||||
|
||||
#
|
||||
# FreeType2 library base
|
||||
#
|
||||
ftbase.ppc.o: $(FTSRC)/base/ftbase.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftinit.ppc.o: $(FTSRC)/base/ftinit.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftsystem.ppc.o: $(FTSRC)/base/ftsystem.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
# pure version for use in run-time library etc
|
||||
ftsystempure.ppc.o: src/base/ftsystem.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftdebug.ppc.o: $(FTSRC)/base/ftdebug.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
# pure version for use in run-time library etc
|
||||
ftdebugpure.ppc.o: src/base/ftdebug.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library base extensions
|
||||
#
|
||||
ftbbox.ppc.o: $(FTSRC)/base/ftbbox.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftbdf.ppc.o: $(FTSRC)/base/ftbdf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftbitmap.ppc.o: $(FTSRC)/base/ftbitmap.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftcid.ppc.o: $(FTSRC)/base/ftcid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftfntfmt.ppc.o: $(FTSRC)/base/ftfntfmt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftfstype.ppc.o: $(FTSRC)/base/ftfstype.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftgasp.ppc.o: $(FTSRC)/base/ftgasp.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftglyph.ppc.o: $(FTSRC)/base/ftglyph.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftgxval.ppc.o: $(FTSRC)/base/ftgxval.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftlcdfil.ppc.o: $(FTSRC)/base/ftlcdfil.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftmm.ppc.o: $(FTSRC)/base/ftmm.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftotval.ppc.o: $(FTSRC)/base/ftotval.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftpatent.ppc.o: $(FTSRC)/base/ftpatent.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftpfr.ppc.o: $(FTSRC)/base/ftpfr.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftstroke.ppc.o: $(FTSRC)/base/ftstroke.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftsynth.ppc.o: $(FTSRC)/base/ftsynth.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
fttype1.ppc.o: $(FTSRC)/base/fttype1.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
ftwinfnt.ppc.o: $(FTSRC)/base/ftwinfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library autofitting module
|
||||
#
|
||||
autofit.ppc.o: $(FTSRC)/autofit/autofit.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library postscript hinting module
|
||||
#
|
||||
pshinter.ppc.o: $(FTSRC)/pshinter/pshinter.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library PS support module
|
||||
#
|
||||
psaux.ppc.o: $(FTSRC)/psaux/psaux.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library PS glyph names module
|
||||
#
|
||||
psnames.ppc.o: $(FTSRC)/psnames/psnames.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library monochrome raster module
|
||||
#
|
||||
raster.ppc.o: $(FTSRC)/raster/raster.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library anti-aliasing raster module
|
||||
#
|
||||
smooth.ppc.o: $(FTSRC)/smooth/smooth.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library 'sfnt' module
|
||||
#
|
||||
sfnt.ppc.o: $(FTSRC)/sfnt/sfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library glyph and image caching system
|
||||
#
|
||||
ftcache.ppc.o: $(FTSRC)/cache/ftcache.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library OpenType font driver
|
||||
#
|
||||
cff.ppc.o: $(FTSRC)/cff/cff.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library TrueType font driver
|
||||
#
|
||||
truetype.ppc.o: $(FTSRC)/truetype/truetype.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library Type1 font driver
|
||||
#
|
||||
type1.ppc.o: $(FTSRC)/type1/type1.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library Type42 font driver
|
||||
#
|
||||
type42.ppc.o: $(FTSRC)/type42/type42.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library CID-keyed Type1 font driver
|
||||
#
|
||||
type1cid.ppc.o: $(FTSRC)/cid/type1cid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library BDF bitmap font driver
|
||||
#
|
||||
bdf.ppc.o: $(FTSRC)/bdf/bdf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library PCF bitmap font driver
|
||||
#
|
||||
pcf.ppc.o: $(FTSRC)/pcf/pcf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library gzip support for compressed PCF bitmap fonts
|
||||
#
|
||||
gzip.ppc.o: $(FTSRC)/gzip/ftgzip.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
# FreeType2 library bzip2 support for compressed PCF bitmap fonts
|
||||
#
|
||||
bzip2.ppc.o: $(FTSRC)/bzip2/ftbzip2.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library compress support for compressed PCF bitmap fonts
|
||||
#
|
||||
lzw.ppc.o: $(FTSRC)/lzw/ftlzw.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library PFR font driver
|
||||
#
|
||||
pfr.ppc.o: $(FTSRC)/pfr/pfr.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library Windows FNT/FON bitmap font driver
|
||||
#
|
||||
winfnt.ppc.o: $(FTSRC)/winfonts/winfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library TrueTypeGX Validator
|
||||
#
|
||||
gxvalid.ppc.o: $(FTSRC)/gxvalid/gxvalid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library OpenType validator
|
||||
#
|
||||
otvalid.ppc.o: $(FTSRC)/otvalid/otvalid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ $<
|
||||
|
||||
BASEPPC = ftbase.ppc.o ftbbox.ppc.o ftbdf.ppc.o ftbitmap.ppc.o ftcid.ppc.o \
|
||||
ftfntfmt.ppc.oftfstype.ppc.o ftgasp.ppc.o ftglyph.ppc.o \
|
||||
ftgxval.ppc.o ftlcdfil.ppc.o ftmm.ppc.o ftotval.ppc.o \
|
||||
ftpatent.ppc.o ftpfr.ppc.o ftstroke.ppc.o ftsynth.ppc.o \
|
||||
fttype1.ppc.o ftwinfnt.ppc.o
|
||||
|
||||
DEBUGPPC = ftdebug.ppc.o ftdebugpure.ppc.o
|
||||
|
||||
AFITPPC = autofit.ppc.o
|
||||
|
||||
GXVPPC = gxvalid.ppc.o
|
||||
|
||||
OTVPPC = otvalid.ppc.o
|
||||
|
||||
PSPPC = psaux.ppc.o psnames.ppc.o pshinter.ppc.o
|
||||
|
||||
RASTERPPC = raster.ppc.o smooth.ppc.o
|
||||
|
||||
FONTDPPC = cff.ppc.o type1.ppc.o type42.ppc.o type1cid.ppc.o truetype.ppc.o\
|
||||
bdf.ppc.o pcf.ppc.o pfr.ppc.o winfnt.ppc.o
|
||||
|
||||
libft2_ppc.a: $(BASEPPC) $(AFITPPC) $(GXVPPC) $(OTVPPC) $(PSPPC) $(RASTERPPC) sfnt.ppc.o ftcache.ppc.o $(FONTDPPC) gzip.ppc.o bzip2.ppc.o lzw.ppc.o
|
||||
$(AR) $@ $(BASEPPC) $(AFITPPC) $(GXVPPC) $(OTVPPC) $(PSPPC) $(RASTERPPC) sfnt.ppc.o ftcache.ppc.o $(FONTDPPC) gzip.ppc.o bzip2.ppc.o lzw.ppc.o
|
||||
-@ ($(RANLIB) $@ || true) >/dev/null 2>&1
|
||||
|
||||
#Local Variables:
|
||||
#coding: latin-1
|
||||
#End:
|
||||
+303
-303
@@ -1,303 +1,303 @@
|
||||
#
|
||||
# Makefile for FreeType2 link library using gcc 4.0.3 from the
|
||||
# AmigaOS4 SDK
|
||||
#
|
||||
|
||||
|
||||
# Copyright 2005, 2006, 2007, 2009 by
|
||||
# Werner Lemberg and Detlef Würkner.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# to build from the builds/amiga directory call
|
||||
#
|
||||
# make -f makefile.os4
|
||||
#
|
||||
# Your programs source code should start with this
|
||||
# (uncomment the parts you do not need to keep the program small):
|
||||
# ---8<---
|
||||
#define FT_USE_AUTOFIT // autofitter
|
||||
#define FT_USE_RASTER // monochrome rasterizer
|
||||
#define FT_USE_SMOOTH // anti-aliasing rasterizer
|
||||
#define FT_USE_TT // truetype font driver
|
||||
#define FT_USE_T1 // type1 font driver
|
||||
#define FT_USE_T42 // type42 font driver
|
||||
#define FT_USE_T1CID // cid-keyed type1 font driver
|
||||
#define FT_USE_CFF // opentype font driver
|
||||
#define FT_USE_BDF // bdf bitmap font driver
|
||||
#define FT_USE_PCF // pcf bitmap font driver
|
||||
#define FT_USE_PFR // pfr font driver
|
||||
#define FT_USE_WINFNT // windows .fnt|.fon bitmap font driver
|
||||
#define FT_USE_OTV // opentype validator
|
||||
#define FT_USE_GXV // truetype gx validator
|
||||
#include "FT:src/base/ftinit.c"
|
||||
# ---8<---
|
||||
#
|
||||
# link your programs with libft2_ppc.a and either ftsystem.ppc.o or ftsystempure.ppc.o
|
||||
# (and either ftdebug.ppc.o or ftdebugpure.ppc.o if you enabled FT_DEBUG_LEVEL_ERROR or
|
||||
# FT_DEBUG_LEVEL_TRACE in include/freetype/config/ftoption.h).
|
||||
|
||||
all: assign libft2_ppc.a ftsystem.ppc.o ftsystempure.ppc.o
|
||||
|
||||
assign:
|
||||
assign FT: //
|
||||
|
||||
CC = ppc-amigaos-gcc
|
||||
AR = ppc-amigaos-ar
|
||||
RANLIB = ppc-amigaos-ranlib
|
||||
|
||||
DIRFLAGS = -Iinclude -I/FT/src -I/FT/include -I/SDK/include
|
||||
|
||||
WARNINGS = -Wall -W -Wundef -Wpointer-arith -Wbad-function-cast \
|
||||
-Waggregate-return -Wwrite-strings -Wshadow
|
||||
|
||||
OPTIONS = -DFT2_BUILD_LIBRARY -DNDEBUG -fno-builtin
|
||||
OPTIMIZE = -O2 -fomit-frame-pointer -fstrength-reduce -finline-functions
|
||||
|
||||
CFLAGS = -mcrt=clib2 $(DIRFLAGS) $(WARNINGS) $(FT2FLAGS) $(OPTIONS) $(OPTIMIZE)
|
||||
|
||||
#
|
||||
# FreeType2 library base
|
||||
#
|
||||
ftbase.ppc.o: FT:src/base/ftbase.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbase.c
|
||||
|
||||
ftinit.ppc.o: FT:src/base/ftinit.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftinit.c
|
||||
|
||||
ftsystem.ppc.o: FT:src/base/ftsystem.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftsystem.c
|
||||
|
||||
# pure version for use in run-time library etc
|
||||
ftsystempure.ppc.o: src/base/ftsystem.c
|
||||
$(CC) -c $(CFLAGS) -o $@ src/base/ftsystem.c
|
||||
|
||||
#
|
||||
# FreeType2 library base extensions
|
||||
#
|
||||
ftbbox.ppc.o: FT:src/base/ftbbox.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbbox.c
|
||||
|
||||
ftbdf.ppc.o: FT:src/base/ftbdf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbdf.c
|
||||
|
||||
ftbitmap.ppc.o: FT:src/base/ftbitmap.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbitmap.c
|
||||
|
||||
ftcid.ppc.o: FT:src/base/ftcid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftcid.c
|
||||
|
||||
ftdebug.ppc.o: FT:src/base/ftdebug.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftdebug.c
|
||||
|
||||
# pure version for use in run-time library etc
|
||||
ftdebugpure.ppc.o: src/base/ftdebug.c
|
||||
$(CC) -c $(CFLAGS) -o $@ src/base/ftdebug.c
|
||||
|
||||
ftfstype.ppc.o: FT:src/base/ftfstype.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftfstype.c
|
||||
|
||||
ftgasp.ppc.o: FT:src/base/ftgasp.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftgasp.c
|
||||
|
||||
ftglyph.ppc.o: FT:src/base/ftglyph.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftglyph.c
|
||||
|
||||
ftgxval.ppc.o: FT:src/base/ftgxval.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftgxval.c
|
||||
|
||||
ftlcdfil.ppc.o: FT:src/base/ftlcdfil.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftlcdfil.c
|
||||
|
||||
ftmm.ppc.o: FT:src/base/ftmm.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftmm.c
|
||||
|
||||
ftotval.ppc.o: FT:src/base/ftotval.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftotval.c
|
||||
|
||||
ftpatent.ppc.o: FT:src/base/ftpatent.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftpatent.c
|
||||
|
||||
ftpfr.ppc.o: FT:src/base/ftpfr.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftpfr.c
|
||||
|
||||
ftstroke.ppc.o: FT:src/base/ftstroke.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftstroke.c
|
||||
|
||||
ftsynth.ppc.o: FT:src/base/ftsynth.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftsynth.c
|
||||
|
||||
fttype1.ppc.o: FT:src/base/fttype1.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/fttype1.c
|
||||
|
||||
ftwinfnt.ppc.o: FT:src/base/ftwinfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftwinfnt.c
|
||||
|
||||
ftxf86.ppc.o: FT:src/base/ftxf86.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftxf86.c
|
||||
|
||||
#
|
||||
# FreeType2 library autofitting module
|
||||
#
|
||||
autofit.ppc.o: FT:src/autofit/autofit.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/autofit/autofit.c
|
||||
|
||||
#
|
||||
# FreeType2 library postscript hinting module
|
||||
#
|
||||
pshinter.ppc.o: FT:src/pshinter/pshinter.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/pshinter/pshinter.c
|
||||
|
||||
#
|
||||
# FreeType2 library PS support module
|
||||
#
|
||||
psaux.ppc.o: FT:src/psaux/psaux.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/psaux/psaux.c
|
||||
|
||||
#
|
||||
# FreeType2 library PS glyph names module
|
||||
#
|
||||
psnames.ppc.o: FT:src/psnames/psnames.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/psnames/psnames.c
|
||||
|
||||
#
|
||||
# FreeType2 library monochrome raster module
|
||||
#
|
||||
raster.ppc.o: FT:src/raster/raster.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/raster/raster.c
|
||||
|
||||
#
|
||||
# FreeType2 library anti-aliasing raster module
|
||||
#
|
||||
smooth.ppc.o: FT:src/smooth/smooth.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/smooth/smooth.c
|
||||
|
||||
#
|
||||
# FreeType2 library 'sfnt' module
|
||||
#
|
||||
sfnt.ppc.o: FT:src/sfnt/sfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/sfnt/sfnt.c
|
||||
|
||||
#
|
||||
# FreeType2 library glyph and image caching system
|
||||
#
|
||||
ftcache.ppc.o: FT:src/cache/ftcache.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/cache/ftcache.c
|
||||
|
||||
#
|
||||
# FreeType2 library OpenType font driver
|
||||
#
|
||||
cff.ppc.o: FT:src/cff/cff.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/cff/cff.c
|
||||
|
||||
#
|
||||
# FreeType2 library TrueType font driver
|
||||
#
|
||||
truetype.ppc.o: FT:src/truetype/truetype.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/truetype/truetype.c
|
||||
|
||||
#
|
||||
# FreeType2 library Type1 font driver
|
||||
#
|
||||
type1.ppc.o: FT:src/type1/type1.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/type1/type1.c
|
||||
|
||||
#
|
||||
# FreeType2 library Type42 font driver
|
||||
#
|
||||
type42.ppc.o: FT:src/type42/type42.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/type42/type42.c
|
||||
|
||||
#
|
||||
# FreeType2 library CID-keyed Type1 font driver
|
||||
#
|
||||
type1cid.ppc.o: FT:src/cid/type1cid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/cid/type1cid.c
|
||||
|
||||
#
|
||||
# FreeType2 library BDF bitmap font driver
|
||||
#
|
||||
bdf.ppc.o: FT:src/bdf/bdf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/bdf/bdf.c
|
||||
|
||||
#
|
||||
# FreeType2 library PCF bitmap font driver
|
||||
#
|
||||
pcf.ppc.o: FT:src/pcf/pcf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/pcf/pcf.c
|
||||
|
||||
#
|
||||
# FreeType2 library gzip support for compressed PCF bitmap fonts
|
||||
#
|
||||
gzip.ppc.o: FT:src/gzip/ftgzip.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/gzip/ftgzip.c
|
||||
|
||||
#
|
||||
# FreeType2 library bzip2 support for compressed PCF bitmap fonts
|
||||
#
|
||||
bzip2.ppc.o: FT:src/bzip2/ftbzip2.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/bzip2/ftbzip2.c
|
||||
|
||||
#
|
||||
# FreeType2 library compress support for compressed PCF bitmap fonts
|
||||
#
|
||||
lzw.ppc.o: FT:src/lzw/ftlzw.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/lzw/ftlzw.c
|
||||
|
||||
#
|
||||
# FreeType2 library PFR font driver
|
||||
#
|
||||
pfr.ppc.o: FT:src/pfr/pfr.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/pfr/pfr.c
|
||||
|
||||
#
|
||||
# FreeType2 library Windows FNT/FON bitmap font driver
|
||||
#
|
||||
winfnt.ppc.o: FT:src/winfonts/winfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/winfonts/winfnt.c
|
||||
|
||||
#
|
||||
# FreeType2 library TrueTypeGX Validator
|
||||
#
|
||||
gxvalid.ppc.o: FT:src/gxvalid/gxvalid.c
|
||||
$(CC) -c $(CFLAGS) -Wno-aggregate-return -o $@ /FT/src/gxvalid/gxvalid.c
|
||||
|
||||
#
|
||||
# FreeType2 library OpenType validator
|
||||
#
|
||||
otvalid.ppc.o: FT:src/otvalid/otvalid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/otvalid/otvalid.c
|
||||
|
||||
BASE = ftbase.ppc.o ftbbox.ppc.o ftbdf.ppc.o ftbitmap.ppc.o ftcid.ppc.o \
|
||||
ftfstype.ppc.o ftgasp.ppc.o ftglyph.ppc.o ftgxval.ppc.o \
|
||||
ftlcdfil.ppc.o ftmm.ppc.o ftotval.ppc.o ftpatent.ppc.o ftpfr.ppc.o \
|
||||
ftstroke.ppc.o ftsynth.ppc.o fttype1.ppc.o ftwinfnt.ppc.o \
|
||||
ftxf86.ppc.o
|
||||
|
||||
DEBUG = ftdebug.ppc.o ftdebugpure.ppc.o
|
||||
|
||||
AFIT = autofit.ppc.o
|
||||
|
||||
GXV = gxvalid.ppc.o
|
||||
|
||||
OTV = otvalid.ppc.o
|
||||
|
||||
PS = psaux.ppc.o psnames.ppc.o pshinter.ppc.o
|
||||
|
||||
RASTER = raster.ppc.o smooth.ppc.o
|
||||
|
||||
FONTD = cff.ppc.o type1.ppc.o type42.ppc.o type1cid.ppc.o truetype.ppc.o\
|
||||
bdf.ppc.o pcf.ppc.o pfr.ppc.o winfnt.ppc.o
|
||||
|
||||
libft2_ppc.a: $(BASE) $(AFIT) $(GXV) $(OTV) $(PS) $(RASTER) sfnt.ppc.o ftcache.ppc.o $(FONTD) gzip.ppc.o lzw.ppc.o
|
||||
$(AR) r $@ $(BASE) $(AFIT) $(GXV) $(OTV) $(PS) $(RASTER) sfnt.ppc.o ftcache.ppc.o $(FONTD) gzip.ppc.o lzw.ppc.o
|
||||
$(RANLIB) $@
|
||||
|
||||
#Local Variables:
|
||||
#coding: latin-1
|
||||
#End:
|
||||
#
|
||||
# Makefile for FreeType2 link library using gcc 4.0.3 from the
|
||||
# AmigaOS4 SDK
|
||||
#
|
||||
|
||||
|
||||
# Copyright 2005-2015 by
|
||||
# Werner Lemberg and Detlef Würkner.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# to build from the builds/amiga directory call
|
||||
#
|
||||
# make -f makefile.os4
|
||||
#
|
||||
# Your programs source code should start with this
|
||||
# (uncomment the parts you do not need to keep the program small):
|
||||
# ---8<---
|
||||
#define FT_USE_AUTOFIT // autofitter
|
||||
#define FT_USE_RASTER // monochrome rasterizer
|
||||
#define FT_USE_SMOOTH // anti-aliasing rasterizer
|
||||
#define FT_USE_TT // truetype font driver
|
||||
#define FT_USE_T1 // type1 font driver
|
||||
#define FT_USE_T42 // type42 font driver
|
||||
#define FT_USE_T1CID // cid-keyed type1 font driver
|
||||
#define FT_USE_CFF // opentype font driver
|
||||
#define FT_USE_BDF // bdf bitmap font driver
|
||||
#define FT_USE_PCF // pcf bitmap font driver
|
||||
#define FT_USE_PFR // pfr font driver
|
||||
#define FT_USE_WINFNT // windows .fnt|.fon bitmap font driver
|
||||
#define FT_USE_OTV // opentype validator
|
||||
#define FT_USE_GXV // truetype gx validator
|
||||
#include "FT:src/base/ftinit.c"
|
||||
# ---8<---
|
||||
#
|
||||
# link your programs with libft2_ppc.a and either ftsystem.ppc.o or ftsystempure.ppc.o
|
||||
# (and either ftdebug.ppc.o or ftdebugpure.ppc.o if you enabled FT_DEBUG_LEVEL_ERROR or
|
||||
# FT_DEBUG_LEVEL_TRACE in include/freetype/config/ftoption.h).
|
||||
|
||||
all: assign libft2_ppc.a ftsystem.ppc.o ftsystempure.ppc.o
|
||||
|
||||
assign:
|
||||
assign FT: //
|
||||
|
||||
CC = ppc-amigaos-gcc
|
||||
AR = ppc-amigaos-ar
|
||||
RANLIB = ppc-amigaos-ranlib
|
||||
|
||||
DIRFLAGS = -Iinclude -I/FT/src -I/FT/include -I/SDK/include
|
||||
|
||||
WARNINGS = -Wall -W -Wundef -Wpointer-arith -Wbad-function-cast \
|
||||
-Waggregate-return -Wwrite-strings -Wshadow
|
||||
|
||||
OPTIONS = -DFT2_BUILD_LIBRARY -DNDEBUG -fno-builtin
|
||||
OPTIMIZE = -O2 -fomit-frame-pointer -fstrength-reduce -finline-functions
|
||||
|
||||
CFLAGS = -mcrt=clib2 $(DIRFLAGS) $(WARNINGS) $(FT2FLAGS) $(OPTIONS) $(OPTIMIZE)
|
||||
|
||||
#
|
||||
# FreeType2 library base
|
||||
#
|
||||
ftbase.ppc.o: FT:src/base/ftbase.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbase.c
|
||||
|
||||
ftinit.ppc.o: FT:src/base/ftinit.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftinit.c
|
||||
|
||||
ftsystem.ppc.o: FT:src/base/ftsystem.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftsystem.c
|
||||
|
||||
# pure version for use in run-time library etc
|
||||
ftsystempure.ppc.o: src/base/ftsystem.c
|
||||
$(CC) -c $(CFLAGS) -o $@ src/base/ftsystem.c
|
||||
|
||||
#
|
||||
# FreeType2 library base extensions
|
||||
#
|
||||
ftbbox.ppc.o: FT:src/base/ftbbox.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbbox.c
|
||||
|
||||
ftbdf.ppc.o: FT:src/base/ftbdf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbdf.c
|
||||
|
||||
ftbitmap.ppc.o: FT:src/base/ftbitmap.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftbitmap.c
|
||||
|
||||
ftcid.ppc.o: FT:src/base/ftcid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftcid.c
|
||||
|
||||
ftdebug.ppc.o: FT:src/base/ftdebug.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftdebug.c
|
||||
|
||||
# pure version for use in run-time library etc
|
||||
ftdebugpure.ppc.o: src/base/ftdebug.c
|
||||
$(CC) -c $(CFLAGS) -o $@ src/base/ftdebug.c
|
||||
|
||||
ftfntfmt.ppc.o: FT:src/base/ftfntfmt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftfntfmt.c
|
||||
|
||||
ftfstype.ppc.o: FT:src/base/ftfstype.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftfstype.c
|
||||
|
||||
ftgasp.ppc.o: FT:src/base/ftgasp.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftgasp.c
|
||||
|
||||
ftglyph.ppc.o: FT:src/base/ftglyph.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftglyph.c
|
||||
|
||||
ftgxval.ppc.o: FT:src/base/ftgxval.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftgxval.c
|
||||
|
||||
ftlcdfil.ppc.o: FT:src/base/ftlcdfil.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftlcdfil.c
|
||||
|
||||
ftmm.ppc.o: FT:src/base/ftmm.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftmm.c
|
||||
|
||||
ftotval.ppc.o: FT:src/base/ftotval.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftotval.c
|
||||
|
||||
ftpatent.ppc.o: FT:src/base/ftpatent.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftpatent.c
|
||||
|
||||
ftpfr.ppc.o: FT:src/base/ftpfr.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftpfr.c
|
||||
|
||||
ftstroke.ppc.o: FT:src/base/ftstroke.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftstroke.c
|
||||
|
||||
ftsynth.ppc.o: FT:src/base/ftsynth.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftsynth.c
|
||||
|
||||
fttype1.ppc.o: FT:src/base/fttype1.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/fttype1.c
|
||||
|
||||
ftwinfnt.ppc.o: FT:src/base/ftwinfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/base/ftwinfnt.c
|
||||
|
||||
#
|
||||
# FreeType2 library autofitting module
|
||||
#
|
||||
autofit.ppc.o: FT:src/autofit/autofit.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/autofit/autofit.c
|
||||
|
||||
#
|
||||
# FreeType2 library postscript hinting module
|
||||
#
|
||||
pshinter.ppc.o: FT:src/pshinter/pshinter.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/pshinter/pshinter.c
|
||||
|
||||
#
|
||||
# FreeType2 library PS support module
|
||||
#
|
||||
psaux.ppc.o: FT:src/psaux/psaux.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/psaux/psaux.c
|
||||
|
||||
#
|
||||
# FreeType2 library PS glyph names module
|
||||
#
|
||||
psnames.ppc.o: FT:src/psnames/psnames.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/psnames/psnames.c
|
||||
|
||||
#
|
||||
# FreeType2 library monochrome raster module
|
||||
#
|
||||
raster.ppc.o: FT:src/raster/raster.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/raster/raster.c
|
||||
|
||||
#
|
||||
# FreeType2 library anti-aliasing raster module
|
||||
#
|
||||
smooth.ppc.o: FT:src/smooth/smooth.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/smooth/smooth.c
|
||||
|
||||
#
|
||||
# FreeType2 library 'sfnt' module
|
||||
#
|
||||
sfnt.ppc.o: FT:src/sfnt/sfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/sfnt/sfnt.c
|
||||
|
||||
#
|
||||
# FreeType2 library glyph and image caching system
|
||||
#
|
||||
ftcache.ppc.o: FT:src/cache/ftcache.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/cache/ftcache.c
|
||||
|
||||
#
|
||||
# FreeType2 library OpenType font driver
|
||||
#
|
||||
cff.ppc.o: FT:src/cff/cff.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/cff/cff.c
|
||||
|
||||
#
|
||||
# FreeType2 library TrueType font driver
|
||||
#
|
||||
truetype.ppc.o: FT:src/truetype/truetype.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/truetype/truetype.c
|
||||
|
||||
#
|
||||
# FreeType2 library Type1 font driver
|
||||
#
|
||||
type1.ppc.o: FT:src/type1/type1.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/type1/type1.c
|
||||
|
||||
#
|
||||
# FreeType2 library Type42 font driver
|
||||
#
|
||||
type42.ppc.o: FT:src/type42/type42.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/type42/type42.c
|
||||
|
||||
#
|
||||
# FreeType2 library CID-keyed Type1 font driver
|
||||
#
|
||||
type1cid.ppc.o: FT:src/cid/type1cid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/cid/type1cid.c
|
||||
|
||||
#
|
||||
# FreeType2 library BDF bitmap font driver
|
||||
#
|
||||
bdf.ppc.o: FT:src/bdf/bdf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/bdf/bdf.c
|
||||
|
||||
#
|
||||
# FreeType2 library PCF bitmap font driver
|
||||
#
|
||||
pcf.ppc.o: FT:src/pcf/pcf.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/pcf/pcf.c
|
||||
|
||||
#
|
||||
# FreeType2 library gzip support for compressed PCF bitmap fonts
|
||||
#
|
||||
gzip.ppc.o: FT:src/gzip/ftgzip.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/gzip/ftgzip.c
|
||||
|
||||
#
|
||||
# FreeType2 library bzip2 support for compressed PCF bitmap fonts
|
||||
#
|
||||
bzip2.ppc.o: FT:src/bzip2/ftbzip2.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/bzip2/ftbzip2.c
|
||||
|
||||
#
|
||||
# FreeType2 library compress support for compressed PCF bitmap fonts
|
||||
#
|
||||
lzw.ppc.o: FT:src/lzw/ftlzw.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/lzw/ftlzw.c
|
||||
|
||||
#
|
||||
# FreeType2 library PFR font driver
|
||||
#
|
||||
pfr.ppc.o: FT:src/pfr/pfr.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/pfr/pfr.c
|
||||
|
||||
#
|
||||
# FreeType2 library Windows FNT/FON bitmap font driver
|
||||
#
|
||||
winfnt.ppc.o: FT:src/winfonts/winfnt.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/winfonts/winfnt.c
|
||||
|
||||
#
|
||||
# FreeType2 library TrueTypeGX Validator
|
||||
#
|
||||
gxvalid.ppc.o: FT:src/gxvalid/gxvalid.c
|
||||
$(CC) -c $(CFLAGS) -Wno-aggregate-return -o $@ /FT/src/gxvalid/gxvalid.c
|
||||
|
||||
#
|
||||
# FreeType2 library OpenType validator
|
||||
#
|
||||
otvalid.ppc.o: FT:src/otvalid/otvalid.c
|
||||
$(CC) -c $(CFLAGS) -o $@ /FT/src/otvalid/otvalid.c
|
||||
|
||||
BASE = ftbase.ppc.o ftbbox.ppc.o ftbdf.ppc.o ftbitmap.ppc.o ftcid.ppc.o \
|
||||
ftfntfmt.ppc.o ftfstype.ppc.o ftgasp.ppc.o ftglyph.ppc.o \
|
||||
ftgxval.ppc.o ftlcdfil.ppc.o ftmm.ppc.o ftotval.ppc.o \
|
||||
ftpatent.ppc.o ftpfr.ppc.o ftstroke.ppc.o ftsynth.ppc.o \
|
||||
fttype1.ppc.o ftwinfnt.ppc.o
|
||||
|
||||
DEBUG = ftdebug.ppc.o ftdebugpure.ppc.o
|
||||
|
||||
AFIT = autofit.ppc.o
|
||||
|
||||
GXV = gxvalid.ppc.o
|
||||
|
||||
OTV = otvalid.ppc.o
|
||||
|
||||
PS = psaux.ppc.o psnames.ppc.o pshinter.ppc.o
|
||||
|
||||
RASTER = raster.ppc.o smooth.ppc.o
|
||||
|
||||
FONTD = cff.ppc.o type1.ppc.o type42.ppc.o type1cid.ppc.o truetype.ppc.o\
|
||||
bdf.ppc.o pcf.ppc.o pfr.ppc.o winfnt.ppc.o
|
||||
|
||||
libft2_ppc.a: $(BASE) $(AFIT) $(GXV) $(OTV) $(PS) $(RASTER) sfnt.ppc.o ftcache.ppc.o $(FONTD) gzip.ppc.o lzw.ppc.o
|
||||
$(AR) r $@ $(BASE) $(AFIT) $(GXV) $(OTV) $(PS) $(RASTER) sfnt.ppc.o ftcache.ppc.o $(FONTD) gzip.ppc.o lzw.ppc.o
|
||||
$(RANLIB) $@
|
||||
|
||||
#Local Variables:
|
||||
#coding: latin-1
|
||||
#End:
|
||||
+303
-303
@@ -1,303 +1,303 @@
|
||||
#
|
||||
# Makefile for FreeType2 link library using Amiga SAS/C 6.58
|
||||
#
|
||||
|
||||
|
||||
# Copyright 2005,2006, 2007, 2009 by
|
||||
# Werner Lemberg and Detlef Würkner.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# to build from the builds/amiga directory call
|
||||
#
|
||||
# smake assign
|
||||
# smake
|
||||
#
|
||||
# Your programs source code should start with this
|
||||
# (uncomment the parts you do not need to keep the program small):
|
||||
# ---8<---
|
||||
#define FT_USE_AUTOFIT // autofitter
|
||||
#define FT_USE_RASTER // monochrome rasterizer
|
||||
#define FT_USE_SMOOTH // anti-aliasing rasterizer
|
||||
#define FT_USE_TT // truetype font driver
|
||||
#define FT_USE_T1 // type1 font driver
|
||||
#define FT_USE_T42 // type42 font driver
|
||||
#define FT_USE_T1CID // cid-keyed type1 font driver
|
||||
#define FT_USE_CFF // opentype font driver
|
||||
#define FT_USE_BDF // bdf bitmap font driver
|
||||
#define FT_USE_PCF // pcf bitmap font driver
|
||||
#define FT_USE_PFR // pfr font driver
|
||||
#define FT_USE_WINFNT // windows .fnt|.fon bitmap font driver
|
||||
#define FT_USE_OTV // opentype validator
|
||||
#define FT_USE_GXV // truetype gx validator
|
||||
#include "FT:src/base/ftinit.c"
|
||||
# ---8<---
|
||||
#
|
||||
# link your programs with ft2_680x0.lib and either ftsystem.o or ftsystempure.o
|
||||
# (and either ftdebug.o or ftdebugpure.o if you enabled FT_DEBUG_LEVEL_ERROR or
|
||||
# FT_DEBUG_LEVEL_TRACE in include/freetype/config/ftoption.h).
|
||||
|
||||
OBJBASE = ftbase.o ftbbox.o ftbdf.o ftbitmap.o ftcid.o ftfstype.o ftgasp.o \
|
||||
ftglyph.o ftgxval.o ftlcdfil.o ftmm.o ftotval.o ftpatent.o ftpfr.o \
|
||||
ftstroke.o ftsynth.o fttype1.o ftwinfnt.o ftxf86.o
|
||||
|
||||
OBJSYSTEM = ftsystem.o ftsystempure.o
|
||||
|
||||
OBJDEBUG = ftdebug.o ftdebugpure.o
|
||||
|
||||
OBJAFIT = autofit.o
|
||||
|
||||
OBJGXV = gxvalid.o
|
||||
|
||||
OBJOTV = otvalid.o
|
||||
|
||||
OBJPS = psaux.o psnames.o pshinter.o
|
||||
|
||||
OBJRASTER = raster.o smooth.o
|
||||
|
||||
OBJSFNT = sfnt.o
|
||||
|
||||
OBJCACHE = ftcache.o
|
||||
|
||||
OBJFONTD = cff.o type1.o type42.o type1cid.o\
|
||||
truetype.o winfnt.o bdf.o pcf.o pfr.o
|
||||
|
||||
CORE = FT:src/
|
||||
|
||||
CPU = 68000
|
||||
#CPU = 68020
|
||||
#CPU = 68030
|
||||
#CPU = 68040
|
||||
#CPU = 68060
|
||||
|
||||
OPTIMIZER = optinlocal
|
||||
|
||||
SCFLAGS = optimize opttime optsched strmerge data=faronly idlen=50 cpu=$(CPU)\
|
||||
idir=include/ idir=$(CORE) idir=FT:include/ nostackcheck nochkabort\
|
||||
noicons ignore=79,85,110,306 parameters=both define=FT2_BUILD_LIBRARY
|
||||
|
||||
LIB = ft2_$(CPU).lib
|
||||
|
||||
# sample linker options
|
||||
OPTS = link lib=$(LIB),lib:sc.lib,lib:amiga.lib,lib:debug.lib\
|
||||
smallcode smalldata noicons utillib
|
||||
|
||||
# sample program entry
|
||||
#myprog: myprog.c ftsystem.o $(LIB)
|
||||
# sc $< programname=$@ ftsystem.o $(SCFLAGS) $(OPTS)
|
||||
|
||||
all: $(LIB) $(OBJSYSTEM) $(OBJDEBUG)
|
||||
|
||||
assign:
|
||||
assign FT: //
|
||||
|
||||
# uses separate object modules in lib to make for easier debugging
|
||||
# also, can make smaller programs if entire engine is not used
|
||||
ft2_$(CPU).lib: $(OBJBASE) $(OBJAFIT) $(OBJOTV) $(OBJPS) $(OBJRASTER) $(OBJSFNT) $(OBJCACHE) $(OBJFONTD) lzw.o gzip.o bzip2.o
|
||||
oml $@ r $(OBJBASE) $(OBJAFIT) $(OBJOTV) $(OBJPS) $(OBJRASTER) $(OBJSFNT) $(OBJCACHE) $(OBJFONTD) lzw.o gzip.o bzip2.o
|
||||
|
||||
clean:
|
||||
-delete \#?.o
|
||||
|
||||
realclean: clean
|
||||
-delete ft2$(CPU).lib
|
||||
|
||||
#
|
||||
# freetype library base
|
||||
#
|
||||
ftbase.o: $(CORE)base/ftbase.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftinit.o: $(CORE)base/ftinit.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftsystem.o: $(CORE)base/ftsystem.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftsystempure.o: src/base/ftsystem.c ## pure version for use in run-time library etc
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftdebug.o: $(CORE)base/ftdebug.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftdebugpure.o: src/base/ftdebug.c ## pure version for use in run-time library etc
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
#
|
||||
# freetype library base extensions
|
||||
#
|
||||
ftbbox.o: $(CORE)base/ftbbox.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftbdf.o: $(CORE)base/ftbdf.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftbitmap.o: $(CORE)base/ftbitmap.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftcid.o: $(CORE)base/ftcid.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftfstype.o: $(CORE)base/ftfstype.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftgasp.o: $(CORE)base/ftgasp.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftglyph.o: $(CORE)base/ftglyph.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftgxval.o: $(CORE)base/ftgxval.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftlcdfil.o: $(CORE)base/ftlcdfil.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftmm.o: $(CORE)base/ftmm.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftotval.o: $(CORE)base/ftotval.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftpatent.o: $(CORE)base/ftpatent.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftpfr.o: $(CORE)base/ftpfr.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftstroke.o: $(CORE)base/ftstroke.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftsynth.o: $(CORE)base/ftsynth.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
fttype1.o: $(CORE)base/fttype1.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftwinfnt.o: $(CORE)base/ftwinfnt.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftxf86.o: $(CORE)base/ftxf86.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library autofitter module
|
||||
#
|
||||
autofit.o: $(CORE)autofit/autofit.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library PS hinting module
|
||||
#
|
||||
pshinter.o: $(CORE)pshinter/pshinter.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
#
|
||||
# freetype library PS support module
|
||||
#
|
||||
psaux.o: $(CORE)psaux/psaux.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library PS glyph names module
|
||||
#
|
||||
psnames.o: $(CORE)psnames/psnames.c
|
||||
sc $(SCFLAGS) code=far objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library monochrome raster module
|
||||
#
|
||||
raster.o: $(CORE)raster/raster.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library anti-aliasing raster module
|
||||
#
|
||||
smooth.o: $(CORE)smooth/smooth.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library 'sfnt' module
|
||||
#
|
||||
sfnt.o: $(CORE)sfnt/sfnt.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library glyph and image caching system (still experimental)
|
||||
#
|
||||
ftcache.o: $(CORE)cache/ftcache.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library OpenType font driver
|
||||
#
|
||||
cff.o: $(CORE)cff/cff.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library TrueType font driver
|
||||
#
|
||||
truetype.o: $(CORE)truetype/truetype.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library Type1 font driver
|
||||
#
|
||||
type1.o: $(CORE)type1/type1.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library Type42 font driver
|
||||
#
|
||||
type42.o: $(CORE)type42/type42.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library CID-keyed Type1 font driver
|
||||
#
|
||||
type1cid.o: $(CORE)cid/type1cid.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
#
|
||||
# freetype library CID-keyed Type1 font driver extensions
|
||||
#
|
||||
#cidafm.o: $(CORE)cid/cidafm.c
|
||||
# sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library BDF bitmap font driver
|
||||
#
|
||||
bdf.o: $(CORE)bdf/bdf.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library PCF bitmap font driver
|
||||
#
|
||||
pcf.o: $(CORE)pcf/pcf.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library gzip support for compressed PCF bitmap fonts
|
||||
#
|
||||
gzip.o: $(CORE)gzip/ftgzip.c
|
||||
sc $(SCFLAGS) define FAR objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library bzip2 support for compressed PCF bitmap fonts
|
||||
#
|
||||
bzip2.o: $(CORE)bzip2/ftbzip2.c
|
||||
sc $(SCFLAGS) define FAR objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library compress support for compressed PCF bitmap fonts
|
||||
#
|
||||
lzw.o: $(CORE)lzw/ftlzw.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library PFR font driver
|
||||
#
|
||||
pfr.o: $(CORE)pfr/pfr.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library Windows FNT/FON bitmap font driver
|
||||
#
|
||||
winfnt.o: $(CORE)winfonts/winfnt.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library TrueTypeGX validator
|
||||
#
|
||||
gxvalid.o: $(CORE)gxvalid/gxvalid.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library OpenType validator
|
||||
#
|
||||
otvalid.o: $(CORE)otvalid/otvalid.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#Local Variables:
|
||||
#coding: latin-1
|
||||
#End:
|
||||
#
|
||||
# Makefile for FreeType2 link library using Amiga SAS/C 6.58
|
||||
#
|
||||
|
||||
|
||||
# Copyright 2005-2015 by
|
||||
# Werner Lemberg and Detlef Würkner.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
# to build from the builds/amiga directory call
|
||||
#
|
||||
# smake assign
|
||||
# smake
|
||||
#
|
||||
# Your programs source code should start with this
|
||||
# (uncomment the parts you do not need to keep the program small):
|
||||
# ---8<---
|
||||
#define FT_USE_AUTOFIT // autofitter
|
||||
#define FT_USE_RASTER // monochrome rasterizer
|
||||
#define FT_USE_SMOOTH // anti-aliasing rasterizer
|
||||
#define FT_USE_TT // truetype font driver
|
||||
#define FT_USE_T1 // type1 font driver
|
||||
#define FT_USE_T42 // type42 font driver
|
||||
#define FT_USE_T1CID // cid-keyed type1 font driver
|
||||
#define FT_USE_CFF // opentype font driver
|
||||
#define FT_USE_BDF // bdf bitmap font driver
|
||||
#define FT_USE_PCF // pcf bitmap font driver
|
||||
#define FT_USE_PFR // pfr font driver
|
||||
#define FT_USE_WINFNT // windows .fnt|.fon bitmap font driver
|
||||
#define FT_USE_OTV // opentype validator
|
||||
#define FT_USE_GXV // truetype gx validator
|
||||
#include "FT:src/base/ftinit.c"
|
||||
# ---8<---
|
||||
#
|
||||
# link your programs with ft2_680x0.lib and either ftsystem.o or ftsystempure.o
|
||||
# (and either ftdebug.o or ftdebugpure.o if you enabled FT_DEBUG_LEVEL_ERROR or
|
||||
# FT_DEBUG_LEVEL_TRACE in include/freetype/config/ftoption.h).
|
||||
|
||||
OBJBASE = ftbase.o ftbbox.o ftbdf.o ftbitmap.o ftcid.o ftfntfmt.o ftfstype.o \
|
||||
ftgasp.o ftglyph.o ftgxval.o ftlcdfil.o ftmm.o ftotval.o \
|
||||
ftpatent.o ftpfr.o ftstroke.o ftsynth.o fttype1.o ftwinfnt.o
|
||||
|
||||
OBJSYSTEM = ftsystem.o ftsystempure.o
|
||||
|
||||
OBJDEBUG = ftdebug.o ftdebugpure.o
|
||||
|
||||
OBJAFIT = autofit.o
|
||||
|
||||
OBJGXV = gxvalid.o
|
||||
|
||||
OBJOTV = otvalid.o
|
||||
|
||||
OBJPS = psaux.o psnames.o pshinter.o
|
||||
|
||||
OBJRASTER = raster.o smooth.o
|
||||
|
||||
OBJSFNT = sfnt.o
|
||||
|
||||
OBJCACHE = ftcache.o
|
||||
|
||||
OBJFONTD = cff.o type1.o type42.o type1cid.o\
|
||||
truetype.o winfnt.o bdf.o pcf.o pfr.o
|
||||
|
||||
CORE = FT:src/
|
||||
|
||||
CPU = 68000
|
||||
#CPU = 68020
|
||||
#CPU = 68030
|
||||
#CPU = 68040
|
||||
#CPU = 68060
|
||||
|
||||
OPTIMIZER = optinlocal
|
||||
|
||||
SCFLAGS = optimize opttime optsched strmerge data=faronly idlen=50 cpu=$(CPU)\
|
||||
idir=include/ idir=$(CORE) idir=FT:include/ nostackcheck nochkabort\
|
||||
noicons ignore=79,85,110,306 parameters=both define=FT2_BUILD_LIBRARY
|
||||
|
||||
LIB = ft2_$(CPU).lib
|
||||
|
||||
# sample linker options
|
||||
OPTS = link lib=$(LIB),lib:sc.lib,lib:amiga.lib,lib:debug.lib\
|
||||
smallcode smalldata noicons utillib
|
||||
|
||||
# sample program entry
|
||||
#myprog: myprog.c ftsystem.o $(LIB)
|
||||
# sc $< programname=$@ ftsystem.o $(SCFLAGS) $(OPTS)
|
||||
|
||||
all: $(LIB) $(OBJSYSTEM) $(OBJDEBUG)
|
||||
|
||||
assign:
|
||||
assign FT: //
|
||||
|
||||
# uses separate object modules in lib to make for easier debugging
|
||||
# also, can make smaller programs if entire engine is not used
|
||||
ft2_$(CPU).lib: $(OBJBASE) $(OBJAFIT) $(OBJOTV) $(OBJPS) $(OBJRASTER) $(OBJSFNT) $(OBJCACHE) $(OBJFONTD) lzw.o gzip.o bzip2.o
|
||||
oml $@ r $(OBJBASE) $(OBJAFIT) $(OBJOTV) $(OBJPS) $(OBJRASTER) $(OBJSFNT) $(OBJCACHE) $(OBJFONTD) lzw.o gzip.o bzip2.o
|
||||
|
||||
clean:
|
||||
-delete \#?.o
|
||||
|
||||
realclean: clean
|
||||
-delete ft2$(CPU).lib
|
||||
|
||||
#
|
||||
# freetype library base
|
||||
#
|
||||
ftbase.o: $(CORE)base/ftbase.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftinit.o: $(CORE)base/ftinit.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftsystem.o: $(CORE)base/ftsystem.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftsystempure.o: src/base/ftsystem.c ## pure version for use in run-time library etc
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftdebug.o: $(CORE)base/ftdebug.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftdebugpure.o: src/base/ftdebug.c ## pure version for use in run-time library etc
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
#
|
||||
# freetype library base extensions
|
||||
#
|
||||
ftbbox.o: $(CORE)base/ftbbox.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftbdf.o: $(CORE)base/ftbdf.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftbitmap.o: $(CORE)base/ftbitmap.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftcid.o: $(CORE)base/ftcid.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftfntfmt.o: $(CORE)base/ftfntfmt.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftfstype.o: $(CORE)base/ftfstype.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftgasp.o: $(CORE)base/ftgasp.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftglyph.o: $(CORE)base/ftglyph.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftgxval.o: $(CORE)base/ftgxval.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftlcdfil.o: $(CORE)base/ftlcdfil.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftmm.o: $(CORE)base/ftmm.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftotval.o: $(CORE)base/ftotval.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftpatent.o: $(CORE)base/ftpatent.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftpfr.o: $(CORE)base/ftpfr.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftstroke.o: $(CORE)base/ftstroke.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftsynth.o: $(CORE)base/ftsynth.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
fttype1.o: $(CORE)base/fttype1.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
ftwinfnt.o: $(CORE)base/ftwinfnt.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library autofitter module
|
||||
#
|
||||
autofit.o: $(CORE)autofit/autofit.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library PS hinting module
|
||||
#
|
||||
pshinter.o: $(CORE)pshinter/pshinter.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
#
|
||||
# freetype library PS support module
|
||||
#
|
||||
psaux.o: $(CORE)psaux/psaux.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library PS glyph names module
|
||||
#
|
||||
psnames.o: $(CORE)psnames/psnames.c
|
||||
sc $(SCFLAGS) code=far objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library monochrome raster module
|
||||
#
|
||||
raster.o: $(CORE)raster/raster.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library anti-aliasing raster module
|
||||
#
|
||||
smooth.o: $(CORE)smooth/smooth.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library 'sfnt' module
|
||||
#
|
||||
sfnt.o: $(CORE)sfnt/sfnt.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library glyph and image caching system (still experimental)
|
||||
#
|
||||
ftcache.o: $(CORE)cache/ftcache.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library OpenType font driver
|
||||
#
|
||||
cff.o: $(CORE)cff/cff.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library TrueType font driver
|
||||
#
|
||||
truetype.o: $(CORE)truetype/truetype.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library Type1 font driver
|
||||
#
|
||||
type1.o: $(CORE)type1/type1.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# FreeType2 library Type42 font driver
|
||||
#
|
||||
type42.o: $(CORE)type42/type42.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library CID-keyed Type1 font driver
|
||||
#
|
||||
type1cid.o: $(CORE)cid/type1cid.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
#
|
||||
# freetype library CID-keyed Type1 font driver extensions
|
||||
#
|
||||
#cidafm.o: $(CORE)cid/cidafm.c
|
||||
# sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library BDF bitmap font driver
|
||||
#
|
||||
bdf.o: $(CORE)bdf/bdf.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library PCF bitmap font driver
|
||||
#
|
||||
pcf.o: $(CORE)pcf/pcf.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library gzip support for compressed PCF bitmap fonts
|
||||
#
|
||||
gzip.o: $(CORE)gzip/ftgzip.c
|
||||
sc $(SCFLAGS) define FAR objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library bzip2 support for compressed PCF bitmap fonts
|
||||
#
|
||||
bzip2.o: $(CORE)bzip2/ftbzip2.c
|
||||
sc $(SCFLAGS) define FAR objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library compress support for compressed PCF bitmap fonts
|
||||
#
|
||||
lzw.o: $(CORE)lzw/ftlzw.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library PFR font driver
|
||||
#
|
||||
pfr.o: $(CORE)pfr/pfr.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library Windows FNT/FON bitmap font driver
|
||||
#
|
||||
winfnt.o: $(CORE)winfonts/winfnt.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library TrueTypeGX validator
|
||||
#
|
||||
gxvalid.o: $(CORE)gxvalid/gxvalid.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#
|
||||
# freetype library OpenType validator
|
||||
#
|
||||
otvalid.o: $(CORE)otvalid/otvalid.c
|
||||
sc $(SCFLAGS) objname=$@ $<
|
||||
|
||||
#Local Variables:
|
||||
#coding: latin-1
|
||||
#End:
|
||||
+297
-297
@@ -1,297 +1,297 @@
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftdebug.c */
|
||||
/* */
|
||||
/* Debugging and logging component for amiga (body). */
|
||||
/* */
|
||||
/* Copyright 1996-2001, 2002, 2004, 2005, 2013 by */
|
||||
/* David Turner, Robert Wilhelm, Werner Lemberg and Detlef Würkner. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* This component contains various macros and functions used to ease the */
|
||||
/* debugging of the FreeType engine. Its main purpose is in assertion */
|
||||
/* checking, tracing, and error detection. */
|
||||
/* */
|
||||
/* There are now three debugging modes: */
|
||||
/* */
|
||||
/* - trace mode */
|
||||
/* */
|
||||
/* Error and trace messages are sent to the log file (which can be the */
|
||||
/* standard error output). */
|
||||
/* */
|
||||
/* - error mode */
|
||||
/* */
|
||||
/* Only error messages are generated. */
|
||||
/* */
|
||||
/* - release mode: */
|
||||
/* */
|
||||
/* No error message is sent or generated. The code is free from any */
|
||||
/* debugging parts. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*
|
||||
* Based on the default ftdebug.c,
|
||||
* replaced vprintf() with KVPrintF(),
|
||||
* commented out exit(),
|
||||
* replaced getenv() with GetVar().
|
||||
*/
|
||||
|
||||
#include <exec/types.h>
|
||||
#include <utility/tagitem.h>
|
||||
#include <dos/exall.h>
|
||||
#include <dos/var.h>
|
||||
#define __NOLIBBASE__
|
||||
#define __NOLOBALIFACE__
|
||||
#define __USE_INLINE__
|
||||
#include <proto/dos.h>
|
||||
#include <clib/debug_protos.h>
|
||||
|
||||
#ifndef __amigaos4__
|
||||
extern struct Library *DOSBase;
|
||||
#else
|
||||
extern struct DOSIFace *IDOS;
|
||||
#endif
|
||||
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_FREETYPE_H
|
||||
#include FT_INTERNAL_DEBUG_H
|
||||
|
||||
|
||||
#if defined( FT_DEBUG_LEVEL_ERROR )
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
FT_Message( const char* fmt,
|
||||
... )
|
||||
{
|
||||
va_list ap;
|
||||
|
||||
|
||||
va_start( ap, fmt );
|
||||
KVPrintF( fmt, ap );
|
||||
va_end( ap );
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
FT_Panic( const char* fmt,
|
||||
... )
|
||||
{
|
||||
va_list ap;
|
||||
|
||||
|
||||
va_start( ap, fmt );
|
||||
KVPrintF( fmt, ap );
|
||||
va_end( ap );
|
||||
|
||||
/* exit( EXIT_FAILURE ); */
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( int )
|
||||
FT_Throw( FT_Error error,
|
||||
int line,
|
||||
const char* file )
|
||||
{
|
||||
FT_UNUSED( error );
|
||||
FT_UNUSED( line );
|
||||
FT_UNUSED( file );
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#endif /* FT_DEBUG_LEVEL_ERROR */
|
||||
|
||||
|
||||
|
||||
#ifdef FT_DEBUG_LEVEL_TRACE
|
||||
|
||||
/* array of trace levels, initialized to 0 */
|
||||
int ft_trace_levels[trace_count];
|
||||
|
||||
|
||||
/* define array of trace toggle names */
|
||||
#define FT_TRACE_DEF( x ) #x ,
|
||||
|
||||
static const char* ft_trace_toggles[trace_count + 1] =
|
||||
{
|
||||
#include FT_INTERNAL_TRACE_H
|
||||
NULL
|
||||
};
|
||||
|
||||
#undef FT_TRACE_DEF
|
||||
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( FT_Int )
|
||||
FT_Trace_Get_Count( void )
|
||||
{
|
||||
return trace_count;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( const char * )
|
||||
FT_Trace_Get_Name( FT_Int idx )
|
||||
{
|
||||
int max = FT_Trace_Get_Count();
|
||||
|
||||
|
||||
if ( idx < max )
|
||||
return ft_trace_toggles[idx];
|
||||
else
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Initialize the tracing sub-system. This is done by retrieving the */
|
||||
/* value of the `FT2_DEBUG' environment variable. It must be a list of */
|
||||
/* toggles, separated by spaces, `;', or `,'. Example: */
|
||||
/* */
|
||||
/* export FT2_DEBUG="any:3 memory:7 stream:5" */
|
||||
/* */
|
||||
/* This requests that all levels be set to 3, except the trace level for */
|
||||
/* the memory and stream components which are set to 7 and 5, */
|
||||
/* respectively. */
|
||||
/* */
|
||||
/* See the file <include/freetype/internal/fttrace.h> for details of the */
|
||||
/* available toggle names. */
|
||||
/* */
|
||||
/* The level must be between 0 and 7; 0 means quiet (except for serious */
|
||||
/* runtime errors), and 7 means _very_ verbose. */
|
||||
/* */
|
||||
FT_BASE_DEF( void )
|
||||
ft_debug_init( void )
|
||||
{
|
||||
/* const char* ft2_debug = getenv( "FT2_DEBUG" ); */
|
||||
char buf[256];
|
||||
const char* ft2_debug = &buf[0];
|
||||
|
||||
|
||||
/* if ( ft2_debug ) */
|
||||
if ( GetVar( "FT2_DEBUG", (STRPTR)ft2_debug, 256, LV_VAR ) > 0 )
|
||||
{
|
||||
const char* p = ft2_debug;
|
||||
const char* q;
|
||||
|
||||
|
||||
for ( ; *p; p++ )
|
||||
{
|
||||
/* skip leading whitespace and separators */
|
||||
if ( *p == ' ' || *p == '\t' || *p == ',' || *p == ';' || *p == '=' )
|
||||
continue;
|
||||
|
||||
/* read toggle name, followed by ':' */
|
||||
q = p;
|
||||
while ( *p && *p != ':' )
|
||||
p++;
|
||||
|
||||
if ( !*p )
|
||||
break;
|
||||
|
||||
if ( *p == ':' && p > q )
|
||||
{
|
||||
FT_Int n, i, len = (FT_Int)( p - q );
|
||||
FT_Int level = -1, found = -1;
|
||||
|
||||
|
||||
for ( n = 0; n < trace_count; n++ )
|
||||
{
|
||||
const char* toggle = ft_trace_toggles[n];
|
||||
|
||||
|
||||
for ( i = 0; i < len; i++ )
|
||||
{
|
||||
if ( toggle[i] != q[i] )
|
||||
break;
|
||||
}
|
||||
|
||||
if ( i == len && toggle[i] == 0 )
|
||||
{
|
||||
found = n;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* read level */
|
||||
p++;
|
||||
if ( *p )
|
||||
{
|
||||
level = *p - '0';
|
||||
if ( level < 0 || level > 7 )
|
||||
level = -1;
|
||||
}
|
||||
|
||||
if ( found >= 0 && level >= 0 )
|
||||
{
|
||||
if ( found == trace_any )
|
||||
{
|
||||
/* special case for `any' */
|
||||
for ( n = 0; n < trace_count; n++ )
|
||||
ft_trace_levels[n] = level;
|
||||
}
|
||||
else
|
||||
ft_trace_levels[found] = level;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#else /* !FT_DEBUG_LEVEL_TRACE */
|
||||
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
ft_debug_init( void )
|
||||
{
|
||||
/* nothing */
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( FT_Int )
|
||||
FT_Trace_Get_Count( void )
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( const char * )
|
||||
FT_Trace_Get_Name( FT_Int idx )
|
||||
{
|
||||
FT_UNUSED( idx );
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
#endif /* !FT_DEBUG_LEVEL_TRACE */
|
||||
|
||||
/*
|
||||
Local Variables:
|
||||
coding: latin-1
|
||||
End:
|
||||
*/
|
||||
/* END */
|
||||
/***************************************************************************/
|
||||
/* */
|
||||
/* ftdebug.c */
|
||||
/* */
|
||||
/* Debugging and logging component for amiga (body). */
|
||||
/* */
|
||||
/* Copyright 1996-2015 by */
|
||||
/* David Turner, Robert Wilhelm, Werner Lemberg and Detlef Würkner. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
/* modified, and distributed under the terms of the FreeType project */
|
||||
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
||||
/* this file you indicate that you have read the license and */
|
||||
/* understand and accept it fully. */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* This component contains various macros and functions used to ease the */
|
||||
/* debugging of the FreeType engine. Its main purpose is in assertion */
|
||||
/* checking, tracing, and error detection. */
|
||||
/* */
|
||||
/* There are now three debugging modes: */
|
||||
/* */
|
||||
/* - trace mode */
|
||||
/* */
|
||||
/* Error and trace messages are sent to the log file (which can be the */
|
||||
/* standard error output). */
|
||||
/* */
|
||||
/* - error mode */
|
||||
/* */
|
||||
/* Only error messages are generated. */
|
||||
/* */
|
||||
/* - release mode: */
|
||||
/* */
|
||||
/* No error message is sent or generated. The code is free from any */
|
||||
/* debugging parts. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
|
||||
/*
|
||||
* Based on the default ftdebug.c,
|
||||
* replaced vprintf() with KVPrintF(),
|
||||
* commented out exit(),
|
||||
* replaced getenv() with GetVar().
|
||||
*/
|
||||
|
||||
#include <exec/types.h>
|
||||
#include <utility/tagitem.h>
|
||||
#include <dos/exall.h>
|
||||
#include <dos/var.h>
|
||||
#define __NOLIBBASE__
|
||||
#define __NOLOBALIFACE__
|
||||
#define __USE_INLINE__
|
||||
#include <proto/dos.h>
|
||||
#include <clib/debug_protos.h>
|
||||
|
||||
#ifndef __amigaos4__
|
||||
extern struct Library *DOSBase;
|
||||
#else
|
||||
extern struct DOSIFace *IDOS;
|
||||
#endif
|
||||
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_FREETYPE_H
|
||||
#include FT_INTERNAL_DEBUG_H
|
||||
|
||||
|
||||
#if defined( FT_DEBUG_LEVEL_ERROR )
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
FT_Message( const char* fmt,
|
||||
... )
|
||||
{
|
||||
va_list ap;
|
||||
|
||||
|
||||
va_start( ap, fmt );
|
||||
KVPrintF( fmt, ap );
|
||||
va_end( ap );
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
FT_Panic( const char* fmt,
|
||||
... )
|
||||
{
|
||||
va_list ap;
|
||||
|
||||
|
||||
va_start( ap, fmt );
|
||||
KVPrintF( fmt, ap );
|
||||
va_end( ap );
|
||||
|
||||
/* exit( EXIT_FAILURE ); */
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( int )
|
||||
FT_Throw( FT_Error error,
|
||||
int line,
|
||||
const char* file )
|
||||
{
|
||||
FT_UNUSED( error );
|
||||
FT_UNUSED( line );
|
||||
FT_UNUSED( file );
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
#endif /* FT_DEBUG_LEVEL_ERROR */
|
||||
|
||||
|
||||
|
||||
#ifdef FT_DEBUG_LEVEL_TRACE
|
||||
|
||||
/* array of trace levels, initialized to 0 */
|
||||
int ft_trace_levels[trace_count];
|
||||
|
||||
|
||||
/* define array of trace toggle names */
|
||||
#define FT_TRACE_DEF( x ) #x ,
|
||||
|
||||
static const char* ft_trace_toggles[trace_count + 1] =
|
||||
{
|
||||
#include FT_INTERNAL_TRACE_H
|
||||
NULL
|
||||
};
|
||||
|
||||
#undef FT_TRACE_DEF
|
||||
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( FT_Int )
|
||||
FT_Trace_Get_Count( void )
|
||||
{
|
||||
return trace_count;
|
||||
}
|
||||
|
||||
|
||||
/* documentation is in ftdebug.h */
|
||||
|
||||
FT_BASE_DEF( const char * )
|
||||
FT_Trace_Get_Name( FT_Int idx )
|
||||
{
|
||||
int max = FT_Trace_Get_Count();
|
||||
|
||||
|
||||
if ( idx < max )
|
||||
return ft_trace_toggles[idx];
|
||||
else
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
/*************************************************************************/
|
||||
/* */
|
||||
/* Initialize the tracing sub-system. This is done by retrieving the */
|
||||
/* value of the `FT2_DEBUG' environment variable. It must be a list of */
|
||||
/* toggles, separated by spaces, `;', or `,'. Example: */
|
||||
/* */
|
||||
/* export FT2_DEBUG="any:3 memory:7 stream:5" */
|
||||
/* */
|
||||
/* This requests that all levels be set to 3, except the trace level for */
|
||||
/* the memory and stream components which are set to 7 and 5, */
|
||||
/* respectively. */
|
||||
/* */
|
||||
/* See the file `include/freetype/internal/fttrace.h' for details of the */
|
||||
/* available toggle names. */
|
||||
/* */
|
||||
/* The level must be between 0 and 7; 0 means quiet (except for serious */
|
||||
/* runtime errors), and 7 means _very_ verbose. */
|
||||
/* */
|
||||
FT_BASE_DEF( void )
|
||||
ft_debug_init( void )
|
||||
{
|
||||
/* const char* ft2_debug = getenv( "FT2_DEBUG" ); */
|
||||
char buf[256];
|
||||
const char* ft2_debug = &buf[0];
|
||||
|
||||
|
||||
/* if ( ft2_debug ) */
|
||||
if ( GetVar( "FT2_DEBUG", (STRPTR)ft2_debug, 256, LV_VAR ) > 0 )
|
||||
{
|
||||
const char* p = ft2_debug;
|
||||
const char* q;
|
||||
|
||||
|
||||
for ( ; *p; p++ )
|
||||
{
|
||||
/* skip leading whitespace and separators */
|
||||
if ( *p == ' ' || *p == '\t' || *p == ',' || *p == ';' || *p == '=' )
|
||||
continue;
|
||||
|
||||
/* read toggle name, followed by ':' */
|
||||
q = p;
|
||||
while ( *p && *p != ':' )
|
||||
p++;
|
||||
|
||||
if ( !*p )
|
||||
break;
|
||||
|
||||
if ( *p == ':' && p > q )
|
||||
{
|
||||
FT_Int n, i, len = (FT_Int)( p - q );
|
||||
FT_Int level = -1, found = -1;
|
||||
|
||||
|
||||
for ( n = 0; n < trace_count; n++ )
|
||||
{
|
||||
const char* toggle = ft_trace_toggles[n];
|
||||
|
||||
|
||||
for ( i = 0; i < len; i++ )
|
||||
{
|
||||
if ( toggle[i] != q[i] )
|
||||
break;
|
||||
}
|
||||
|
||||
if ( i == len && toggle[i] == 0 )
|
||||
{
|
||||
found = n;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
/* read level */
|
||||
p++;
|
||||
if ( *p )
|
||||
{
|
||||
level = *p - '0';
|
||||
if ( level < 0 || level > 7 )
|
||||
level = -1;
|
||||
}
|
||||
|
||||
if ( found >= 0 && level >= 0 )
|
||||
{
|
||||
if ( found == trace_any )
|
||||
{
|
||||
/* special case for `any' */
|
||||
for ( n = 0; n < trace_count; n++ )
|
||||
ft_trace_levels[n] = level;
|
||||
}
|
||||
else
|
||||
ft_trace_levels[found] = level;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#else /* !FT_DEBUG_LEVEL_TRACE */
|
||||
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
ft_debug_init( void )
|
||||
{
|
||||
/* nothing */
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( FT_Int )
|
||||
FT_Trace_Get_Count( void )
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
FT_BASE_DEF( const char * )
|
||||
FT_Trace_Get_Name( FT_Int idx )
|
||||
{
|
||||
FT_UNUSED( idx );
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
#endif /* !FT_DEBUG_LEVEL_TRACE */
|
||||
|
||||
/*
|
||||
Local Variables:
|
||||
coding: latin-1
|
||||
End:
|
||||
*/
|
||||
/* END */
|
||||
+530
-530
File diff suppressed because it is too large
Load Diff
+74
-74
@@ -1,74 +1,74 @@
|
||||
#
|
||||
# FreeType 2 configuration rules for a `normal' ANSI system
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2000, 2003, 2006 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
DELETE := rm -f
|
||||
CAT := cat
|
||||
SEP := /
|
||||
BUILD_DIR := $(TOP_DIR)/builds/ansi
|
||||
PLATFORM := ansi
|
||||
|
||||
|
||||
# The directory where all library files are placed.
|
||||
#
|
||||
# By default, this is the same as $(OBJ_DIR); however, this can be changed
|
||||
# to suit particular needs.
|
||||
#
|
||||
LIB_DIR := $(OBJ_DIR)
|
||||
|
||||
|
||||
# The name of the final library file. Note that the DOS-specific Makefile
|
||||
# uses a shorter (8.3) name.
|
||||
#
|
||||
LIBRARY := lib$(PROJECT)
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := -I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := -l
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := -o$(space)
|
||||
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
CFLAGS ?= -c
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
ANSIFLAGS :=
|
||||
|
||||
|
||||
# EOF
|
||||
#
|
||||
# FreeType 2 configuration rules for a `normal' ANSI system
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
DELETE := rm -f
|
||||
CAT := cat
|
||||
SEP := /
|
||||
BUILD_DIR := $(TOP_DIR)/builds/ansi
|
||||
PLATFORM := ansi
|
||||
|
||||
|
||||
# The directory where all library files are placed.
|
||||
#
|
||||
# By default, this is the same as $(OBJ_DIR); however, this can be changed
|
||||
# to suit particular needs.
|
||||
#
|
||||
LIB_DIR := $(OBJ_DIR)
|
||||
|
||||
|
||||
# The name of the final library file. Note that the DOS-specific Makefile
|
||||
# uses a shorter (8.3) name.
|
||||
#
|
||||
LIBRARY := lib$(PROJECT)
|
||||
|
||||
|
||||
# Path inclusion flag. Some compilers use a different flag than `-I' to
|
||||
# specify an additional include path. Examples are `/i=' or `-J'.
|
||||
#
|
||||
I := -I
|
||||
|
||||
|
||||
# C flag used to define a macro before the compilation of a given source
|
||||
# object. Usually it is `-D' like in `-DDEBUG'.
|
||||
#
|
||||
D := -D
|
||||
|
||||
|
||||
# The link flag used to specify a given library file on link. Note that
|
||||
# this is only used to compile the demo programs, not the library itself.
|
||||
#
|
||||
L := -l
|
||||
|
||||
|
||||
# Target flag.
|
||||
#
|
||||
T := -o$(space)
|
||||
|
||||
|
||||
# C flags
|
||||
#
|
||||
# These should concern: debug output, optimization & warnings.
|
||||
#
|
||||
# Use the ANSIFLAGS variable to define the compiler flags used to enfore
|
||||
# ANSI compliance.
|
||||
#
|
||||
CFLAGS ?= -c
|
||||
|
||||
# ANSIFLAGS: Put there the flags used to make your compiler ANSI-compliant.
|
||||
#
|
||||
ANSIFLAGS :=
|
||||
|
||||
|
||||
# EOF
|
||||
+21
-21
@@ -1,21 +1,21 @@
|
||||
#
|
||||
# FreeType 2 configuration rules for a `normal' pseudo ANSI compiler/system
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2000 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
include $(TOP_DIR)/builds/ansi/ansi-def.mk
|
||||
include $(TOP_DIR)/builds/compiler/ansi-cc.mk
|
||||
include $(TOP_DIR)/builds/link_std.mk
|
||||
|
||||
|
||||
# EOF
|
||||
#
|
||||
# FreeType 2 configuration rules for a `normal' pseudo ANSI compiler/system
|
||||
#
|
||||
|
||||
|
||||
# Copyright 1996-2015 by
|
||||
# David Turner, Robert Wilhelm, and Werner Lemberg.
|
||||
#
|
||||
# This file is part of the FreeType project, and may only be used, modified,
|
||||
# and distributed under the terms of the FreeType project license,
|
||||
# LICENSE.TXT. By continuing to use, modify, or distribute this file you
|
||||
# indicate that you have read the license and understand and accept it
|
||||
# fully.
|
||||
|
||||
|
||||
include $(TOP_DIR)/builds/ansi/ansi-def.mk
|
||||
include $(TOP_DIR)/builds/compiler/ansi-cc.mk
|
||||
include $(TOP_DIR)/builds/link_std.mk
|
||||
|
||||
|
||||
# EOF
|
||||
+20
-20
@@ -1,20 +1,20 @@
|
||||
#if defined( __GXVALID_H__ )
|
||||
#pragma warn -aus /* too many unevaluated variables in gxvalid */
|
||||
#endif
|
||||
|
||||
#ifndef ATARI_H
|
||||
#define ATARI_H
|
||||
|
||||
#pragma warn -stu
|
||||
|
||||
/* PureC doesn't like 32bit enumerations */
|
||||
|
||||
#ifndef 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
|
||||
#endif /* FT_ENC_TAG */
|
||||
|
||||
#endif /* ATARI_H */
|
||||
#if defined( __GXVALID_H__ )
|
||||
#pragma warn -aus /* too many unevaluated variables in gxvalid */
|
||||
#endif
|
||||
|
||||
#ifndef ATARI_H
|
||||
#define ATARI_H
|
||||
|
||||
#pragma warn -stu
|
||||
|
||||
/* PureC doesn't like 32bit enumerations */
|
||||
|
||||
#ifndef 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
|
||||
#endif /* FT_ENC_TAG */
|
||||
|
||||
#endif /* ATARI_H */
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user