feat: Zoom bis 1000 %, PDF-Seiten beim Hineinzoomen schärfer

Höchster Zoom 1000 % statt 500 % (Issue #1). Importierte PDF-Seiten werden
mit doppelter Auflösung nachgerendert, sobald die Standardauflösung
sichtbar vergrößert würde; bis dahin bleibt sie als Ersatz sichtbar.
Texte werden bis 8 Pixel je Einheit gerastert.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-08 07:59:27 +02:00
co-authored by Claude Opus 5.5
parent 6002eee9e8
commit 392c22bc4a
6 changed files with 94 additions and 25 deletions
+7 -5
View File
@@ -507,17 +507,19 @@ fn texture_for(
assets: &AssetStore,
pdf_renderer: &mut PdfRenderService,
) -> TextureSource {
let result = match key.split_once('#') {
Some((asset, page)) => {
let (Ok(path), Ok(page)) = (assets.path_of(asset), page.parse::<usize>()) else {
let result = match key.contains('#') {
true => {
let Some((Ok(path), page, max_pixels)) = ink_notes::pdf_doc::parse_page_key(key)
.map(|(asset, page, px)| (assets.path_of(asset), page, px))
else {
return TextureSource::Failed(format!("Ungültiger PDF-Verweis '{key}'"));
};
match pdf_renderer.take(key, path, page) {
match pdf_renderer.take(key, path, page, max_pixels) {
Some(result) => result,
None => return TextureSource::Pending,
}
}
None => assets
false => assets
.load_rgba(key, ink_notes::assets::MAX_DISPLAY_DIMENSION)
.map_err(|e| e.to_string()),
};