将TrueType字体转换为KlarText NC代码
type2nc的Python项目详细描述
type2nc-将字体轮廓转换为klartext代码
type2nc将字体文件中字符的轮廓转换为klartext 代码。生成的数控程序可用于TNC控制装置上雕刻 相应字体的文本。数控程序的使用类似于 刻印周期225,带有qs参数。
要求
要在控件上使用生成的klartext代码,它必须具有以下内容 循环和功能:
- 循环7
- 循环10
- 循环26
- 仪器
- 斯特伦
- strcomp
- fn 9
- fn 10
- fn 12
测试是在一台装有tnc 620的机器上进行的,软件版本为817600-03。AS 只要满足上面列出的要求,就可以正常工作。 对较小控件(如tnc 128)的支持尚未测试,但输出没有 包含任何循环路径。
安装
为了能够使用type2nc,您需要python 3和以下库 安装在系统上:
从python打包索引安装
要从python打包索引安装type2nc及其依赖项, 首先安装python3。成功设置后,键入
PIP安装类型2NC
在命令行上。 要启动并运行freetype,可能需要安装 为了图书馆。在linux和macos上,库可能已经 安装。对于Windows,请按照本Github repo上的说明进行操作。
程序使用
首先,选择一种字体,该字体包含您需要的字符 需要。不是每个字体都带有 Unicode标准。如果字体中没有字符, 它将被替换为占位符。一些字体来源:
确保您拥有使用该字体所需的权限。
打开命令提示符并运行python3 type2nc.py或双击
type2n.py
文件选择一个或多个字体文件
创建并选择结果的输出文件夹
输入转换的步长。作为一个人物的轮廓 由曲线组成,这些曲线必须分解成更小的线 部分。所选步长越小,曲线越模糊 将。较小的步长还可以增加生成的文件大小 (几百MB)。
程序将读取字体文件并将轮廓转换为 KlarText代码。这可能需要一些时间,具体取决于步长 先前已选定
当程序完成时,它将显示有关 生成的代码
完成后,你会发现一个数控每个字体文件的程序 你之前选择的。还有一个叫做
type2nc\u demo.h
和一个使用示例。
命令行界面
该程序也可以从命令行使用。获取有关
可用选项,运行python3 type2nc.py-h
输出:
`用法:type2nc.py[-h][-i字体输入文件[字体输入文件] [-o输出文件夹][-s步长][-r]
从字体文件创建KlarText NC代码
可选参数: -h,--帮助显示此帮助消息并退出 -i字体输入文件[字体输入文件],--输入字体输入文件[字体输入文件] 一个或多个字体文件的路径 -o输出文件夹,--out输出文件夹 输出文件夹的路径。如果未设置,则使用当前 目录。 -S台阶尺寸,--台阶尺寸台阶尺寸 步长:介于0.001(非常精细)和0.2(非常精细)之间 粗的) -R,--如果设置为空,则移除_empty,输出不包含空的标签 字符`
NC代码用法
NC程序使用这些Q参数:
- qs1:要雕刻的文本
- Q1600:曲面Z坐标
- Q1601:铣削深度
- Q1602:字符之间快速进纸的安全距离
- q1603:文本左下角的x坐标
- q1604:文本左下角的y坐标
- Q1605:铣削进给
- Q1606:雕刻文本的大致高度
- Q1607:文本基线的角度
NC程序内部使用以下参数:
- ql10到ql25:内部计算的局部q参数
- qs2和qs3:用作临时存储的字符串参数
在设置q参数qs1以及q1600到q1607之后,使 使用所选字体的代码对生成的.h文件进行pgm调用。
已知问题
缺少freetype库
在windows上,安装freetype py时,所需的dll文件不是 自动安装。当尝试运行type2nc时,会收到一条错误消息 结束于runtimeerror:freetype library not found。要解决这个问题,请跟随 有关此github repo的说明。
NC代码中不包含字符
为了减小输出文件的文件大小,选择了限制 Unicode标准特定部分的字符范围:
- 基本拉丁语:0x0020到0x007e
- C1_ctrl_and_latin1_增补:0x0080至0x00FF
- IPA扩展:0x0250到0x02AF
- 希腊语和科普特语字符:0x0370到0x03ff
- 西里尔字符:0x0400到0x04ff
- 西里尔文增补字符:0x0500至0x052f
- 亚美尼亚字符:0x0530到0x058f
- 希伯来文字符:0x0590到0x05ff
- 阿拉伯字符:0x0600到0x06ff
- 叙利亚文字符:0x0700至0x074f
- 阿拉伯字符:0x0750至0x077f
- 常规_标点:0x2000到0x206f
- 箭头字符:0x2190到0x21ff
- 数学字符:0x2200到0x22ff
- 其他技术字符:0x2300到0x23ff
- 其他符号:0x2600到0x26ff
- 丁巴:0x2700至0x27bf
- 中日韩统一汉字第1部分:0x4e00至0x9fff
这总共产生23535个字符
如果您需要更多或其他字符,请告诉我,我将添加这些字符。
Windows安装程序
没有一个完整的安装程序可用。如果有足够的兴趣,我可以 研究构建安装程序版本。