fntsample
fntsample copied to clipboard
PDF and PostScript font samples generator (migrating from https://sourceforge.net/projects/fntsample/)
fntsample
|build| |license|
.. |build| image:: https://github.com/eugmes/fntsample/actions/workflows/ci.yml/badge.svg :target: https://github.com/eugmes/fntsample/actions/workflows/ci.yml .. |license| image:: https://img.shields.io/badge/License-GPL%20v3-blue.svg :alt: License: GPL v3 :target: https://www.gnu.org/licenses/gpl-3.0
fntsample is a tool that can be used to make font samples that show coverage of the font
and are similar in appearance to Unicode Charts <https://www.unicode.org/charts/>.
It was developed for use with DejaVu Fonts <https://dejavu-fonts.github.io> project.
fntsample is licensed under GPL <https://www.gnu.org/licenses/gpl.html>_ version 3 or later.
.. image:: screenshot.png :alt: Output example
Features
-
Support for various font formats using
FreeType <https://www.freetype.org>_ library, including TrueType, OpenType, and Type1. -
Creating samples in PDF, PostScript, and SVG formats.
-
Adding outlines with Unicode block names for PDF samples.
-
Selection of code ranges to show in charts.
-
Comparing of two font files with highlighting of added glyphs.
-
Runs on Linux and other Unix-like systems.
Download
Releases are available from releases page <https://github.com/eugmes/fntsample/releases>.
For source code releases for versions before 5.0 visit the old project page <https://sourceforge.net/projects/fntsample/>.
The source code and issues tracker are accessible via the project page <https://github.com/eugmes/fntsample>_.
Building
The following libraries are required to build fntsample:
cairo <https://www.cairographics.org>,
fontconfig <https://www.fontconfig.org>,
FreeType2 <https://www.freetype.org>,
GLib <https://developer.gnome.org/glib/>,
Pango <https://pango.gnome.org/>,
gettext <https://www.gnu.org/software/gettext/>.
They should be available in most Linux distributions.
Additionally Unicode blocks <https://unicode.org/Public/UNIDATA/Blocks.txt>_ file is required.
CMake <https://cmake.org>_ is used to build the code. In the directory with source code execute::
% mkdir build
% cd build
% cmake .. -DUNICODE_BLOCKS=/path/to/Blocks.txt
% make
% make install
The last step will install files under /usr/local by default. This can be overridden by adding
-DCMAKE_INSTALL_PREFIX=/another/prefix to the cmake invocation.
fntsample could be built using Homebrew <https://brew.sh>_ on macOS.
Use the following commands to install dependencies and configure the build
environment before building the code::
% brew install cmake pgk-config gettext cairo pango fontconfig freetype glib
% export CMAKE_PREFIX_PATH=/usr/local/opt/gettext
Alternatively you can install fntsample using a Homebrew
formula <https://github.com/eugmes/homebrew-fntsample>_::
% brew install eugmes/fntsample/fntsample
Usage
The basic usage for fntsample looks as follows::
% fntsample -f /file/to/font/file.ttf -o output.pdf
For more advanced usage consult the man pages for fntsample and pdfoutline.