1Libnetpbm PBM Font FunctionLMiabnruaarly(3F)unctioLnisbnMeatnpubamlPBM Font Function Manual(3)
2
3
4
5       Table Of Contents ⟨#toc⟩
6

NAME

8       libnetpbm_draw \- Libnetpbm PPM Drawing Function Manual
9

DESCRIPTION

11       This  reference  manual  covers  functions in the libnetpbm library for
12       accessing fonts to draw text characters, using the PBM image format and
13       the libnetpbm in-memory image formats.
14
15       We  actually have very little information here; this is mainly a frame‐
16       work for adding documentation later if someone  becomes  interested  in
17       this facility.
18
19       Note  that the primary known user of this library is the Netpbm program
20       pbmtext.  You can use that program's source code as an example.
21
22
23

Font Object

25       libnetpbm represents a font with an object of type  struct  font.   The
26       library provides functions to create these objects.
27
28
29       The  object these functions create is in newly allocated memory and you
30       can't actually free it.  The memory may be in multiple pieces, pointing
31       to  each  other,  and libnetpbm provides no destroy function.  (This is
32       only because of implementation laziness).
33
34
35

The Functions

37       The functions are all declared in the pbmfont.h header file.
38
39
40   pbm_defaultfont
41       Synopsis
42
43           struct font *
44           pbm_defaultfont(const char * which);
45
46       Description
47
48       This returns a font object representing a font built in to libnetpbm.
49
50       which is the name of the desired built-in font.  There are two:
51
52
53       bdf
54
55              A proportional font similar to Adobe's timR12 font
56
57       fixed
58
59              A fixed space font
60
61
62              Copyright
63
64       The provenance of the built-in fonts are not known  for  sure,  but  in
65       2018,  the  bdf  font was almost identical to a font on which Adobe and
66       Digital Equipment Corporation once claimed copyright.   That  font  was
67       available         in         the        X.org        source        code
68       ⟨ftp://ftp.x.org/pub/current/src/font/⟩  in a collection  named  'font-
69       adobe-75dpi', in a file named timR12.pcf.gz.
70
71       Ergo,  it is likely that the font was copied into Netpbm from that font
72       in 1991.
73
74       You may need a copyright license from  the  copyright  owners  of  that
75       original  font  not only to copy the libnetpbm code, but to execute it,
76       thus generating copies of the glyphs of the font.
77
78
79       The X.org files in 2018 indicate the following copyright claims,  along
80       with a license to the public to copy them:
81
82                Copyright 1984-1989, 1994 Adobe Systems Incorporated.
83                Copyright 1988, 1994 Digital Equipment Corporation.
84
85                Permission  to  use,  copy,  modify,  distribute and sell this
86              software
87                and its documentation for  any  purpose  and  without  fee  is
88              hereby
89                granted,  provided  that the above copyright notices appear in
90              all
91                copies and that both those copyright notices and this  permis‐
92              sion
93                notice  appear in supporting documentation, and that the names
94              of
95                Adobe Systems and Digital Equipment Corporation not be used in
96                advertising or publicity pertaining  to  distribution  of  the
97              software
98                without specific, written prior permission.  Adobe Systems and
99                Digital  Equipment  Corporation  make no representations about
100              the
101                suitability of this software for any purpose.  It is  provided
102              'as
103                is' without express or implied warranty.
104
105
106
107   pbm_dissectfont
108   pbm_loadfont
109       This  function  returns  a  font object for a font described in a file.
110       The file may be either a special PBM file or a BDF file.  The  function
111       determines  which  it  is  and  behaves  as  either  pbm_loadpbmfont or
112       pbm_loadbdffont accordingly.
113
114
115   pbm_loadpbmfont
116   pbm_loadbdffont2
117   pbm_loadbdffont
118       This is obsolete.  New programs should use pbm_loadbdffont2 instead.
119
120
121   pbm_expandbdffont
122   pbm_dumpfont

DOCUMENT SOURCE

124       This manual page was generated by the Netpbm tool 'makeman'  from  HTML
125       source.  The master documentation is at
126
127              http://netpbm.sourceforge.net/doc/libnetpbm_font.html
128
129netpbm documentation              April 20L1i8bnetpbm PBM Font Function Manual(3)
Impressum