[package]
name = "fframes-skia-safe"
description = "Safe Skia Bindings for Rust"
homepage = "https://github.com/rust-skia/rust-skia"
repository = "https://github.com/rust-skia/rust-skia"
documentation = "https://rust-skia.github.io/doc/skia_safe"
readme = "README.md"
keywords = ["skia", "rust-bindings", "vulkan", "opengl", "pdf"]
categories = [
"api-bindings",
"graphics",
"multimedia::images",
"rendering::graphics-api",
"visualization",
]
license = "MIT"
version = "0.80.2"
authors = ["Armin Sander <armin@replicator.org>"]
edition = "2021"
[lib]
doctest = false
[features]
default = ["binary-cache", "embed-icudtl"]
all-linux = [
"gl",
"egl",
"vulkan",
"x11",
"wayland",
"textlayout",
"svg",
"webp",
]
all-windows = ["gl", "vulkan", "d3d", "textlayout", "svg", "webp"]
all-macos = ["gl", "vulkan", "metal", "textlayout", "svg", "webp"]
gl = ["gpu", "skia-bindings/gl"]
egl = ["gl", "skia-bindings/egl"]
x11 = ["gl", "skia-bindings/x11"]
wayland = ["egl", "skia-bindings/wayland"]
vulkan = ["gpu", "skia-bindings/vulkan"]
metal = ["gpu", "skia-bindings/metal"]
d3d = ["gpu", "windows", "skia-bindings/d3d"]
textlayout = ["skia-bindings/textlayout"]
svg = [
"skia-bindings/svg",
"dep:base64",
"dep:percent-encoding",
"skia-svg-macros",
]
ureq = ["dep:ureq"]
webp = ["webp-encode", "webp-decode"]
webp-encode = ["skia-bindings/webp-encode"]
webp-decode = ["skia-bindings/webp-decode"]
use-system-jpeg-turbo = ["skia-bindings/use-system-jpeg-turbo"]
binary-cache = ["skia-bindings/binary-cache"]
embed-icudtl = ["skia-bindings/embed-icudtl"]
embed-freetype = ["skia-bindings/embed-freetype"]
freetype-woff2 = ["skia-bindings/freetype-woff2"]
save-svg-images = []
gpu = []
shaper = ["textlayout", "skia-bindings/shaper"]
[dependencies]
bitflags = "2.0"
lazy_static = "1.4"
skia-bindings = { version = "=0.80.1", package = "fframes-skia-bindings", path = "../skia-bindings", default-features = false }
windows = { version = "0.58.0", features = [
"Win32",
"Win32_Graphics",
"Win32_Graphics_Dxgi",
"Win32_Graphics_Direct3D12",
"Win32_Graphics_Direct3D",
"Win32_Foundation",
"Win32_Graphics_Dxgi_Common",
], optional = true }
ureq = { version = "2.8.0", optional = true }
base64 = { version = "0.22.0", optional = true }
percent-encoding = { version = "2.3.1", optional = true }
skia-svg-macros = { version = "0.1.0", path = "../skia-svg-macros", optional = true }
[dev-dependencies]
serial_test = "3.0"
static_assertions = "1.1"
winit = "0.30.2"
[target.'cfg(all(not(target_os = "android"), not(target_os = "emscripten"), not(target_os = "ios")))'.dev-dependencies]
glutin = "0.32.0"
glutin-winit = "0.5.0"
raw-window-handle = "0.6.0"
gl-rs = { version = "0.14.0", package = "gl" }
[target.'cfg(target_os = "macos")'.dev-dependencies]
metal-rs = { package = "metal", version = "0.24.0" }
raw-window-handle = "0.6.0"
objc = "0.2.7"
cocoa = "0.26.0"
core-graphics-types = "0.1.1"
foreign-types-shared = "0.1.1"
[target.'cfg(target_os = "windows")'.dev-dependencies]
anyhow = { version = "1.0.75" }
windows = { version = "0.58.0", features = [
"Win32",
"Win32_Graphics",
"Win32_Graphics_Dxgi",
"Win32_Graphics_Direct3D12",
"Win32_Graphics_Direct3D",
"Win32_Foundation",
"Win32_Graphics_Dxgi_Common",
] }