mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-08 18:54:09 -04:00
Remove IM from the metadata subsystem
This commit is contained in:
parent
5593a1af48
commit
0ae69c8f96
@ -13,7 +13,7 @@ from lxml import etree
|
||||
|
||||
from calibre.ebooks.docx.container import DOCX
|
||||
from calibre.ebooks.docx.writer.container import update_doc_props, xml2str
|
||||
from calibre.utils.magick.draw import identify_data
|
||||
from calibre.utils.imghdr import identify
|
||||
|
||||
def get_cover(docx):
|
||||
doc = docx.document
|
||||
@ -26,7 +26,7 @@ def get_cover(docx):
|
||||
if rid in rid_map:
|
||||
try:
|
||||
raw = docx.read(rid_map[rid])
|
||||
width, height, fmt = identify_data(raw)
|
||||
fmt, width, height = identify(bytes(raw))
|
||||
except Exception:
|
||||
continue
|
||||
if 0.8 <= height/width <= 1.8 and height*width >= 160000:
|
||||
|
@ -247,7 +247,7 @@ def get_quick_metadata(stream):
|
||||
return get_metadata(stream, False)
|
||||
|
||||
def _write_new_cover(new_cdata, cpath):
|
||||
from calibre.utils.magick.draw import save_cover_data_to
|
||||
from calibre.utils.img import save_cover_data_to
|
||||
new_cover = PersistentTemporaryFile(suffix=os.path.splitext(cpath)[1])
|
||||
new_cover.close()
|
||||
save_cover_data_to(new_cdata, new_cover.name)
|
||||
@ -317,7 +317,7 @@ def set_metadata(stream, mi, apply_null=False, update_timestamp=False, force_ide
|
||||
if cover_replacable:
|
||||
new_cover = _write_new_cover(new_cdata, cpath)
|
||||
replacements[cpath] = open(new_cover.name, 'rb')
|
||||
except:
|
||||
except Exception:
|
||||
import traceback
|
||||
traceback.print_exc()
|
||||
|
||||
|
@ -98,7 +98,7 @@ def get_first_opf_name(zf):
|
||||
return opfs[0]
|
||||
|
||||
def _write_new_cover(new_cdata, cpath):
|
||||
from calibre.utils.magick.draw import save_cover_data_to
|
||||
from calibre.utils.img import save_cover_data_to
|
||||
new_cover = PersistentTemporaryFile(suffix=os.path.splitext(cpath)[1])
|
||||
new_cover.close()
|
||||
save_cover_data_to(new_cdata, new_cover.name)
|
||||
|
@ -13,7 +13,8 @@ from base64 import b64encode
|
||||
from lxml import etree
|
||||
|
||||
from calibre.utils.date import parse_only_date
|
||||
from calibre.utils.magick.draw import save_cover_data_to, identify_data
|
||||
from calibre.utils.img import save_cover_data_to
|
||||
from calibre.utils.imghdr import identify
|
||||
from calibre import guess_type, guess_all_extensions, prints, force_unicode
|
||||
from calibre.ebooks.metadata import MetaInformation, check_isbn
|
||||
from calibre.ebooks.chardet import xml_to_unicode
|
||||
@ -211,7 +212,7 @@ def _parse_cover_data(root, imgid, mi, ctx):
|
||||
pic_data = elm_binary[0].text
|
||||
if pic_data:
|
||||
cdata = base64_decode(pic_data.strip())
|
||||
fmt = identify_data(cdata)[-1]
|
||||
fmt = identify(bytes(cdata))[0]
|
||||
mi.cover_data = (fmt, cdata)
|
||||
else:
|
||||
prints("WARNING: Unsupported coverpage mime-type '%s' (id=#%s)" % (mimetype, imgid))
|
||||
@ -342,7 +343,7 @@ def _rnd_pic_file_name(prefix='calibre_cover_', size=32, ext='jpg'):
|
||||
return prefix + _rnd_name(size=size) + '.' + ext
|
||||
|
||||
def _encode_into_jpeg(data):
|
||||
data = save_cover_data_to(data, 'cover.jpg', return_data=True)
|
||||
data = save_cover_data_to(data)
|
||||
return b64encode(data)
|
||||
|
||||
def _set_cover(title_info, mi, ctx):
|
||||
|
@ -467,7 +467,7 @@ def get_metadata(stream):
|
||||
from calibre.ptempfile import TemporaryDirectory
|
||||
from calibre.ebooks.mobi.reader.headers import MetadataHeader
|
||||
from calibre.ebooks.mobi.reader.mobi6 import MobiReader
|
||||
from calibre.utils.magick.draw import save_cover_data_to
|
||||
from calibre.utils.img import save_cover_data_to
|
||||
from calibre import CurrentDir
|
||||
|
||||
stream.seek(0)
|
||||
@ -517,7 +517,7 @@ def get_metadata(stream):
|
||||
data = ''
|
||||
if data and what(None, data) in {'jpg', 'jpeg', 'gif', 'png', 'bmp', 'webp'}:
|
||||
try:
|
||||
mi.cover_data = ('jpg', save_cover_data_to(data, 'cover.jpg', return_data=True))
|
||||
mi.cover_data = ('jpg', save_cover_data_to(data))
|
||||
except Exception:
|
||||
log.exception('Failed to read MOBI cover')
|
||||
return mi
|
||||
|
@ -30,7 +30,7 @@ from odf.opendocument import load as odLoad
|
||||
from odf.draw import Image as odImage, Frame as odFrame
|
||||
|
||||
from calibre.ebooks.metadata import MetaInformation, string_to_authors, check_isbn
|
||||
from calibre.utils.magick.draw import identify_data
|
||||
from calibre.utils.img import identify
|
||||
from calibre.utils.date import parse_date
|
||||
from calibre.utils.localization import canonicalize_lang
|
||||
|
||||
@ -236,8 +236,8 @@ def read_cover(stream, zin, mi, opfmeta, extract_cover):
|
||||
except KeyError:
|
||||
continue
|
||||
try:
|
||||
width, height, fmt = identify_data(raw)
|
||||
except:
|
||||
fmt, width, height = identify(bytes(raw))
|
||||
except Exception:
|
||||
continue
|
||||
imgnum += 1
|
||||
if opfmeta and frm.getAttribute('name').lower() == u'opf.cover':
|
||||
@ -259,8 +259,8 @@ def read_cover(stream, zin, mi, opfmeta, extract_cover):
|
||||
if not cover_data:
|
||||
raw = zin.read(cover_href)
|
||||
try:
|
||||
width, height, fmt = identify_data(raw)
|
||||
except:
|
||||
fmt, width, height = identify(bytes(raw))
|
||||
except Exception:
|
||||
pass
|
||||
else:
|
||||
cover_data = (fmt, raw)
|
||||
|
Loading…
x
Reference in New Issue
Block a user