ftbzip2.h 4.2 KB
Newer Older
M
Ming, Bai 已提交
1 2
/***************************************************************************/
/*                                                                         */
G
Grissiom 已提交
3
/*  ftbzip2.h                                                              */
M
Ming, Bai 已提交
4
/*                                                                         */
G
Grissiom 已提交
5
/*    Bzip2-compressed stream support.                                     */
M
Ming, Bai 已提交
6
/*                                                                         */
7
/*  Copyright 2010-2015 by                                                 */
G
Grissiom 已提交
8
/*  Joel Klinghed.                                                         */
M
Ming, Bai 已提交
9 10 11 12 13 14 15 16 17 18
/*                                                                         */
/*  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.                                        */
/*                                                                         */
/***************************************************************************/


G
Grissiom 已提交
19 20
#ifndef __FTBZIP2_H__
#define __FTBZIP2_H__
M
Ming, Bai 已提交
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36

#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>                                                             */
G
Grissiom 已提交
37
  /*    bzip2                                                              */
M
Ming, Bai 已提交
38 39
  /*                                                                       */
  /* <Title>                                                               */
G
Grissiom 已提交
40
  /*    BZIP2 Streams                                                      */
M
Ming, Bai 已提交
41 42
  /*                                                                       */
  /* <Abstract>                                                            */
G
Grissiom 已提交
43
  /*    Using bzip2-compressed font files.                                 */
M
Ming, Bai 已提交
44 45
  /*                                                                       */
  /* <Description>                                                         */
G
Grissiom 已提交
46
  /*    This section contains the declaration of Bzip2-specific functions. */
M
Ming, Bai 已提交
47 48 49 50 51 52 53
  /*                                                                       */
  /*************************************************************************/


 /************************************************************************
  *
  * @function:
G
Grissiom 已提交
54
  *   FT_Stream_OpenBzip2
M
Ming, Bai 已提交
55 56
  *
  * @description:
G
Grissiom 已提交
57 58
  *   Open a new stream to parse bzip2-compressed font files.  This is
  *   mainly used to support the compressed `*.pcf.bz2' fonts that come
M
Ming, Bai 已提交
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
  *   with XFree86.
  *
  * @input:
  *   stream ::
  *     The target embedding stream.
  *
  *   source ::
  *     The source stream.
  *
  * @return:
  *   FreeType error code.  0~means success.
  *
  * @note:
  *   The source stream must be opened _before_ calling this function.
  *
  *   Calling the internal function `FT_Stream_Close' on the new stream will
  *   *not* call `FT_Stream_Close' on the source stream.  None of the stream
  *   objects will be released to the heap.
  *
  *   The stream implementation is very basic and resets the decompression
  *   process each time seeking backwards is needed within the stream.
  *
G
Grissiom 已提交
81
  *   In certain builds of the library, bzip2 compression recognition is
M
Ming, Bai 已提交
82 83
  *   automatically handled when calling @FT_New_Face or @FT_Open_Face.
  *   This means that if no font driver is capable of handling the raw
G
Grissiom 已提交
84 85
  *   compressed file, the library will try to open a bzip2 compressed stream
  *   from it and re-open the face with it.
M
Ming, Bai 已提交
86 87
  *
  *   This function may return `FT_Err_Unimplemented_Feature' if your build
G
Grissiom 已提交
88
  *   of FreeType was not compiled with bzip2 support.
M
Ming, Bai 已提交
89 90
  */
  FT_EXPORT( FT_Error )
G
Grissiom 已提交
91 92
  FT_Stream_OpenBzip2( FT_Stream  stream,
                       FT_Stream  source );
M
Ming, Bai 已提交
93

G
Grissiom 已提交
94
  /* */
M
Ming, Bai 已提交
95 96 97 98


FT_END_HEADER

G
Grissiom 已提交
99
#endif /* __FTBZIP2_H__ */
M
Ming, Bai 已提交
100 101 102


/* END */