Calibreは私のEpubの本をMobiに変換しませんでした。次のエラーにより中断されます。
TypeError: QPixmap(): argument 1 has unexpected type 'ImageView'
完全なエラーメッセージは次のとおりです。
calibre 2.20 isfrozen: False is64bit: True
Linux-3.18.6-1-ARCH-x86_64-with-glibc2.2.5 Linux ('64bit', 'ELF')
('Linux', '3.18.6-1-ARCH', '#1 SMP PREEMPT Sat Feb 7 08:44:05 CET 2015')
Python 2.7.9
Linux: ('', '', '')
Traceback (most recent call last):
File "/usr/lib/calibre/calibre/gui2/device.py", line 1257, in dispatch_sync_event
self.sync_to_device(on_card, delete, fmt)
File "/usr/lib/calibre/calibre/gui2/device.py", line 1531, in sync_to_device
self.iactions['Convert Books'].auto_convert(auto, on_card, format)
File "/usr/lib/calibre/calibre/gui2/actions/convert.py", line 76, in auto_convert
jobs, changed, bad = convert_single_ebook(self.gui, self.gui.library_view.model().db, book_ids, True, format)
File "/usr/lib/calibre/calibre/gui2/tools.py", line 41, in convert_single_ebook
d = SingleConfig(parent, db, book_id, None, out_format)
File "/usr/lib/calibre/calibre/gui2/convert/single.py", line 151, in __init__
self.setup_pipeline()
File "/usr/lib/calibre/calibre/gui2/convert/single.py", line 201, in setup_pipeline
self.mw = widget_factory(MetadataWidget)
File "/usr/lib/calibre/calibre/gui2/convert/single.py", line 199, in widget_factory
self.plumber.get_option_help, self.db, self.book_id)
File "/usr/lib/calibre/calibre/gui2/convert/metadata.py", line 55, in __init__
Widget.__init__(self, parent, ['prefer_metadata_cover'])
File "/usr/lib/calibre/calibre/gui2/convert/__init__.py", line 62, in __init__
self.setupUi(self)
File "/usr/lib/calibre/calibre/gui2/convert/metadata_ui.py", line 51, in setupUi
self.cover = ImageView(self.groupBox_4)
File "/usr/lib/calibre/calibre/gui2/widgets.py", line 298, in __init__
self._pixmap = QPixmap(self)
TypeError: QPixmap(): argument 1 has unexpected type 'ImageView'
私はArchlinuxとCalibreバージョン2.20を使用しています。
答え1
正式な修正が行われ、非常に簡単です。https://github.com/kovidgoyal/calibre/commit/72d47ba9377d70e786bf3d93b323544188c894bd
私はその違いに基づいて私のシステムで/usr/lib/calibre/calibre/gui2/widgets.pyを編集し、すべてがうまくいきました。
答え2
一時的な回避策は、/usr/lib/calibre/calibre/gui2/widgets.pyの298行を変更してwidgets.py[co]を削除することです。
self._pixmap = QPixmap(self.grab())
ダイアログボックスを開こうとすると、エラーメッセージが表示されますが、メッセージが表示された後にウィンドウが開き、メタデータの編集とeBook変換の両方が機能します。