commit 6bd5263405340b00ddd14305f697f99240696cea Author: Georg Baum <b...@lyx.org> Date: Sat Jun 4 09:09:33 2016 +0200
Work around limited SVG support (bug #9778) Qt only supports SVG 1.2 tiny, so we prefer to convert on our own if an explicit converter is defined and the converter cache is used (otherwise the conversion would be too expensive). diff --git a/src/frontends/qt4/GuiApplication.cpp b/src/frontends/qt4/GuiApplication.cpp index 1513636..7d6ca0b 100644 --- a/src/frontends/qt4/GuiApplication.cpp +++ b/src/frontends/qt4/GuiApplication.cpp @@ -35,6 +35,7 @@ #include "BufferView.h" #include "CmdDef.h" #include "Color.h" +#include "Converter.h" #include "CutAndPaste.h" #include "ErrorList.h" #include "Font.h" @@ -246,6 +247,16 @@ vector<string> loadableImageFormats() if (jpeg_found) continue; } + else if (lyxrc.use_converter_cache && + (ext == "svg" || ext == "svgz") && + theConverters().isReachable("svg", "png")) + // Qt only supports SVG 1.2 tiny. See #9778. We prefer displaying + // the SVG as in the output. However we require that the converter + // cache is enabled since this is expensive. We also require that + // an explicit svg->png converter is defined, since the default + // converter could produce bad quality as well. This assumes that + // png can always be loaded. + continue; fmts.push_back(ext); }