Fix #1348 (Covers for epub books reduced to half width)

This commit is contained in:
Kovid Goyal 2008-12-05 15:52:29 -08:00
parent 9f5bf522bd
commit 81726aa967

View File

@ -103,6 +103,8 @@ class OCFDirReader(OCFReader):
return open(os.path.join(self.root, path), *args, **kwargs) return open(os.path.join(self.root, path), *args, **kwargs)
class CoverRenderer(QObject): class CoverRenderer(QObject):
WIDTH = 1280
HEIGHT = 1024
def __init__(self, url, size, loop): def __init__(self, url, size, loop):
QObject.__init__(self) QObject.__init__(self)
@ -111,6 +113,9 @@ class CoverRenderer(QObject):
pal = self.page.palette() pal = self.page.palette()
pal.setBrush(QPalette.Background, Qt.white) pal.setBrush(QPalette.Background, Qt.white)
self.page.setPalette(pal) self.page.setPalette(pal)
self.page.setViewportSize(QSize(self.WIDTH, self.HEIGHT))
self.page.mainFrame().setScrollBarPolicy(Qt.Vertical, Qt.ScrollBarAlwaysOff)
self.page.mainFrame().setScrollBarPolicy(Qt.Horizontal, Qt.ScrollBarAlwaysOff)
QObject.connect(self.page, SIGNAL('loadFinished(bool)'), self.render_html) QObject.connect(self.page, SIGNAL('loadFinished(bool)'), self.render_html)
self.image_data = None self.image_data = None
self.rendered = False self.rendered = False
@ -122,7 +127,7 @@ class CoverRenderer(QObject):
if not ok: if not ok:
return return
size = self.page.mainFrame().contentsSize() size = self.page.mainFrame().contentsSize()
width, height = fit_image(size.width(), size.height(), 1280, 1024)[1:] width, height = fit_image(size.width(), size.height(), self.WIDTH, self.HEIGHT)[1:]
self.page.setViewportSize(QSize(width, height)) self.page.setViewportSize(QSize(width, height))
image = QImage(self.page.viewportSize(), QImage.Format_ARGB32) image = QImage(self.page.viewportSize(), QImage.Format_ARGB32)
image.setDotsPerMeterX(96*(100/2.54)) image.setDotsPerMeterX(96*(100/2.54))