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);
        }
 

Reply via email to