BallonsTranslator icon indicating copy to clipboard operation
BallonsTranslator copied to clipboard

Feature Request:自动嵌字中的自动字体字号大小优化

Open youmengjia2002 opened this issue 6 months ago • 1 comments

版本信息

https://github.com/dmMaze/BallonsTranslator/commit/d671bfb5d988dc7028708ac0f81223631f167658

建议类型

新功能

描述

不知道目前自动字体大小是根据什么逻辑实现的。

能否优化为根据文本识别框大小及翻译后字数来调整字体大小,尽量占满整个文本识别框且不外溢。

图片

目前大量存在字体过小,占不满文本框情况

Image

Image

以及字体过大外溢一行的情况

Image

Image

其他信息

No response

youmengjia2002 avatar Jun 20 '25 14:06 youmengjia2002

提供一个思路: 执行文本检测后就会得到各个文本框的尺寸和文本块内字号大小, 现在翻译后,译文行数或长度超过原有的尺寸,会将文本框往扩展。 可以通过: 1、先记录各个文本块的初始文本框尺寸和初始检测字号, 2、翻译后,计算初始文本框高度跟单行最长的译文长度(已经自动分行的译文)的比值(竖排文本)scaley, (如果是自动截断换行的译文则scaley=1) 同时计算初始文本框高度跟译文宽度(行数字号行间距)的比值scalex, 3、取scaley和scalex的小值为scalez, 重新确定最终的字号为初始字号scalez系数(系数0.9左右,再细调) 4、恢复初始的文本框尺寸

505728366 avatar Jul 09 '25 09:07 505728366