首页 > 其他分享 >批量筛选超标字符

批量筛选超标字符

时间:2024-07-26 13:42:12浏览次数:11  
标签:字符 字形 批量 python 超标 字体 筛选 安装

批量筛选超标字符

本教程由做字体网(www.zuoziti.com)友情提供!
本教程是制作手写字体系列教程,建议从序言部分开始阅读学习!如需交流,请加QQ924268440

字形中含有杂点是怎么产生的

  前面经历了一路的坎坷,我们终于做好了自己人生中第一款字体。但是我们发现,无论我们怎样认真,仍然会有疏漏,比如下图中这样的杂点。
  img
  在fontcreator中,我们发现这个“付”字字形并没有居中,它处在偏上偏左的位置。我们打开看看具体是什么原因。
  img
  原来是在这个字的右下方有一个杂点,这是因为我们在书写时不小心弄上了一个黑点,或者说是扫描的时候沾上了一些杂质。这样软件在导入的时候,就把这个小点也当成了字形的一部分,就把字形的主体部分顶到左上方了。从图上可以看出,字形主体部分已经超出了上图方框中的安全区域,这是不允许的。我们前面之所以让大家用灰度扫描,就是因为这个灰度模式可以把大部分杂质点都忽略掉,但是有一些颜色特别深的,却不能忽略掉。那我们现在需要做的就是把这些含有杂点的字形挨个找出来统一处理。如果用眼去找的话,确实比较麻烦,这里我提供了自动化工具,大家可以有选择的使用。

CMD批量取超标字符

  我写的这个自动化工具是要借助python和fonttools这两个免费工具。我们得先安装它们。
第一步,安装python。文末有免费下载地址。win7支持的最高版本可能是3.8,我这边用的例子是3.11。这里大家可以根据自己的系统去选择对应的版本。在安装的时候注意安装步骤底部这个“Add Python xxx to PASH”要打勾即添加环境变量。
  img
  安装完以后我们验证一下是不是已经安装好了。具体的方法是这样的,win7系统→开始→运行→输入cmd→输入python,之后出现版本信息即表示安装成功。如下图所示。
  img
  如果是win10系统,稍有些差别。win10系统→右键开始(注意是右键)→Windows PowerShell(管理员)→输入python,之后出现版本信息即表示安装成功。如下图所示。
  img
第二步,安装fonttools。用上面的方法打开cmd或Windows PowerShell窗口,执行一下安装命令(复制进去回车即可)。

pip install fonttools

  很快就可以安装完成了,我们再执行一下命令看一下是否安装成功。直接在窗口中输入“fonttools”(不含引号),返回版本信息就是表示成功的。
  img
第三步,打开我的自动化工具“CMD批量取超标字符”。注意这个工具只适用于用前面教程中的字体参数导出的字体,如果你是用其他参数做的字体,那我这个工具是不能用的!字体和软件要放在同一目录下,然后输入字体名,不要输入其他符号和空格,点击“一键执行”,稍等片刻软件就会把字体中超出标准的字形取出了。
  img
  取出的超标字符是这样的,如下图所示。后续我们只需要单独处理这些上下超标、上伸超标、下伸超标、较宽或者较小的字,比如经过放大、缩小、加粗、减瘦等等的操作,这样基本上就可以把字形调整的比较统一了,处理完后再把他们替换到原字体中即可。
  img

下载本文相关软件

  本人是一个小白开发者,本人的原则是凡是网上能搜索到的软件本站一律不收费,只有本人原创的一些辅助小软件才酌情收费,本着量贩式的原则用到哪个下载哪个,当然你也可以用其他的一些软件去替代。开发软件很艰难、书写教程很辛苦,希望你能赏我一杯咖啡☕,多谢!

python免费下载地址:https://wwno.lanzouf.com/b018c01xg 密码:fcrl
CMD批量取超标字符下载地址:https://mbd.pub/o/bread/ZZaUlZhp

标签:字符,字形,批量,python,超标,字体,筛选,安装
From: https://www.cnblogs.com/zuoziti/p/18325166

相关文章

  • C#中将多个excel档案汇总为一个excel档,并批量汇入oracle数据库
    privatevoidbt_bach_oracle_Click(objectsender,EventArgse){//將下載的excel匯總為一個excelstringsourceFolder=@"D:\123";//源文件夹路径stringdestinationFolder=@"D:\456";//目标文件夹路径stringdest......
  • Java筛选数据:List的contains和Map的get哪个快?
    在Java中,List的contains方法和Map的get方法在性能上有一些区别,主要取决于数据结构的特性和使用场景:List的contains方法:List是一个有序集合,使用线性查找来确定列表中是否包含某个元素。时间复杂度为O(n),其中n是列表的大小。对于小型的List或者在列表中的......
  • QQ音乐VIP歌曲批量下载后,一键全自动转换+ogg批量转码Mp3
    那天隔壁大妈笑眯眯地找到我,说:“阿星啊,大妈想学几首新的广场舞,你能不能帮大妈从QQ音乐里下几首歌?”我一听,这简单啊,立马答应下来。结果,一动手才发现,QQ音乐的VIP歌曲居然都是加密的,下载下来不是mgg就是mflac,根本没法直接听!于是,阿星开始了一场“解密+格式转换”的大冒险。经过......
  • SAP-PP-生产订单批量报工-2
    *&---------------------------------------------------------------------**&IncludeZPP001_FORM*&---------------------------------------------------------------------**&---------------------------------------------------------......
  • 微信小程序批量检测是否被封禁异常PHP代码
             ​      <?php//要检测的appid列表$appids=array('appid1','appid2','appid3');//使用实际的appid//循环调用接口检测小程序状态foreach($appidsas$appid){    $url='https://down.ychengsnsm.com/xcx/checkxcx.php?appid=......
  • 批量查询威胁情报
    批量查询威胁情报目录批量查询威胁情报1编写目的2实现目标3脚本实例1编写目的在提升蓝队进行对IP研判的效率工作时,通常有以下场景:需要对多个攻击IP进行查询研判;为了提高得到IP信息的准确程度,通常会到威胁情报共享平台查询关于IP的威胁情报。2实现目标将整理......
  • 批量打断相交线——ArcGIS 解决方法
    在数据处理,特别是地理空间数据处理或是任何涉及图形和线条分析的场景中,有时候需要把相交的线全部从交点打断一个常见的需求。这个过程对于后续的分析、编辑、或是可视化展现都至关重要,因为它可以确保每条线都是独立的,避免了因为线条重叠或相交而可能产生的错误或混淆。打断前......
  • Pytorch Dataloader 添加批量维度
    我认为这个问题已经被问过几次了,但我还没有在这里找到一个好的答案。所以我有一个由2个numpy数组组成的Pytorch数据集。以下是维度。特征=[10000,450,28]numpy数组。dim_0=样本数,dim_1=时间序列,dim_2=特征。基本上我有一个450帧长的数据,其中每......
  • DICOM格式转NII格式——SPM12批量码
     运行说明:subjectsdir换成自己的文件夹地址,有多少个受试者的DICOM就有多少个subjects子元素。 %-----------------------------------------------------------------------%Jobsavedon02-Sep-201918:21:16bycfg_util(rev$Rev:6942$)%spmSPM-SPM12(7219......
  • mp分页+批量 查询
    @OverridepublicPageDTOpageCoupons(UserCouponQueryquery){LonguserId=UserContext.getUser();userId=2L;LambdaQueryWrapper<UserCoupon>queryWrapper=newLambdaQueryWrapper<UserCoupon>().eq(UserCoupon::getUserId,userId);......