diff --git a/README.md b/README.md index 5cf103f9..c4db369f 100644 --- a/README.md +++ b/README.md @@ -73,13 +73,15 @@ ## 下载 -#### Win7/8 用户 及 凌动、赛扬、奔腾处理器用户: +#### v2.0.0 -兼容`低版本Windows`和`无AVX指令集的CPU`的新识别引擎正在测试阶段,[详情见这儿](https://github.com/hiroi-sora/Umi-OCR/tree/dev/rapid/1.3.4) 。 +全新重构的v2预览版本已开放测试,[欢迎体验](https://github.com/hiroi-sora/Umi-OCR_v2)。 -#### Win10/11 用户: +#### v1.3.6 -Github下载:[Release v1.3.5](https://github.com/hiroi-sora/Umi-OCR/releases/tag/v1.3.5) +使用v1稳定版本: + +Github下载:[Release v1.3.6](https://github.com/hiroi-sora/Umi-OCR/releases/tag/v1.3.6) 蓝奏云下载:[https://hiroi-sora.lanzoul.com/s/umi-ocr](https://hiroi-sora.lanzoul.com/s/umi-ocr) @@ -147,47 +149,16 @@ Github下载:[Release v1.3.5](https://github.com/hiroi-sora/Umi-OCR/releases/t -## 文本块后处理(排版优化) - -OCR识别出的文本是按“块”划分的,通常一行文字分为一块,有时还会将一行误划分为多块,这给阅读带来了不便。**文本块后处理**就是对文本块进行再加工的过程,合并同一行或同一段落内的文字,按正确的顺序排序。 - -#### 下图表示不同排版应该选用何种处理方案: - -![](https://tupian.li/images/2022/09/29/-10-.png) - -#### 所有排版方案一览: - -
-展开
- -##### 横排-优化单行 - -将误划分为多块的同一行文字合并到一行。 - -##### 横排-合并多行-左对齐 - -将多个左对齐的行视为同一段落,合并文字。左侧未对齐或行距过大的行视为下一段落。 +## 文本块后处理(合并段落) -##### 横排-合并多行-自然段 +OCR识别出的文本是按“块”划分的,通常一行文字分为一块,有时还会将一行误划分为多块,这给阅读带来了不便。您可以在Umi-OCR设置页的**合并段落**中选择恰当的方案,合并同一行或同一段落内的文字,按正确的顺序排序。 -将多个左对齐的行视为同一段落,且第一行的开头允许多空出两个全角空格的宽度。 +#### 排版方案: -##### 横排-合并多行-模糊匹配 - -只要垂直投影有重叠,行高一致,距离较近的文本块,视为同一段落。 - -##### 竖排-从左到右-单行 / 竖排-从右至左-单行 - -优化竖排识别,合并同一行文字,按从左到右或从右到左的顺序输出每一行。 -注意,必须搭配支持竖排识别的模型库(识别语言)一起使用。 - -#### 可视化预览: - -可以在忽略区域编辑器内预览文本块后处理的效果。编辑器中以虚线框标出识别到、经过后处理的文字块。 - -这里仅仅是借用了编辑器来展示后处理的效果,实际运行任务时 **忽略区域机制 早于 后处理机制** 执行,不受后处理的影响。 - -
+- **单行**:合并同一行的文字,适合绝大部分情景。 +- **多行-自然段**:智能识别、合并属于同一段落的文字,适合绝大部分情景。 +- **多行-代码段**:尽可能还原原始排版的缩进与空格。适合识别代码片段,或需要保留空格的场景。 +- **竖排**:适合竖排排版。需要与同样支持竖排识别的模型库配合使用。 ## 忽略区域功能 @@ -351,7 +322,12 @@ OCR识别出的文本是按“块”划分的,通常一行文字分为一块 `v1.3.5` 起,支持快捷识图完成并将结果写入剪贴板后,发送一组指定按键,触发翻译软件进行翻译。当然也可以用于触发你的AHK脚本等,实现更多奇奇怪怪的功能。 -这是一个隐藏高级功能,请先勾选设置页底部的`高级选项`,重启软件。设置页的`快捷识图`板块会多出一个项目:`自动复制后发送按键` 。可以录制一组快捷键并修改重复次数(支持单击、双击等)。当截图OCR完成后,会发送该按键组合。注意,必须同时勾选`自动复制结果`才能让该功能生效。 +`v1.3.6` 起,截图联动是一个单独的功能,由独立快捷键触发,与常规的截图OCR互不影响。 + +这是一个隐藏高级功能,请先勾选设置页底部的`高级选项`,重启软件。设置页的`快捷识图`板块会多出两组条目: + +- **截图联动 快捷键**:您可设置一组快捷键,来触发该功能。 +- **联动发送按键**:触发识图,并将识别结果写入剪贴板后,可以发送一组指定按键。**次**表示重复发送按键的次数。 经过测试,Umi-OCR可以顺利地与 [CopyTranslator](https://github.com/CopyTranslator/CopyTranslator) 及 [沙拉查词](https://github.com/crimx/ext-saladict) 联动触发翻译,以下是配置方法。 @@ -361,7 +337,7 @@ OCR识别出的文本是按“块”划分的,通常一行文字分为一块 2. 如果不介意CopyTranslator监听剪贴板(每次剪贴板变动都尝试翻译),那么勾选Umi-OCR的`自动复制结果` 和CopyTranslator的`监听剪贴板`即可。 ![](https://tupian.li/images/2023/06/20/64915f826f16d.png) -3. 如果不一定始终开启监听剪贴板,又希望Umi-OCR在任何情况下能唤起CopyTranslator,可以这样处理:CopyTranslator在设置里勾选`双Ctrl+C翻译`;Umi-OCR的`自动复制后发送按键`录制为`ctrl+c`,`2`次。 +3. 如果不一定始终开启监听剪贴板,又希望Umi-OCR在任何情况下能唤起CopyTranslator,可以这样处理:CopyTranslator在设置里勾选`双Ctrl+C翻译`;Umi-OCR的`联动发送按键`录制为`ctrl+c`,`2`次。 ![](https://tupian.li/images/2023/06/20/6491611305570.png) ##### 联动 沙拉查词 @@ -370,7 +346,7 @@ OCR识别出的文本是按“块”划分的,通常一行文字分为一块 2. 打开沙拉查词的插件设置页面,左边栏选择`基本选项`,右边栏勾选`后台保持运行`。(如果不勾选也能使用,但必须保持浏览器开启。) 3. 左边栏点击`隐私设置`,右边栏点击`设置快捷键`。 ![](https://tupian.li/images/2023/06/20/649165cae4b87.png) -4. 在弹出的新页面中,将沙拉查词的`在独立窗口中搜索剪贴板内容`设置任意一组快捷键,然后右边改为`全局`。Umi-OCR的`自动复制后发送按键`录制为相同快捷键,`1`次。 +4. 在弹出的新页面中,将沙拉查词的`在独立窗口中搜索剪贴板内容`设置任意一组快捷键,然后右边改为`全局`。Umi-OCR的`联动发送按键`录制为相同快捷键,`1`次。 ![](https://tupian.li/images/2023/06/20/649165faa434f.png) 5. 回到沙拉查词的设置页,左边栏点击`权限管理`,勾选`读取剪贴板`。 ![](https://tupian.li/images/2023/06/20/649165f7dbf18.png) @@ -597,6 +573,11 @@ OCR识别出的文本是按“块”划分的,通常一行文字分为一块 点击版本号链接可前往对应备份分支。 +##### [v1.3.6](https://github.com/hiroi-sora/Umi-OCR/tree/release/1.3.6) `2023.9.26` +- 新功能:更强大的段落合并方案-`单行/多行自然段/多行代码段`。支持自动判断中/英文段落,采取对应的合并规则。 +- 移除一些过时的段落合并方案。 +- 功能调整:`截图联动` 划分为独立的功能,不受常规截图OCR影响。 + ##### [v1.3.5](https://github.com/hiroi-sora/Umi-OCR/tree/release/1.3.5) `2023.6.20` - 新功能:复制识别结果后,可发送指定按键,以便联动唤起翻译器等工具。 diff --git a/main.py b/main.py index 51ec6948..29d0a9b4 100644 --- a/main.py +++ b/main.py @@ -4,11 +4,11 @@ from utils.config import Umi from ui.win_main import MainWin -Umi.ver = '1.3.5' -Umi.pname = 'Umi-OCR' -Umi.name = f'{Umi.pname} v{Umi.ver}' -Umi.website = 'https://github.com/hiroi-sora/Umi-OCR' -Umi.about = '免费、开源的离线OCR软件' +Umi.ver = "1.3.6" +Umi.pname = "Umi-OCR" +Umi.name = f"{Umi.pname} v{Umi.ver}" +Umi.website = "https://github.com/hiroi-sora/Umi-OCR" +Umi.about = "免费、开源的离线OCR软件" def main():