6 个版本 (3 个重大更新)
0.4.0 | 2019 年 5 月 3 日 |
---|---|
0.3.1 | 2019 年 5 月 3 日 |
0.2.1 | 2019 年 5 月 2 日 |
0.1.0 | 2019 年 5 月 1 日 |
#20 in #pdf-document
每月 31 次下载
54KB
495 代码行数(不含注释)
Rust 的 Zathura 插件 API 包装器
该软件包将 Zathura 的插件 API 包装在内存安全和类型安全的 Rust 接口中,并允许使用 Rust 编写 Zathura 插件。
请参考变更日志了解最近版本中发生了哪些变化。
用法
在您的 Cargo.toml
中添加条目
[dependencies]
zathura-plugin = "0.4.0"
请参阅API 文档了解如何使用该软件包的功能。
lib.rs
:
Rust 对 Zathura 插件 API 的包装,允许在 Rust 中开发插件。
此库包装了插件接口,并公开了 ZathuraPlugin
特性和 plugin_entry!
宏,作为实现 Rust 插件的主要方式。
示例
struct PluginType {}
impl ZathuraPlugin for PluginType {
type DocumentData = ();
type PageData = ();
fn document_open(doc: DocumentRef<'_>) -> Result<DocumentInfo<Self>, PluginError> {
unimplemented!()
}
fn page_init(page: PageRef<'_>, doc_data: &mut ()) -> Result<PageInfo<Self>, PluginError> {
unimplemented!()
}
fn page_render(
page: PageRef<'_>,
doc_data: &mut Self::DocumentData,
page_data: &mut Self::PageData,
cairo: &mut cairo::Context,
printing: bool,
) -> Result<(), PluginError> {
unimplemented!()
}
}
plugin_entry!("MyPlugin", PluginType, ["text/plain", "application/pdf"]);
依赖项
~0.5–3MB
~58K SLoC