forked from minhngoc25a/freetype2
Improve bzip2 support.
* include/freetype/ftmoderr.h: Add bzip2. * docs/INSTALL.ANY, docs/CHANGES: Updated. * src/pcf/README: Updated. * include/freetype/internal/pcftypes.h: Obsolete, removed.
This commit is contained in:
parent
ed913c2151
commit
fe42a65317
11
ChangeLog
11
ChangeLog
|
@ -1,3 +1,14 @@
|
|||
2010-12-31 Werner Lemberg <wl@gnu.org>
|
||||
|
||||
Improve bzip2 support.
|
||||
|
||||
* include/freetype/ftmoderr.h: Add bzip2.
|
||||
|
||||
* docs/INSTALL.ANY, docs/CHANGES: Updated.
|
||||
|
||||
* src/pcf/README: Updated.
|
||||
* include/freetype/internal/pcftypes.h: Obsolete, removed.
|
||||
|
||||
2010-12-31 Joel Klinghed <the_jk@yahoo.com>
|
||||
|
||||
Add bzip2 compression support to handle *.pcf.bz2 files.
|
||||
|
|
|
@ -1,3 +1,12 @@
|
|||
CHANGES BETWEEN 2.4.4 and 2.4.5
|
||||
|
||||
I. MISCELLANEOUS
|
||||
|
||||
- Support for PCF files compressed with bzip2 has been contributed
|
||||
by Joel Klinghed. To make this work, the OS must provide a
|
||||
bzip2 library.
|
||||
|
||||
|
||||
======================================================================
|
||||
|
||||
CHANGES BETWEEN 2.4.3 and 2.4.4
|
||||
|
|
|
@ -81,6 +81,7 @@ I. Standard procedure
|
|||
src/cache/ftcache.c -- cache sub-system (in beta)
|
||||
src/gzip/ftgzip.c -- support for compressed fonts (.gz)
|
||||
src/lzw/ftlzw.c -- support for compressed fonts (.Z)
|
||||
src/bzip2/ftbzip2.c -- support for compressed fonts (.bz2)
|
||||
src/gxvalid/gxvalid.c -- TrueTypeGX/AAT table validation
|
||||
src/otvalid/otvalid.c -- OpenType table validation
|
||||
src/psaux/psaux.c -- PostScript Type 1 parsing
|
||||
|
@ -102,6 +103,10 @@ I. Standard procedure
|
|||
`type1cid.c' needs `psaux.c', `pshinter.c', and `psnames.c'
|
||||
`type42.c' needs `truetype.c'
|
||||
|
||||
To use `ftbzip2.c', an application must be linked with a library
|
||||
which implements bzip2 support (and the bzip2 header files must
|
||||
be available also during compilation).
|
||||
|
||||
|
||||
Read the file `CUSTOMIZE' in case you want to compile only a subset
|
||||
of the drivers, renderers, and optional modules; a detailed
|
||||
|
|
|
@ -55,7 +55,7 @@ FT_BEGIN_HEADER
|
|||
*
|
||||
* @description:
|
||||
* Open a new stream to parse bzip2-compressed font files. This is
|
||||
* mainly used to support the compressed `*.pcf.gz' fonts that come
|
||||
* mainly used to support the compressed `*.pcf.bz2' fonts that come
|
||||
* with XFree86.
|
||||
*
|
||||
* @input:
|
||||
|
|
|
@ -98,6 +98,7 @@
|
|||
/* module_management */
|
||||
/* gzip */
|
||||
/* lzw */
|
||||
/* bzip2 */
|
||||
/* lcd_filtering */
|
||||
/* */
|
||||
/***************************************************************************/
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
/* */
|
||||
/* FreeType module error offsets (specification). */
|
||||
/* */
|
||||
/* Copyright 2001, 2002, 2003, 2004, 2005 by */
|
||||
/* Copyright 2001, 2002, 2003, 2004, 2005, 2010 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
/* */
|
||||
/* This file is part of the FreeType project, and may only be used, */
|
||||
|
@ -105,24 +105,25 @@
|
|||
FT_MODERRDEF( Base, 0x000, "base module" )
|
||||
FT_MODERRDEF( Autofit, 0x100, "autofitter module" )
|
||||
FT_MODERRDEF( BDF, 0x200, "BDF module" )
|
||||
FT_MODERRDEF( Cache, 0x300, "cache module" )
|
||||
FT_MODERRDEF( CFF, 0x400, "CFF module" )
|
||||
FT_MODERRDEF( CID, 0x500, "CID module" )
|
||||
FT_MODERRDEF( Gzip, 0x600, "Gzip module" )
|
||||
FT_MODERRDEF( LZW, 0x700, "LZW module" )
|
||||
FT_MODERRDEF( OTvalid, 0x800, "OpenType validation module" )
|
||||
FT_MODERRDEF( PCF, 0x900, "PCF module" )
|
||||
FT_MODERRDEF( PFR, 0xA00, "PFR module" )
|
||||
FT_MODERRDEF( PSaux, 0xB00, "PS auxiliary module" )
|
||||
FT_MODERRDEF( PShinter, 0xC00, "PS hinter module" )
|
||||
FT_MODERRDEF( PSnames, 0xD00, "PS names module" )
|
||||
FT_MODERRDEF( Raster, 0xE00, "raster module" )
|
||||
FT_MODERRDEF( SFNT, 0xF00, "SFNT module" )
|
||||
FT_MODERRDEF( Smooth, 0x1000, "smooth raster module" )
|
||||
FT_MODERRDEF( TrueType, 0x1100, "TrueType module" )
|
||||
FT_MODERRDEF( Type1, 0x1200, "Type 1 module" )
|
||||
FT_MODERRDEF( Type42, 0x1300, "Type 42 module" )
|
||||
FT_MODERRDEF( Winfonts, 0x1400, "Windows FON/FNT module" )
|
||||
FT_MODERRDEF( Bzip2, 0x300, "Bzip2 module" )
|
||||
FT_MODERRDEF( Cache, 0x400, "cache module" )
|
||||
FT_MODERRDEF( CFF, 0x500, "CFF module" )
|
||||
FT_MODERRDEF( CID, 0x600, "CID module" )
|
||||
FT_MODERRDEF( Gzip, 0x700, "Gzip module" )
|
||||
FT_MODERRDEF( LZW, 0x800, "LZW module" )
|
||||
FT_MODERRDEF( OTvalid, 0x900, "OpenType validation module" )
|
||||
FT_MODERRDEF( PCF, 0xA00, "PCF module" )
|
||||
FT_MODERRDEF( PFR, 0xB00, "PFR module" )
|
||||
FT_MODERRDEF( PSaux, 0xC00, "PS auxiliary module" )
|
||||
FT_MODERRDEF( PShinter, 0xD00, "PS hinter module" )
|
||||
FT_MODERRDEF( PSnames, 0xE00, "PS names module" )
|
||||
FT_MODERRDEF( Raster, 0xF00, "raster module" )
|
||||
FT_MODERRDEF( SFNT, 0x1000, "SFNT module" )
|
||||
FT_MODERRDEF( Smooth, 0x1100, "smooth raster module" )
|
||||
FT_MODERRDEF( TrueType, 0x1200, "TrueType module" )
|
||||
FT_MODERRDEF( Type1, 0x1300, "Type 1 module" )
|
||||
FT_MODERRDEF( Type42, 0x1400, "Type 42 module" )
|
||||
FT_MODERRDEF( Winfonts, 0x1500, "Windows FON/FNT module" )
|
||||
|
||||
|
||||
#ifdef FT_MODERR_END_LIST
|
||||
|
|
|
@ -1,56 +0,0 @@
|
|||
/* pcftypes.h
|
||||
|
||||
FreeType font driver for pcf fonts
|
||||
|
||||
Copyright (C) 2000, 2001, 2002 by
|
||||
Francesco Zappa Nardelli
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in
|
||||
all copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||
THE SOFTWARE.
|
||||
*/
|
||||
|
||||
|
||||
#ifndef __PCFTYPES_H__
|
||||
#define __PCFTYPES_H__
|
||||
|
||||
|
||||
#include <ft2build.h>
|
||||
#include FT_FREETYPE_H
|
||||
|
||||
|
||||
FT_BEGIN_HEADER
|
||||
|
||||
|
||||
typedef struct PCF_Public_FaceRec_
|
||||
{
|
||||
FT_FaceRec root;
|
||||
FT_StreamRec gzip_stream;
|
||||
FT_Stream gzip_source;
|
||||
|
||||
char* charset_encoding;
|
||||
char* charset_registry;
|
||||
|
||||
} PCF_Public_FaceRec, *PCF_Public_Face;
|
||||
|
||||
|
||||
FT_END_HEADER
|
||||
|
||||
#endif /* __PCFTYPES_H__ */
|
||||
|
||||
|
||||
/* END */
|
|
@ -31,29 +31,11 @@ on linux/alpha.
|
|||
Encodings
|
||||
*********
|
||||
|
||||
The variety of encodings that accompanies pcf fonts appears to encompass the
|
||||
small set defined in freetype.h. On the other hand, each pcf font defines
|
||||
two properties that specify encoding and registry.
|
||||
Use `FT_Get_BDF_Charset_ID' to access the encoding and registry.
|
||||
|
||||
I decided to make these two properties directly accessible, leaving to the
|
||||
client application the work of interpreting them. For instance:
|
||||
|
||||
#include "pcftypes.h" /* include/freetype/internal/pcftypes.h */
|
||||
|
||||
FT_Face face;
|
||||
PCF_Public_Face pcfface;
|
||||
|
||||
FT_New_Face( library,..., &face );
|
||||
|
||||
pcfface = (PCF_Public_Face)face;
|
||||
|
||||
if ((pcfface->charset_registry == "ISO10646") &&
|
||||
(pcfface->charset_encoding) == "1")) [..]
|
||||
|
||||
Thus the driver always export `ft_encoding_none' as
|
||||
face->charmap.encoding. FT_Get_Char_Index() behavior is unmodified, that
|
||||
is, it converts the ULong value given as argument into the corresponding
|
||||
glyph number.
|
||||
The driver always exports `ft_encoding_none' as face->charmap.encoding.
|
||||
FT_Get_Char_Index() behavior is unmodified, that is, it converts the ULong
|
||||
value given as argument into the corresponding glyph number.
|
||||
|
||||
|
||||
Known problems
|
||||
|
|
Loading…
Reference in New Issue