[ab4fdfc] | 1 | <?xml version="1.0" encoding="UTF-8"?>
|
---|
[b9543da] | 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 |
|
---|
[d794630] | 7 | <!--
|
---|
[75d969ad] | 8 | <!ENTITY fontforge-download-http "https://github.com/fontforge/fontforge/releases/download/&fontforge-version;/fontforge-dist-&fontforge-version;.tar.xz">
|
---|
[d794630] | 9 | -->
|
---|
| 10 | <!ENTITY fontforge-download-http "https://github.com/fontforge/fontforge/releases/download/&fontforge-version;/fontforge-&fontforge-version;.tar.xz">
|
---|
| 11 |
|
---|
[b9543da] | 12 | <!ENTITY fontforge-download-ftp " ">
|
---|
[0433493] | 13 | <!ENTITY fontforge-md5sum "7043f25368ed25bcd75d168564919fb7">
|
---|
[384f06b] | 14 | <!ENTITY fontforge-size "13 MB">
|
---|
| 15 | <!ENTITY fontforge-buildsize "102 MB (add 52 MB for the tests)">
|
---|
[0433493] | 16 | <!ENTITY fontforge-time "0.4 SBU (with parallelism=4, add 0.1 SBU for the tests)">
|
---|
[b9543da] | 17 | ]>
|
---|
| 18 |
|
---|
| 19 | <sect1 id="fontforge" xreflabel="FontForge-&fontforge-version;">
|
---|
| 20 | <?dbhtml filename="fontforge.html"?>
|
---|
| 21 |
|
---|
| 22 |
|
---|
| 23 | <title>FontForge-&fontforge-version;</title>
|
---|
| 24 |
|
---|
| 25 | <indexterm zone="fontforge">
|
---|
| 26 | <primary sortas="a-FontForge">FontForge</primary>
|
---|
| 27 | </indexterm>
|
---|
| 28 |
|
---|
| 29 | <sect2 role="package">
|
---|
| 30 | <title>Introduction to FontForge</title>
|
---|
| 31 |
|
---|
| 32 | <para>
|
---|
| 33 | The <application>FontForge</application> package contains an
|
---|
| 34 | outline font editor that lets you create your own postscript,
|
---|
| 35 | truetype, opentype, cid-keyed, multi-master, cff, svg and
|
---|
| 36 | bitmap (bdf, FON, NFNT) fonts, or edit existing ones.
|
---|
| 37 | </para>
|
---|
| 38 |
|
---|
[1cd77c3] | 39 | &lfs122_checked;
|
---|
[b9543da] | 40 |
|
---|
| 41 | <bridgehead renderas="sect3">Package Information</bridgehead>
|
---|
[00f3d9a] | 42 |
|
---|
[b9543da] | 43 | <itemizedlist spacing="compact">
|
---|
| 44 | <listitem>
|
---|
| 45 | <para>
|
---|
| 46 | Download (HTTP): <ulink url="&fontforge-download-http;"/>
|
---|
| 47 | </para>
|
---|
| 48 | </listitem>
|
---|
| 49 | <listitem>
|
---|
| 50 | <para>
|
---|
| 51 | Download (FTP): <ulink url="&fontforge-download-ftp;"/>
|
---|
| 52 | </para>
|
---|
| 53 | </listitem>
|
---|
| 54 | <listitem>
|
---|
| 55 | <para>
|
---|
| 56 | Download MD5 sum: &fontforge-md5sum;
|
---|
| 57 | </para>
|
---|
| 58 | </listitem>
|
---|
| 59 | <listitem>
|
---|
| 60 | <para>
|
---|
| 61 | Download size: &fontforge-size;
|
---|
| 62 | </para>
|
---|
| 63 | </listitem>
|
---|
| 64 | <listitem>
|
---|
| 65 | <para>
|
---|
| 66 | Estimated disk space required: &fontforge-buildsize;
|
---|
| 67 | </para>
|
---|
| 68 | </listitem>
|
---|
| 69 | <listitem>
|
---|
| 70 | <para>
|
---|
| 71 | Estimated build time: &fontforge-time;
|
---|
| 72 | </para>
|
---|
| 73 | </listitem>
|
---|
| 74 | </itemizedlist>
|
---|
[2bf53d6] | 75 |
|
---|
[044207b] | 76 | <bridgehead renderas="sect3">Additional Downloads</bridgehead>
|
---|
| 77 | <itemizedlist spacing="compact">
|
---|
| 78 | <listitem>
|
---|
| 79 | <para>
|
---|
| 80 | Required patch:
|
---|
| 81 | <ulink url="&patch-root;/fontforge-&fontforge-version;-security_fixes-1.patch"/>
|
---|
| 82 | </para>
|
---|
| 83 | </listitem>
|
---|
[10f894a9] | 84 | </itemizedlist>
|
---|
[044207b] | 85 |
|
---|
[b9543da] | 86 | <bridgehead renderas="sect3">FontForge Dependencies</bridgehead>
|
---|
| 87 |
|
---|
[e7af045] | 88 | <bridgehead renderas="sect4">Required</bridgehead>
|
---|
| 89 | <para role="required">
|
---|
[384f06b] | 90 | <xref linkend="libspiro"/> and
|
---|
[bb36f0cd] | 91 | <xref linkend="libxml2"/>
|
---|
[e7af045] | 92 | </para>
|
---|
[633dc24e] | 93 |
|
---|
[b9543da] | 94 | <bridgehead renderas="sect4">Recommended</bridgehead>
|
---|
| 95 | <para role="recommended">
|
---|
[d794630] | 96 | <!-- not mentioned:
|
---|
| 97 | glib is required for gtk3
|
---|
| 98 | pango is required for gtk3
|
---|
| 99 | cairo is recommended for pango
|
---|
| 100 | xorg libs pulled in by gtk3 via libepoxy.
|
---|
| 101 | -->
|
---|
| 102 | <xref linkend="gtk3"/>
|
---|
[b9543da] | 103 | </para>
|
---|
| 104 |
|
---|
| 105 | <bridgehead renderas="sect4">Optional</bridgehead>
|
---|
| 106 | <para role="optional">
|
---|
[d794630] | 107 | <!-- the following references in the source appear not to be used:
|
---|
| 108 | curl is mentioned in appveyor.yml for msys2 (integration tests, I think)
|
---|
| 109 | wget is referenced in Unicode/charset/generate.sh which will fail if
|
---|
| 110 | wget is not on the PATH, and in Unicode/dump.c - with wget moved off the
|
---|
| 111 | PATH, no problems, i.e. they are never run and never built.
|
---|
| 112 |
|
---|
| 113 | Some of the others are at a minimum pulled in for recommended deps -
|
---|
| 114 | libpng from freetype from fontconfig from xorg libs.
|
---|
| 115 | harfbuzz is the same
|
---|
| 116 |
|
---|
| 117 | Also, adding or removing optional deps other than Sphinx doesn't seem
|
---|
| 118 | to materially alter the build time or size.
|
---|
| 119 | -->
|
---|
[b9543da] | 120 | <xref linkend="giflib"/>,
|
---|
[d794630] | 121 | <xref linkend="git"/>,
|
---|
[b9543da] | 122 | <xref linkend="libjpeg"/>,
|
---|
| 123 | <xref linkend="libtiff"/>,
|
---|
[044207b] | 124 | <xref linkend="sphinx"/> (to build html documentation), and
|
---|
| 125 | <xref linkend="woff2"/>
|
---|
[b9543da] | 126 | </para>
|
---|
| 127 |
|
---|
| 128 | </sect2>
|
---|
| 129 |
|
---|
| 130 | <sect2 role="installation">
|
---|
| 131 | <title>Installation of FontForge</title>
|
---|
| 132 |
|
---|
[d9d1ecc] | 133 | <para>
|
---|
[044207b] | 134 | First, fix two security vulnerabilities in the Splinefont functionality:
|
---|
| 135 | </para>
|
---|
| 136 |
|
---|
| 137 | <screen><userinput remap="pre">patch -Np1 -i ../fontforge-&fontforge-version;-security_fixes-1.patch</userinput></screen>
|
---|
| 138 |
|
---|
| 139 | <para>
|
---|
| 140 | Next, fix a problem with old translations exposed by gettext-0.22:
|
---|
[d9d1ecc] | 141 | </para>
|
---|
| 142 |
|
---|
| 143 | <screen><userinput>sed -i.orig 's/\(%[^%[:space:]]*\)hs/\1s/g' \
|
---|
| 144 | fontforgeexe/searchview.c po/de.po po/ca.po \
|
---|
| 145 | po/hr.po po/it.po po/pl.po po/uk.po po/en_GB.po \
|
---|
| 146 | po/fr.po po/vi.po po/ko.po po/ja.po</userinput></screen>
|
---|
| 147 |
|
---|
[78bf8fd3] | 148 | <para>
|
---|
| 149 | Install <application>FontForge</application> by running the following
|
---|
| 150 | commands:
|
---|
| 151 | </para>
|
---|
| 152 |
|
---|
[d794630] | 153 | <screen><userinput>mkdir build &&
|
---|
[384f06b] | 154 | cd build &&
|
---|
[d794630] | 155 |
|
---|
[cbfa153] | 156 | cmake -D CMAKE_INSTALL_PREFIX=/usr \
|
---|
| 157 | -D CMAKE_BUILD_TYPE=Release \
|
---|
[4fdd62d] | 158 | -W no-dev .. &&
|
---|
[b9543da] | 159 | make</userinput></screen>
|
---|
| 160 |
|
---|
| 161 | <para>
|
---|
[3e5e86a] | 162 | To test the results, issue: <command>make check</command>.
|
---|
[b9543da] | 163 | </para>
|
---|
| 164 |
|
---|
| 165 | <para>
|
---|
| 166 | Now, as the <systemitem class="username">root</systemitem> user:
|
---|
| 167 | </para>
|
---|
| 168 |
|
---|
| 169 | <screen role="root"><userinput>make install</userinput></screen>
|
---|
| 170 |
|
---|
[d794630] | 171 | <para>
|
---|
| 172 | If you have installed <command>sphinx-build</command>, HTML documentation
|
---|
| 173 | was built and installed in
|
---|
| 174 | <filename class="directory">/usr/share/doc/fontforge</filename>.
|
---|
| 175 | To be able to access it as a versioned directory, create a
|
---|
| 176 | symlink as the
|
---|
| 177 | <systemitem class="username">root</systemitem> user:
|
---|
| 178 | </para>
|
---|
| 179 |
|
---|
| 180 | <screen role="root"
|
---|
| 181 | remap="doc"><userinput>ln -sv fontforge /usr/share/doc/fontforge-&fontforge-version;</userinput></screen>
|
---|
| 182 |
|
---|
[b9543da] | 183 | </sect2>
|
---|
| 184 |
|
---|
[43e64a4a] | 185 | <sect2 role="commands">
|
---|
| 186 | <title>Command Explanations</title>
|
---|
| 187 |
|
---|
[e7af045] | 188 | <para>
|
---|
[cbfa153] | 189 | <parameter>-D CMAKE_BUILD_TYPE=Release</parameter>: This switch is used to
|
---|
[d794630] | 190 | create an optimized release without debug information.
|
---|
[e7af045] | 191 | </para>
|
---|
| 192 |
|
---|
[d794630] | 193 | <para>
|
---|
[cbfa153] | 194 | <parameter>-W no-dev</parameter>: This switch is used to suppress warnings
|
---|
[d794630] | 195 | intended for the package's developers.
|
---|
| 196 | </para>
|
---|
[43e64a4a] | 197 |
|
---|
[28370fe] | 198 | <para>
|
---|
[cbfa153] | 199 | <option>-D ENABLE_X11=ON</option>: use an X11 backend instead of GDK3
|
---|
[d794630] | 200 | (gtk+-3) for basic Xorg graphics.
|
---|
[28370fe] | 201 | </para>
|
---|
| 202 |
|
---|
[43e64a4a] | 203 | </sect2>
|
---|
| 204 |
|
---|
[b9543da] | 205 | <sect2 role="content">
|
---|
| 206 | <title>Contents</title>
|
---|
| 207 |
|
---|
| 208 | <segmentedlist>
|
---|
| 209 | <segtitle>Installed Programs</segtitle>
|
---|
[d794630] | 210 | <segtitle>Installed Library</segtitle>
|
---|
[b9543da] | 211 | <segtitle>Installed Directories</segtitle>
|
---|
| 212 |
|
---|
| 213 | <seglistitem>
|
---|
| 214 | <seg>
|
---|
| 215 | fontforge, fontimage, fontlint and sfddiff
|
---|
| 216 | </seg>
|
---|
| 217 | <seg>
|
---|
[d794630] | 218 | libfontforge.so and
|
---|
| 219 | /usr/lib/python&python3-version;/site-packages/{fontforge,psMat}.so
|
---|
[b9543da] | 220 | </seg>
|
---|
| 221 | <seg>
|
---|
[d794630] | 222 | /usr/share/fontforge and optionally
|
---|
| 223 | /usr/share/doc/fontforge{,-&fontforge-version;}
|
---|
[b9543da] | 224 | </seg>
|
---|
| 225 | </seglistitem>
|
---|
| 226 | </segmentedlist>
|
---|
| 227 |
|
---|
| 228 | <variablelist>
|
---|
| 229 | <bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
---|
| 230 | <?dbfo list-presentation="list"?>
|
---|
| 231 | <?dbhtml list-presentation="table"?>
|
---|
| 232 |
|
---|
| 233 | <varlistentry id="fontforge-prog">
|
---|
| 234 | <term><command>fontforge</command></term>
|
---|
| 235 | <listitem>
|
---|
| 236 | <para>
|
---|
| 237 | is a program that allows you to create and
|
---|
[4c24eb0a] | 238 | modify font files
|
---|
[b9543da] | 239 | </para>
|
---|
| 240 | <indexterm zone="fontforge fontforge-prog">
|
---|
| 241 | <primary sortas="b-fontforge">fontforge</primary>
|
---|
| 242 | </indexterm>
|
---|
| 243 | </listitem>
|
---|
| 244 | </varlistentry>
|
---|
| 245 |
|
---|
| 246 | <varlistentry id="fontimage">
|
---|
| 247 | <term><command>fontimage</command></term>
|
---|
| 248 | <listitem>
|
---|
| 249 | <para>
|
---|
| 250 | is a program that produces an image showing
|
---|
[4c24eb0a] | 251 | representative glyphs of the font
|
---|
[b9543da] | 252 | </para>
|
---|
| 253 | <indexterm zone="fontforge fontimage">
|
---|
| 254 | <primary sortas="b-fontimage">fontimage</primary>
|
---|
| 255 | </indexterm>
|
---|
| 256 | </listitem>
|
---|
| 257 | </varlistentry>
|
---|
| 258 |
|
---|
| 259 | <varlistentry id="fontlint">
|
---|
| 260 | <term><command>fontlint</command></term>
|
---|
| 261 | <listitem>
|
---|
| 262 | <para>
|
---|
| 263 | is a program that checks the font for certain
|
---|
[4c24eb0a] | 264 | common errors
|
---|
[b9543da] | 265 | </para>
|
---|
| 266 | <indexterm zone="fontforge fontlint">
|
---|
| 267 | <primary sortas="b-fontlint">fontlint</primary>
|
---|
| 268 | </indexterm>
|
---|
| 269 | </listitem>
|
---|
| 270 | </varlistentry>
|
---|
| 271 |
|
---|
| 272 | <varlistentry id="sfddiff">
|
---|
| 273 | <term><command>sfddiff</command></term>
|
---|
| 274 | <listitem>
|
---|
| 275 | <para>
|
---|
[4c24eb0a] | 276 | is a program that compares two font files
|
---|
[b9543da] | 277 | </para>
|
---|
| 278 | <indexterm zone="fontforge sfddiff">
|
---|
| 279 | <primary sortas="b-sfddiff">sfddiff</primary>
|
---|
| 280 | </indexterm>
|
---|
| 281 | </listitem>
|
---|
| 282 | </varlistentry>
|
---|
| 283 |
|
---|
| 284 | </variablelist>
|
---|
| 285 |
|
---|
| 286 | </sect2>
|
---|
| 287 |
|
---|
| 288 | </sect1>
|
---|