From 3cc29da208492a6aa894d99407ff1172c13e024f Mon Sep 17 00:00:00 2001 From: "Marshall T. Vandegrift" Date: Sat, 10 Jan 2009 10:26:35 -0500 Subject: [PATCH] Rasterize SVG covers to full profile size --- src/calibre/ebooks/oeb/transforms/rasterize.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/calibre/ebooks/oeb/transforms/rasterize.py b/src/calibre/ebooks/oeb/transforms/rasterize.py index 4ca2ccb856..260e9ba37a 100644 --- a/src/calibre/ebooks/oeb/transforms/rasterize.py +++ b/src/calibre/ebooks/oeb/transforms/rasterize.py @@ -52,6 +52,9 @@ class SVGRasterizer(object): size.setHeight(box[3] - box[1]) if width or height: size.scale(width, height, Qt.KeepAspectRatio) + logger = self.oeb.logger + logger.info('Rasterizing %r to %dx%d' + % (elem, size.width(), size.height())) image = QImage(size, QImage.Format_ARGB32_Premultiplied) image.fill(QColor("white").rgb()) painter = QPainter(image) @@ -180,9 +183,9 @@ class SVGRasterizer(object): cover = self.oeb.manifest.ids[str(covers[0])] if not cover.media_type == SVG_MIME: return - logger = self.oeb.logger - logger.info('Rasterizing %r to %dx%d' % (cover.href, 600, 800)) - data = self.rasterize_svg(cover.data, 600, 800) + width = (self.profile.width / 72) * self.profile.dpi + height = (self.profile.height / 72) * self.profile.dpi + data = self.rasterize_svg(cover.data, width, height) href = os.path.splitext(cover.href)[0] + '.png' id, href = self.oeb.manifest.generate(cover.id, href) self.oeb.manifest.add(id, href, PNG_MIME, data=data)