INNER CODE UNIT · Rust
render_width
abenz1267/walker · src/preview/mod.rs:388
let render_width = ((width * render_scale) as i32).min(1600);
let render_height = ((height * render_scale) as i32).min(2400);
let estimated_size = (render_width * render_height * 4) as usize;
if estimated_size > 10 * 1024 * 1024 {
return Err("PDF page too large for preview".into());
}
let mut surface =
cairo::ImageSurface::create(cairo::Format::ARgb32, render_width, render_height)?;
let bytes = {
let ctx = cairo::Context::new(&surface)?;
ctx.set_antialias(cairo::Antialias::Best);
ctx.scale(render_scale, render_scale);
ctx.set_source_rgb(1.0, 1.0, 1.0);