#1280 print: ignore undecodable pages

This commit is contained in:
Thibault Deckers 2024-11-12 18:58:41 +01:00
parent d83537f774
commit e7ec41b8d5
2 changed files with 28 additions and 14 deletions

View file

@ -4,6 +4,16 @@ All notable changes to this project will be documented in this file.
## <a id="unreleased"></a>[Unreleased]
### Changed
- Albums: improved album creation feedback
### Fixed
- crash when playing video with DCL restriction enabled
- printing multi-page items containing some unprintable pages
- English (Shavian) locale tags for store listing
## <a id="v1.11.17"></a>[v1.11.17] - 2024-10-30
### Added

View file

@ -105,23 +105,27 @@ class EntryPrinter with FeedbackMixin {
}
Future<pdf.Widget?> _buildPageImage(AvesEntry entry) async {
if (entry.isSvg) {
final data = await mediaFetchService.getSvg(
entry.uri,
entry.mimeType,
sizeBytes: entry.sizeBytes,
);
if (data.isNotEmpty) {
return pdf.SvgImage(
svg: utf8.decode(data),
try {
if (entry.isSvg) {
final data = await mediaFetchService.getSvg(
entry.uri,
entry.mimeType,
sizeBytes: entry.sizeBytes,
);
if (data.isNotEmpty) {
return pdf.SvgImage(
svg: utf8.decode(data),
fit: _fit,
);
}
} else {
return pdf.Image(
await flutterImageProvider(entry.uriImage),
fit: _fit,
);
}
} else {
return pdf.Image(
await flutterImageProvider(entry.uriImage),
fit: _fit,
);
} catch (error) {
debugPrint('failed to load image for entry=$entry, error=$error');
}
return null;
}