summaryrefslogtreecommitdiffstats
path: root/src/extension/internal/image-resolution.cpp
diff options
context:
space:
mode:
authorSebastian Wüst <sebi@timewaster.de>2013-10-28 17:23:42 +0000
committerSebastian Wüst <sebi@timewaster.de>2013-10-28 17:23:42 +0000
commitc6ad2a34d38795059888d3c900dbf1047bfd5fdd (patch)
tree88de58a63003bd2ea6edda9c895d3c0466a38e6b /src/extension/internal/image-resolution.cpp
parenttext change (diff)
parentFix for bug #1156394 (OCAL dialog: Close button in German localization contai... (diff)
downloadinkscape-c6ad2a34d38795059888d3c900dbf1047bfd5fdd.tar.gz
inkscape-c6ad2a34d38795059888d3c900dbf1047bfd5fdd.zip
mrege from trunk
(bzr r12417.1.31)
Diffstat (limited to 'src/extension/internal/image-resolution.cpp')
-rw-r--r--src/extension/internal/image-resolution.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/extension/internal/image-resolution.cpp b/src/extension/internal/image-resolution.cpp
index b38b0ddc7..865e86698 100644
--- a/src/extension/internal/image-resolution.cpp
+++ b/src/extension/internal/image-resolution.cpp
@@ -342,9 +342,16 @@ void ImageResolution::readmagick(char const *fn) {
image.read(fn);
} catch (...) {}
Magick::Geometry geo = image.density();
+ std::string type = image.magick();
+
+ if (type == "PNG") { // PNG only supports pixelspercentimeter
+ x_ = Inkscape::Util::Quantity::convert((double)geo.width(), "in", "cm");
+ y_ = Inkscape::Util::Quantity::convert((double)geo.height(), "in", "cm");
+ } else {
+ x_ = (double)geo.width();
+ y_ = (double)geo.height();
+ }
- x_ = Inkscape::Util::Quantity::convert((double)geo.width(), "pt", "px");
- y_ = Inkscape::Util::Quantity::convert((double)geo.height(), "pt", "px");
ok_ = true;
}