1
0
mirror of https://github.com/ciromattia/kcc synced 2026-02-05 03:47:47 +00:00

Experimental support of Kindle Fire

This commit is contained in:
Paweł Jastrzębski
2013-04-29 17:19:06 +02:00
parent 148211a5c7
commit d9ea165bbb
2 changed files with 21 additions and 8 deletions

View File

@@ -342,17 +342,17 @@ def dirImgProcess(path):
facing = "left" facing = "left"
img0 = image.ComicPage(split[0], options.profile) img0 = image.ComicPage(split[0], options.profile)
applyImgOptimization(img0, True, toRight1) applyImgOptimization(img0, True, toRight1)
img0.saveToDir(dirpath, options.forcepng) img0.saveToDir(dirpath, options.forcepng, options.forcecolor)
img1 = image.ComicPage(split[1], options.profile) img1 = image.ComicPage(split[1], options.profile)
applyImgOptimization(img1, True, toRight2) applyImgOptimization(img1, True, toRight2)
img1.saveToDir(dirpath, options.forcepng) img1.saveToDir(dirpath, options.forcepng, options.forcecolor)
else: else:
if facing == "right": if facing == "right":
facing = "left" facing = "left"
else: else:
facing = "right" facing = "right"
applyImgOptimization(img) applyImgOptimization(img)
img.saveToDir(dirpath, options.forcepng) img.saveToDir(dirpath, options.forcepng, options.forcecolor)
def genEpubStruct(path): def genEpubStruct(path):
@@ -678,8 +678,14 @@ def checkOptions():
else: else:
#Virtual Panel View #Virtual Panel View
options.panelview = False options.panelview = False
if options.profile == 'K1' or options.profile == 'K2' or options.profile == 'KDX' or options.profile == 'KDXG': if options.profile == 'K1' or options.profile == 'K2' or options.profile == 'KDX' or options.profile == 'KDXG' or options.profile == 'KF' or options.profile == 'KFHD' or options.profile == 'KFHD8':
options.nopanelviewhq = True options.nopanelviewhq = True
if options.profile == 'KF' or options.profile == 'KFHD' or options.profile == 'KFHD8':
options.upscale = True
options.forcecolor = True
options.forcepng = False
else:
options.forcecolor = False
def getEpubPath(): def getEpubPath():

View File

@@ -84,7 +84,10 @@ class ProfileData:
'K4T': ("Kindle Touch", (600, 800), Palette16, 1.8, (900, 1200)), 'K4T': ("Kindle Touch", (600, 800), Palette16, 1.8, (900, 1200)),
'KHD': ("Kindle Paperwhite", (758, 1024), Palette16, 1.8, (1137, 1536)), 'KHD': ("Kindle Paperwhite", (758, 1024), Palette16, 1.8, (1137, 1536)),
'KDX': ("Kindle DX", (824, 1200), Palette15, 1.8, (1236, 1800)), 'KDX': ("Kindle DX", (824, 1200), Palette15, 1.8, (1236, 1800)),
'KDXG': ("Kindle DXG", (824, 1200), Palette16, 1.8, (1236, 1800)) 'KDXG': ("Kindle DXG", (824, 1200), Palette16, 1.8, (1236, 1800)),
'KF': ("Kindle Fire", (600, 1024), Palette16, 1.0, (900, 1536)),
'KFHD': ("Kindle Fire HD 7\"", (800, 1280), Palette16, 1.0, (1200, 1920)),
'KFHD8': ("Kindle Fire HD 8.9\"", (1200, 1920), Palette16, 1.0, (1800, 2880))
} }
ProfileLabels = { ProfileLabels = {
@@ -95,7 +98,10 @@ class ProfileData:
"Kindle 4/Touch": 'K4T', "Kindle 4/Touch": 'K4T',
"Kindle Paperwhite": 'KHD', "Kindle Paperwhite": 'KHD',
"Kindle DX": 'KDX', "Kindle DX": 'KDX',
"Kindle DXG": 'KDXG' "Kindle DXG": 'KDXG',
"Kindle Fire": 'KF',
"Kindle Fire HD 7\"": 'KFHD',
"Kindle Fire HD 8.9\"": 'KFHD8'
} }
@@ -113,10 +119,11 @@ class ComicPage:
raise RuntimeError('Cannot read image file %s' % source) raise RuntimeError('Cannot read image file %s' % source)
self.image = self.image.convert('RGB') self.image = self.image.convert('RGB')
def saveToDir(self, targetdir, forcepng): def saveToDir(self, targetdir, forcepng, color):
filename = os.path.basename(self.origFileName) filename = os.path.basename(self.origFileName)
try: try:
self.image = self.image.convert('L') # convert to grayscale if not color:
self.image = self.image.convert('L') # convert to grayscale
os.remove(os.path.join(targetdir, filename)) os.remove(os.path.join(targetdir, filename))
if forcepng: if forcepng:
self.image.save(os.path.join(targetdir, os.path.splitext(filename)[0] + ".png"), "PNG") self.image.save(os.path.join(targetdir, os.path.splitext(filename)[0] + ".png"), "PNG")