Đến nội dung


Hình ảnh
- - - - -

Lisp đổi Font của tất cả các Style có trong bản vẽ sang font .vnarial ?????????


  • Please log in to reply
11 replies to this topic

#1 hhhhgggg

hhhhgggg

    biết dimedit

  • Members
  • PipPipPipPipPip
  • 393 Bài viết
Điểm đánh giá: 30 (tàm tạm)

Đã gửi 07 February 2009 - 09:41 AM

đây là 1 đoạn mã đổi Font của Stly có tên CAD Viet sang font .VNARIAL NARROW , Bác Pro nào sửa giúp em thành Lisp đổi tất cả các font của các style có trong bản vẽ sang font .VNARIAL NARROW với .
Code:
(defun C:fo()
(command ".-style" "chuso" ".VNARIAL NARROW" "" "" "" "" "")
  • 0
Hoàng Giang

#2 Tue_NV

Tue_NV

    KS Võ Quang Tuệ

  • Moderator
  • PipPipPipPipPipPipPip
  • 4296 Bài viết
Điểm đánh giá: 3804 (đỉnh cao)

Đã gửi 07 February 2009 - 10:32 AM

đây là 1 đoạn mã đổi Font của Stly có tên CAD Viet sang font .VNARIAL NARROW , Bác Pro nào sửa giúp em thành Lisp đổi tất cả các font của các style có trong bản vẽ sang font .VNARIAL NARROW với .
Code:
(defun C:fo()
(command ".-style" "chuso" ".VNARIAL NARROW" "" "" "" "" "")

Cái tên Font chữ .VNARIAL NARROW trong đoạn Code trên bị sai.
Sửa lại đây :
(defun C:fo()
(command "style" "chuso" "VNARIALN.TTF" "0" "1" "0" "n" "n")
(princ)
)
  • 0

#3 hhhhgggg

hhhhgggg

    biết dimedit

  • Members
  • PipPipPipPipPip
  • 393 Bài viết
Điểm đánh giá: 30 (tàm tạm)

Đã gửi 07 February 2009 - 02:27 PM

Cái tên Font chữ .VNARIAL NARROW trong đoạn Code trên bị sai.
Sửa lại đây :
(defun C:fo()
(command "style" "chuso" "VNARIALN.TTF" "0" "1" "0" "n" "n")
(princ)
)


Ko phải bác Tuệ ơi ! Bác hiểu nhầm ý của em rồi, đoạn lisp em post lên ko có j sai cả. Mà em muốn đổi mã đoạn lisp đó để nó đổi Font cho tất cả mọi style có trong bản vẽ thành font .VNARIAL NARROW. Bác sửa giúp em với !
  • 0
Hoàng Giang

#4 nghiautc

nghiautc

    biết lệnh copy

  • Members
  • PipPipPip
  • 112 Bài viết
Điểm đánh giá: 18 (tàm tạm)

Đã gửi 10 September 2009 - 04:45 PM

Ko phải bác Tuệ ơi ! Bác hiểu nhầm ý của em rồi, đoạn lisp em post lên ko có j sai cả. Mà em muốn đổi mã đoạn lisp đó để nó đổi Font cho tất cả mọi style có trong bản vẽ thành font .VNARIAL NARROW. Bác sửa giúp em với !

Có cao giúp viết lisp này không nhỉ ? thủ lisp nào giúp đỡ viết hộ mình lisp này với thanh.
  • 0

#5 Thaistreetz

Thaistreetz

    biết lệnh adcenter

  • Advance Member
  • PipPipPipPipPipPipPip
  • 903 Bài viết
Điểm đánh giá: 505 (tốt)

Đã gửi 11 September 2009 - 02:02 AM

Sax! Việc này cũng fải viện đến lisp sao?
- tạo 1 textstyle dùng font .vnarial
- Chọn tất cả các text có trong bản vẽ (Dùng hộp thoại properties, hoặc filter hoặc qick select)
- Chuyển các text được chọn về style vừa tạo.
Xong.
nếu muốn xóa các style cũ không còn nữa thì purge 1 phát. bản vẽ chỉ còn đúng duy nhất một textstyle dùng font .vnarial
  • 1

Hình đã gửi
IN HIM, I TRUST. THE TRUST IN MY GOD


#6 nghiautc

nghiautc

    biết lệnh copy

  • Members
  • PipPipPip
  • 112 Bài viết
Điểm đánh giá: 18 (tàm tạm)

Đã gửi 11 September 2009 - 09:27 AM

Sax! Việc này cũng fải viện đến lisp sao?
- tạo 1 textstyle dùng font .vnarial
- Chọn tất cả các text có trong bản vẽ (Dùng hộp thoại properties, hoặc filter hoặc qick select)
- Chuyển các text được chọn về style vừa tạo.
Xong.
nếu muốn xóa các style cũ không còn nữa thì purge 1 phát. bản vẽ chỉ còn đúng duy nhất một textstyle dùng font .vnarial


Nếu làm như bạn nói thì mình đã làm được rồi. Nhưng ý mình là khi mình copy nhiều file khác nhau sẽ có nhiều kiểu font làm như bạn cũng được nhủng không thể pu hết cac style(Các kiểu chữ ở trong block thì nó bó tay). mình dang cần 1 lisp dạng giống như Laytrans dùng cho kiếu chữ .
  • 0

#7 master_worse

master_worse

    biết lệnh offset

  • Advance Member
  • PipPipPip
  • 170 Bài viết
Điểm đánh giá: 87 (tàm tạm)

Đã gửi 11 September 2009 - 11:39 AM

Không biết đúng ý bạn không?
(defun C:CHANGEALLSTYLEWITHVNARIALN (/ CUR_TEXTSTYLE TEXTSTYLE_LIST I TEXTSTYLE_I)
(setq CUR_TEXTSTYLE (getvar "TEXTSTYLE"))
(setq TEXTSTYLE_LIST (list (cdr (nth 1 (tblnext "STYLE" t)))))
(while (tblnext "STYLE")
(setq TEXTSTYLE_LIST (append TEXTSTYLE_LIST (list (cdr (nth 1 (tblnext "STYLE"))))))
) ;_ end while
(setq I 0)
(while (< I (length TEXTSTYLE_LIST))
(setq TEXTSTYLE_I (nth I TEXTSTYLE_LIST))
(command "-style" TEXTSTYLE_I "VNARIALN.TTF" "" "" "" "" "")
(setq I (1+ I))
) ;_ end while
(setvar "TEXTSTYLE" CUR_TEXTSTYLE)
) ;_ end defun

nếu đúng đổi tên lệnh cho ngắn lại mà sử dụng
  • 0

Ngu dốt không đáng thẹn bằng thiếu ý chí học hỏi


Tri thức làm người ta khiêm tốn, ngu si làm người ta kiêu ngạo (Ngạn ngữ Anh)


#8 gia_bach

gia_bach

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 1435 Bài viết
Điểm đánh giá: 1426 (rất tốt)

Đã gửi 11 September 2009 - 01:04 PM

Không biết đúng ý bạn không?
(defun C:CHANGEALLSTYLEWITHVNARIALN (/ CUR_TEXTSTYLE TEXTSTYLE_LIST I TEXTSTYLE_I)
(setq CUR_TEXTSTYLE (getvar "TEXTSTYLE"))
(setq TEXTSTYLE_LIST (list (cdr (nth 1 (tblnext "STYLE" t)))))
(while (tblnext "STYLE")
(setq TEXTSTYLE_LIST (append TEXTSTYLE_LIST (list (cdr (nth 1 (tblnext "STYLE"))))))
) ;_ end while
(setq I 0)
(while (< I (length TEXTSTYLE_LIST))
(setq TEXTSTYLE_I (nth I TEXTSTYLE_LIST))
(command "-style" TEXTSTYLE_I "VNARIALN.TTF" "" "" "" "" "")
(setq I (1+ I))
) ;_ end while
(setvar "TEXTSTYLE" CUR_TEXTSTYLE)
) ;_ end defun

nếu đúng đổi tên lệnh cho ngắn lại mà sử dụng

Bạn có thể bớt đi 1 vòng lặp While mà :

(setq tbl (tblnext "STYLE" T))
(while tbl
(command "-style" (cdr(assoc 2 tbl)) "VNARIALN.TTF" "" "" "" "" "")
(setq tbl (tblnext "STYLE" ))
)

  • 1

#9 hhhhgggg

hhhhgggg

    biết dimedit

  • Members
  • PipPipPipPipPip
  • 393 Bài viết
Điểm đánh giá: 30 (tàm tạm)

Đã gửi 11 September 2009 - 01:58 PM

Bạn có thể bớt đi 1 vòng lặp While mà :

(setq tbl (tblnext "STYLE" T))
(while tbl
(command "-style" (cdr(assoc 2 tbl)) "VNARIALN.TTF" "" "" "" "" "")
(setq tbl (tblnext "STYLE" ))
)

Hjx ! Em copy CODE về, Đánh tên lệnh xong chẳng thấy j ??? Các bác Pro kiểm tra lại giúp em xem lỗi ở đâu???
  • 0
Hoàng Giang

#10 master_worse

master_worse

    biết lệnh offset

  • Advance Member
  • PipPipPip
  • 170 Bài viết
Điểm đánh giá: 87 (tàm tạm)

Đã gửi 11 September 2009 - 03:04 PM

Thank gia bach,


Chay tốt mà
(defun C:LENH()
(setq tbl (tblnext "STYLE" T))
(while tbl
(command "-style" (cdr(assoc 2 tbl)) "VNARIALN.TTF" "" "" "" "" "")
(setq tbl (tblnext "STYLE" ))
)
(princ)
)
  • 1

Ngu dốt không đáng thẹn bằng thiếu ý chí học hỏi


Tri thức làm người ta khiêm tốn, ngu si làm người ta kiêu ngạo (Ngạn ngữ Anh)


#11 vantran

vantran

    biết vẽ circle

  • Members
  • PipPip
  • 34 Bài viết
Điểm đánh giá: 3 (bình thường)

Đã gửi 21 April 2010 - 04:11 PM

[quote name='master_worse' date='Sep 11 2009, 15:04' post='72630']
Thank gia bach,
Chay tốt mà
(defun C:LENH()
(setq tbl (tblnext "STYLE" T))
(while tbl
(command "-style" (cdr(assoc 2 tbl)) "VNARIALN.TTF" "" "" "" "" "")
(setq tbl (tblnext "STYLE" ))
)
(princ)
)
[/qu.
Liệu có thể thay thể font VNARIAL bằng bất cứ font nào theo ý mình được không. và nếu thay được thì phải làm như thế nào. mong các bạn chỉ giup
  • 0

#12 hoa35ktxd

hoa35ktxd

    biết lệnh move

  • Members
  • PipPipPip
  • 125 Bài viết
Điểm đánh giá: 38 (tàm tạm)

Đã gửi 21 April 2010 - 06:39 PM

Ban thử xem nhé
(defun C:LENH ()
(setq tbl (tblnext "STYLE" T)
FontName (getstring "\nNhap ten file FONT can thay the: "))
(while tbl
(command "-style"
(cdr (assoc 2 tbl))
FontName
""
""
""
""
""
)
(setq tbl (tblnext "STYLE"))
)
(princ)
)

  • 1