source: general/graphlib/fontconfig.xml@ 8bb50b80

11.3 12.0 12.1 kea ken/TL2024 ken/inkscape-core-mods ken/tuningfonts lazarus lxqt plabs/newcss plabs/python-mods python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since 8bb50b80 was ff72cd05, checked in by Xi Ruoyao <xry111@…>, 20 months ago

fontconfig: mention unzip is used in tests

  • Property mode set to 100644
File size: 13.4 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY fontconfig-download-http
8 "https://www.freedesktop.org/software/fontconfig/release/fontconfig-&fontconfig-version;.tar.xz">
9 <!ENTITY fontconfig-download-ftp " ">
10 <!ENTITY fontconfig-md5sum "e12700a9d522bdfec06b6b7e72646987">
11 <!ENTITY fontconfig-size "1.4 MB">
12 <!ENTITY fontconfig-buildsize "16 MB (with tests)">
13 <!ENTITY fontconfig-time "0.3 SBU (with tests)">
14]>
15
16<sect1 id="fontconfig" xreflabel="Fontconfig-&fontconfig-version;">
17 <?dbhtml filename="fontconfig.html"?>
18
19 <sect1info>
20 <date>$Date$</date>
21 </sect1info>
22
23 <title>Fontconfig-&fontconfig-version;</title>
24
25 <indexterm zone="fontconfig">
26 <primary sortas="a-Fontconfig">Fontconfig</primary>
27 </indexterm>
28
29 <sect2 role="package">
30 <title>Introduction to Fontconfig</title>
31
32 <para>
33 The <application>Fontconfig</application> package contains
34 a library and support programs used for configuring and
35 customizing font access.
36 </para>
37
38 &lfs112_checked;
39
40 <bridgehead renderas="sect3">Package Information</bridgehead>
41 <itemizedlist spacing="compact">
42 <listitem>
43 <para>
44 Download (HTTP): <ulink url="&fontconfig-download-http;"/>
45 </para>
46 </listitem>
47 <listitem>
48 <para>
49 Download (FTP): <ulink url="&fontconfig-download-ftp;"/>
50 </para>
51 </listitem>
52 <listitem>
53 <para>
54 Download MD5 sum: &fontconfig-md5sum;
55 </para>
56 </listitem>
57 <listitem>
58 <para>
59 Download size: &fontconfig-size;
60 </para>
61 </listitem>
62 <listitem>
63 <para>
64 Estimated disk space required: &fontconfig-buildsize;
65 </para>
66 </listitem>
67 <listitem>
68 <para>
69 Estimated build time: &fontconfig-time;
70 </para>
71 </listitem>
72 </itemizedlist>
73<!--
74 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
75 <itemizedlist spacing="compact">
76 <listitem>
77 <para>
78 Required patch:
79 <ulink url="&patch-root;/fontconfig-&fontconfig-version;-gperf-3.1-1.patch"/>
80 </para>
81 </listitem>
82 </itemizedlist>
83-->
84 <bridgehead renderas="sect3">Fontconfig Dependencies</bridgehead>
85
86 <bridgehead renderas="sect4">Required</bridgehead>
87 <para role="required">
88 <xref linkend="freetype2"/>
89 </para>
90
91 <bridgehead renderas="sect4">Optional</bridgehead>
92 <para role="optional">
93 <xref linkend="curl"/> and <xref linkend="unzip"/>
94 (both used by some tests for downloading and extracting test files),
95 <xref linkend="json-c"/>,
96 <xref linkend="docbook-utils"/> and
97 <xref linkend="libxml2"/>,
98 <xref linkend="texlive"/> (or <xref linkend="tl-installer"/>)
99 </para>
100
101 <note>
102 <para>
103 If you have <application>DocBook Utils</application> installed and
104 you remove the <parameter>--disable-docs</parameter> parameter from
105 the <command>configure</command> command below, you must have
106 <xref linkend="perl-sgmlspm"/> and <xref linkend="texlive"/> installed
107 also, or the <application>Fontconfig</application> build will fail.
108 </para>
109 </note>
110
111 <para condition="html" role="usernotes">User Notes:
112 <ulink url='&blfs-wiki;/Fontconfig'/>
113 </para>
114 </sect2>
115
116 <sect2 role="installation">
117 <title>Installation of Fontconfig</title>
118
119 <para>
120 Install <application>Fontconfig</application> by running the following
121 commands:
122 </para>
123
124<screen><userinput>./configure --prefix=/usr \
125 --sysconfdir=/etc \
126 --localstatedir=/var \
127 --disable-docs \
128 --docdir=/usr/share/doc/fontconfig-&fontconfig-version; &amp;&amp;
129make</userinput></screen>
130
131 <para>
132 To test the results, issue: <command>make check</command>. One test
133 is known to fail if the kernel does not support user namespaces. Some
134 tests will download some font files via Internet.
135 </para>
136
137 <para>
138 Now, as the <systemitem class="username">root</systemitem> user:
139 </para>
140
141<screen role="root"><userinput>make install</userinput></screen>
142
143 <para>
144 If you did not remove the <parameter>--disable-docs</parameter>
145 parameter from the <command>configure</command> command, you can install
146 the pre-generated documentation by using the following commands as the
147 <systemitem class="username">root</systemitem> user:
148 </para>
149
150<screen role="root"><userinput>install -v -dm755 \
151 /usr/share/{man/man{1,3,5},doc/fontconfig-&fontconfig-version;/fontconfig-devel} &amp;&amp;
152install -v -m644 fc-*/*.1 /usr/share/man/man1 &amp;&amp;
153install -v -m644 doc/*.3 /usr/share/man/man3 &amp;&amp;
154install -v -m644 doc/fonts-conf.5 /usr/share/man/man5 &amp;&amp;
155install -v -m644 doc/fontconfig-devel/* \
156 /usr/share/doc/fontconfig-&fontconfig-version;/fontconfig-devel &amp;&amp;
157install -v -m644 doc/*.{pdf,sgml,txt,html} \
158 /usr/share/doc/fontconfig-&fontconfig-version;</userinput></screen>
159
160 </sect2>
161
162 <sect2 role="commands">
163 <title>Command Explanations</title>
164
165 <para>
166 <parameter>--disable-docs</parameter>: This switch avoids building the
167 documentation (the release tarball includes pre-generated
168 documentation).
169 </para>
170
171 </sect2>
172
173 <sect2 role="configuration">
174 <title>Configuring Fontconfig</title>
175
176 <sect3 id="fontconfig-config">
177 <title>Config Files</title>
178
179 <para>
180 <filename>
181 /etc/fonts/*,
182 /etc/fonts/conf.d/* and
183 /usr/share/fontconfig/conf.avail/*
184 </filename>
185 </para>
186
187 <indexterm zone="fontconfig fontconfig-config">
188 <primary sortas="e-etc-fonts">/etc/fonts/*</primary>
189 </indexterm>
190
191 <indexterm zone="fontconfig fontconfig-config">
192 <primary sortas="e-etc-fonts-conf.d">/etc/fonts/conf.d/*</primary>
193 </indexterm>
194
195 <indexterm zone="fontconfig fontconfig-config">
196 <primary sortas="e-usr-share-fontconfig-conf.avail">/usr/share/fontconfig/conf.avail/*</primary>
197 </indexterm>
198
199 </sect3>
200
201 <sect3>
202 <title>Configuration Information</title>
203
204 <para>
205 The main configuration file for <application>Fontconfig</application> is
206 <filename>/etc/fonts/fonts.conf</filename>. Generally you do not want
207 to edit this file. It will also read <filename>/etc/fonts/local.conf</filename>
208 and any files in <filename class="directory">/etc/fonts/conf.d</filename>.
209 To put a new font directory in the configuration, create
210 (or update) the <filename>/etc/fonts/local.conf</filename> file with your
211 local information or add a new file in
212 <filename class="directory">/etc/fonts/conf.d</filename>. The default
213 location of fonts in <application>Fontconfig</application> is:
214 </para>
215
216 <itemizedlist spacing="compact">
217 <listitem>
218 <para>
219 /usr/share/fonts
220 </para>
221 </listitem>
222 <listitem>
223 <para>
224 ~/.local/share/fonts
225 </para>
226 </listitem>
227 <listitem>
228 <para>
229 ~/.fonts <emphasis>(this is now deprecated, but for the moment
230 it still works)</emphasis>
231 </para>
232 </listitem>
233 </itemizedlist>
234
235 <para>
236 <application>Fontconfig</application> also ships many example
237 configuration files in the
238 <filename class="directory">/usr/share/fontconfig/conf.avail</filename>
239 directory. Symlinking specific files to
240 <filename class="directory">/etc/fonts/conf.d</filename>
241 will enable them. The default setup is generally good enough for
242 most users. See <filename>/etc/fonts/conf.d/README</filename>
243 for a description of the configuration files.
244 </para>
245
246 <indexterm zone="fontconfig fontconfig-config">
247 <primary sortas="e-usr-share-fonts">/usr/share/fonts</primary>
248 </indexterm>
249
250 <indexterm zone="fontconfig fontconfig-config">
251 <primary sortas="e-AA.fonts">~/.fonts</primary>
252 </indexterm>
253
254 <para>
255 More information about configuring <application>Fontconfig</application>
256 can be found in the user's manual in <ulink
257 url="file:///usr/share/doc/fontconfig-&fontconfig-version;/fontconfig-user.html"/>.
258 </para>
259
260 </sect3>
261
262 </sect2>
263
264 <sect2 role="content">
265 <title>Contents</title>
266
267 <segmentedlist>
268 <segtitle>Installed Programs</segtitle>
269 <segtitle>Installed Library</segtitle>
270 <segtitle>Installed Directories</segtitle>
271
272 <seglistitem>
273 <seg>
274 fc-cache, fc-cat, fc-conflist, fc-list, fc-match, fc-pattern,
275 fc-query, fc-scan, and fc-validate
276 </seg>
277 <seg>
278 libfontconfig.so
279 </seg>
280 <seg>
281 /etc/fonts,
282 /usr/include/fontconfig,
283 /usr/share/doc/fontconfig-&fontconfig-version;,
284 /usr/share/fontconfig,
285 /usr/share/xml/fontconfig, and
286 /var/cache/fontconfig
287 </seg>
288 </seglistitem>
289 </segmentedlist>
290
291 <variablelist>
292 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
293 <?dbfo list-presentation="list"?>
294 <?dbhtml list-presentation="table"?>
295
296 <varlistentry id="fc-cache">
297 <term><command>fc-cache</command></term>
298 <listitem>
299 <para>
300 is used to create font information caches
301 </para>
302 <indexterm zone="fontconfig fc-cache">
303 <primary sortas="b-fc-cache">fc-cache</primary>
304 </indexterm>
305 </listitem>
306 </varlistentry>
307
308 <varlistentry id="fc-cat">
309 <term><command>fc-cat</command></term>
310 <listitem>
311 <para>
312 is used to read font information caches
313 </para>
314 <indexterm zone="fontconfig fc-cat">
315 <primary sortas="b-fc-cat">fc-cat</primary>
316 </indexterm>
317 </listitem>
318 </varlistentry>
319
320 <varlistentry id="fc-conflist">
321 <term><command>fc-conflist</command></term>
322 <listitem>
323 <para>
324 shows the ruleset files' information on the system
325 </para>
326 <indexterm zone="fontconfig fc-conflist">
327 <primary sortas="b-fc-conflist">fc-conflist</primary>
328 </indexterm>
329 </listitem>
330 </varlistentry>
331
332 <varlistentry id="fc-list">
333 <term><command>fc-list</command></term>
334 <listitem>
335 <para>
336 is used to create font lists
337 </para>
338 <indexterm zone="fontconfig fc-list">
339 <primary sortas="b-fc-list">fc-list</primary>
340 </indexterm>
341 </listitem>
342 </varlistentry>
343
344 <varlistentry id="fc-match">
345 <term><command>fc-match</command></term>
346 <listitem>
347 <para>
348 is used to match available fonts, or find fonts that match
349 a given pattern
350 </para>
351 <indexterm zone="fontconfig fc-match">
352 <primary sortas="b-fc-match">fc-match</primary>
353 </indexterm>
354 </listitem>
355 </varlistentry>
356
357 <varlistentry id="fc-pattern">
358 <term><command>fc-pattern</command></term>
359 <listitem>
360 <para>
361 is used to parse pattern (empty pattern by default) and show
362 the parsed result
363 </para>
364 <indexterm zone="fontconfig fc-pattern">
365 <primary sortas="b-fc-pattern">fc-pattern</primary>
366 </indexterm>
367 </listitem>
368 </varlistentry>
369
370 <varlistentry id="fc-query">
371 <term><command>fc-query</command></term>
372 <listitem>
373 <para>
374 is used to query fonts files and print resulting patterns
375 </para>
376 <indexterm zone="fontconfig fc-query">
377 <primary sortas="b-fc-query">fc-query</primary>
378 </indexterm>
379 </listitem>
380 </varlistentry>
381
382 <varlistentry id="fc-scan">
383 <term><command>fc-scan</command></term>
384 <listitem>
385 <para>
386 is used to scan font files and directories, and print resulting
387 patterns
388 </para>
389 <indexterm zone="fontconfig fc-scan">
390 <primary sortas="b-fc-scan">fc-scan</primary>
391 </indexterm>
392 </listitem>
393 </varlistentry>
394
395 <varlistentry id="fc-validate">
396 <term><command>fc-validate</command></term>
397 <listitem>
398 <para>
399 is used to validate font files
400 </para>
401 <indexterm zone="fontconfig fc-validate">
402 <primary sortas="b-fc-validate">fc-validate</primary>
403 </indexterm>
404 </listitem>
405 </varlistentry>
406
407 <varlistentry id="libfontconfig">
408 <term><filename class="libraryfile">libfontconfig.so</filename></term>
409 <listitem>
410 <para>
411 contains functions used by the <application>Fontconfig</application>
412 programs and also by other programs to configure or customize font
413 access
414 </para>
415 <indexterm zone="fontconfig libfontconfig">
416 <primary sortas="c-libfontconfig">libfontconfig.so</primary>
417 </indexterm>
418 </listitem>
419 </varlistentry>
420
421 </variablelist>
422
423 </sect2>
424
425</sect1>
Note: See TracBrowser for help on using the repository browser.