Commit b799896e authored by dmMaze's avatar dmMaze
Browse files

fix page turning bug & ocr crash

parent b16933ef
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -571,7 +571,11 @@ class OCR32pxModel:
        for blk_idx, textblk in enumerate(textblk_lst):
            for ii in range(len(textblk)):
                textblk_lst_indices.append(blk_idx)
                regions.append(textblk.get_transformed_region(img, ii, self.text_height))
                region = textblk.get_transformed_region(img, ii, self.text_height)
                h, w = region.shape[:2]
                if w > 3064:    # positional embedding requires width <= 3072
                    region = region[:, :3064]
                regions.append(region)
                region_idx += 1
        # regions = [textblk.get_transformed_region(img, idx, self.text_height) for idx in range(len(textblk))]
        perm = range(len(regions))
+11 −2
Original line number Diff line number Diff line
@@ -7,6 +7,7 @@ from qtpy.QtGui import QGuiApplication, QIcon, QCloseEvent, QKeySequence, QImage

from utils.logger import logger as LOGGER
from utils.io_utils import json_dump_nested_obj
from utils.text_processing import is_cjk, full_len, half_len
from .misc import ProjImgTrans, ndarray2pixmap, pixmap2ndarray
from .canvas import Canvas
from .configpanel import ConfigPanel
@@ -17,7 +18,7 @@ from .scenetext_manager import SceneTextManager
from .mainwindowbars import TitleBar, LeftBar, RightBar, BottomBar
from .io_thread import ImgSaveThread
from .stylewidgets import FrameLessMessageBox
from .constants import STYLESHEET_PATH, CONFIG_PATH, LANG_SUPPORT_VERTICAL
from .constants import STYLESHEET_PATH, CONFIG_PATH
from . import constants

class PageListView(QListWidget):    
@@ -262,6 +263,7 @@ class MainWindow(QMainWindow):
            self.st_manager.canvasUndoStack.clear()
            self.imgtrans_proj.set_current_img(item.text())
            self.canvas.updateCanvas()
            self.st_manager.hovering_transwidget = None
            self.st_manager.updateSceneTextitems()
            self.titleBar.setTitleContent(page_name=self.imgtrans_proj.current_img)
            if self.dl_manager.run_canvas_inpaint:
@@ -470,11 +472,18 @@ class MainWindow(QMainWindow):
        self.pageListCurrentItemChanged()

    def on_pagtrans_finished(self, page_index: int):
        if self.config.dl.translate_target not in LANG_SUPPORT_VERTICAL:

        src_is_cjk = is_cjk(self.config.dl.translate_source)
        tgt_is_cjk = is_cjk(self.config.dl.translate_target)
        if tgt_is_cjk:
            for blk in self.imgtrans_proj.get_blklist_byidx(page_index):
                if blk.vertical:
                    blk._alignment = 1
                blk.vertical = False
                if src_is_cjk:
                    blk.translation = full_len(blk.translation)
                else:
                    blk.translation = half_len(blk.translation)
                
        # override font format if necessary
        override_fnt_size = self.config.let_fntsize_flag == 1