Skip to content

Simple demo that demonstrates how to use typst as a library in Rust

License

Notifications You must be signed in to change notification settings

tfachmann/typst-as-library

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Typst as Library

As of March 15th, 2024 (typst version 0.11.0) it has finally been published to crates.io, so there is no more need for git dependencies.

This repository shows how to use typst as a library in Rust.

fn main() {
    let content = "= Hello, World!";

    // All the abstraction needed is here (!)
    let world = TypstWrapperWorld::new("./examples".to_owned(), content.to_owned());

    // Render document
    let document = typst::compile(&world)
        .output
        .expect("Error compiling typst");

    // Output to pdf
    let pdf = typst_pdf::pdf(&document, &PdfOptions::default()).expect("Error exporting PDF");
    fs::write("./output.pdf", pdf).expect("Error writing PDF.");
}

You can run the example above via cargo run --example readme


Acknowledgment

Code has been inspired by

About

Simple demo that demonstrates how to use typst as a library in Rust

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages