mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-11-01 13:47:21 -06:00
Highlight Alternate Glyphs no longer drops a lam-alef cluster's glyphs outright: the ligature is clear when required shaping, or shaping with liga left on (older fonts), gives it, so an optional feature such as salt that changes it is highlighted again. is_lam_alef takes any combining mark by Unicode general category (Arabic Extended-A/B/C included) instead of a partial list. The test font maps the fatha to a mark and skips marks in its ligature, so the mark-spanning test checks the exact ligature glyph and cluster; it gains a salt lookup and test. Also a one-line equivalent nonminimal_bool repair in pathops' pathtools that strict Clippy needs on main.
55 lines
2.1 KiB
TOML
55 lines
2.1 KiB
TOML
[package]
|
|
name = "vectorcraft-render"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
description = "VectorCraft renderer: document to pixels (vello_cpu backend)"
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
vectorcraft-geom = { workspace = true }
|
|
vectorcraft-color = { workspace = true }
|
|
vectorcraft-doc = { workspace = true }
|
|
vectorcraft-text = { workspace = true }
|
|
vectorcraft-effects = { workspace = true }
|
|
vectorcraft-brush = { workspace = true }
|
|
vello_cpu = { workspace = true }
|
|
# Filter types (Gaussian blur, drop shadow) are not re-exported by vello_cpu 0.2.
|
|
vello_common = { version = "0.2", default-features = false }
|
|
image = { workspace = true }
|
|
flate2 = { workspace = true }
|
|
jpeg-encoder = { workspace = true }
|
|
gif = { workspace = true }
|
|
# TIFF LZW compression (MIT OR Apache-2.0; already used by the image crate's TIFF reader).
|
|
weezl = "0.2"
|
|
# PNG rows read one at a time (MIT OR Apache-2.0; already used by the image crate's PNG reader).
|
|
png = "0.18"
|
|
log = { workspace = true }
|
|
# Combining marks inside a lam-alef cluster (MIT OR Apache-2.0; already used by vectorcraft-text).
|
|
unicode-general-category = "1"
|
|
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
|
|
vello_cpu = { workspace = true, features = ["multithreading"] }
|
|
|
|
# The shared image store's budget (src/images.rs) follows the installed memory, which it reads with GlobalMemoryStatusEx
|
|
# through winsafe's safe wrappers over Win32 (MIT), which vectorcraft-cli's src/perf.rs also uses.
|
|
[target.'cfg(windows)'.dependencies]
|
|
winsafe = { version = "0.0.29", default-features = false, features = ["kernel"] }
|
|
|
|
[dev-dependencies]
|
|
vectorcraft-testkit = { workspace = true }
|
|
# A variable font built in code (no font file is committed).
|
|
vectorcraft-text = { workspace = true, features = ["test-fonts"] }
|
|
# Live-effect plug-ins the cache tests install, written in WebAssembly text.
|
|
vectorcraft-plugins = { workspace = true }
|
|
wat = { workspace = true }
|
|
# Decoders the export tests read their files back with.
|
|
image = { workspace = true, features = ["tga"] }
|
|
tiff = "0.11"
|
|
# Reads the PSD exports back (MIT OR Apache-2.0).
|
|
psd = "0.3"
|
|
proptest = { workspace = true }
|
|
serde_json = { workspace = true }
|