refactoring: use Document API getCoverPageImage to get cover image

This commit is contained in:
chrox
2014-08-27 11:07:25 +08:00
parent 40bddf0735
commit 0bc3eadcae
8 changed files with 130 additions and 170 deletions

View File

@@ -102,6 +102,10 @@ function DjvuDocument:getPageDimensions(pageno, zoom, rotation)
return self.koptinterface:getPageDimensions(self, pageno, zoom, rotation)
end
function DjvuDocument:getCoverPageImage()
return self.koptinterface:getCoverPageImage(self)
end
function DjvuDocument:renderPage(pageno, rect, zoom, rotation, gamma, render_mode)
return self.koptinterface:renderPage(self, pageno, rect, zoom, rotation, gamma, render_mode)
end

View File

@@ -212,6 +212,10 @@ function Document:getOCRWord(pageno, rect)
return nil
end
function Document:getCoverPageImage()
return nil
end
function Document:renderPage(pageno, rect, zoom, rotation, gamma, render_mode)
local hash = "renderpg|"..self.file.."|"..pageno.."|"..zoom.."|"..rotation.."|"..gamma.."|"..render_mode
local page_size = self:getPageDimensions(pageno, zoom, rotation)

View File

@@ -248,6 +248,16 @@ function KoptInterface:getRFPageDimensions(doc, pageno, zoom, rotation)
return Geom:new{ w = fullwidth, h = fullheight }
end
--[[
get first page image
--]]
function KoptInterface:getCoverPageImage(doc)
local tile = self:renderPage(doc, 1, nil, 1, 0, 1, 0)
if tile then
return tile.bb
end
end
function KoptInterface:renderPage(doc, pageno, rect, zoom, rotation, gamma, render_mode)
if doc.configurable.text_wrap == 1 then
return self:renderReflowedPage(doc, pageno, rect, zoom, rotation, render_mode)

View File

@@ -210,6 +210,10 @@ function PdfDocument:getPageDimensions(pageno, zoom, rotation)
return self.koptinterface:getPageDimensions(self, pageno, zoom, rotation)
end
function PdfDocument:getCoverPageImage()
return self.koptinterface:getCoverPageImage(self)
end
function PdfDocument:renderPage(pageno, rect, zoom, rotation, gamma, render_mode)
return self.koptinterface:renderPage(self, pageno, rect, zoom, rotation, gamma, render_mode)
end