Chuyển đến nội dung
Diễn đàn CADViet
  • Thông báo

    • Nguyen Hoanh

      CADViet đã hoàn tất nâng cấp   14/09/2017

      Chào các bạn, CADViet đã hoàn tất việc nâng cấp lên phiên bản mới. Tất cả các chức năng đã hoạt động theo kỳ vọng của ban quản trị. Nếu có vấn đề gì cần phản hồi, các bản post ở đây nhé: Trân trọng, Nguyễn Hoành.
hanam1210

lisp đổi font của text style siêu nhanh !

Các bài được khuyến nghị

hanam1210    1

Em hay phải chỉnh sửa bản vẽ cho chuẩn ISO, hay phải chỉnh font của text style. Em đang cần 1 lisp làm nhiệm vụ như sau. Khi e đánh lệnh và tích vào 1 text thuộc 1 style nào đó. Thì font của style đó được chuyển sang font .VNAVANTH (chế độ regular). Mong các bác biết về lisp giúp đỡ em ạ !

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
cd2k44    121

Nếu các textstyle kia của ban không đánh theo font TCVN thì khi bạn chuyển Font bạn sẽ bị lỗi.Đã có tool chuyển font chữ.Bạn search là có đó

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
hanam1210    1

Nếu các textstyle kia của ban không đánh theo font TCVN thì khi bạn chuyển Font bạn sẽ bị lỗi.Đã có tool chuyển font chữ.Bạn search là có đó

Vâng. Nhưng đây là trường hợp các text được đánh theo font TCVN.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
cd2k44    121

Gửi bạn,hy vọng đúng ý bạn

;free lisp by cadviet,cd2k44
;link bai viet http://www.cadviet.com/forum/index.php?showtopic=53830
(defun c:FTEXT (/ ent tstyle )
(command "undo" "be")
(setq ent (entsel "\n Pick text :"))
(setq TSTYLE (cdr (assoc 7 (entget (car ent)))))
(command "STYLE" TSTYLE ".vnavanth" "0" "1" "0" "N" "N")
(setvar "TEXTSTYLE" Tstyle)
(command "undo" "end")
)

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
hanam1210    1

Cảm ơn bác CD2K44 nhé. Lisp chuẩn theo yêu cầu rồi ạ. Nhưng khi e muốn tự tạo sang 1 code khác để đổi sang loại font .vntimeh.shx thì ko được nhỉ ? hì. bác xem giúp em xem lỗi ở chỗ nào nhé :

(defun c:FH (/ ent tstyle )

(command "undo" "be")

(setq ent (entsel "\n Pick text :"))

(setq TSTYLE (cdr (assoc 7 (entget (car ent)))))

(command "STYLE" TSTYLE ".vntimeh.shx" "0" "1" "0" "N" "N")

(setvar "TEXTSTYLE" Tstyle)

(command "undo" "end")

)

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Doan Van Ha    2.676

Cảm ơn bác CD2K44 nhé. Lisp chuẩn theo yêu cầu rồi ạ. Nhưng khi e muốn tự tạo sang 1 code khác để đổi sang loại font .vntimeh.shx thì ko được nhỉ ? hì. bác xem giúp em xem lỗi ở chỗ nào nhé :

 

 

 

(defun c:FH (/ ent tstyle )

(command "undo" "be")

(setq ent (entsel "\n Pick text :"))

(setq TSTYLE (cdr (assoc 7 (entget (car ent)))))

(command "STYLE" TSTYLE ".vntimeh.shx" "0" "1" "0" "N" "N")

(setvar "TEXTSTYLE" Tstyle)

(command "undo" "end")

)

Bạn sửa (command "STYLE" TSTYLE ".vntimeh.shx" "0" "1" "0" "N" "N") thành (command "STYLE" TSTYLE ".vntimeh" "0" "1" "0" "N" "N")

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
hanam1210    1

Bạn sửa (command "STYLE" TSTYLE ".vntimeh.shx" "0" "1" "0" "N" "N") thành (command "STYLE" TSTYLE ".vntimeh" "0" "1" "0" "N" "N")

hic. Bác Hà hiểu nhầm rồi. Font .vntimeH.SHX cơ ạ !

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Doan Van Ha    2.676

hic. Bác Hà hiểu nhầm rồi. Font .vntimeH.SHX cơ ạ !

Thì sửa (command "STYLE" TSTYLE ".vntimeh.shx" "0" "1" "0" "N" "N") thành (command "STYLE" TSTYLE ".vntimeh.shx" "0" "1" "0" "N" "N" "N")

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
hanam1210    1

Thì sửa (command "STYLE" TSTYLE ".vntimeh.shx" "0" "1" "0" "N" "N") thành (command "STYLE" TSTYLE ".vntimeh.shx" "0" "1" "0" "N" "N" "N")

hic. Nó mà đơn giản thế thì e đã làm được ạ ? E đổi ngay từ đầu thành như thế nhưng nó ko chạy đc ạ ? hic. Nhưng e đã làm đc rùi. Phải sửa thành

(command "STYLE" TSTYLE ""vntimeh.shx,vns.shx"" "0" "1" "0" "N" "N" "N")

Thanks bác nhé !

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
NvThanh    1

hic. Nó mà đơn giản thế thì e đã làm được ạ ? E đổi ngay từ đầu thành như thế nhưng nó ko chạy đc ạ ? hic. Nhưng e đã làm đc rùi. Phải sửa thành

(command "STYLE" TSTYLE ""vntimeh.shx,vns.shx"" "0" "1" "0" "N" "N" "N")

Thanks bác nhé !

Cả 2 cách trên đều không đúng thì phải, mình đã thử cách này thì ok .

;; free lisp from cadviet.com
;;; this lisp was downloaded from http://www.cadviet.com/forum/index.php?showtopic=53830&pid=167735&st=0entry167735
;free lisp by cadviet,cd2k44
;link bai viet http://www.cadviet.com/forum/index.php?showtopic=53830
(defun c:FT (/ ent tstyle )
(command "undo" "be")
(setq ent (entsel "\n Pick text :"))
(setq TSTYLE (cdr (assoc 7 (entget (car ent)))))
(command "STYLE" TSTYLE "vntimeh.shx,vns.shx" "0" "1" "0" "N" "N" "N")
(setvar "TEXTSTYLE" Tstyle)
(command "undo" "end")
)

bác nào biết thêm tùy chọn tìm và thay thế toàn bộ font trong 1 file cad thành font .vntimeh.shx thì tốt quá

Cảm ơn nhiều !

Chỉnh sửa theo NvThanh

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
phamthanhbinh    3.123

Cả 2 cách trên đều không đúng thì phải, mình đã thử cách này thì ok .

;; free lisp from cadviet.com
;;; this lisp was downloaded from http://www.cadviet.com/forum/index.php?showtopic=53830&pid=167735&st=0entry167735
;free lisp by cadviet,cd2k44
;link bai viet http://www.cadviet.com/forum/index.php?showtopic=53830
(defun c:FT (/ ent tstyle )
(command "undo" "be")
(setq ent (entsel "\n Pick text :"))
(setq TSTYLE (cdr (assoc 7 (entget (car ent)))))
(command "STYLE" TSTYLE "vntimeh.shx,vns.shx" "0" "1" "0" "N" "N" "N")
(setvar "TEXTSTYLE" Tstyle)
(command "undo" "end")
)

bác nào biết thêm tùy chọn tìm và thay thế toàn bộ font trong 1 file cad thành font .vntimeh.shx thì tốt quá

Cảm ơn nhiều !

Hề hề hề,

Bạn thử làm thế này xem sao nhé:

1/- Vô hiệu hóa dòng code (setq ent (entsel "\n Pick text :")) bằng cách thêm một vài dấu ; phía trước nó.

2/- Thêm vào dưới dòng code này đoạn code như sau:

(setq sst (acet-ss-to-list (ssget "x" (cons 0 "TEXT,MTEXT"))))

(foreach ent sst

3/- Thêm một dấu ngoặc đóng hàm foreach vào dưới dòng code: (setvar "TEXTSTYLE" Tstyle)

 

Sau đó load lại lisp và chạy thử xem có được như ý bạn muốn không nhé.

Hề hề hề,.....

Chúc bạn vui.

  • Vote tăng 1

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
master_worse    87

Em hay phải chỉnh sửa bản vẽ cho chuẩn ISO, hay phải chỉnh font của text style. Em đang cần 1 lisp làm nhiệm vụ như sau. Khi e đánh lệnh và tích vào 1 text thuộc 1 style nào đó. Thì font của style đó được chuyển sang font .VNAVANTH (chế độ regular). Mong các bác biết về lisp giúp đỡ em ạ !

 

Nếu bạn còn cần, thì thử cái này xem

 

(defun c:TENLENH (/ text style ename asslst) ;; sua lai ten lenh
 (setq text (entsel "\nPick a text or Mtext"))
 (setq style (cdr (assoc 7 (entget (car text)))))
 (setq ename (tblobjname "style" style))
 (setq asslst (entget ename))
 (entmod (subst (cons 3 "FONT-MOI") (assoc 3 asslst) asslst)) ;; sua lai font
 (command "_.regen")
 (princ)
) ;_ end defun

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
ketxu    2.649

@hanam1210 : nếu lần tới bạn lập topic mới trong box Autolisp về 1 vấn đề ĐÃ CÓKHÔNG TUÂN THEO NỘI QUY thì bài viết sẽ được chuyển vào thùng rác, mong bạn thông cảm và rút kinh nghiệm nhé. Have fun ^^

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
AutoTay.com    19

Chào các bác!

Theo em thử thì các lisp trên dùng để thay đổi Textsyle của tất cả các Text có cùng Textstyle với Text mình chọn phải không ạ?

Các bác viết dùm em 1 lisp chỉ thay đổi Textstyle của Text mình chọn với ạ!

Thank các bác nhiều!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
ketxu    2.649

Chào các bác!

Theo em thử thì các lisp trên dùng để thay đổi Textsyle của tất cả các Text có cùng Textstyle với Text mình chọn phải không ạ?

Các bác viết dùm em 1 lisp chỉ thay đổi Textstyle của Text mình chọn với ạ!

Thank các bác nhiều!

Chọn text => Ctrl + 1 => Đổi style trong bảng Properties.

Ngoài ra cũng phải nói thêm là lisp bạn hỏi chắc chắc đã có

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay


×