Chuyển đến nội dung
Diễn đàn CADViet
Đăng nhập để thực hiện theo  
hhhhgggg

lisp đổi font cho text sang font .VnHelvetlnsH !!!

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

Bác pro nào viết giúp em cái Lisp đổi font của Text sang font .VnHelvetlnsH Với !!!

2 cái hoàn toàn khác nhau, bác Tuệ à, 1 cái là đổi Font cho Text còn cái bác viết cho em rồi là đổi Font cho toàn bộ Style. Như vậy tất cả các đối tượng Text khác đều bị đổi Font. Còn cái Lisp này theo em nghĩ thì phải đổi thằng Text được chọn sang 1 Style khác và Font của Style đó là Font .VnhelvetlnsH phải ko ?

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
2 cái hoàn toàn khác nhau, bác Tuệ à, 1 cái là đổi Font cho Text còn cái bác viết cho em rồi là đổi Font cho toàn bộ Style. Như vậy tất cả các đối tượng Text khác đều bị đổi Font. Còn cái Lisp này theo em nghĩ thì phải đổi thằng Text được chọn sang 1 Style khác và Font của Style đó là Font .VnhelvetlnsH phải ko ?

Bạn dùng thử đoạn Code này xem nhé :

(defun c:doitext()
(Prompt "\nBan chon Text can chuyen :")
(setq ss (ssget '((0 . "TEXT"))))
(setq po '(0 0))
(setq tue "I")
(command ".-style" "Standard" ".VnHelvetInsH Medium" "250" "1" "0" "n" "n")
(command "text" "j" "TC" po "0" tue) 
(command "zoom" "all")
(command "MATCHPROP" po ss "")
(command "erase" po1 "")
(command "zoom" "p")
)

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
Bạn dùng thử đoạn Code này xem nhé :

(defun c:doitext()
(Prompt "\nBan chon Text can chuyen :")
(setq ss (ssget '((0 . "TEXT"))))
(setq po '(0 0))
(setq tue "I")
(command ".-style" "Standard" ".VnHelvetInsH Medium" "250" "1" "0" "n" "n")
(command "text" "j" "TC" po "0" tue) 
(command "zoom" "all")
(command "MATCHPROP" po ss "")
(command "erase" po1 "")
(command "zoom" "p")
)

Ko được bác Tuệ à, Bác phải sửa đôi chút.

1: Lisp của bác thay đổi chiều cao của Text = 250 là sai ở đây yêu cầu chỉ đổi Font chữ thôi, giữ nguyên chiều cao ban đầu của Text

2: Lisp thay đổi Font của Style Standar, làm đổi font của các đối tượng khác.

Mong bác sửa giúp 2 lỗi, Theo ý kiến của em thì mình sẽ đổi đối tượng được chọn sang 1 Style mới là CADVIET , và

Font của Style đó là .VnHelvetInsH Medium.

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
Ko được bác Tuệ à, Bác phải sửa đôi chút.

1: Lisp của bác thay đổi chiều cao của Text = 250 là sai ở đây yêu cầu chỉ đổi Font chữ thôi, giữ nguyên chiều cao ban đầu của Text

2: Lisp thay đổi Font của Style Standar, làm đổi font của các đối tượng khác.

Mong bác sửa giúp 2 lỗi, Theo ý kiến của em thì mình sẽ đổi đối tượng được chọn sang 1 Style mới là CADVIET , và

Font của Style đó là .VnHelvetInsH Medium.

1 : đang tìm giải pháp

2 : Bạn đổi chuổi "Standard" thành chuổi "CADVIET" trong đoạn Code trên là được

 

Thiết nghĩ, trong bài toán của bạn không nhất thiết phải dùng Lisp để giải quyết vấn đề.

Chỉ cần sử dụng CAD là được.

Bạn dùng lệnh style tạo style mới mang tên CADViet và Font của Style đó là .VnHelvetInsH Medium.

Cái này mình đã làm đoạn Code cho bạn rồi nhé.

 

Chọn Text cần chuyển. Bấm Ctrol+1. Trong menu xổ xuống Text -> Chọn style : CADVIET là OK. Cần gì phải viết LISP. OK?

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
1 : đang tìm giải pháp

2 : Bạn đổi chuổi "Standard" thành chuổi "CADVIET" trong đoạn Code trên là được

 

Thiết nghĩ, trong bài toán của bạn không nhất thiết phải dùng Lisp để giải quyết vấn đề.

Chỉ cần sử dụng CAD là được.

Bạn dùng lệnh style tạo style mới mang tên CADViet và Font của Style đó là .VnHelvetInsH Medium.

Cái này mình đã làm đoạn Code cho bạn rồi nhé.

 

Chọn Text cần chuyển. Bấm Ctrol+1. Trong menu xổ xuống Text -> Chọn style : CADVIET là OK. Cần gì phải viết LISP. OK?

Rõ ràng là dùng CAD thì cũng làm được nhưng mất nhiều thao tác, mất thời gian trong khi công việc thường xuyên phải làm như vậy. Ngôn ngữ lập trình Lisp là để đẩy nhanh tốc độ làm CAD mà, cho nên mới phải viết ra lisp. Em đã đổi cái Standar thành CAD việt trước khi phản hổi cho bác nhưng mà ko đượ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
Rõ ràng là dùng CAD thì cũng làm được nhưng mất nhiều thao tác, mất thời gian trong khi công việc thường xuyên phải làm như vậy. Ngôn ngữ lập trình Lisp là để đẩy nhanh tốc độ làm CAD mà, cho nên mới phải viết ra lisp. Em đã đổi cái Standar thành CAD việt trước khi phản hổi cho bác nhưng mà ko được !

Bác Tuệ dào này bận hay sao mà ko thấy sửa giúp em vậy ?

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
Sao ko bác Pro nào chịu viết giúp em vậy ??????????

Bác Pro nào biết Lisp thì viết hộ bác ấy đi, e ko bit chứ e bit thì e viết cho bác ấy liề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
Bác Tuệ dào này bận hay sao mà ko thấy sửa giúp em vậy ?

Bạn Tue VN chắc bận cái jì đó thôi mình viết giúp bạn vậy.

-Lệnh là DF

-Điều kiện các text của bạn phải có giá trị độ cao riêng không phụ thuộc vào độ cao của kiểu chử:

 

(defun c:df ()

(command "undo" "be")

(command "-style" "doifont" ".VnHelvetInsH Medium" "0" "1" "0" "n" "n")

(prompt "\nChon chu muon chinh.")

(setq ss (ssget))

(setq c 0)

(if ss (setq e (ssname ss c)))

(while e

(setq e (entget e))

(if (= (cdr (assoc 0 e)) "TEXT")

(progn

(setq txt "doifont")

(setq e (subst (cons 7 txt) (assoc 7 e) e))

(entmod e)

)

)

(setq c (1+ c))

(setq e (ssname ss c))

)

(command "undo" "end")

(Prin I)

)

 

Kiểu chử tạo ra để chuyển có tên là doifont.

  • 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
Bạn Tue VN chắc bận cái jì đó thôi mình viết giúp bạn vậy.

-Lệnh là DF

-Điều kiện các text của bạn phải có giá trị độ cao riêng không phụ thuộc vào độ cao của kiểu chử:

 

(defun c:df ()

(command "undo" "be")

(command "-style" "doifont" ".VnHelvetInsH Medium" "0" "1" "0" "n" "n")

(prompt "\nChon chu muon chinh.")

(setq ss (ssget))

(setq c 0)

(if ss (setq e (ssname ss c)))

(while e

(setq e (entget e))

(if (= (cdr (assoc 0 e)) "TEXT")

(progn

(setq txt "doifont")

(setq e (subst (cons 7 txt) (assoc 7 e) e))

(entmod e)

)

)

(setq c (1+ c))

(setq e (ssname ss c))

)

(command "undo" "end")

(Prin I)

)

 

Kiểu chử tạo ra để chuyển có tên là doifont.

Cảm ơn bác Duy nhiều nhé, Bác đã giải được bài toán cho em rồi. Diễn đàn của mình thật tuyệt vời !

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

Đăng nhập để thực hiện theo  

×