Skip to content

Fontisan vs lcdf-typetools

Compare Fontisan with the lcdf-typetools suite (otfinfo, cfftot1, t1dotlessj, etc.).

Overview

lcdf-typetools is a C++ suite including:

  • otfinfo — Font information
  • cfftot1 — CFF to Type 1 conversion
  • t1dotlessj — Type 1 manipulation
  • t1reencode — Type 1 reencoding
  • ttf2otf — TTF to OTF conversion
lcdf-typetoolsFontisan
LanguageC++Ruby
CompilationRequiredNone
InstallationComplexgem install
Cross-platformLimitedFull

Tool Equivalents

otfinfo

otfinfoFontisan
otfinfo -i font.ttffontisan info font.ttf
otfinfo -s font.ttffontisan info font.ttf --features
otfinfo -f font.ttffontisan info font.ttf --features
otfinfo -g font.ttffontisan info font.ttf --glyphs
otfinfo -u font.ttffontisan info font.ttf --unicode
otfinfo -t font.ttffontisan info font.ttf --tables

cfftot1

cfftot1Fontisan
cfftot1 font.otffontisan convert font.otf --to type1 --output font.pfb

t1reencode

t1reencodeFontisan
t1reencode font.pfbfontisan convert font.pfb --to type1 --auto-encoding

ttf2otf

ttf2otfFontisan
ttf2otf font.ttffontisan convert font.ttf --to otf --output font.otf

Feature Comparison

Font Information

FeatureotfinfoFontisan
Basic info
Script info
Feature info
Glyph info
Unicode info
Table info
YAML/JSON

Font Conversion

Featurelcdf-typetoolsFontisan
TTF → OTF✅ (ttf2otf)
OTF → TTF
OTF → Type 1✅ (cfftot1)
Type 1 → OTF
TTF → WOFF2

Hinting

Featurelcdf-typetoolsFontisan
TrueType hintsReadRead
PostScript hintsReadRead
Hint conversionPartial
Bidirectional

Validation

Featurelcdf-typetoolsFontisan
Validation
Profiles✅ (5)
Helpers✅ (56)

Collections

Featurelcdf-typetoolsFontisan
TTC/OTC reading
TTC/OTC writing
dfont support

Unique Features

Fontisan Unique

  • Pure Ruby — No C++ compilation
  • Built-in validation — Comprehensive checking
  • Bidirectional hint conversion — TrueType ↔ PostScript
  • Full collection support — TTC/OTC/dfont
  • Type 1 → OTF — Reverse conversion
  • WOFF/WOFF2 — Web font support

lcdf-typetools Unique

  • t1dotlessj — Specialized Type 1 manipulation
  • t1lint — Type 1 linting
  • Fast C++ — Native performance
  • Mature — Long history

Installation Comparison

lcdf-typetools

bash
# macOS
brew install lcdf-typetools

# Linux
apt install lcdf-typetools
# or compile from source

# Windows
# Requires MSYS2 or WSL

Fontisan

bash
# All platforms
gem install fontisan

Use Case Recommendations

Use Fontisan When:

  • You need validation
  • You need WOFF/WOFF2
  • You need collection support
  • You want minimal installation
  • You need Type 1 → OTF conversion

Use lcdf-typetools When:

  • You need t1dotlessj
  • You need t1lint
  • You're in a C++ environment
  • You have existing workflows

Code Comparison

Get Font Info

bash
# otfinfo
otfinfo -i font.ttf | grep Family

# Fontisan
fontisan info font.ttf --format json | jq '.family'

Convert TTF to OTF

bash
# ttf2otf
ttf2otf font.ttf font.otf

# Fontisan
fontisan convert font.ttf --to otf --output font.otf

Convert OTF to Type 1

bash
# cfftot1
cfftot1 font.otf font.pfb

# Fontisan
fontisan convert font.otf --to type1 --output font.pfb

Conclusion

NeedRecommendation
Ruby environmentFontisan
ValidationFontisan
WOFF/WOFF2Fontisan
CollectionsFontisan
t1dotlessjlcdf-typetools
Type 1 lintinglcdf-typetools
Minimal installationFontisan

Fontisan is a [Ribose](https://open.ribose.com/) project