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).
This commit is contained in:
Georg Baum 2016-06-04 09:09:33 +02:00
parent 73f33d67d7
commit 6bd5263405

View File

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