awesome-repositories.com
博客
MCP
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目MCP 服务器关于排名机制媒体报道
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
opentypejs avatar

opentypejs/opentype.js

0
View on GitHub↗
4,976 星标·536 分支·JavaScript·MIT·7 次浏览opentype.js.org↗

Opentype.js

opentype.js 是一个 JavaScript 库,用于在浏览器和服务器环境中读取、写入及操作 OpenType、TrueType 和 WOFF 字体文件。它既是字体解析器也是生成器,能够提取字形数据和元数据,或通过编程定义字形路径和元数据来创建新的字体文件。

该项目提供了专门的工具来修改字体变体表以控制可变字体属性,并通过 COLR 和 CPAL 表处理颜色层和调色板。它还包含一个贝塞尔路径生成器,可将字体字形和文本字符串转换为用于 SVG 和 Canvas 渲染的路径。

该库涵盖了广泛的排版操作,包括计算字体指标(如字宽和边界框)、将字形转换为 SVG 路径数据,以及将文本直接渲染到 2D 绘图上下文中。它还支持修改原始字形形状,并将字体对象序列化回二进制格式以进行文件导出。

Features

  • Font Binary Parsing - Extracts letterforms and glyph data from OpenType and TrueType fonts for use in browser and server environments.
  • OpenType Font Parsers - Reads and extracts glyph data, layout tables, and metadata from OpenType and TrueType font files.
  • Glyph Index Mappings - Organizes font data into logical tables for efficient character-to-glyph index mapping.
  • Binary Buffer Parsing - Parses raw binary buffers from font files into structured JavaScript objects based on OpenType specifications.
  • Font Binary Encoders - Encodes font objects into contiguous byte streams for export as standard binary font files.
  • Font Metadata Inspection - Interprets binary tables to reveal the underlying geometric and structural data of font characters.
  • Bezier Curve Rendering - Converts font glyph coordinates into Bezier curves for visualization on 2D canvases or SVG surfaces.
  • Font Format Exporters - Saves font objects into binary formats like WOFF and OpenType for cross-platform compatibility.
  • OpenType Font Toolkits - Provides a comprehensive JavaScript library for reading, writing, and manipulating OpenType, TrueType, and WOFF font files.
  • Bezier Path Generators - Generates Bezier path representations of text strings, incorporating kerning and ligatures.
  • Unicode Glyph Mapping - Resolves Unicode characters to specific glyph indices by parsing the font's character map table.
  • Automated Font Generators - Writes glyph and layout information to generate new OpenType font files.
  • Programmatic Font Generators - Designs and exports new OpenType font files by defining Bezier paths and metadata programmatically.
  • Font Binary Generation - Creates new OpenType font files by defining glyph paths and font metadata programmatically.
  • Font Metric Mappers - Calculates character advance widths and bounding boxes for precise text layout and positioning.
  • Glyph Alignment Metrics - Calculates bounding boxes and spacing for individual characters to ensure consistent visual alignment.
  • Variable Font Axis Manipulation - Programmatically adjusts design-space axes in variable fonts to control typographic properties.
  • Text Rendering - Renders strings of text directly onto a 2D canvas drawing context.
  • Canvas Vector Rendering - Translates vectorized glyph paths into drawing commands for the browser's 2D canvas API.
  • Color Layer Processing - Manipulates color palettes and layers within fonts using COLR and CPAL tables.
  • Variable Font Table Management - Provides utilities for modifying font variation tables to control variable font properties.
  • SVG Path Serializers - Transforms font paths into SVG path data strings for use in web graphics.
  • Glyph-to-Vector Rendering - Converts font characters into vector shapes for precise rendering in web graphics.
  • Glyph Modifications - Implements programmatic manipulation of raw glyph points and paths to alter character appearances.
  • Color Glyph Table Managers - Manipulates palettes and color layers for fonts using COLR and CPAL tables.

Star 历史

opentypejs/opentype.js 的 Star 历史图表opentypejs/opentype.js 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Opentype.js 的开源替代方案

相似的开源项目,按与 Opentype.js 的功能重合度排序。
  • ryanoasis/nerd-fontsryanoasis 的头像

    ryanoasis/nerd-fonts

    63,373在 GitHub 上查看↗

    Nerd Fonts is a suite of tools and collections designed for aggregating glyphs, patching programming fonts, and generating web-ready font assets. It provides an iconic font patcher for injecting large sets of icons into existing system fonts, a glyph aggregator that consolidates symbols from multiple icon sets, and a collection of pre-patched monospaced typefaces for use in terminals and editors. The project includes a font metrics tool to adjust glyph widths and cell sizing, ensuring consistent icon alignment in monospace environments. It also features a web font generator that converts patc

    CSSfontfont-awesomefonts
    在 GitHub 上查看↗63,373
  • notofonts/noto-cjknotofonts 的头像

    notofonts/noto-cjk

    3,921在 GitHub 上查看↗

    Noto CJK is an open-source font family providing Sans and Serif typefaces designed for the consistent rendering of Chinese, Japanese, and Korean characters. It functions as a unified font system that provides comprehensive coverage of the CJK Unified Ideographs block to ensure cross-language compatibility. This multi-language typeface set is optimized for digital displays and print across various East Asian writing systems. It provides standardized typeface files to enable correct rendering of East Asian scripts across different operating systems and devices. The project covers multilingual

    Python
    在 GitHub 上查看↗3,921
  • arrowtype/recursivearrowtype 的头像

    arrowtype/recursive

    3,819在 GitHub 上查看↗

    Recursive is a multilingual variable font family and an OpenType typography toolkit. It provides a system of variable fonts that support dynamic adjustments to weight, slant, width, and expression, including a specialized typeface designed for code editors. The project features a responsive typography system that maintains consistent horizontal spacing to prevent layout reflow during stylistic transitions. It includes specialized ligatures and character disambiguation to improve the legibility of technical text in programming environments. The system covers a broad range of international lan

    Python
    在 GitHub 上查看↗3,819
  • gcssloop/androidnoteGcsSloop 的头像

    GcsSloop/AndroidNote

    9,332在 GitHub 上查看↗

    AndroidNote is a technical knowledge base and reference resource for Android development. It provides comprehensive guidance on application architecture, custom view development, and advanced graphics programming. The project is distinguished by its depth in visual implementation, covering pseudo-3D perspective projections via virtual cameras and complex 2D rendering using Bézier curves and PorterDuff color blending. It also provides detailed methodologies for app modularization and the management of internal libraries through private Maven repositories and JitPack. The reference surface ext

    Javaandroidandroid-studiocustom-view
    在 GitHub 上查看↗9,332
查看 Opentype.js 的所有 30 个替代方案→

常见问题解答

opentypejs/opentype.js 是做什么的?

opentype.js 是一个 JavaScript 库,用于在浏览器和服务器环境中读取、写入及操作 OpenType、TrueType 和 WOFF 字体文件。它既是字体解析器也是生成器,能够提取字形数据和元数据,或通过编程定义字形路径和元数据来创建新的字体文件。

opentypejs/opentype.js 的主要功能有哪些?

opentypejs/opentype.js 的主要功能包括:Font Binary Parsing, OpenType Font Parsers, Glyph Index Mappings, Binary Buffer Parsing, Font Binary Encoders, Font Metadata Inspection, Bezier Curve Rendering, Font Format Exporters。

opentypejs/opentype.js 有哪些开源替代品?

opentypejs/opentype.js 的开源替代品包括: ryanoasis/nerd-fonts — Nerd Fonts is a suite of tools and collections designed for aggregating glyphs, patching programming fonts, and… notofonts/noto-cjk — Noto CJK is an open-source font family providing Sans and Serif typefaces designed for the consistent rendering of… arrowtype/recursive — Recursive is a multilingual variable font family and an OpenType typography toolkit. It provides a system of variable… gcssloop/androidnote — AndroidNote is a technical knowledge base and reference resource for Android development. It provides comprehensive… pymupdf/pymupdf — PyMuPDF is a comprehensive PDF manipulation library and document analysis tool. It serves as a text extraction tool,… yqnn/svg-path-editor — This project is a vector path manipulator and SVG geometry transformer that provides a visual interface for modifying…