Chuyển đến nội dung
Diễn đàn CADViet
Tue_NV

[Đã xong] Lisp chỉnh style TEXT trong block thuộc tính

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

Cảm ơn bác,tiện thể cho mình hỏi trong bản vẽ có khoảng 50 block att chữ trong các block này chiều dày là 0.7 vậy có cách nào chỉnh về 1 nhanh nhất không?chứ dùng lệnh battman chỉnh từng block thì lâu lắm.

Sáng nay, nhân tiện sửa Lisp cho bạn huygo -> tiện thể sửa luôn cho bạn 79032

. Bạn thử cái này :

(defun c:wo( / ssdt sodt index tt entdt w)  
 (setq ssdt (ssget '((0 . "INSERT") (66 . 1)))
sodt (sslength ssdt)
index 0
  )
 (or *w* (setq *w* 1.0))
 (setq w (getreal (strcat "\n Nhap be rong < " 
			(rtos *w* 2 2) " > :")))
 (if w (setq *w* w) (setq w *w*))
 (repeat sodt
   (setq entdt (ssname ssdt index)
  index (1+ index))
   (while (/= (cdr(assoc 0 (entget entdt))) "SEQEND")
   	(setq
    entdt (entnext entdt)
  tt (entget entdt)
  tt (subst (cons 41 w) (assoc 41 tt) tt)
   	)
  	 (entmod tt)
   	(entupd entdt)
   )
 )
 (princ)
)

  • Vote tăng 2

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

Sáng nay, nhân tiện sửa Lisp cho bạn huygo -> tiện thể sửa luôn cho bạn 79032

. Bạn thử cái này :

(defun c:wo( / ssdt sodt index tt entdt w)  
 (setq ssdt (ssget '((0 . "INSERT") (66 . 1)))
sodt (sslength ssdt)
index 0
  )
 (or *w* (setq *w* 1.0))
 (setq w (getreal (strcat "\n Nhap be rong < " 
			(rtos *w* 2 2) " > :")))
 (if w (setq *w* w) (setq w *w*))
 (repeat sodt
   (setq entdt (ssname ssdt index)
  index (1+ index)
  entdt (entnext entdt)
  tt (entget entdt)
  tt (subst (cons 41 w) (assoc 41 tt) tt)
   )
   (entmod tt)
   (entupd entdt)
 )
 (princ)
)

Cảm ơn bác,nhân tiện bác thêm chức sửa chiều cao và text style trong block att này luôn giùm e,khi hỏi chiều cao và hỏi text style nếu không nhập enter thì giữ nguyên nếu nhập thì thay đổ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

Cảm ơn bác,nhân tiện bác thêm chức sửa chiều cao và text style trong block att này luôn giùm e,khi hỏi chiều cao và hỏi text style nếu không nhập enter thì giữ nguyên nếu nhập thì thay đổi.

Tue_NV sửa lại code wo -> đổi bề rộng Block Att. Bạn download Lisp wo ở bài viết trên của Tue_NV nhé.

Còn đây là Lisp đổi chiều cao của Block Att

và Lisp styb đổi Style của Block ATT về Textstyle hiện hành

(defun c:ho( / ssdt sodt index tt entdt w)  
 (setq ssdt (ssget '((0 . "INSERT") (66 . 1)))
sodt (sslength ssdt)
index 0
  )
 (or *w* (setq *w* 1.0))
 (setq w (getreal (strcat "\n Nhap chieu cao < " 
			(rtos *w* 2 2) " > :")))
 (if w (setq *w* w) (setq w *w*))
 (repeat sodt
   (setq entdt (ssname ssdt index)
  index (1+ index))
   (while (/= (cdr(assoc 0 (entget entdt))) "SEQEND")
   	(setq
    entdt (entnext entdt)
  tt (entget entdt)
  tt (subst (cons 40 w) (assoc 40 tt) tt)
   	)
  	 (entmod tt)
   	(entupd entdt)
   )
 )
 (princ)
)
;;
(defun c:styb( / ssdt sodt index tt entdt)  
 (setq ssdt (ssget '((0 . "INSERT") (66 . 1)))
sodt (sslength ssdt)
index 0
  )

 (repeat sodt
   (setq entdt (ssname ssdt index)
  index (1+ index))
   (while (/= (cdr(assoc 0 (entget entdt))) "SEQEND")
   	(setq
    entdt (entnext entdt)
  tt (entget entdt)
  tt (subst (cons 7 (getvar "textstyle")) (assoc 7 tt) tt)
   	)
  	 (entmod tt)
   	(entupd entdt)
   )
 )
 (princ)
)

  • 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

Tue_NV sửa lại code wo -> đổi bề rộng Block Att. Bạn download Lisp wo ở bài viết trên của Tue_NV nhé.

Còn đây là Lisp đổi chiều cao của Block Att

và Lisp styb đổi Style của Block ATT về Textstyle hiện hành

(defun c:ho( / ssdt sodt index tt entdt w)  
 (setq ssdt (ssget '((0 . "INSERT") (66 . 1)))
sodt (sslength ssdt)
index 0
  )
 (or *w* (setq *w* 1.0))
 (setq w (getreal (strcat "\n Nhap chieu cao < " 
			(rtos *w* 2 2) " > :")))
 (if w (setq *w* w) (setq w *w*))
 (repeat sodt
   (setq entdt (ssname ssdt index)
  index (1+ index))
   (while (/= (cdr(assoc 0 (entget entdt))) "SEQEND")
   	(setq
    entdt (entnext entdt)
  tt (entget entdt)
  tt (subst (cons 40 w) (assoc 40 tt) tt)
   	)
  	 (entmod tt)
   	(entupd entdt)
   )
 )
 (princ)
)
;;
(defun c:styb( / ssdt sodt index tt entdt)  
 (setq ssdt (ssget '((0 . "INSERT") (66 . 1)))
sodt (sslength ssdt)
index 0
  )

 (repeat sodt
   (setq entdt (ssname ssdt index)
  index (1+ index))
   (while (/= (cdr(assoc 0 (entget entdt))) "SEQEND")
   	(setq
    entdt (entnext entdt)
  tt (entget entdt)
  tt (subst (cons 7 (getvar "textstyle")) (assoc 7 tt) tt)
   	)
  	 (entmod tt)
   	(entupd entdt)
   )
 )
 (princ)
)

Không thể nhập chung thành 1 dòng lệnh được sao bác?thí dụ đánh wo thì hỏi nhập chiều dày text xong hỏi nhập chiều cao text nếu không nhập enter thì giữ nguyên chiều cao,tiếp hỏi nhập tên text style nếu không nhập enter giữ nguyên.Cảm ơn sự nhiệt tình của bá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

Không thể nhập chung thành 1 dòng lệnh được sao bác?thí dụ đánh wo thì hỏi nhập chiều dày text xong hỏi nhập chiều cao text nếu không nhập enter thì giữ nguyên chiều cao,tiếp hỏi nhập tên text style nếu không nhập enter giữ nguyên.Cảm ơn sự nhiệt tình của bác.

Cái này không khó. Chỉ là Tue_NV không có thời gian thôi. bạn 79031sử dụng tạm cái đã. Nếu bạn có thể chờ, sáng mai, Tue_NV sẽ viết cho bạn.

Các bác trên diễn đàn có rãnh thì giúp cho bạn 790312 dùm. Tue_NV xin Cảm ơn

  • 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

Cái này không khó. Chỉ là Tue_NV không có thời gian thôi. bạn 79031sử dụng tạm cái đã. Nếu bạn có thể chờ, sáng mai, Tue_NV sẽ viết cho bạn.

Các bác trên diễn đàn có rãnh thì giúp cho bạn 790312 dùm. Tue_NV xin Cảm ơn

Gom giùm bạn thay bác Tue_NV đây. Không biết có đúng ý không.

(defun C:RBA()
(command "undo" "be")
(setq ssdt (ssget '((0 . "INSERT") (66 . 1))) sodt (sslength ssdt))
(RBA)
(command "undo" "end"))
(defun RBA()
(initget "W H S") (setq kieu (getkword "\nKieu thay doi: <Width/Height/Style>: "))
(cond ((= kieu "W") (C:WO) (RBA))
      ((= kieu "H") (C:HO) (RBA))
      ((= kieu "S") (C:ST) (RBA))))
;----- HiÖu chØnh chiÒu dµy Text trong Block Att.
(defun c:wo( / index tt entdt w)  
(setq index 0)
(or *w* (setq *w* 1.0))
(setq w (getreal (strcat "\n Nhap be rong < " (rtos *w* 2 2) " > :")))
(if w (setq *w* w) (setq w *w*))
(repeat sodt
 (setq entdt (ssname ssdt index) index (1+ index))
 (while (/= (cdr (assoc 0 (entget entdt))) "SEQEND")
  (setq entdt (entnext entdt)
 tt (entget entdt)
 tt (subst (cons 41 w) (assoc 41 tt) tt))
  (entmod tt) (entupd entdt))) (princ))
;----- HiÖu chØnh chiÒu cao Text trong Block Att.
(defun c:ho( / index tt entdt h)  
(setq index 0)
(or *h* (setq *h* 1.0))
(setq h (getreal (strcat "\n Nhap chieu cao < " (rtos *h* 2 2) " > :")))
(if h (setq *h* h) (setq h *h*))
(repeat sodt
 (setq entdt (ssname ssdt index) index (1+ index))
 (while (/= (cdr (assoc 0 (entget entdt))) "SEQEND")
  (setq entdt (entnext entdt)
 tt (entget entdt)
 tt (subst (cons 40 h) (assoc 40 tt) tt))
  (entmod tt) (entupd entdt))) (princ))
;----- HiÖu chØnh Style Text trong Block Att.
(defun c:st( / index tt entdt)  
(setq index 0)
(repeat sodt
 (setq entdt (ssname ssdt index) index (1+ index))
 (while (/= (cdr (assoc 0 (entget entdt))) "SEQEND")
  (setq entdt (entnext entdt)
 tt (entget entdt)
 tt (subst (cons 7 (getvar "textstyle")) (assoc 7 tt) tt))
  (entmod tt) (entupd entdt))) (princ))
(princ "\nLenh su dung: RBA")

  • 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

Cảm ơn bác.Vậy e sẽ đợi.

Tranh thủ thời gian mần luôn cái Lisp này cho bạn 790312 luôn

(defun c:wo( / ssdt sodt index tt entdt w sty h)  
 (setq ssdt (ssget '((0 . "INSERT") (66 . 1)))
sodt (sslength ssdt)
index 0
  )
 (or *w* (setq *w* 1.0))
 (setq w (getreal (strcat "\n Nhap be rong < " 
			(rtos *w* 2 2) " > :")))
 (if w (setq *w* w) (setq w *w*))
 (or *h* (setq *h* 5.0))
 (setq h (getreal (strcat "\n Nhap chieu cao < " 
			(rtos *h* 2 2) " > :")))
 (if h (setq *h* h) (setq h *h*))

 (or *sty* (setq *sty* (getvar "textstyle")))
 (setq sty (getstring t (strcat "\n Nhap ten style < " 
			*sty* " > :")))
 (if sty (setq *sty* sty) (setq sty *sty*))

 (repeat sodt
   (setq entdt (ssname ssdt index)
  index (1+ index))
   (while (/= (cdr(assoc 0 (entget entdt))) "SEQEND")
   	(setq
    entdt (entnext entdt)
  tt (entget entdt)
   	)
(if w (setq tt (subst (cons 41 w) (assoc 41 tt) tt)))
(if h (setq tt (subst (cons 40 h) (assoc 40 tt) tt)))
(if (tblsearch "style" sty) (setq tt (subst (cons 7 sty) (assoc 7 tt) tt)))

  	 (entmod tt)
   	(entupd entdt)
   )
 )

 (princ)
)

  • 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

Tranh thủ thời gian mần luôn cái Lisp này cho bạn 790312 luôn

(defun c:wo( / ssdt sodt index tt entdt w sty h)  
 (setq ssdt (ssget '((0 . "INSERT") (66 . 1)))
sodt (sslength ssdt)
index 0
  )
 (or *w* (setq *w* 1.0))
 (setq w (getreal (strcat "\n Nhap be rong < " 
			(rtos *w* 2 2) " > :")))
 (if w (setq *w* w) (setq w *w*))
 (or *h* (setq *h* 5.0))
 (setq h (getreal (strcat "\n Nhap chieu cao < " 
			(rtos *h* 2 2) " > :")))
 (if h (setq *h* h) (setq h *h*))

 (or *sty* (setq *sty* (getvar "textstyle")))
 (setq sty (getstring t (strcat "\n Nhap ten style < " 
			*sty* " > :")))
 (if sty (setq *sty* sty) (setq sty *sty*))

 (repeat sodt
   (setq entdt (ssname ssdt index)
  index (1+ index))
   (while (/= (cdr(assoc 0 (entget entdt))) "SEQEND")
   	(setq
    entdt (entnext entdt)
  tt (entget entdt)
   	)
(if w (setq tt (subst (cons 41 w) (assoc 41 tt) tt)))
(if h (setq tt (subst (cons 40 h) (assoc 40 tt) tt)))
(if (tblsearch "style" sty) (setq tt (subst (cons 7 sty) (assoc 7 tt) tt)))

  	 (entmod tt)
   	(entupd entdt)
   )
 )

 (princ)
)

Chỗ kêu nhập chiều cao chữ nếu không nhập thì nó vẫn giữ nguyên chiều cao cũ chứ bác lisp này nếu không nhập nó cho chiều cao chữ bằng 0,giống như text style không nhập thì nó vẫn giữ nguyên đó bác,Mong bác sửa lại phần nhập chiều cao chữ giúp e.Thanks.

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

Chỗ kêu nhập chiều cao chữ nếu không nhập thì nó vẫn giữ nguyên chiều cao cũ chứ bác lisp này nếu không nhập nó cho chiều cao chữ bằng 0,giống như text style không nhập thì nó vẫn giữ nguyên đó bác,Mong bác sửa lại phần nhập chiều cao chữ giúp e.Thanks.

Do viết vội quá. Sửa lại cho bạn đây :

(defun c:wo( / ssdt sodt index tt entdt w sty h)  
 (setq ssdt (ssget '((0 . "INSERT") (66 . 1)))
sodt (sslength ssdt)
index 0
  )
(setq w (getreal "\n Nhap be rong chu :"))
(setq h (getreal "\n Nhap chieu cao chu :"))
(setq sty (getstring t "\n Nhap ten style : "))
 (repeat sodt
   (setq entdt (ssname ssdt index)
  index (1+ index))
   (while (/= (cdr(assoc 0 (entget entdt))) "SEQEND")
   	(setq
    entdt (entnext entdt)
  tt (entget entdt)
   	)
(if w (setq tt (subst (cons 41 w) (assoc 41 tt) tt)))
(if h (setq tt (subst (cons 40 h) (assoc 40 tt) tt)))
(if (tblsearch "style" sty) (setq tt (subst (cons 7 sty) (assoc 7 tt) tt)))

  	 (entmod tt)
   	(entupd entdt)
   )
 )

 (princ)
)

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

Do viết vội quá. Sửa lại cho bạn đây :

(defun c:wo( / ssdt sodt index tt entdt w sty h)  
 (setq ssdt (ssget '((0 . "INSERT") (66 . 1)))
sodt (sslength ssdt)
index 0
  )
(setq w (getreal "\n Nhap be rong chu :"))
(setq h (getreal "\n Nhap chieu cao chu :"))
(setq sty (getstring t "\n Nhap ten style : "))
 (repeat sodt
   (setq entdt (ssname ssdt index)
  index (1+ index))
   (while (/= (cdr(assoc 0 (entget entdt))) "SEQEND")
   	(setq
    entdt (entnext entdt)
  tt (entget entdt)
   	)
(if w (setq tt (subst (cons 41 w) (assoc 41 tt) tt)))
(if h (setq tt (subst (cons 40 h) (assoc 40 tt) tt)))
(if (tblsearch "style" sty) (setq tt (subst (cons 7 sty) (assoc 7 tt) tt)))

  	 (entmod tt)
   	(entupd entdt)
   )
 )

 (princ)
)

Chân thành cảm ơn bác rất nhiều,tiện thể bác giúp e thêm lần cuối với,chỗ nhập TÊN STYLE bác giúp cho hiện sẵn 1 tên nào đó chẳng hạn là 123 chẳng hạn để enter luôn khỏi phải nhập vì tên Style của e thường dài lắm,nếu muốn nhập tên Style khác vẫn đượ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

Chân thành cảm ơn bác rất nhiều,tiện thể bác giúp e thêm lần cuối với,chỗ nhập TÊN STYLE bác giúp cho hiện sẵn 1 tên nào đó chẳng hạn là 123 chẳng hạn để enter luôn khỏi phải nhập vì tên Style của e thường dài lắm,nếu muốn nhập tên Style khác vẫn được.

Hề hề hề,

Thay dòng code:

(setq sty (getstring t "\n Nhap ten style : "))

thành

(setq sty (getstring t "\n Nhap ten style <Standard>: "))

xem nó có ưng ý không hỉ????

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

Chân thành cảm ơn bác rất nhiều,tiện thể bác giúp e thêm lần cuối với,chỗ nhập TÊN STYLE bác giúp cho hiện sẵn 1 tên nào đó chẳng hạn là 123 chẳng hạn để enter luôn khỏi phải nhập vì tên Style của e thường dài lắm,nếu muốn nhập tên Style khác vẫn được.

Lisp này có kế thừa và phát huy tác dụng Lisp của anh gia_bach.

Bạn thử xem :

(defun c:wo( / ssdt sodt index tt entdt w getsty h)  
 (setq ssdt (ssget '((0 . "INSERT") (66 . 1)))
sodt (sslength ssdt)
index 0
  )
(setq w (getreal "\n Nhap be rong chu :"))
(setq h (getreal "\n Nhap chieu cao chu :"))

(if (> (atof (substr (getvar "ACADVER") 1 4)) 16.1)
   (progn
     (or newsty (setq newsty (getvar "textstyle")))
     (setq res  "" resinit  "" tbsty nil)
     (while (setq tbsty (tblnext "style" (null tbsty)))
(setq sty (cdr (assoc 2 tbsty))
      res (strcat  res "/" sty )
      resinit (strcat  resinit " " sty )))      
     (setq res (substr res 2)
    resinit (substr resinit 2))

     (setq cur_var (mapcar 'getvar '("DYNMODE" "DYNPROMPT")))
     (mapcar 'setvar '("DYNMODE" "DYNPROMPT") '(1 1))
     (initget (strcat " " resinit))
     (setq getsty (getkword (strcat "\nChon Style [" res " ] ") ))
     (and getsty (setq newsty getsty))
     (mapcar 'setvar '("DYNMODE" "DYNPROMPT") cur_var)

   )
(setq getsty (getstring (strcat "\nChon Style [" res " ] ") ))
)	
 (repeat sodt
   (setq entdt (ssname ssdt index)
  index (1+ index))
   (while (/= (cdr(assoc 0 (entget entdt))) "SEQEND")
   	(setq
    entdt (entnext entdt)
  tt (entget entdt)
   	)
(if getsty (if (tblsearch "style" getsty) (setq tt (subst (cons 7 getsty) (assoc 7 tt) tt))) )
(if w (setq tt (subst (cons 41 w) (assoc 41 tt) tt)))
(if h (setq tt (subst (cons 40 h) (assoc 40 tt) tt)))

  	 (entmod tt)
   	(entupd entdt)
   )
 )

 (princ)
)

Đánh lệnh Wo

Hỏi : nhập bề rộng Block Att, muốn thay đổi thì nhập vô, không thay đổi thì enter

Hỏi : nhập chiều cao Block Att, muốn thay đổi thì nhập vô, không thay đổi thì enter

Hỏi : nhập Text style Att

Text style này hiện ra 1 danh sách xổ xuống cho bạn chọn, muốn thay đổi thì chọn vô, không thay đổi thì enter

OK.

  • Like 1
  • 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

Cảm ơn bác Bình và bác Tue,vì hết quyền bình chọn cho 2 bác nên e phải spam,tác dụng lisp của bác gia_bach nếu muốn sổ danh sách của bên DIMENSION STYLE thì sửa sao vậy bác?e thấy bên topic đó cũng có người hỏi mà chưa ai trả lờ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

Cảm ơn bác Bình và bác Tue,vì hết quyền bình chọn cho 2 bác nên e phải spam,tác dụng lisp của bác gia_bach nếu muốn sổ danh sách của bên DIMENSION STYLE thì sửa sao vậy bác?e thấy bên topic đó cũng có người hỏi mà chưa ai trả lời.

Mạn phép anh gia_bach, Tue_NV xin mượn code của anh trả lời câu hỏi này

Đây là code

(defun c:SLD (/ cur_var str1 str2 tmp tmplay)   
 (if (> (atof (substr (getvar "ACADVER") 1 4)) 16.1)
   (progn
     (or newdst (setq newdst (getvar "DIMSTYLE")))
     (setq str1  "" str2  "")
     (while (setq tbl (tblnext "DIMSTYLE" (null tbl)))
(setq tmp (cdr (assoc 2 tbl))
      str1 (strcat  str1 "/" tmp )
      str2 (strcat  str2 " " tmp )))      
     (setq str1 (substr str1 2)
    str2 (substr str2 2))

     (setq cur_var (mapcar 'getvar '("DYNMODE" "DYNPROMPT")))
     (mapcar 'setvar '("DYNMODE" "DYNPROMPT") '(1 1))
     (initget str2)
     (setq tmpLay (getkword (strcat "\nChon DIMENSION STYLE [" str1 " ] <"(princ newdst)">: ") ))
     (and tmpLay (setq newdst tmpLay))
     (mapcar 'setvar '("DYNMODE" "DYNPROMPT") cur_var)
     (command "DIMSTYLE" "R" newdst)

     (alert (strcat "Ban chon DIMENSION STYLE [" newdst "]."))

     (princ newdst))
   (alert "Cad khong ho tro dropdown."))  
 (princ)  )

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

Mạn phép anh gia_bach, Tue_NV xin mượn code của anh trả lời câu hỏi này

Đây là code

(defun c:SLD (/ cur_var str1 str2 tmp tmplay)   
 (if (> (atof (substr (getvar "ACADVER") 1 4)) 16.1)
   (progn
     (or newdst (setq newdst (getvar "DIMSTYLE")))
     (setq str1  "" str2  "")
     (while (setq tbl (tblnext "DIMSTYLE" (null tbl)))
(setq tmp (cdr (assoc 2 tbl))
      str1 (strcat  str1 "/" tmp )
      str2 (strcat  str2 " " tmp )))      
     (setq str1 (substr str1 2)
    str2 (substr str2 2))

     (setq cur_var (mapcar 'getvar '("DYNMODE" "DYNPROMPT")))
     (mapcar 'setvar '("DYNMODE" "DYNPROMPT") '(1 1))
     (initget str2)
     (setq tmpLay (getkword (strcat "\nChon DIMENSION STYLE [" str1 " ] <"(princ newdst)">: ") ))
     (and tmpLay (setq newdst tmpLay))
     (mapcar 'setvar '("DYNMODE" "DYNPROMPT") cur_var)
     (command "DIMSTYLE" "R" newdst)

     (alert (strcat "Ban chon DIMENSION STYLE [" newdst "]."))

     (princ newdst))
   (alert "Cad khong ho tro dropdown."))  
 (princ)  )

Nhờ bác bỏ giùm bảng hiện 'Ban chon DIMENSION STYLE ' giùm e,khi sổ danh sách ta chọn thì sẽ chuyển về dimension style ta chọn,không cần hiện bảng 'Ban chon DIMENSION STYLE 'e đã thử sửa trong lisp thì nó báo lỗi.Cảm ơn 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

Do viết vội quá. Sửa lại cho bạn đây :

Đây là những dòng trích dẫn theo thời gian:

1). Tue_NV, on 17 June 2011 - 08:26 AM, said:

Cái này không khó. Chỉ là Tue_NV không có thời gian thôi. bạn 79031sử dụng tạm cái đã. Nếu bạn có thể chờ, sáng mai, Tue_NV sẽ viết cho bạn.

Các bác trên diễn đàn có rãnh thì giúp cho bạn 790312 dùm. Tue_NV xin Cảm ơn

2). Doan Van Ha said:

Gom giùm bạn thay bác Tue_NV đây. Không biết có đúng ý không.

3). Tue_NV said:

Tranh thủ thời gian mần luôn cái Lisp này cho bạn 790312 luôn

Do viết vội quá. Sửa lại cho bạn đây :

Cuối cùng, tôi chẳng biết đường nào mà lầ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

Chắc bác Tue không thấy bài của bác thôi,e đã thấy bài bác và đã bình chọn rồi.Mong bác thông cảm cho bác Tue vi nhiều bài viết quá nên chắc không đọc hết.

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

Hề hề hề,

Thay dòng code:

(setq sty (getstring t "\n Nhap ten style : "))

thành

(setq sty (getstring t "\n Nhap ten style <Standard>: "))

xem nó có ưng ý không hỉ????

E làm thử theo bác thì không được bác ah.

FontName (getstring "\nT\U+00EAn Font<vhelvcn.ttf> :")

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

Đây là những dòng trích dẫn theo thời gian:

1). Tue_NV, on 17 June 2011 - 08:26 AM, said:

Cái này không khó. Chỉ là Tue_NV không có thời gian thôi. bạn 79031sử dụng tạm cái đã. Nếu bạn có thể chờ, sáng mai, Tue_NV sẽ viết cho bạn.

Các bác trên diễn đàn có rãnh thì giúp cho bạn 790312 dùm. Tue_NV xin Cảm ơn

2). Doan Van Ha said:

Gom giùm bạn thay bác Tue_NV đây. Không biết có đúng ý không.

3). Tue_NV said:

Tranh thủ thời gian mần luôn cái Lisp này cho bạn 790312 luôn

Do viết vội quá. Sửa lại cho bạn đây :

Cuối cùng, tôi chẳng biết đường nào mà lần!

Là vì code của bạn viết chưa đáp ứng đủ yêu cầu của bạn 790312

Ý của bạn ấy là :

....

Đánh lệnh Wo

Hỏi : nhập bề rộng Block Att, muốn thay đổi thì nhập vô, không thay đổi thì enter

Hỏi : nhập chiều cao Block Att, muốn thay đổi thì nhập vô, không thay đổi thì enter

Hỏi : nhập Text style Att

Text style này hiện ra 1 danh sách xổ xuống cho bạn chọn, muốn thay đổi thì chọn vô, không thay đổi thì enter

OK.

Tue_NV cảm ơn bạn DoanVanHa đã gom 3 cái Lisp giúp. Nhưng Lisp bạn gom thì 1 lệnh rẽ nhánh 3 chức năng, nhưng Lisp thực hiện chỉ 1 chức năng 1 lần. Cái Lisp của Tue_NV viết là thực hiện cả 3 chức năng trong 1 lần. Bạn là người biết viết Lisp, biết sử dụng Lisp mà bạn lại viết câu Cuối cùng, tôi chẳng biết đường nào mà lần! thì nghĩ cũng buồn thật. Thà rằng, lisp của Tue_NV viết giống tính năng của bạn thì bạn nói còn được, chẳng lẽ bạn chẳng biết đường nào mà lần thật sao? Tôi không nghĩ như vậy, và rất buồn khi bạn viết câu nói ấy. Diễn đàn CADVIET với 1 mớ hỗn độn trong topic Viết Lisp yêu cầu kể cũng chẳng biết đường nào mà lần thật. Càng nghĩ thấy buồn

 

Chắc bác Tue không thấy bài của bác thôi,e đã thấy bài bác và đã bình chọn rồi.Mong bác thông cảm cho bác Tue vi nhiều bài viết quá nên chắc không đọc hết.

Cảm ơn bạn quan tâm, trước khi viết bài cho bạn, Tue_NV cũng đã thấy và đọc qua Reply của bạn DoanVanHa rồi. Quả thật rất buồn cho bạn ấy, chẳng vui vẻ tí nào.

  • 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

[Yêu cầu]

thaydoichieucaotext.png

 

Các Bác cho em hỏi: các Lisp trên chỉ thay đổi chiều rộng, chiều cao, Style của các Text Attribute

còn muốn thay đổi cả cho các "Text" của Block Attribute thì làm thế nào ?

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

×