Loading ui/canvas.py +4 −0 Original line number Diff line number Diff line Loading @@ -178,6 +178,7 @@ class Canvas(QGraphicsScene): format_textblks = Signal() layout_textblks = Signal() reset_angle = Signal() squeeze_blk = Signal() run_blktrans = Signal(int) Loading Loading @@ -751,6 +752,7 @@ class Canvas(QGraphicsScene): format_act = menu.addAction(self.tr("Apply font formatting")) layout_act = menu.addAction(self.tr("Auto layout")) angle_act = menu.addAction(self.tr("Reset Angle")) squeeze_act = menu.addAction(self.tr("Squeeze")) menu.addSeparator() translate_act = menu.addAction(self.tr("translate")) ocr_act = menu.addAction(self.tr("OCR")) Loading Loading @@ -778,6 +780,8 @@ class Canvas(QGraphicsScene): self.layout_textblks.emit() elif rst == angle_act: self.reset_angle.emit() elif rst == squeeze_act: self.squeeze_blk.emit() elif rst == translate_act: self.run_blktrans.emit(-1) elif rst == ocr_act: Loading ui/fontformat_commands.py +2 −2 Original line number Diff line number Diff line Loading @@ -136,12 +136,12 @@ def ffmt_change_stroke_width(param_name: str, values: float, act_ffmt: FontForma blkitem.setStrokeWidth(value, **set_kwargs) @font_formating() def ffmt_change_size(param_name: str, values: float, act_ffmt: FontFormat, is_global: bool, blkitems: List[TextBlkItem], **kwargs): def ffmt_change_size(param_name: str, values: float, act_ffmt: FontFormat, is_global: bool, blkitems: List[TextBlkItem], clip_size=False, **kwargs): set_kwargs = global_default_set_kwargs if is_global else local_default_set_kwargs for blkitem, value in zip(blkitems, values): if value < 0: continue blkitem.setFontSize(value, **set_kwargs) blkitem.setFontSize(value, clip_size=clip_size, **set_kwargs) @font_formating(push_undostack=True) def ffmt_change_alignment(param_name: str, values: float, act_ffmt: FontFormat, is_global: bool, blkitems: List[TextBlkItem], **kwargs): Loading ui/fontformatpanel.py +5 −2 Original line number Diff line number Diff line Loading @@ -1071,11 +1071,14 @@ class FontFormatPanel(Widget): def on_param_changed(self, param_name: str, value): func = FM.handle_ffmt_change.get(param_name) func_kwargs = {} if param_name == 'size': func_kwargs['clip_size'] = True if self.global_mode(): func(param_name, value, self.global_format, is_global=True) func(param_name, value, self.global_format, is_global=True, **func_kwargs) self.update_text_style_label() else: func(param_name, value, C.active_format, is_global=False, blkitems=self.textblk_item, set_focus=True) func(param_name, value, C.active_format, is_global=False, blkitems=self.textblk_item, set_focus=True, **func_kwargs) def update_text_style_label(self): if self.global_mode(): Loading ui/mainwindow.py +1 −1 Original line number Diff line number Diff line Loading @@ -946,7 +946,7 @@ class MainWindow(mainwindow_cls): if not pcfg.module.enable_detect: for blkitem in self.st_manager.textblk_item_list: blkitem.shrinkSize() blkitem.squeezeBoundingRect() if page_index + 1 == self.imgtrans_proj.num_pages: self.st_manager.auto_textlayout_flag = False Loading ui/scene_textlayout.py +2 −3 Original line number Diff line number Diff line Loading @@ -710,7 +710,6 @@ class VerticalTextDocumentLayout(SceneTextLayout): for _ in range(num_rspaces): char_yoffset_lst.append(min(char_yoffset_lst[-1] + space_w, available_height)) line_bottom = char_yoffset_lst[-1] shrink_height = available_height else: cfmt = self.get_char_fontfmt(block_no, char_idx) if cfmt is not None: Loading Loading @@ -773,8 +772,8 @@ class VerticalTextDocumentLayout(SceneTextLayout): tl.endLayout() self.layout_left = x_offset - self.draw_shifted self.shrink_width = max(self.max_width - self.layout_left, self.shrink_width) self.shrink_height = max(shrink_height, self.shrink_height) self.shrink_width = max(self.max_width - self.layout_left - doc_margin + 0.01, self.shrink_width) self.shrink_height = max(shrink_height + 0.01, self.shrink_height) self.x_offset_lst.append(x_offset) self.y_offset_lst.append(blk_char_yoffset) self.line_spaces_lst.append(blk_line_spaces) Loading Loading
ui/canvas.py +4 −0 Original line number Diff line number Diff line Loading @@ -178,6 +178,7 @@ class Canvas(QGraphicsScene): format_textblks = Signal() layout_textblks = Signal() reset_angle = Signal() squeeze_blk = Signal() run_blktrans = Signal(int) Loading Loading @@ -751,6 +752,7 @@ class Canvas(QGraphicsScene): format_act = menu.addAction(self.tr("Apply font formatting")) layout_act = menu.addAction(self.tr("Auto layout")) angle_act = menu.addAction(self.tr("Reset Angle")) squeeze_act = menu.addAction(self.tr("Squeeze")) menu.addSeparator() translate_act = menu.addAction(self.tr("translate")) ocr_act = menu.addAction(self.tr("OCR")) Loading Loading @@ -778,6 +780,8 @@ class Canvas(QGraphicsScene): self.layout_textblks.emit() elif rst == angle_act: self.reset_angle.emit() elif rst == squeeze_act: self.squeeze_blk.emit() elif rst == translate_act: self.run_blktrans.emit(-1) elif rst == ocr_act: Loading
ui/fontformat_commands.py +2 −2 Original line number Diff line number Diff line Loading @@ -136,12 +136,12 @@ def ffmt_change_stroke_width(param_name: str, values: float, act_ffmt: FontForma blkitem.setStrokeWidth(value, **set_kwargs) @font_formating() def ffmt_change_size(param_name: str, values: float, act_ffmt: FontFormat, is_global: bool, blkitems: List[TextBlkItem], **kwargs): def ffmt_change_size(param_name: str, values: float, act_ffmt: FontFormat, is_global: bool, blkitems: List[TextBlkItem], clip_size=False, **kwargs): set_kwargs = global_default_set_kwargs if is_global else local_default_set_kwargs for blkitem, value in zip(blkitems, values): if value < 0: continue blkitem.setFontSize(value, **set_kwargs) blkitem.setFontSize(value, clip_size=clip_size, **set_kwargs) @font_formating(push_undostack=True) def ffmt_change_alignment(param_name: str, values: float, act_ffmt: FontFormat, is_global: bool, blkitems: List[TextBlkItem], **kwargs): Loading
ui/fontformatpanel.py +5 −2 Original line number Diff line number Diff line Loading @@ -1071,11 +1071,14 @@ class FontFormatPanel(Widget): def on_param_changed(self, param_name: str, value): func = FM.handle_ffmt_change.get(param_name) func_kwargs = {} if param_name == 'size': func_kwargs['clip_size'] = True if self.global_mode(): func(param_name, value, self.global_format, is_global=True) func(param_name, value, self.global_format, is_global=True, **func_kwargs) self.update_text_style_label() else: func(param_name, value, C.active_format, is_global=False, blkitems=self.textblk_item, set_focus=True) func(param_name, value, C.active_format, is_global=False, blkitems=self.textblk_item, set_focus=True, **func_kwargs) def update_text_style_label(self): if self.global_mode(): Loading
ui/mainwindow.py +1 −1 Original line number Diff line number Diff line Loading @@ -946,7 +946,7 @@ class MainWindow(mainwindow_cls): if not pcfg.module.enable_detect: for blkitem in self.st_manager.textblk_item_list: blkitem.shrinkSize() blkitem.squeezeBoundingRect() if page_index + 1 == self.imgtrans_proj.num_pages: self.st_manager.auto_textlayout_flag = False Loading
ui/scene_textlayout.py +2 −3 Original line number Diff line number Diff line Loading @@ -710,7 +710,6 @@ class VerticalTextDocumentLayout(SceneTextLayout): for _ in range(num_rspaces): char_yoffset_lst.append(min(char_yoffset_lst[-1] + space_w, available_height)) line_bottom = char_yoffset_lst[-1] shrink_height = available_height else: cfmt = self.get_char_fontfmt(block_no, char_idx) if cfmt is not None: Loading Loading @@ -773,8 +772,8 @@ class VerticalTextDocumentLayout(SceneTextLayout): tl.endLayout() self.layout_left = x_offset - self.draw_shifted self.shrink_width = max(self.max_width - self.layout_left, self.shrink_width) self.shrink_height = max(shrink_height, self.shrink_height) self.shrink_width = max(self.max_width - self.layout_left - doc_margin + 0.01, self.shrink_width) self.shrink_height = max(shrink_height + 0.01, self.shrink_height) self.x_offset_lst.append(x_offset) self.y_offset_lst.append(blk_char_yoffset) self.line_spaces_lst.append(blk_line_spaces) Loading