ots

Sanitizer for OpenType

  • Owner: khaledhosny/ots
  • Platform:
  • License:: BSD 3-Clause "New" or "Revised" License
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

Build Status
Build status
Fuzzing Status

OpenType Sanitizer

The OpenType Sanitizer (OTS) parses and serializes OpenType files (OTF, TTF)
and WOFF and WOFF2 font files, validating them and sanitizing them as it goes.

The C library is integrated into Chromium and Firefox, and also simple
command line tools to check files offline in a Terminal.

The CSS font-face property is great for web typography. Having to use images
in order to get the correct typeface is a great sadness; one should be able to
use vectors.

However, on many platforms the system-level TrueType font renderers have never
been part of the attack surface before, and putting them on the front line is
a scary proposition... Especially on platforms like Windows, where it's a
closed-source blob running with high privilege.

Building from source

Instructions below are for building standalone OTS utilities, if you want to
use OTS as a library then the recommended way is to copy the source code and
integrate it into your existing build system. Our build system does not build a
shared library intentionally.

Build OTS:

$ meson build
$ ninja -C build

Run the tests (if you wish):

$ ninja -C build test

Usage

See docs


Thanks to Alex Russell for the original idea.

Main metrics

Overview
Name With Ownerkhaledhosny/ots
Primary LanguageC++
Program languageC++ (Language Count: 2)
Platform
License:BSD 3-Clause "New" or "Revised" License
所有者活动
Created At2014-01-15 20:36:53
Pushed At2025-03-29 03:57:49
Last Commit At
Release Count44
Last Release Namev9.2.0 (Posted on 2024-10-02 22:02:28)
First Release Namechrome-19 (Posted on )
用户参与
Stargazers Count280
Watchers Count29
Fork Count66
Commits Count1k
Has Issues Enabled
Issues Count159
Issue Open Count14
Pull Requests Count116
Pull Requests Open Count3
Pull Requests Close Count18
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private