# dxf-merge **Repository Path**: leimiemie/dxf-merge ## Basic Information - **Project Name**: dxf-merge - **Description**: No description available - **Primary Language**: Python - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 1 - **Created**: 2021-10-09 - **Last Updated**: 2025-12-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README pip install ezdxf[draw] -i https://pypi.tuna.tsinghua.edu.cn/simple ## enhance 以上说的已经几乎都全部改进。几年来还做了很多其它改进,难以罗列。后来我也不再开激光,主要任务是画图。所以它还分支出来了命令行版本,给一个solidworks的三维转cad二维的插件,提供辅助。 ## enhance 感谢!虽然软件还没有实现预想中的大功能,即直接根据板材分类,但目前也已经明显提升了效率,降低了心理压力,人工去文件夹里一个一个文件捞出大量图整理,繁琐且压力大,因为怕出错要核对好几遍,还要一一加字,为了快、还不打文件名、只加关键数字(导致信息量不足经常需要回翻文件夹)。每次大量新订单一来,最烦这个事。电脑软件就聪明太多了。非常感谢大神,希望继续合作优化。 待改进, 可以把大图另外生成到一个图纸里面,宽度6000,高度6000。来避免只能靠人工去另外拉大图。如此就简单粗暴的解决了放一起混乱难看,不放又要人工放的问题。 目前只有一行,要融入二行文字才方便拉图进一步整理(现在我是在手动加第二行字),如有第三行文字(通常为下单日期)会方便考虑零件的切割顺序。但一行的好处是简洁。最好是能允许我改配置文件,要1行字还是2行还是3行。第一行文件名,第二行母文件夹名,第三行奶奶辈文件夹名。 目前只能选择一个文件夹下的文件夹,如果我处理三天的订单需要操作三次,不太方便。要允许增加不同文件夹。注意,仍然是选包含文件夹的文件夹,暂时先不考虑支持直接选择只包含文件的文件夹。 最后,有空再考虑一下我按材料分类的想法,我觉得这功能是很有必要的。以及交互界面的设计。 待修复, 漏字问题, 小瑕疵, 第一列大字仍然可能会超过边框。 dxf文件用cad打开后,图形是以块的形式,做一些操作前需要打散,不太方便。我还不能全选打散因为会导致文字乱码。 ## req 我工作是开激光的,每天整理排版比较麻烦。想定做个软件,批量给dxf图形加文字标识并聚合在一个图里。 有多个文件夹,每个文件夹下有多个dxf图形。在软件中,首先是添加任务,我可以调用资源管理器来选择文件夹(允许同时选择在一块儿的多个文件夹)(能选文件夹就行、不需要支持选择dxf文件),选择后,路径名字进入软件的显示信息的框里,然后我还可以继续去选择其它文件夹,界面里路径名往下依次排列,在选择多个想要的后,然后我点击处理,软件就去读取里面那些dxf文件(不要改动原文件),处理后输出一个新dxf图形文件。 效果如图,把图根据不同文件夹分行,第一列是文件夹名(通常描述是什么产品),下面还有此文件夹所在文件夹名(这个是为了看到放图日期,那堆文件夹是按日期在放)。图形区域,每个图形底部融入了文件名(通常描述用什么板材切的什么零件切多少个),发现文件名的倒数第2个字为数字时(不管是几位数),数字要加大醒目。为了方便看,图中的线格子是要的。 聚合时,给每个图分配多大的长和宽,实际生产不可能有非常大的零件,但却有些很大的图形比如画着有多个零件且分散开、导致占用范围大的图。为了摆放整齐且方便查看,你要设定一个比较合适的范围(比如高度3500,宽度4000。要允许设置改动)。处理时如果只是宽度超过了限定,就给它加一倍的宽度范围,如果仍超出,再继续加一个限定宽度范围。但如果高度超过了限定,弹窗提醒,让我进行选择,跳过这文件,还是额外划分更大的区域放置,(因为如果强行改动行高度会很难看)。这个额外区域,不妨放到第一行的上面一行去,高度不限制它,多高的图都可以容纳,如果有多个这种超大图,就从左到右一直排列。在超大行里,第一列不能再是文件夹名(因为可能不是唯一的),把所在文件夹名、以及文件夹所在文件夹名融入到其文件名的下方去。 以上说的是直接铺列功能,另外要增加一个重要功能选项,勾选后,在新图形里,识别文件名里的关键字、根据不同板材分行,比如0.6 201拉丝玫瑰金,0.8拉丝黑钛,而不是再根据文件夹分行。首列为大字体的板材名。根据不同板材分行,具体怎么分呢?在设置项让我自己定义,文件名里必含关键词(提供5个填写框,可以不填满)、必不含关键词(提供2个填写框,可以不填)、对应成什么板材名(也自己填),最多可填写40种可能,也许对应着你代码里的case1、case2……。比如发现名字里包含“0.6,拉丝,黑钛,201,4个关键词,就分类到“0.6 201拉丝黑钛”的行里。如果不让自定义,写死了条件是做不好的,何况行业中使用的板材也会变化,有时有新的种类加入。匹配不到板材的或者超过限高的,放到最上面的“超高或其它”行去,下方都带三行字。另外就是模糊匹配,有的放图的师傅,文件名里偷懒不加小数点,比如0.6板1件,(代表用0.6毫米的常规板),写成06板1件,你要把06也识别成0.6才行,所以,只要发现以0为开头的2位数值,都在中间插入小数点,再去匹配板材。 使用此分类功能后,效果如图,把零件图根据不同板材分行,第一列是板材名,每个图底部融入了三行文字标识,分别是文件名,所在文件夹名,所在文件夹的所在文件夹名,文件名的倒数第2个数字仍要加大醒目。按板材分类时,以什么作为纵向排的顺序,在设置里让我自定义板材种类的优先级。 如果被选中处理文件夹里还有子文件夹,弹窗让我知道是在什么路径下发现的,然后我点击忽略,就跳过了,不用读取。 设置里应有的:单个图形限定高度,限定宽度,是否根据板材分类,板材定义,板材排列优先级,dxf保存路径。(这些设置都要能够记忆)