AllSorts는 글꼴 파서, 쉐이핑 엔진 및 OpenType, Woff 및 Woff2의 서브 세트입니다. 그것은 HTML 및 CSS 문서를 PDF로 조성하고 제시하는 도구 인 Prince에서 추출되었습니다.
AllSorts 쉐이핑 엔진은 OpenType Font Shaping 동작을 지정하는 것을 목표로하는 OpenType 쉐이핑 사양과 함께 개발되었습니다.
glyf , CFF , CFF2 ), WOFF 및 WOFF2 파일.글꼴 쉐이핑은 유니 코드 코드 포인트와 글꼴 형태로 텍스트를 취하고 텍스트에 따라 글꼴에서 글리프를 배치하는 과정입니다. 여기에는 Kerning, Ligatures 및 Font에서 지정된 대체를 존중하는 것이 포함됩니다. 일부 언어의 경우 이것은 비교적 간단합니다. Indic Scripts와 같은 다른 사람들에게는 매우 복잡합니다. 성형 후 Pathfinder 또는 Freetype과 같은 다른 라이브러리가 Glyphs를 렌더링하는 데 도움이됩니다. 텍스트 렌더링에 대해 자세히 알아 보려면 Andrea Cognolato는 Linux의 현대 글꼴 렌즈에 대한 좋은 개요를 가지고 있습니다. 개념은 다른 플랫폼에서도 비슷합니다.
AllSorts 글꼴 구문 분석, 쉐이핑 및 하위 집합을 연습하는 일련의 도구는 AllSorts 도구 저장소를 참조하십시오.
우리는 현재 지원하지 않습니다.
알려진 한계 :
AllSorts는 여전히 활발한 개발 중이지만 2019 년 Prince 13에 포함시켜 첫 번째 릴리스 이정표에 도달했습니다. Prince에서는 모든 글꼴 로딩 및 글꼴 성형을 담당합니다.
현재 글꼴 구문 분석 코드는 필기합니다. 선언적 데이터 정의 언어 프로젝트를 통해 기계 생성 코드로 결국 대체 할 계획입니다.
AllSorts CI는 Linux, MacOS 및 Windows에서 테스트를 실행합니다. Prince를 통해 FreeBSD를 위해 지어졌습니다.
최소 지원 RUST 버전 : 1.66.0
상자를 건설하려면 녹 1.66.0 또는 최신 설치가 있는지 확인하십시오.
cargo build 로 구축하고 cargo test 로 테스트를 실행하십시오.
| 특징 | 설명 | 기본 활성화 | 추가 종속성 |
|---|---|---|---|
outline | 글리프 윤곽선에 액세스하기위한 코드를 활성화하십시오 | ✅ | |
flate2_zlib | Zlib 백엔드를 Flate2에 사용하십시오 | ✅ | zlib |
flate2_rust | Rust Backend를 Flate2로 사용하십시오 | miniz_oxide | |
prince | 프린스 특정 테스트 및 코드를 활성화하십시오 | ||
specimen | HTML 글꼴 시편을 생성하기위한 모듈을 활성화하십시오 | upon unicode-blocks |
참고 : 테스트에서 zlib flate2 백엔드는 더 빠르지 만 WASM 또는 이와 유사하게 컴파일 할 때 순수한 Rust 솔루션의 Rust Backend를 선호 할 수 있습니다.
기부금을 환영합니다. 자세한 내용은 기고 문서를 참조하십시오.
우리는 Rust Community 표준을지지하는 것을 목표로합니다.
우리는 성별, 성적 취향, 장애, 민족, 종교 또는 유사한 개인적 특성에 관계없이 모든 사람에게 친절하고 안전하며 환영하는 환경을 제공하기 위해 노력하고 있습니다.
우리는 녹 행동 강령을 따릅니다.
AllSorts는 Apache 라이센스 (버전 2.0)의 조건에 따라 배포됩니다.
자세한 내용은 라이센스를 참조하십시오.