diff --git a/gui/KCC.ui b/gui/KCC.ui
index 205a76b..431873f 100644
--- a/gui/KCC.ui
+++ b/gui/KCC.ui
@@ -7,7 +7,7 @@
0
0
566
- 581
+ 658
@@ -22,6 +22,483 @@
5
+ -
+
+
+
+ 0
+ 30
+
+
+
+
+ true
+
+
+
+ false
+
+
+ Qt::AlignmentFlag::AlignJustify|Qt::AlignmentFlag::AlignVCenter
+
+
+
+ -
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
-
+
+
+
+ 0
+ 30
+
+
+
+ <html><head/><body><p style='white-space:pre'>Shift+Click to edit directory.</p></body></html>
+
+
+ Metadata Editor
+
+
+
+ :/Other/icons/editor.png:/Other/icons/editor.png
+
+
+
+ -
+
+
+
+ 0
+ 30
+
+
+
+ Support me on Ko-fi
+
+
+
+ :/Brand/icons/kofi_symbol.png:/Brand/icons/kofi_symbol.png
+
+
+
+ 19
+ 16
+
+
+
+
+ -
+
+
+
+ 0
+ 30
+
+
+
+ Wiki
+
+
+
+ :/Other/icons/wiki.png:/Other/icons/wiki.png
+
+
+
+
+
+
+ -
+
+
+ false
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
-
+
+
+ 300
+
+
+ 1
+
+
+ Qt::Orientation::Horizontal
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ 99
+
+
+ 5
+
+
+ 0
+
+
+
+ -
+
+
+ <html><head/><body><p>After calculating the cropping boundaries, "back up" a specified percentage amount.</p></body></html>
+
+
+ Preserve Margin %
+
+
+
+ -
+
+
+ Cropping power:
+
+
+
+
+
+
+ -
+
+
+ false
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
-
+
+
+
+ 0
+ 0
+
+
+
+ <html><head/><body><p style='white-space:pre'>Resolution of the target device.</p></body></html>
+
+
+ Custom height:
+
+
+
+ -
+
+
+ <html><head/><body><p style='white-space:pre'>Resolution of the target device.</p></body></html>
+
+
+ 6000
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ <html><head/><body><p style='white-space:pre'>Resolution of the target device.</p></body></html>
+
+
+ Custom width:
+
+
+
+ -
+
+
+ <html><head/><body><p style='white-space:pre'>Resolution of the target device.</p></body></html>
+
+
+ 8000
+
+
+
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
-
+
+
+
+ 0
+ 30
+
+
+
+
+ true
+
+
+
+ <html><head/><body><p style='white-space:pre'>Shift+Click to select the output directory for this list.</p></body></html>
+
+
+ Convert
+
+
+
+ :/Other/icons/convert.png:/Other/icons/convert.png
+
+
+
+ -
+
+
+
+ 0
+ 30
+
+
+
+ Clear list
+
+
+
+ :/Other/icons/clear.png:/Other/icons/clear.png
+
+
+
+ -
+
+
+
+ 0
+ 28
+
+
+
+ <html><head/><body><p style='white-space:pre'>Target device.</p></body></html>
+
+
+
+ -
+
+
+
+ 0
+ 30
+
+
+
+ <html><head/><body><p style='white-space:pre'>Add CBR, CBZ, CB7 or PDF file to queue.</p></body></html>
+
+
+ Add input file(s)
+
+
+
+ :/Other/icons/document_new.png:/Other/icons/document_new.png
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ <html><head/><body><p style='white-space:pre'>Add directory containing JPG, PNG or GIF files to queue.<br/><span style=" font-weight:600;">CBR, CBZ and CB7 files inside will not be processed!</span></p></body></html>
+
+
+ Add input folder(s)
+
+
+
+ :/Other/icons/folder_new.png:/Other/icons/folder_new.png
+
+
+
+ -
+
+
+
+ 0
+ 28
+
+
+
+ <html><head/><body><p style='white-space:pre'>Output format.</p></body></html>
+
+
+
+
+ clearButton
+ deviceBox
+ convertButton
+ fileButton
+ directoryButton
+ formatBox
+
+
+ -
+
+
+
+ 0
+ 150
+
+
+
+ <html><head/><body><p>Double click on source to open it in metadata editor.</p></body></html>
+
+
+
+
+
+ QAbstractItemView::SelectionMode::NoSelection
+
+
+ QAbstractItemView::ScrollMode::ScrollPerPixel
+
+
+ QAbstractItemView::ScrollMode::ScrollPerPixel
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ false
+
+
+ <html><head/><body><p>Warning: chunk size greater than default may cause<br/>performance/battery issues, especially on older devices.</p></body></html>
+
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
+ 0
+
+
-
+
+
+
+ 0
+ 0
+
+
+
+ Chunk size MB:
+
+
+
+ -
+
+
+ 100
+
+
+ 600
+
+
+ 400
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+ Greater than default may cause performance issues on older ereaders.
+
+
+
+
+
+
-
@@ -393,101 +870,17 @@
-
-
-
- -
-
-
-
- 0
- 150
-
-
-
- <html><head/><body><p>Double click on source to open it in metadata editor.</p></body></html>
-
-
-
-
-
- QAbstractItemView::SelectionMode::NoSelection
-
-
- QAbstractItemView::ScrollMode::ScrollPerPixel
-
-
- QAbstractItemView::ScrollMode::ScrollPerPixel
-
-
-
- -
-
-
- false
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
-
-
- 0
- 0
-
-
+
-
+
- <html><head/><body><p style='white-space:pre'>Resolution of the target device.</p></body></html>
+ The JPEG quality, on a scale from 0 (worst) to 95 (best).
+
+Default is 85 for most devices besides Kindle Scribe and Colorsoft, which are 90.
+
+Higher values are larger and higher quality, and may resolve blank page issues.
- Custom height:
-
-
-
- -
-
-
- <html><head/><body><p style='white-space:pre'>Resolution of the target device.</p></body></html>
-
-
- 6000
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- <html><head/><body><p style='white-space:pre'>Resolution of the target device.</p></body></html>
-
-
- Custom width:
-
-
-
- -
-
-
- <html><head/><body><p style='white-space:pre'>Resolution of the target device.</p></body></html>
-
-
- 8000
+ Custom JPEG Quality
@@ -535,9 +928,18 @@
- -
-
-
+
-
+
+
+
+ 0
+ 0
+
+
+
+ false
+
+
0
@@ -551,363 +953,22 @@
0
-
-
-
-
- 0
- 30
-
-
-
- <html><head/><body><p style='white-space:pre'>Shift+Click to edit directory.</p></body></html>
-
+
- Metadata Editor
-
-
-
- :/Other/icons/editor.png:/Other/icons/editor.png
+ JPEG Quality:
-
-
-
-
- 0
- 30
-
-
-
- Support me on Ko-fi
-
-
-
- :/Brand/icons/kofi_symbol.png:/Brand/icons/kofi_symbol.png
-
-
-
- 19
- 16
-
-
-
-
- -
-
-
-
- 0
- 30
-
-
-
- Wiki
-
-
-
- :/Other/icons/wiki.png:/Other/icons/wiki.png
-
-
-
-
-
-
- -
-
-
-
- 0
- 30
-
-
-
-
- true
-
-
-
- false
-
-
- Qt::AlignmentFlag::AlignJustify|Qt::AlignmentFlag::AlignVCenter
-
-
-
- -
-
-
- false
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
-
- <html><head/><body><p>After calculating the cropping boundaries, "back up" a specified percentage amount.</p></body></html>
-
-
- Preserve Margin %
-
-
-
- -
-
-
- Cropping power:
-
-
-
- -
-
+
- 300
-
-
- 1
-
-
- Qt::Orientation::Horizontal
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- 99
+ 95
5
- 0
-
-
-
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
-
-
- 0
- 30
-
-
-
-
- true
-
-
-
- <html><head/><body><p style='white-space:pre'>Shift+Click to select the output directory for this list.</p></body></html>
-
-
- Convert
-
-
-
- :/Other/icons/convert.png:/Other/icons/convert.png
-
-
-
- -
-
-
-
- 0
- 30
-
-
-
- Clear list
-
-
-
- :/Other/icons/clear.png:/Other/icons/clear.png
-
-
-
- -
-
-
-
- 0
- 28
-
-
-
- <html><head/><body><p style='white-space:pre'>Target device.</p></body></html>
-
-
-
- -
-
-
-
- 0
- 30
-
-
-
- <html><head/><body><p style='white-space:pre'>Add CBR, CBZ, CB7 or PDF file to queue.</p></body></html>
-
-
- Add input file(s)
-
-
-
- :/Other/icons/document_new.png:/Other/icons/document_new.png
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- <html><head/><body><p style='white-space:pre'>Add directory containing JPG, PNG or GIF files to queue.<br/><span style=" font-weight:600;">CBR, CBZ and CB7 files inside will not be processed!</span></p></body></html>
-
-
- Add input folder(s)
-
-
-
- :/Other/icons/folder_new.png:/Other/icons/folder_new.png
-
-
-
- -
-
-
-
- 0
- 28
-
-
-
- <html><head/><body><p style='white-space:pre'>Output format.</p></body></html>
-
-
-
-
- clearButton
- deviceBox
- convertButton
- fileButton
- directoryButton
- formatBox
-
-
- -
-
-
-
- 0
- 0
-
-
-
- false
-
-
- <html><head/><body><p>Warning: chunk size greater than default may cause<br/>performance/battery issues, especially on older devices.</p></body></html>
-
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
- 0
-
-
-
-
-
-
- 0
- 0
-
-
-
- Chunk size MB:
-
-
-
- -
-
-
- 100
-
-
- 600
-
-
- 400
-
-
-
- -
-
-
-
- 0
- 0
-
-
-
- Greater than default may cause performance issues on older ereaders.
+ 85
diff --git a/kindlecomicconverter/KCC_gui.py b/kindlecomicconverter/KCC_gui.py
index 186ed93..f17d13a 100644
--- a/kindlecomicconverter/KCC_gui.py
+++ b/kindlecomicconverter/KCC_gui.py
@@ -347,6 +347,8 @@ class WorkerThread(QThread):
options.forcepng = True
elif GUI.mozJpegBox.checkState() == Qt.CheckState.Checked:
options.mozjpeg = True
+ if GUI.jpegQualityBox.isChecked():
+ options.jpegquality = GUI.jpegQualitySpinBox.value()
if GUI.currentMode > 2:
options.customwidth = str(GUI.widthBox.value())
options.customheight = str(GUI.heightBox.value())
@@ -742,6 +744,12 @@ class KCCGUI(KCC_ui.Ui_mainWindow):
GUI.croppingWidget.setVisible(False)
self.changeCroppingPower(100) # 1.0
+ def togglejpegqualityBox(self, value):
+ if value:
+ GUI.jpegQualityWidget.setVisible(True)
+ else:
+ GUI.jpegQualityWidget.setVisible(False)
+
def togglewebtoonBox(self, value):
if value:
self.addMessage('You can choose a taller device profile to get taller cuts in webtoon mode.', 'info')
@@ -1026,6 +1034,7 @@ class KCCGUI(KCC_ui.Ui_mainWindow):
'disableProcessingBox': GUI.disableProcessingBox.checkState(),
'metadataTitleBox': GUI.metadataTitleBox.checkState(),
'mozJpegBox': GUI.mozJpegBox.checkState(),
+ 'jpegQualityBox': GUI.jpegQualityBox.checkState(),
'widthBox': GUI.widthBox.value(),
'heightBox': GUI.heightBox.value(),
'deleteBox': GUI.deleteBox.checkState(),
@@ -1354,6 +1363,7 @@ class KCCGUI(KCC_ui.Ui_mainWindow):
GUI.gammaBox.stateChanged.connect(self.togglegammaBox)
GUI.croppingBox.stateChanged.connect(self.togglecroppingBox)
GUI.croppingPowerSlider.valueChanged.connect(self.changeCroppingPower)
+ GUI.jpegQualityBox.stateChanged.connect(self.togglejpegqualityBox)
GUI.webtoonBox.stateChanged.connect(self.togglewebtoonBox)
GUI.qualityBox.stateChanged.connect(self.togglequalityBox)
GUI.mozJpegBox.stateChanged.connect(self.toggleImageFormatBox)
diff --git a/kindlecomicconverter/KCC_ui.py b/kindlecomicconverter/KCC_ui.py
index 9cdd2d6..daa5092 100644
--- a/kindlecomicconverter/KCC_ui.py
+++ b/kindlecomicconverter/KCC_ui.py
@@ -26,7 +26,7 @@ class Ui_mainWindow(object):
def setupUi(self, mainWindow):
if not mainWindow.objectName():
mainWindow.setObjectName(u"mainWindow")
- mainWindow.resize(566, 581)
+ mainWindow.resize(566, 658)
icon = QIcon()
icon.addFile(u":/Icon/icons/comic2ebook.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
mainWindow.setWindowIcon(icon)
@@ -35,6 +35,253 @@ class Ui_mainWindow(object):
self.gridLayout = QGridLayout(self.centralWidget)
self.gridLayout.setObjectName(u"gridLayout")
self.gridLayout.setContentsMargins(-1, -1, -1, 5)
+ self.progressBar = QProgressBar(self.centralWidget)
+ self.progressBar.setObjectName(u"progressBar")
+ self.progressBar.setMinimumSize(QSize(0, 30))
+ font = QFont()
+ font.setBold(True)
+ self.progressBar.setFont(font)
+ self.progressBar.setVisible(False)
+ self.progressBar.setAlignment(Qt.AlignmentFlag.AlignJustify|Qt.AlignmentFlag.AlignVCenter)
+
+ self.gridLayout.addWidget(self.progressBar, 1, 0, 1, 2)
+
+ self.toolWidget = QWidget(self.centralWidget)
+ self.toolWidget.setObjectName(u"toolWidget")
+ self.horizontalLayout = QHBoxLayout(self.toolWidget)
+ self.horizontalLayout.setObjectName(u"horizontalLayout")
+ self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
+ self.editorButton = QPushButton(self.toolWidget)
+ self.editorButton.setObjectName(u"editorButton")
+ self.editorButton.setMinimumSize(QSize(0, 30))
+ icon1 = QIcon()
+ icon1.addFile(u":/Other/icons/editor.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
+ self.editorButton.setIcon(icon1)
+
+ self.horizontalLayout.addWidget(self.editorButton)
+
+ self.kofiButton = QPushButton(self.toolWidget)
+ self.kofiButton.setObjectName(u"kofiButton")
+ self.kofiButton.setMinimumSize(QSize(0, 30))
+ icon2 = QIcon()
+ icon2.addFile(u":/Brand/icons/kofi_symbol.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
+ self.kofiButton.setIcon(icon2)
+ self.kofiButton.setIconSize(QSize(19, 16))
+
+ self.horizontalLayout.addWidget(self.kofiButton)
+
+ self.wikiButton = QPushButton(self.toolWidget)
+ self.wikiButton.setObjectName(u"wikiButton")
+ self.wikiButton.setMinimumSize(QSize(0, 30))
+ icon3 = QIcon()
+ icon3.addFile(u":/Other/icons/wiki.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
+ self.wikiButton.setIcon(icon3)
+
+ self.horizontalLayout.addWidget(self.wikiButton)
+
+
+ self.gridLayout.addWidget(self.toolWidget, 0, 0, 1, 2)
+
+ self.croppingWidget = QWidget(self.centralWidget)
+ self.croppingWidget.setObjectName(u"croppingWidget")
+ self.croppingWidget.setVisible(False)
+ self.gridLayout_5 = QGridLayout(self.croppingWidget)
+ self.gridLayout_5.setObjectName(u"gridLayout_5")
+ self.gridLayout_5.setContentsMargins(0, 0, 0, 0)
+ self.croppingPowerSlider = QSlider(self.croppingWidget)
+ self.croppingPowerSlider.setObjectName(u"croppingPowerSlider")
+ self.croppingPowerSlider.setMaximum(300)
+ self.croppingPowerSlider.setSingleStep(1)
+ self.croppingPowerSlider.setOrientation(Qt.Orientation.Horizontal)
+
+ self.gridLayout_5.addWidget(self.croppingPowerSlider, 0, 1, 1, 1)
+
+ self.preserveMarginBox = QSpinBox(self.croppingWidget)
+ self.preserveMarginBox.setObjectName(u"preserveMarginBox")
+ sizePolicy = QSizePolicy(QSizePolicy.Policy.Fixed, QSizePolicy.Policy.Fixed)
+ sizePolicy.setHorizontalStretch(0)
+ sizePolicy.setVerticalStretch(0)
+ sizePolicy.setHeightForWidth(self.preserveMarginBox.sizePolicy().hasHeightForWidth())
+ self.preserveMarginBox.setSizePolicy(sizePolicy)
+ self.preserveMarginBox.setMaximum(99)
+ self.preserveMarginBox.setSingleStep(5)
+ self.preserveMarginBox.setValue(0)
+
+ self.gridLayout_5.addWidget(self.preserveMarginBox, 1, 1, 1, 1)
+
+ self.preserveMarginLabel = QLabel(self.croppingWidget)
+ self.preserveMarginLabel.setObjectName(u"preserveMarginLabel")
+
+ self.gridLayout_5.addWidget(self.preserveMarginLabel, 1, 0, 1, 1)
+
+ self.croppingPowerLabel = QLabel(self.croppingWidget)
+ self.croppingPowerLabel.setObjectName(u"croppingPowerLabel")
+
+ self.gridLayout_5.addWidget(self.croppingPowerLabel, 0, 0, 1, 1)
+
+
+ self.gridLayout.addWidget(self.croppingWidget, 9, 0, 1, 2)
+
+ self.customWidget = QWidget(self.centralWidget)
+ self.customWidget.setObjectName(u"customWidget")
+ self.customWidget.setVisible(False)
+ self.gridLayout_3 = QGridLayout(self.customWidget)
+ self.gridLayout_3.setObjectName(u"gridLayout_3")
+ self.gridLayout_3.setContentsMargins(0, 0, 0, 0)
+ self.hLabel = QLabel(self.customWidget)
+ self.hLabel.setObjectName(u"hLabel")
+ sizePolicy1 = QSizePolicy(QSizePolicy.Policy.Fixed, QSizePolicy.Policy.Preferred)
+ sizePolicy1.setHorizontalStretch(0)
+ sizePolicy1.setVerticalStretch(0)
+ sizePolicy1.setHeightForWidth(self.hLabel.sizePolicy().hasHeightForWidth())
+ self.hLabel.setSizePolicy(sizePolicy1)
+
+ self.gridLayout_3.addWidget(self.hLabel, 0, 2, 1, 1)
+
+ self.widthBox = QSpinBox(self.customWidget)
+ self.widthBox.setObjectName(u"widthBox")
+ self.widthBox.setMaximum(6000)
+
+ self.gridLayout_3.addWidget(self.widthBox, 0, 1, 1, 1)
+
+ self.wLabel = QLabel(self.customWidget)
+ self.wLabel.setObjectName(u"wLabel")
+ sizePolicy1.setHeightForWidth(self.wLabel.sizePolicy().hasHeightForWidth())
+ self.wLabel.setSizePolicy(sizePolicy1)
+
+ self.gridLayout_3.addWidget(self.wLabel, 0, 0, 1, 1)
+
+ self.heightBox = QSpinBox(self.customWidget)
+ self.heightBox.setObjectName(u"heightBox")
+ self.heightBox.setMaximum(8000)
+
+ self.gridLayout_3.addWidget(self.heightBox, 0, 3, 1, 1)
+
+
+ self.gridLayout.addWidget(self.customWidget, 8, 0, 1, 2)
+
+ self.buttonWidget = QWidget(self.centralWidget)
+ self.buttonWidget.setObjectName(u"buttonWidget")
+ sizePolicy2 = QSizePolicy(QSizePolicy.Policy.Preferred, QSizePolicy.Policy.Fixed)
+ sizePolicy2.setHorizontalStretch(0)
+ sizePolicy2.setVerticalStretch(0)
+ sizePolicy2.setHeightForWidth(self.buttonWidget.sizePolicy().hasHeightForWidth())
+ self.buttonWidget.setSizePolicy(sizePolicy2)
+ self.gridLayout_4 = QGridLayout(self.buttonWidget)
+ self.gridLayout_4.setObjectName(u"gridLayout_4")
+ self.gridLayout_4.setContentsMargins(0, 0, 0, 0)
+ self.convertButton = QPushButton(self.buttonWidget)
+ self.convertButton.setObjectName(u"convertButton")
+ self.convertButton.setMinimumSize(QSize(0, 30))
+ self.convertButton.setFont(font)
+ icon4 = QIcon()
+ icon4.addFile(u":/Other/icons/convert.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
+ self.convertButton.setIcon(icon4)
+
+ self.gridLayout_4.addWidget(self.convertButton, 1, 3, 1, 1)
+
+ self.clearButton = QPushButton(self.buttonWidget)
+ self.clearButton.setObjectName(u"clearButton")
+ self.clearButton.setMinimumSize(QSize(0, 30))
+ icon5 = QIcon()
+ icon5.addFile(u":/Other/icons/clear.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
+ self.clearButton.setIcon(icon5)
+
+ self.gridLayout_4.addWidget(self.clearButton, 0, 3, 1, 1)
+
+ self.deviceBox = QComboBox(self.buttonWidget)
+ self.deviceBox.setObjectName(u"deviceBox")
+ self.deviceBox.setMinimumSize(QSize(0, 28))
+
+ self.gridLayout_4.addWidget(self.deviceBox, 1, 1, 1, 1)
+
+ self.fileButton = QPushButton(self.buttonWidget)
+ self.fileButton.setObjectName(u"fileButton")
+ self.fileButton.setMinimumSize(QSize(0, 30))
+ icon6 = QIcon()
+ icon6.addFile(u":/Other/icons/document_new.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
+ self.fileButton.setIcon(icon6)
+
+ self.gridLayout_4.addWidget(self.fileButton, 0, 1, 1, 1)
+
+ self.directoryButton = QPushButton(self.buttonWidget)
+ self.directoryButton.setObjectName(u"directoryButton")
+ sizePolicy3 = QSizePolicy(QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Minimum)
+ sizePolicy3.setHorizontalStretch(0)
+ sizePolicy3.setVerticalStretch(0)
+ sizePolicy3.setHeightForWidth(self.directoryButton.sizePolicy().hasHeightForWidth())
+ self.directoryButton.setSizePolicy(sizePolicy3)
+ icon7 = QIcon()
+ icon7.addFile(u":/Other/icons/folder_new.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
+ self.directoryButton.setIcon(icon7)
+
+ self.gridLayout_4.addWidget(self.directoryButton, 0, 4, 1, 1)
+
+ self.formatBox = QComboBox(self.buttonWidget)
+ self.formatBox.setObjectName(u"formatBox")
+ self.formatBox.setMinimumSize(QSize(0, 28))
+
+ self.gridLayout_4.addWidget(self.formatBox, 1, 4, 1, 1)
+
+ self.clearButton.raise_()
+ self.deviceBox.raise_()
+ self.convertButton.raise_()
+ self.fileButton.raise_()
+ self.directoryButton.raise_()
+ self.formatBox.raise_()
+
+ self.gridLayout.addWidget(self.buttonWidget, 3, 0, 1, 2)
+
+ self.jobList = QListWidget(self.centralWidget)
+ self.jobList.setObjectName(u"jobList")
+ self.jobList.setMinimumSize(QSize(0, 150))
+ self.jobList.setStyleSheet(u"")
+ self.jobList.setSelectionMode(QAbstractItemView.SelectionMode.NoSelection)
+ self.jobList.setVerticalScrollMode(QAbstractItemView.ScrollMode.ScrollPerPixel)
+ self.jobList.setHorizontalScrollMode(QAbstractItemView.ScrollMode.ScrollPerPixel)
+
+ self.gridLayout.addWidget(self.jobList, 2, 0, 1, 2)
+
+ self.chunkSizeWidget = QWidget(self.centralWidget)
+ self.chunkSizeWidget.setObjectName(u"chunkSizeWidget")
+ sizePolicy4 = QSizePolicy(QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Fixed)
+ sizePolicy4.setHorizontalStretch(0)
+ sizePolicy4.setVerticalStretch(0)
+ sizePolicy4.setHeightForWidth(self.chunkSizeWidget.sizePolicy().hasHeightForWidth())
+ self.chunkSizeWidget.setSizePolicy(sizePolicy4)
+ self.chunkSizeWidget.setVisible(False)
+ self.horizontalLayout_4 = QHBoxLayout(self.chunkSizeWidget)
+ self.horizontalLayout_4.setSpacing(0)
+ self.horizontalLayout_4.setObjectName(u"horizontalLayout_4")
+ self.horizontalLayout_4.setContentsMargins(0, 0, 0, 0)
+ self.chunkSizeLabel = QLabel(self.chunkSizeWidget)
+ self.chunkSizeLabel.setObjectName(u"chunkSizeLabel")
+ sizePolicy5 = QSizePolicy(QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Preferred)
+ sizePolicy5.setHorizontalStretch(0)
+ sizePolicy5.setVerticalStretch(0)
+ sizePolicy5.setHeightForWidth(self.chunkSizeLabel.sizePolicy().hasHeightForWidth())
+ self.chunkSizeLabel.setSizePolicy(sizePolicy5)
+
+ self.horizontalLayout_4.addWidget(self.chunkSizeLabel)
+
+ self.chunkSizeBox = QSpinBox(self.chunkSizeWidget)
+ self.chunkSizeBox.setObjectName(u"chunkSizeBox")
+ self.chunkSizeBox.setMinimum(100)
+ self.chunkSizeBox.setMaximum(600)
+ self.chunkSizeBox.setValue(400)
+
+ self.horizontalLayout_4.addWidget(self.chunkSizeBox)
+
+ self.chunkSizeWarnLabel = QLabel(self.chunkSizeWidget)
+ self.chunkSizeWarnLabel.setObjectName(u"chunkSizeWarnLabel")
+ sizePolicy5.setHeightForWidth(self.chunkSizeWarnLabel.sizePolicy().hasHeightForWidth())
+ self.chunkSizeWarnLabel.setSizePolicy(sizePolicy5)
+
+ self.horizontalLayout_4.addWidget(self.chunkSizeWarnLabel)
+
+
+ self.gridLayout.addWidget(self.chunkSizeWidget, 6, 0, 1, 1)
+
self.optionWidget = QWidget(self.centralWidget)
self.optionWidget.setObjectName(u"optionWidget")
self.gridLayout_2 = QGridLayout(self.optionWidget)
@@ -42,11 +289,8 @@ class Ui_mainWindow(object):
self.gridLayout_2.setContentsMargins(0, 0, 0, 0)
self.titleEdit = QLineEdit(self.optionWidget)
self.titleEdit.setObjectName(u"titleEdit")
- sizePolicy = QSizePolicy(QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Fixed)
- sizePolicy.setHorizontalStretch(0)
- sizePolicy.setVerticalStretch(0)
- sizePolicy.setHeightForWidth(self.titleEdit.sizePolicy().hasHeightForWidth())
- self.titleEdit.setSizePolicy(sizePolicy)
+ sizePolicy4.setHeightForWidth(self.titleEdit.sizePolicy().hasHeightForWidth())
+ self.titleEdit.setSizePolicy(sizePolicy4)
self.titleEdit.setFocusPolicy(Qt.FocusPolicy.ClickFocus)
self.titleEdit.setClearButtonEnabled(False)
@@ -148,8 +392,8 @@ class Ui_mainWindow(object):
self.authorEdit = QLineEdit(self.optionWidget)
self.authorEdit.setObjectName(u"authorEdit")
- sizePolicy.setHeightForWidth(self.authorEdit.sizePolicy().hasHeightForWidth())
- self.authorEdit.setSizePolicy(sizePolicy)
+ sizePolicy4.setHeightForWidth(self.authorEdit.sizePolicy().hasHeightForWidth())
+ self.authorEdit.setSizePolicy(sizePolicy4)
self.authorEdit.setFocusPolicy(Qt.FocusPolicy.ClickFocus)
self.authorEdit.setClearButtonEnabled(False)
@@ -196,11 +440,8 @@ class Ui_mainWindow(object):
self.horizontalLayout_3.setObjectName(u"horizontalLayout_3")
self.defaultOutputFolderBox = QCheckBox(self.outputFolderWidget)
self.defaultOutputFolderBox.setObjectName(u"defaultOutputFolderBox")
- sizePolicy1 = QSizePolicy(QSizePolicy.Policy.Fixed, QSizePolicy.Policy.Fixed)
- sizePolicy1.setHorizontalStretch(0)
- sizePolicy1.setVerticalStretch(0)
- sizePolicy1.setHeightForWidth(self.defaultOutputFolderBox.sizePolicy().hasHeightForWidth())
- self.defaultOutputFolderBox.setSizePolicy(sizePolicy1)
+ sizePolicy.setHeightForWidth(self.defaultOutputFolderBox.sizePolicy().hasHeightForWidth())
+ self.defaultOutputFolderBox.setSizePolicy(sizePolicy)
self.defaultOutputFolderBox.setTristate(True)
self.horizontalLayout_3.addWidget(self.defaultOutputFolderBox)
@@ -208,66 +449,21 @@ class Ui_mainWindow(object):
self.defaultOutputFolderButton = QPushButton(self.outputFolderWidget)
self.defaultOutputFolderButton.setObjectName(u"defaultOutputFolderButton")
self.defaultOutputFolderButton.setMinimumSize(QSize(0, 30))
- icon1 = QIcon()
- icon1.addFile(u":/Other/icons/folder_new.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
- self.defaultOutputFolderButton.setIcon(icon1)
+ self.defaultOutputFolderButton.setIcon(icon7)
self.horizontalLayout_3.addWidget(self.defaultOutputFolderButton)
self.gridLayout_2.addWidget(self.outputFolderWidget, 0, 2, 1, 1)
+ self.jpegQualityBox = QCheckBox(self.optionWidget)
+ self.jpegQualityBox.setObjectName(u"jpegQualityBox")
+
+ self.gridLayout_2.addWidget(self.jpegQualityBox, 8, 0, 1, 1)
+
self.gridLayout.addWidget(self.optionWidget, 5, 0, 1, 2)
- self.jobList = QListWidget(self.centralWidget)
- self.jobList.setObjectName(u"jobList")
- self.jobList.setMinimumSize(QSize(0, 150))
- self.jobList.setStyleSheet(u"")
- self.jobList.setSelectionMode(QAbstractItemView.SelectionMode.NoSelection)
- self.jobList.setVerticalScrollMode(QAbstractItemView.ScrollMode.ScrollPerPixel)
- self.jobList.setHorizontalScrollMode(QAbstractItemView.ScrollMode.ScrollPerPixel)
-
- self.gridLayout.addWidget(self.jobList, 2, 0, 1, 2)
-
- self.customWidget = QWidget(self.centralWidget)
- self.customWidget.setObjectName(u"customWidget")
- self.customWidget.setVisible(False)
- self.gridLayout_3 = QGridLayout(self.customWidget)
- self.gridLayout_3.setObjectName(u"gridLayout_3")
- self.gridLayout_3.setContentsMargins(0, 0, 0, 0)
- self.hLabel = QLabel(self.customWidget)
- self.hLabel.setObjectName(u"hLabel")
- sizePolicy2 = QSizePolicy(QSizePolicy.Policy.Fixed, QSizePolicy.Policy.Preferred)
- sizePolicy2.setHorizontalStretch(0)
- sizePolicy2.setVerticalStretch(0)
- sizePolicy2.setHeightForWidth(self.hLabel.sizePolicy().hasHeightForWidth())
- self.hLabel.setSizePolicy(sizePolicy2)
-
- self.gridLayout_3.addWidget(self.hLabel, 0, 2, 1, 1)
-
- self.widthBox = QSpinBox(self.customWidget)
- self.widthBox.setObjectName(u"widthBox")
- self.widthBox.setMaximum(6000)
-
- self.gridLayout_3.addWidget(self.widthBox, 0, 1, 1, 1)
-
- self.wLabel = QLabel(self.customWidget)
- self.wLabel.setObjectName(u"wLabel")
- sizePolicy2.setHeightForWidth(self.wLabel.sizePolicy().hasHeightForWidth())
- self.wLabel.setSizePolicy(sizePolicy2)
-
- self.gridLayout_3.addWidget(self.wLabel, 0, 0, 1, 1)
-
- self.heightBox = QSpinBox(self.customWidget)
- self.heightBox.setObjectName(u"heightBox")
- self.heightBox.setMaximum(8000)
-
- self.gridLayout_3.addWidget(self.heightBox, 0, 3, 1, 1)
-
-
- self.gridLayout.addWidget(self.customWidget, 8, 0, 1, 2)
-
self.gammaWidget = QWidget(self.centralWidget)
self.gammaWidget.setObjectName(u"gammaWidget")
self.gammaWidget.setVisible(False)
@@ -290,196 +486,29 @@ class Ui_mainWindow(object):
self.gridLayout.addWidget(self.gammaWidget, 7, 0, 1, 2)
- self.toolWidget = QWidget(self.centralWidget)
- self.toolWidget.setObjectName(u"toolWidget")
- self.horizontalLayout = QHBoxLayout(self.toolWidget)
- self.horizontalLayout.setObjectName(u"horizontalLayout")
- self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
- self.editorButton = QPushButton(self.toolWidget)
- self.editorButton.setObjectName(u"editorButton")
- self.editorButton.setMinimumSize(QSize(0, 30))
- icon2 = QIcon()
- icon2.addFile(u":/Other/icons/editor.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
- self.editorButton.setIcon(icon2)
+ self.jpegQualityWidget = QWidget(self.centralWidget)
+ self.jpegQualityWidget.setObjectName(u"jpegQualityWidget")
+ sizePolicy1.setHeightForWidth(self.jpegQualityWidget.sizePolicy().hasHeightForWidth())
+ self.jpegQualityWidget.setSizePolicy(sizePolicy1)
+ self.jpegQualityWidget.setVisible(False)
+ self.horizontalLayout_12 = QHBoxLayout(self.jpegQualityWidget)
+ self.horizontalLayout_12.setObjectName(u"horizontalLayout_12")
+ self.horizontalLayout_12.setContentsMargins(0, 0, 0, 0)
+ self.jpegQualityLabel = QLabel(self.jpegQualityWidget)
+ self.jpegQualityLabel.setObjectName(u"jpegQualityLabel")
- self.horizontalLayout.addWidget(self.editorButton)
+ self.horizontalLayout_12.addWidget(self.jpegQualityLabel)
- self.kofiButton = QPushButton(self.toolWidget)
- self.kofiButton.setObjectName(u"kofiButton")
- self.kofiButton.setMinimumSize(QSize(0, 30))
- icon3 = QIcon()
- icon3.addFile(u":/Brand/icons/kofi_symbol.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
- self.kofiButton.setIcon(icon3)
- self.kofiButton.setIconSize(QSize(19, 16))
+ self.jpegQualitySpinBox = QSpinBox(self.jpegQualityWidget)
+ self.jpegQualitySpinBox.setObjectName(u"jpegQualitySpinBox")
+ self.jpegQualitySpinBox.setMaximum(95)
+ self.jpegQualitySpinBox.setSingleStep(5)
+ self.jpegQualitySpinBox.setValue(85)
- self.horizontalLayout.addWidget(self.kofiButton)
-
- self.wikiButton = QPushButton(self.toolWidget)
- self.wikiButton.setObjectName(u"wikiButton")
- self.wikiButton.setMinimumSize(QSize(0, 30))
- icon4 = QIcon()
- icon4.addFile(u":/Other/icons/wiki.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
- self.wikiButton.setIcon(icon4)
-
- self.horizontalLayout.addWidget(self.wikiButton)
+ self.horizontalLayout_12.addWidget(self.jpegQualitySpinBox)
- self.gridLayout.addWidget(self.toolWidget, 0, 0, 1, 2)
-
- self.progressBar = QProgressBar(self.centralWidget)
- self.progressBar.setObjectName(u"progressBar")
- self.progressBar.setMinimumSize(QSize(0, 30))
- font = QFont()
- font.setBold(True)
- self.progressBar.setFont(font)
- self.progressBar.setVisible(False)
- self.progressBar.setAlignment(Qt.AlignmentFlag.AlignJustify|Qt.AlignmentFlag.AlignVCenter)
-
- self.gridLayout.addWidget(self.progressBar, 1, 0, 1, 2)
-
- self.croppingWidget = QWidget(self.centralWidget)
- self.croppingWidget.setObjectName(u"croppingWidget")
- self.croppingWidget.setVisible(False)
- self.gridLayout_5 = QGridLayout(self.croppingWidget)
- self.gridLayout_5.setObjectName(u"gridLayout_5")
- self.gridLayout_5.setContentsMargins(0, 0, 0, 0)
- self.preserveMarginLabel = QLabel(self.croppingWidget)
- self.preserveMarginLabel.setObjectName(u"preserveMarginLabel")
-
- self.gridLayout_5.addWidget(self.preserveMarginLabel, 1, 0, 1, 1)
-
- self.croppingPowerLabel = QLabel(self.croppingWidget)
- self.croppingPowerLabel.setObjectName(u"croppingPowerLabel")
-
- self.gridLayout_5.addWidget(self.croppingPowerLabel, 0, 0, 1, 1)
-
- self.croppingPowerSlider = QSlider(self.croppingWidget)
- self.croppingPowerSlider.setObjectName(u"croppingPowerSlider")
- self.croppingPowerSlider.setMaximum(300)
- self.croppingPowerSlider.setSingleStep(1)
- self.croppingPowerSlider.setOrientation(Qt.Orientation.Horizontal)
-
- self.gridLayout_5.addWidget(self.croppingPowerSlider, 0, 1, 1, 1)
-
- self.preserveMarginBox = QSpinBox(self.croppingWidget)
- self.preserveMarginBox.setObjectName(u"preserveMarginBox")
- sizePolicy1.setHeightForWidth(self.preserveMarginBox.sizePolicy().hasHeightForWidth())
- self.preserveMarginBox.setSizePolicy(sizePolicy1)
- self.preserveMarginBox.setMaximum(99)
- self.preserveMarginBox.setSingleStep(5)
- self.preserveMarginBox.setValue(0)
-
- self.gridLayout_5.addWidget(self.preserveMarginBox, 1, 1, 1, 1)
-
-
- self.gridLayout.addWidget(self.croppingWidget, 9, 0, 1, 2)
-
- self.buttonWidget = QWidget(self.centralWidget)
- self.buttonWidget.setObjectName(u"buttonWidget")
- sizePolicy3 = QSizePolicy(QSizePolicy.Policy.Preferred, QSizePolicy.Policy.Fixed)
- sizePolicy3.setHorizontalStretch(0)
- sizePolicy3.setVerticalStretch(0)
- sizePolicy3.setHeightForWidth(self.buttonWidget.sizePolicy().hasHeightForWidth())
- self.buttonWidget.setSizePolicy(sizePolicy3)
- self.gridLayout_4 = QGridLayout(self.buttonWidget)
- self.gridLayout_4.setObjectName(u"gridLayout_4")
- self.gridLayout_4.setContentsMargins(0, 0, 0, 0)
- self.convertButton = QPushButton(self.buttonWidget)
- self.convertButton.setObjectName(u"convertButton")
- self.convertButton.setMinimumSize(QSize(0, 30))
- self.convertButton.setFont(font)
- icon5 = QIcon()
- icon5.addFile(u":/Other/icons/convert.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
- self.convertButton.setIcon(icon5)
-
- self.gridLayout_4.addWidget(self.convertButton, 1, 3, 1, 1)
-
- self.clearButton = QPushButton(self.buttonWidget)
- self.clearButton.setObjectName(u"clearButton")
- self.clearButton.setMinimumSize(QSize(0, 30))
- icon6 = QIcon()
- icon6.addFile(u":/Other/icons/clear.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
- self.clearButton.setIcon(icon6)
-
- self.gridLayout_4.addWidget(self.clearButton, 0, 3, 1, 1)
-
- self.deviceBox = QComboBox(self.buttonWidget)
- self.deviceBox.setObjectName(u"deviceBox")
- self.deviceBox.setMinimumSize(QSize(0, 28))
-
- self.gridLayout_4.addWidget(self.deviceBox, 1, 1, 1, 1)
-
- self.fileButton = QPushButton(self.buttonWidget)
- self.fileButton.setObjectName(u"fileButton")
- self.fileButton.setMinimumSize(QSize(0, 30))
- icon7 = QIcon()
- icon7.addFile(u":/Other/icons/document_new.png", QSize(), QIcon.Mode.Normal, QIcon.State.Off)
- self.fileButton.setIcon(icon7)
-
- self.gridLayout_4.addWidget(self.fileButton, 0, 1, 1, 1)
-
- self.directoryButton = QPushButton(self.buttonWidget)
- self.directoryButton.setObjectName(u"directoryButton")
- sizePolicy4 = QSizePolicy(QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Minimum)
- sizePolicy4.setHorizontalStretch(0)
- sizePolicy4.setVerticalStretch(0)
- sizePolicy4.setHeightForWidth(self.directoryButton.sizePolicy().hasHeightForWidth())
- self.directoryButton.setSizePolicy(sizePolicy4)
- self.directoryButton.setIcon(icon1)
-
- self.gridLayout_4.addWidget(self.directoryButton, 0, 4, 1, 1)
-
- self.formatBox = QComboBox(self.buttonWidget)
- self.formatBox.setObjectName(u"formatBox")
- self.formatBox.setMinimumSize(QSize(0, 28))
-
- self.gridLayout_4.addWidget(self.formatBox, 1, 4, 1, 1)
-
- self.clearButton.raise_()
- self.deviceBox.raise_()
- self.convertButton.raise_()
- self.fileButton.raise_()
- self.directoryButton.raise_()
- self.formatBox.raise_()
-
- self.gridLayout.addWidget(self.buttonWidget, 3, 0, 1, 2)
-
- self.chunkSizeWidget = QWidget(self.centralWidget)
- self.chunkSizeWidget.setObjectName(u"chunkSizeWidget")
- sizePolicy.setHeightForWidth(self.chunkSizeWidget.sizePolicy().hasHeightForWidth())
- self.chunkSizeWidget.setSizePolicy(sizePolicy)
- self.chunkSizeWidget.setVisible(False)
- self.horizontalLayout_4 = QHBoxLayout(self.chunkSizeWidget)
- self.horizontalLayout_4.setSpacing(0)
- self.horizontalLayout_4.setObjectName(u"horizontalLayout_4")
- self.horizontalLayout_4.setContentsMargins(0, 0, 0, 0)
- self.chunkSizeLabel = QLabel(self.chunkSizeWidget)
- self.chunkSizeLabel.setObjectName(u"chunkSizeLabel")
- sizePolicy5 = QSizePolicy(QSizePolicy.Policy.Minimum, QSizePolicy.Policy.Preferred)
- sizePolicy5.setHorizontalStretch(0)
- sizePolicy5.setVerticalStretch(0)
- sizePolicy5.setHeightForWidth(self.chunkSizeLabel.sizePolicy().hasHeightForWidth())
- self.chunkSizeLabel.setSizePolicy(sizePolicy5)
-
- self.horizontalLayout_4.addWidget(self.chunkSizeLabel)
-
- self.chunkSizeBox = QSpinBox(self.chunkSizeWidget)
- self.chunkSizeBox.setObjectName(u"chunkSizeBox")
- self.chunkSizeBox.setMinimum(100)
- self.chunkSizeBox.setMaximum(600)
- self.chunkSizeBox.setValue(400)
-
- self.horizontalLayout_4.addWidget(self.chunkSizeBox)
-
- self.chunkSizeWarnLabel = QLabel(self.chunkSizeWidget)
- self.chunkSizeWarnLabel.setObjectName(u"chunkSizeWarnLabel")
- sizePolicy5.setHeightForWidth(self.chunkSizeWarnLabel.sizePolicy().hasHeightForWidth())
- self.chunkSizeWarnLabel.setSizePolicy(sizePolicy5)
-
- self.horizontalLayout_4.addWidget(self.chunkSizeWarnLabel)
-
-
- self.gridLayout.addWidget(self.chunkSizeWidget, 6, 0, 1, 1)
+ self.gridLayout.addWidget(self.jpegQualityWidget, 10, 0, 1, 1)
mainWindow.setCentralWidget(self.centralWidget)
self.statusBar = QStatusBar(mainWindow)
@@ -531,6 +560,58 @@ class Ui_mainWindow(object):
def retranslateUi(self, mainWindow):
mainWindow.setWindowTitle(QCoreApplication.translate("mainWindow", u"Kindle Comic Converter", None))
+#if QT_CONFIG(tooltip)
+ self.editorButton.setToolTip(QCoreApplication.translate("mainWindow", u"Shift+Click to edit directory.
", None))
+#endif // QT_CONFIG(tooltip)
+ self.editorButton.setText(QCoreApplication.translate("mainWindow", u"Metadata Editor", None))
+ self.kofiButton.setText(QCoreApplication.translate("mainWindow", u"Support me on Ko-fi", None))
+ self.wikiButton.setText(QCoreApplication.translate("mainWindow", u"Wiki", None))
+#if QT_CONFIG(tooltip)
+ self.preserveMarginLabel.setToolTip(QCoreApplication.translate("mainWindow", u"After calculating the cropping boundaries, "back up" a specified percentage amount.
", None))
+#endif // QT_CONFIG(tooltip)
+ self.preserveMarginLabel.setText(QCoreApplication.translate("mainWindow", u"Preserve Margin %", None))
+ self.croppingPowerLabel.setText(QCoreApplication.translate("mainWindow", u"Cropping power:", None))
+#if QT_CONFIG(tooltip)
+ self.hLabel.setToolTip(QCoreApplication.translate("mainWindow", u"
Resolution of the target device.
", None))
+#endif // QT_CONFIG(tooltip)
+ self.hLabel.setText(QCoreApplication.translate("mainWindow", u"Custom height:", None))
+#if QT_CONFIG(tooltip)
+ self.widthBox.setToolTip(QCoreApplication.translate("mainWindow", u"Resolution of the target device.
", None))
+#endif // QT_CONFIG(tooltip)
+#if QT_CONFIG(tooltip)
+ self.wLabel.setToolTip(QCoreApplication.translate("mainWindow", u"Resolution of the target device.
", None))
+#endif // QT_CONFIG(tooltip)
+ self.wLabel.setText(QCoreApplication.translate("mainWindow", u"Custom width:", None))
+#if QT_CONFIG(tooltip)
+ self.heightBox.setToolTip(QCoreApplication.translate("mainWindow", u"Resolution of the target device.
", None))
+#endif // QT_CONFIG(tooltip)
+#if QT_CONFIG(tooltip)
+ self.convertButton.setToolTip(QCoreApplication.translate("mainWindow", u"Shift+Click to select the output directory for this list.
", None))
+#endif // QT_CONFIG(tooltip)
+ self.convertButton.setText(QCoreApplication.translate("mainWindow", u"Convert", None))
+ self.clearButton.setText(QCoreApplication.translate("mainWindow", u"Clear list", None))
+#if QT_CONFIG(tooltip)
+ self.deviceBox.setToolTip(QCoreApplication.translate("mainWindow", u"Target device.
", None))
+#endif // QT_CONFIG(tooltip)
+#if QT_CONFIG(tooltip)
+ self.fileButton.setToolTip(QCoreApplication.translate("mainWindow", u"Add CBR, CBZ, CB7 or PDF file to queue.
", None))
+#endif // QT_CONFIG(tooltip)
+ self.fileButton.setText(QCoreApplication.translate("mainWindow", u"Add input file(s)", None))
+#if QT_CONFIG(tooltip)
+ self.directoryButton.setToolTip(QCoreApplication.translate("mainWindow", u"Add directory containing JPG, PNG or GIF files to queue.
CBR, CBZ and CB7 files inside will not be processed!
", None))
+#endif // QT_CONFIG(tooltip)
+ self.directoryButton.setText(QCoreApplication.translate("mainWindow", u"Add input folder(s)", None))
+#if QT_CONFIG(tooltip)
+ self.formatBox.setToolTip(QCoreApplication.translate("mainWindow", u"Output format.
", None))
+#endif // QT_CONFIG(tooltip)
+#if QT_CONFIG(tooltip)
+ self.jobList.setToolTip(QCoreApplication.translate("mainWindow", u"Double click on source to open it in metadata editor.
", None))
+#endif // QT_CONFIG(tooltip)
+#if QT_CONFIG(tooltip)
+ self.chunkSizeWidget.setToolTip(QCoreApplication.translate("mainWindow", u"Warning: chunk size greater than default may cause
performance/battery issues, especially on older devices.
", None))
+#endif // QT_CONFIG(tooltip)
+ self.chunkSizeLabel.setText(QCoreApplication.translate("mainWindow", u"Chunk size MB:", None))
+ self.chunkSizeWarnLabel.setText(QCoreApplication.translate("mainWindow", u"Greater than default may cause performance issues on older ereaders.", None))
#if QT_CONFIG(tooltip)
self.titleEdit.setToolTip(QCoreApplication.translate("mainWindow", u"Default Title
", None))
#endif // QT_CONFIG(tooltip)
@@ -644,57 +725,14 @@ class Ui_mainWindow(object):
#endif // QT_CONFIG(tooltip)
self.defaultOutputFolderButton.setText("")
#if QT_CONFIG(tooltip)
- self.jobList.setToolTip(QCoreApplication.translate("mainWindow", u"Double click on source to open it in metadata editor.
", None))
-#endif // QT_CONFIG(tooltip)
-#if QT_CONFIG(tooltip)
- self.hLabel.setToolTip(QCoreApplication.translate("mainWindow", u"Resolution of the target device.
", None))
-#endif // QT_CONFIG(tooltip)
- self.hLabel.setText(QCoreApplication.translate("mainWindow", u"Custom height:", None))
-#if QT_CONFIG(tooltip)
- self.widthBox.setToolTip(QCoreApplication.translate("mainWindow", u"Resolution of the target device.
", None))
-#endif // QT_CONFIG(tooltip)
-#if QT_CONFIG(tooltip)
- self.wLabel.setToolTip(QCoreApplication.translate("mainWindow", u"Resolution of the target device.
", None))
-#endif // QT_CONFIG(tooltip)
- self.wLabel.setText(QCoreApplication.translate("mainWindow", u"Custom width:", None))
-#if QT_CONFIG(tooltip)
- self.heightBox.setToolTip(QCoreApplication.translate("mainWindow", u"Resolution of the target device.
", None))
+ self.jpegQualityBox.setToolTip(QCoreApplication.translate("mainWindow", u"The JPEG quality, on a scale from 0 (worst) to 95 (best). \n"
+"\n"
+"Default is 85 for most devices besides Kindle Scribe and Colorsoft, which are 90.\n"
+"\n"
+"Higher values are larger and higher quality, and may resolve blank page issues.", None))
#endif // QT_CONFIG(tooltip)
+ self.jpegQualityBox.setText(QCoreApplication.translate("mainWindow", u"Custom JPEG Quality", None))
self.gammaLabel.setText(QCoreApplication.translate("mainWindow", u"Gamma: Auto", None))
-#if QT_CONFIG(tooltip)
- self.editorButton.setToolTip(QCoreApplication.translate("mainWindow", u"Shift+Click to edit directory.
", None))
-#endif // QT_CONFIG(tooltip)
- self.editorButton.setText(QCoreApplication.translate("mainWindow", u"Metadata Editor", None))
- self.kofiButton.setText(QCoreApplication.translate("mainWindow", u"Support me on Ko-fi", None))
- self.wikiButton.setText(QCoreApplication.translate("mainWindow", u"Wiki", None))
-#if QT_CONFIG(tooltip)
- self.preserveMarginLabel.setToolTip(QCoreApplication.translate("mainWindow", u"After calculating the cropping boundaries, "back up" a specified percentage amount.
", None))
-#endif // QT_CONFIG(tooltip)
- self.preserveMarginLabel.setText(QCoreApplication.translate("mainWindow", u"Preserve Margin %", None))
- self.croppingPowerLabel.setText(QCoreApplication.translate("mainWindow", u"Cropping power:", None))
-#if QT_CONFIG(tooltip)
- self.convertButton.setToolTip(QCoreApplication.translate("mainWindow", u"Shift+Click to select the output directory for this list.
", None))
-#endif // QT_CONFIG(tooltip)
- self.convertButton.setText(QCoreApplication.translate("mainWindow", u"Convert", None))
- self.clearButton.setText(QCoreApplication.translate("mainWindow", u"Clear list", None))
-#if QT_CONFIG(tooltip)
- self.deviceBox.setToolTip(QCoreApplication.translate("mainWindow", u"Target device.
", None))
-#endif // QT_CONFIG(tooltip)
-#if QT_CONFIG(tooltip)
- self.fileButton.setToolTip(QCoreApplication.translate("mainWindow", u"Add CBR, CBZ, CB7 or PDF file to queue.
", None))
-#endif // QT_CONFIG(tooltip)
- self.fileButton.setText(QCoreApplication.translate("mainWindow", u"Add input file(s)", None))
-#if QT_CONFIG(tooltip)
- self.directoryButton.setToolTip(QCoreApplication.translate("mainWindow", u"Add directory containing JPG, PNG or GIF files to queue.
CBR, CBZ and CB7 files inside will not be processed!
", None))
-#endif // QT_CONFIG(tooltip)
- self.directoryButton.setText(QCoreApplication.translate("mainWindow", u"Add input folder(s)", None))
-#if QT_CONFIG(tooltip)
- self.formatBox.setToolTip(QCoreApplication.translate("mainWindow", u"Output format.
", None))
-#endif // QT_CONFIG(tooltip)
-#if QT_CONFIG(tooltip)
- self.chunkSizeWidget.setToolTip(QCoreApplication.translate("mainWindow", u"Warning: chunk size greater than default may cause
performance/battery issues, especially on older devices.
", None))
-#endif // QT_CONFIG(tooltip)
- self.chunkSizeLabel.setText(QCoreApplication.translate("mainWindow", u"Chunk size MB:", None))
- self.chunkSizeWarnLabel.setText(QCoreApplication.translate("mainWindow", u"Greater than default may cause performance issues on older ereaders.", None))
+ self.jpegQualityLabel.setText(QCoreApplication.translate("mainWindow", u"JPEG Quality:", None))
# retranslateUi