mirror of
https://github.com/storytold/photocraft.git
synced 2026-10-26 16:10:21 +00:00
44 lines
2.1 KiB
TOML
44 lines
2.1 KiB
TOML
[package]
|
|
name = "photocraft-text"
|
|
description = "Font database, text shaping/layout (parley) and text-layer rasterization"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
rust-version.workspace = true
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
photocraft-geom = { workspace = true }
|
|
photocraft-color = { workspace = true }
|
|
photocraft-raster = { workspace = true }
|
|
photocraft-doc = { workspace = true }
|
|
photocraft-psd = { workspace = true }
|
|
# No `system` feature: fontique's system backend links fontconfig on Linux. We scan font
|
|
# directories ourselves (native) and always register the bundled fonts (native + web).
|
|
parley = { version = "0.11", default-features = false, features = ["std"] }
|
|
skrifa = "0.44"
|
|
flate2 = { workspace = true }
|
|
|
|
# ICU dictionary data for Japanese word boundaries and complex-script (Thai, Lao, Khmer, Burmese)
|
|
# line breaking. Native only: the CJK dictionary alone is 3.8 MB of wasm, and the web build must
|
|
# stay under Cloudflare's 25 MiB per-file cap (packaging/web/package.sh). The web build falls back
|
|
# to the generic Unicode rules for those scripts.
|
|
# Native only: the glyph rasteriser composites and converts its pixel buffers on all cores.
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
|
|
parley = { version = "0.11", default-features = false, features = ["std", "complex-scripts"] }
|
|
rayon = { workspace = true }
|
|
|
|
# macOS only: the `system` feature adds fontique's Core Text backend, which lists every font the
|
|
# system offers wherever its file lives (fonts a font manager or Adobe Fonts activated, Office's
|
|
# own, Apple's on-demand downloads). `fonts.rs` reads only its list of files and registers them
|
|
# like the folder scan's, so our own collection keeps its behaviour (generic families, merging
|
|
# installed faces into the bundled families). It uses no fontconfig, unlike `system` on Linux.
|
|
[target.'cfg(target_os = "macos")'.dependencies]
|
|
parley = { version = "0.11", default-features = false, features = ["std", "complex-scripts", "system"] }
|
|
|
|
[build-dependencies]
|
|
# Deflates the bundled fonts (build.rs); `flate2` above inflates them.
|
|
flate2 = { workspace = true }
|