Skip to content

Commit 7e77c6b

Browse files
committed
Allsorts 0.15.0
1 parent 0485d9a commit 7e77c6b

File tree

3 files changed

+38
-5
lines changed

3 files changed

+38
-5
lines changed

CHANGELOG.md

+33-1
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,39 @@ format is based on [Keep a Changelog], and this project aims to follow
66

77
## [Unreleased]
88

9+
## [0.15.0] - 2024-06-06
10+
11+
### Added
12+
13+
- Support for instancing variable fonts and reading variable font
14+
related tables such as `fvar`, `gvar`, `avar`.
15+
- Support for CFF2: Reading, instancing, subsetting to CFF, and extracting
16+
outlines.
17+
- Refactor Glyph types to be more compact and track phantom points.
18+
- Ability to generate a HTML font specimen. Gated behind off-by-default
19+
`specimen` feature.
20+
921
### Changed
1022

1123
- Use default feature mask when shaping Thai and Lao text.
24+
- `pathfinder_geometry` is no longer optional as it's used for variable fonts.
25+
- Apply `rvrn` early in shaping.
26+
- Use bitflags for `macStyle` and `fsSelection`.
27+
- Introduce `RawGlyphFlags` for tracking glyph flags.
28+
- Add `ParseError::UnsuitableCmap` and change `Font::new` to return
29+
`Result<Font, _>` instead of `Result<Option<Font>, _>`.
30+
31+
### Fixed
32+
33+
- Fix registry and ordering when converting CFF Type 1 to CID.
34+
- Recognise Apple's `true` magic for TrueType fonts.
35+
36+
## [0.14.2] - 2024-05-29
37+
38+
### Fixed
39+
40+
- Fix issue where some mark-to-mark positioning was incorrect.
41+
[#107](https://github.com/yeslogic/allsorts/issues/107)
1242

1343
## [0.14.1] - 2023-08-15
1444

@@ -236,7 +266,9 @@ format is based on [Keep a Changelog], and this project aims to follow
236266

237267
- Initial release
238268

239-
[Unreleased]: https://github.com/yeslogic/allsorts/compare/v0.14.1...HEAD
269+
[Unreleased]: https://github.com/yeslogic/allsorts/compare/v0.15.0...HEAD
270+
[0.15.0]: https://github.com/yeslogic/allsorts/compare/v0.14.2...v0.15.0
271+
[0.14.2]: https://github.com/yeslogic/allsorts/compare/v0.14.1...v0.14.2
240272
[0.14.1]: https://github.com/yeslogic/allsorts/compare/v0.14.0...v0.14.1
241273
[0.14.0]: https://github.com/yeslogic/allsorts/compare/v0.13.0...v0.14.0
242274
[0.13.0]: https://github.com/yeslogic/allsorts/compare/v0.12.1...v0.13.0

Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "allsorts"
3-
version = "0.14.1"
3+
version = "0.15.0"
44
authors = ["YesLogic Pty. Ltd. <[email protected]>"]
55
edition = "2018"
66

README.md

+4-3
Original file line numberDiff line numberDiff line change
@@ -36,12 +36,13 @@ which aims to specify OpenType font shaping behaviour.
3636

3737
## Features
3838

39-
* **Parse** TrueType (`ttf`), OpenType (`otf`), WOFF, and WOFF2 files.
39+
* **Parse** TrueType/OpenType (`glyf`, `CFF`, `CFF2`), WOFF, and WOFF2 files.
4040
* **Shape** Arabic, Cyrillic, Greek, Hebrew, [Indic
4141
scripts](https://en.wikipedia.org/wiki/Languages_of_India) (Bengali,
4242
Devanagari, Gujarati, Gurmukhi, Kannada, Malayalam, Oriya, Sinhala, Tamil,
4343
Telugu), Khmer, Lao, Latin, Syriac, Thai, and other scripts.
4444
* **Subset** from TrueType, OpenType, WOFF, and WOFF2 files into OpenType.
45+
* **Instance** variable fonts into non-variable fonts.
4546

4647
## What is font shaping?
4748

@@ -79,8 +80,8 @@ Known limitations:
7980
## Development Status
8081

8182
Allsorts is still under active development but reached its first release
82-
milestone with its inclusion in Prince 13. In Prince it is responsible for
83-
all font loading, and font shaping.
83+
milestone with its inclusion in Prince 13 in 2019. In Prince it is responsible
84+
for all font loading, and font shaping.
8485

8586
Currently, the font parsing code is handwritten. It is planned for this to
8687
eventually be replaced by machine generated code via our [declarative data

0 commit comments

Comments
 (0)