2022年12月19日 星期一

btbe_批次將資料夾中的dxf檔內的文字轉換成聚合線

 程式名稱 : btbe.vlx    <--  for AutoCAD

載入指令 : (vl-load-all "btbe")

執行指令 : btbe


for zwcad -> btbe.zelx

**********************************************************************

BTBE.vlx 用於將資料夾 ( 含子資料夾 ) 中的所有 DXF 檔, 批次做 [ 文字 ] 轉換為 [ 聚合線 ], 並縮放圖形到實際範圍後, 再存檔...


文字的 autocad 圖元為 [ text ], 不處理由 [ mtext ] 所建立的文字.

文字的圖層 LAYER 名稱需為 "YELLOW", 才執行 文字轉聚合線.

位於其他名稱圖層的文字都不會處理.

即此程式只處理 (LIST '(0 . "TEXT") '(8 . "YELLOW")) -->>> 圖層 YELLOW 的 TEXT 文字串.

文字的字體最好選擇單線條的字體檔,   .ttf 的字體會轉成描邊的聚合線.


載入程式一定要輸入 (vl-load-all "btbe") 才能執行 script 內的指令, btbe.vlx 程式才能開啟多個 .DXF 檔案, 並執行 script 載入副程式.


(load "btbe") 只能在目前作用中的圖檔載入,無法跨檔案執行.


可建立 toolbar 的小按鈕, 方便快速執行此程式.


在 [ 巨集 ] 欄輸入:


^C^C(vl-load-all "btbe");btbe


完成後, 按小按鈕, 依顯示的對話框選取 資料夾, 即可執行批次的文字轉聚合線...



*** btbe.vlx 在不同的工作環境中, 可能會有不明的錯誤產生.

以 ToolBar 按鈕載入, 執行 BTBE.vlx

選取 .dxf 檔所在的資料夾



執行後到 .dxf 檔的資料夾開啟檔案, 檢查 yellow 圖層的文字確實轉成pline.




2021.05.03

將 預先載入 acopm.arx 的功能加入 btbe.vlx 中, 執行 btbe.vlx 即預先載入 acopm.arx 和 txtexp.lsp 兩個小程式, 在不同的 autocad 環境中, 減少發生不明原因的錯誤.


2021.07.12

新增雷射刻字的字體檔; simplex.shx,chineset.shx 的字體檔筆畫較連續, 不會有太多線/弧相近但不相連的情形. 不管是否存在 LASER-TEXT 的文字型式, 一律重設文字型式的字體檔. 只要找到圖層為YELLOW的文字, 就更新文字的文字型式為 LASER-TEXT.


2021.07.14

字體由 simplex.shx 改為最少筆劃,最少圓弧控點的 txt.shx

simplex.shx 的圓弧控點多,看起來較圓滑, 但雷射劃線較麻煩. 所以改為 txt.shx