rust - 如何在 Rust 中使用自由类型绑定(bind)?

标签 rust fonts handle freetype

我一直在从事一个需要与字体交互的相当基本的项目。计划是使用 FreeType by the Servo team 的绑定(bind)。 .但是,我很难弄清楚一个人究竟是如何使用它的。我是 FreeType 的新手,所以我关注他们的 tutorial .在这一点上让我绊倒的是创建 handle 。我确实尝试过(当然可笑)来创建库句柄,例如:

use freetype::freetype;
let library: freetype::FT_Library;
可以预见的是,这行不通。我已决定使用 font_kit对于该项目,因为我相当确定这有点过头了。但我仍然很想知道我如何才能真正做到这一点。

最佳答案

看来您可以使用 std::ptr::null_mut初始化 freetype::freetype::FT_Library :

fn main() {
    let mut lib: freetype::freetype::FT_Library = std::ptr::null_mut();
    let result = unsafe {
        freetype::freetype::FT_Init_FreeType(&mut lib)
    };
    println!("Initialization succeed:{}",  freetype::succeeded(result));
}
基于 example .

关于rust - 如何在 Rust 中使用自由类型绑定(bind)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65443023/

相关文章:

rust - Rust 中如何处理闭包函数内的 Result<T,E> ?

android - 使用 Unicode supportedfont 创建一个应用程序以支持本地语言

c++ - 获取每个线程打开的句柄数

windows - 如何判断 Windows 模块句柄是否仍然有效?

javascript - 使用 axios 将数据发送到输入 ReactJS 中的每个更改

matrix - 如何将任意大小的矩阵传递给 Rust 中的函数?

rust - travis-cargo,如何正确使用 GH_TOKEN

rust - 回调到可变的 self

javascript - 如何将用字体 A 编写的 unicode 字符串转换为字体 B?

python - 我如何更改 ttk.Entry 上的字体