From b561dfaf2ef73dff89f2c47c78ca68a533b49a4a Mon Sep 17 00:00:00 2001 From: Enrico Forestieri Date: Fri, 25 Sep 2020 21:25:40 +0200 Subject: [PATCH] Fix clipping for vector formats and when exporting from command line This amends ea81faa9 that only took into account the postscript format and did not consider that without GUI an image is not available even if if it is actually cached. In this case we load the image for obtaining its dimensions in order to correct the clipping bounding box. --- src/insets/InsetGraphics.cpp | 11 +++++++++-- status.23x | 3 +++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/insets/InsetGraphics.cpp b/src/insets/InsetGraphics.cpp index 88ee9a0320..cf5f9ac94b 100644 --- a/src/insets/InsetGraphics.cpp +++ b/src/insets/InsetGraphics.cpp @@ -93,6 +93,7 @@ TODO #include "support/Systemcall.h" #include +#include #include #include @@ -320,13 +321,13 @@ void InsetGraphics::outBoundingBox(graphics::BoundingBox & bbox) const FileName const file(params().filename.absFileName()); - // No correction is necessary for a postscript image + // No correction is necessary for a vector image bool const zipped = theFormats().isZippedFile(file); FileName const unzipped_file = zipped ? unzipFile(file) : file; string const format = theFormats().getFormatFromFile(unzipped_file); if (zipped) unzipped_file.removeFile(); - if (Formats::isPostScriptFileFormat(format)) + if (theFormats().getFormat(format)->vectorFormat()) return; // Get the actual image dimensions in pixels @@ -340,6 +341,12 @@ void InsetGraphics::outBoundingBox(graphics::BoundingBox & bbox) const height = image->height(); } } + // Even if cached, the image is not loaded without GUI + if (width == 0 && height == 0) { + QImage image(toqstr(file.absFileName())); + width = image.width(); + height = image.height(); + } if (width == 0 || height == 0) return; diff --git a/status.23x b/status.23x index 17fcf4c579..82b1f2a1c1 100644 --- a/status.23x +++ b/status.23x @@ -70,6 +70,9 @@ What's new - Fix output of titles in branches and other insets (follow-up to bug 11787). +- Fix clipping of vector images and when exporting from command line + (follow-up to bug 11180). + * USER INTERFACE -- 2.39.5