#bindings #incomplete #beta #proper #change #api #blend2d

sys blend2d-sys

blend2d 的原始 ffi 绑定

5 个不稳定版本

0.3.0 2019 年 7 月 16 日
0.2.0 2019 年 5 月 11 日
0.1.2 2019 年 4 月 17 日
0.1.1 2019 年 4 月 15 日
0.1.0 2019 年 4 月 3 日

#9 in #proper

每月 35 次下载
用于 blend2d

MIT/Apache

3.5MB
63K SLoC

C++ 61K SLoC // 0.1% comments JavaScript 2.5K SLoC // 0.1% comments Rust 173 SLoC Shell 75 SLoC // 0.1% comments Batch 28 SLoC

包含 (DOS exe, 80KB) CMakeCXXCompilerId.exe, (DOS exe, 36KB) CMakeDetermineCompilerABI_CXX.bin, (DOS exe, 39KB) feature_tests.bin

blend2d-rs

Build Status Crates.io Docs.rs

该包为 blend2d 库提供 Rust 绑定。

  • 该项目目前处于 WIP 阶段,因此尚不完整。因此,该包可能会在确定合适的 API 之前经历破坏性更改。请注意,blend2d 本身也仍在测试中,这意味着它们 API 的更改很可能会以某种方式反映在此包中。这也意味着某些功能目前可能没有正确实现(或根本未实现),例如,使用图像填充上下文将返回 InvalidValue 错误。

  • 目前几乎没有文档,如果出现混淆,查看 C++ 文档 可能会有所帮助。这将在不久的将来改变。

  • 并非所有内容都已测试,因此可能会出现错误。

设置

该包需要安装并可在 PATH 中找到 CMake

此外,在克隆仓库后,请确保初始化子模块(git submodule update --init)。

示例

您可以在 这里 找到示例。

rust_bl_logo

当前设计决策

  • 当前实现 Clone Trait 的方式是使用 blend2d 的底层引用计数进行弱克隆。可以通过使用相应的 DeepClone Trait 实现深克隆。
  • blend2d 返回的 OutOfMemory 错误默认情况下将使程序崩溃。

许可

许可方式为以下之一

任选其一。

Rust标志归Mozilla所有,并按照创意共享署名许可(CC-BY)条款进行分发。

贡献

除非你明确说明,否则根据Apache-2.0许可证的定义,你提交给本作品的任何贡献,均应以上述双许可方式许可,不附加任何额外条款或条件。

依赖项