CTAN Comprehensive TeX Archive Network

Directory fonts/phosphoricons

README.md

phosphoricons — Phosphor Icons for

A package providing all Phosphor Icons in all six weights (thin, light, regular, bold, fill, duotone) on pdf, and Lua.

\usepackage{phosphoricons}
...
\ppIcon{acorn}                                % generic command
\ppAcorn                                      % generated per-icon command
\ppAcorn[bold]                                % per-icon weight
\ppIcon[weight=duotone, secondary=orange]{campfire}
\ppSet{weight=fill}                           % document/group default

Weights can be set as a package option (\usepackage[weight=bold]{phosphoricons}), mid-document (\ppSet{...} / \ppWeight{...}) or per icon; the most specific setting wins. Duotone icons are rendered as two stacked glyphs; the background layer color defaults to the current text color mixed at 20 % (secondary=.!20) and can be set to any xcolor expression.

See the manual for the full icon list.

Installation

From CTAN/ Live: install the phosphoricons package with your distribution.

From this repository:

scripts/local_install.sh

which copies the package into TEXMFHOME and registers the font map (updmap-user --enable Map=phosphoricons.map).

How it works

  • On /Lua the TrueType fonts are loaded directly (a TU font family per weight, no fontspec needed) and glyphs are addressed by Unicode codepoint.
  • On pdf the fonts are re-encoded into 256-glyph chunks (U encoding families, weights on the NFSS series axis) and the TTFs are embedded directly — no Type 1 conversion.
  • Both engines consume the same generated mapping file (phosphoricons-mapping.def), which is also reused to build the icon-list documentation and the CI test that typesets every icon in every weight on all three engines.

Upgrading to a new Phosphor release

Everything under phosphoricons/ except the three hand-written .sty files is generated from the upstream npm package @phosphor-icons/web:

scripts/upgrade_phosphor.sh        # fetch latest, regenerate, test, build doc

A GitHub Action runs this monthly and opens a pull request when upstream publishes a new version.

Requirements for regeneration: python3 with fontTools (pip install fonttools), otftotfm (lcdf-typetools, ships with Live) and a Live with pdf, and Lua.

License

  • The package (sty files, scripts, generated artefacts): LPPL 1.3c, maintained by Daniel Nagel.
  • The Phosphor Icons fonts (phosphoricons/truetype/): MIT, © Tobias Fried & Helena Zhang (phosphor-icons).

Download the contents of this package in one zip archive (2.5M).

Phosphor Icons – support for Phosphor Icons

This package provides support for Phosphor Icons

Icons can be typeset with a generic command (\ppIcon{acorn}) or with generated per-icon commands (\ppAcorn), on pdf, and Lua alike. The weight can be chosen as a package option, mid-document, or per icon via an optional argument, which also accepts key–value input. Two-layer duotone icons are fully supported; the background layer color defaults to the current text color mixed at 20% and can be set to any xcolor expression.

Icons inherit the surrounding text color and font size. The bundled TrueType fonts are embedded directly under pdf and loaded without fontspec under the Unicode engines. All bindings are auto-generated from the upstream release, so the package tracks new Phosphor versions closely.

PackagePhosphor Icons
Home page
Bug tracker
Repository
Version2.1.2-1
LicensesMIT License
The Project Public License 1.3c
Copyright2026 Daniel Nagel
MaintainerDaniel Nagel
Contained inTeX Live as phosphoricons
TopicsFont
Graphics symbols
...
Guest Book Sitemap Contact Contact Author