Skip to main content

EOT tools

Tools for working with EOT (Embedded OpenType) font files.

About

Embedded OpenType (EOT) fonts are a font format mostly used in Microsoft applications. The primary usage has been as a webfont in Internet Explorer. Nowadays, it is mostly unused, but when dealing with legacy distributions, we might need a deeper look into their properties. Additionally, tools like Fontello still generate EOT font files by default.

When looking for FOSS tooling around EOT fonts, I could not find any reliable parser that would allow further inspection of these files. With the specification being publicly available and the files basically being a TTF file with some header/prefix, basic processing is rather straightforward. Thus, I decided to write a short script for it to later move it into a library to make metadata/property analysis of EOT possible.

The corresponding TTF files can be analyzed with a much wider variety of tools, for example, using the fonttools library.

Features

  • Read all defined properties.
  • Retrieve the embedded TTF file data. Currently limited to uncompressed and unencrypted data as this is what the test files I found use.

Installation

You can install this package from PyPI:

python -m pip install eot_tools

Alternatively, you can use the package from source directly after installing the required dependencies.

Usage

To load an EOT file, use the following code:

from eot_tools import EOTFile


eot = EOTFile("Maki.eot")
print(eot.family_name, eot.style_name, eot.version_name)

Once the file is loaded, you can use fonttools to load the actual font for example:

from io import BytesIO

from eot_tools import EOTFile
from fontTools.ttLib import TTFont


eot = EOTFile("Maki.eot")
with TTFont(file=BytesIO(eot.font_data)) as font:
    print(font)

License

This package is subject to the terms of the MIT license.

Metadata

Release files for eot-tools 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for eot-tools 0.1.0
File Size Uploaded Provenance
eot_tools-0.1.0.tar.gz 67.2 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for eot-tools 0.1.0
File Interpreter ABI Platform
eot_tools-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 73.3 kB

Release files / eot_tools-0.1.0.tar.gz

Download URL eot_tools-0.1.0.tar.gz
Size 67.2 kB
Tags Source
SHA-256 checksum
How to use checksums
aab0b0b485162ba1630bd2413b0d20d332f44e9dcc0af7c24b2d70585916078a
BLAKE2b-256 checksum
How to use checksums
cf12a578661ce3721161c1d273c2b1cc1edee04fb9c35a30c6f4071690037fd1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 8, 2025.

Transparency log

Release files / eot_tools-0.1.0-py3-none-any.whl

Download URL eot_tools-0.1.0-py3-none-any.whl
Size 6.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9c812db23cc9138063603a3f29362d4086c9583638b538bdac1ec4a99fe303da
BLAKE2b-256 checksum
How to use checksums
06bef6533a41f99b1be3747b88ba9cdd89f44d641272018f9283e8c88b7f7b6f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 8, 2025.

Transparency log

Security for eot-tools 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for eot_tools-0.1.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 8, 2025.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page