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.
Đăng nhập để thực hiện theo  
manhti14

[Nhờ Viết Lisp] Điều Chỉnh Toàn Bộ Text

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

manhti14    1

Em muốn nhờ các bác viết hộ e 1 cái lisp chỉnh sửa thuộc tính của text tự động như thế này:

 

- b1: chọn toàn bộ text trong bản vẽ (nếu được thì các làm hộ e thành 2 lệnh: 1 lệnh là tự động chọn toàn bộ trong bản vẽ, 1 lệnh thì là chọn thủ công trong 1 phạm vi)

- b2: thay đổi thuộc tính text:

                 + thay đổi text style từ "bigfont" về "standard"

                 + thay đổi tất cả chiều cao text thành 100

                 + thay đổi tất cả bề rộng text thành 0.55

- b3: thay đổi thuộc tính của text style có tên "gaiheki":

                 + thay đổi font thành font romans.shx

                 + thay đổi chiều cao text thành 50

                 + thay đổi bề rộng text thành 0.75

 

em xin cám ơ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
Danh Cong    108

Em muốn nhờ các bác viết hộ e 1 cái lisp chỉnh sửa thuộc tính của text tự động như thế này:

 

- b1: chọn toàn bộ text trong bản vẽ (nếu được thì các làm hộ e thành 2 lệnh: 1 lệnh là tự động chọn toàn bộ trong bản vẽ, 1 lệnh thì là chọn thủ công trong 1 phạm vi)

- b2: thay đổi thuộc tính text:

                 + thay đổi text style từ "bigfont" về "standard"

                 + thay đổi tất cả chiều cao text thành 100

                 + thay đổi tất cả bề rộng text thành 0.55

- b3: thay đổi thuộc tính của text style có tên "gaiheki":

                 + thay đổi font thành font romans.shx

                 + thay đổi chiều cao text thành 50

                 + thay đổi bề rộng text thành 0.75

 

em xin cám ơn!

 

Không cần xài đến Lisp, thủ công cũng giải quyết nhanh gọn vấn đề này cho bạn. ^^

+ Muốn chọn Text ở 1 vùng hay toàn bộ : Tìm hiểu lệnh FILTER

+ Thay đổi thuộc tính : Thay đổi trong Properties  ( nhấn Ctrl + 1)

 

Ý kiến cá nhân : Xài thông thạo món Filter giải quyết được rất nhiều trong việc chọn lựa đối tượng. Chọn được đối tượng rồi thì tha hồ mà mổ xẻ, xào nấu các đối tượng đó.  :D  :D

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
manhti14    1

Không cần xài đến Lisp, thủ công cũng giải quyết nhanh gọn vấn đề này cho bạn. ^^

+ Muốn chọn Text ở 1 vùng hay toàn bộ : Tìm hiểu lệnh FILTER

+ Thay đổi thuộc tính : Thay đổi trong Properties  ( nhấn Ctrl + 1)

 

Ý kiến cá nhân : Xài thông thạo món Filter giải quyết được rất nhiều trong việc chọn lựa đối tượng. Chọn được đối tượng rồi thì tha hồ mà mổ xẻ, xào nấu các đối tượng đó.  :D  :D

hiện giờ e vẫn đang làm như thế.

nhưng mà mỗi lần làm thế mất tầm 20-30s.

mà trong 1 buổi thì em phải làm thế tầm 30-40 lần nên cũng tương đối mất công nên mới lên mạn phép nhờ mọi người tạo hộ cái lisp :)

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
Bee    108

hiện giờ e vẫn đang làm như thế.

nhưng mà mỗi lần làm thế mất tầm 20-30s.

mà trong 1 buổi thì em phải làm thế tầm 30-40 lần nên cũng tương đối mất công nên mới lên mạn phép nhờ mọi người tạo hộ cái lisp :)

Thử cái này xem nhé. ^_^

(defun Bee_run (ss / n vlaobj)
  (if (tblsearch "style" "gaiheki")
    (command "-style" "gaiheki" "romans.shx" 50. 0.75 "" "" "" "")
    )
  (if ss
    (progn
      (setq n 0)
      (repeat (sslength ss)
        (setq vlaobj (vlax-ename->vla-object (ssname ss n)))
        (if (= (vlax-get vlaobj 'StyleName) "bigfont")
          (vlax-put vlaobj 'StyleName  "standard")
          )
        (vlax-put vlaobj 'Height  100.)
        (vlax-put vlaobj 'ScaleFactor  0.55)
        (setq n (1+ n))
        )      
      )
    )
  )
(defun c:test1 ()                
  (Bee_run (ssget "_X" '((0 . "TEXT,MTEXT"))))
  (princ)
  )
(defun c:test2 ()                
  (Bee_run (ssget '((0 . "TEXT,MTEXT"))))
  (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
manhti14    1

 

Thử cái này xem nhé. ^_^

(defun Bee_run (ss / n vlaobj)
  (if (tblsearch "style" "gaiheki")
    (command "-style" "gaiheki" "romans.shx" 50. 0.75 "" "" "" "")
    )
  (if ss
    (progn
      (setq n 0)
      (repeat (sslength ss)
        (setq vlaobj (vlax-ename->vla-object (ssname ss n)))
        (if (= (vlax-get vlaobj 'StyleName) "bigfont")
          (vlax-put vlaobj 'StyleName  "standard")
          )
        (vlax-put vlaobj 'Height  100.)
        (vlax-put vlaobj 'ScaleFactor  0.55)
        (setq n (1+ n))
        )      
      )
    )
  )
(defun c:test1 ()                
  (Bee_run (ssget "_X" '((0 . "TEXT,MTEXT"))))
  (princ)
  )
(defun c:test2 ()                
  (Bee_run (ssget '((0 . "TEXT,MTEXT"))))
  (princ)
  )

CHẠY ĐƯỢC RỒI BÁC Ạ :D.

MỖI CÁI KHÔNG CHUYỂN ĐƯỢC STYLE CỦA TEXT VỀ STANDARD.

 

NHÂN TIỆN E MUỐN HỎI LUÔN LÀ NẾU NHƯ LÚC CHỈNH "GAIHEKI" STYLE NẾU NHƯ MUỐN CHỌN THÊM THUỘC TÍNH BIGFONT THÌ LÀM THẾ NÀO Ạ :).

EM XIN 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
Bee    108

 

 

Thử cái này xem nhé. ^_^

(defun Bee_run (ss / n vlaobj)
  (if (tblsearch "style" "gaiheki")
    (command "-style" "gaiheki" "romans.shx" 50. 0.75 "" "" "" "")
    )
  (if ss
    (progn
      (setq n 0)
      (repeat (sslength ss)
        (setq vlaobj (vlax-ename->vla-object (ssname ss n)))
        (if (= (vlax-get vlaobj 'StyleName) "bigfont")
          (vlax-put vlaobj 'StyleName  "standard")
          )
        (vlax-put vlaobj 'Height  100.)
        (vlax-put vlaobj 'ScaleFactor  0.55)
        (setq n (1+ n))
        )      
      )
    )
  )
(defun c:test1 ()                
  (Bee_run (ssget "_X" '((0 . "TEXT,MTEXT"))))
  (princ)
  )
(defun c:test2 ()                
  (Bee_run (ssget '((0 . "TEXT,MTEXT"))))
  (princ)
  )

CHẠY ĐƯỢC RỒI BÁC Ạ :D.

MỖI CÁI KHÔNG CHUYỂN ĐƯỢC STYLE CỦA TEXT VỀ STANDARD.

 

NHÂN TIỆN E MUỐN HỎI LUÔN LÀ NẾU NHƯ LÚC CHỈNH "GAIHEKI" STYLE NẾU NHƯ MUỐN CHỌN THÊM THUỘC TÍNH BIGFONT THÌ LÀM THẾ NÀO Ạ :).

EM XIN CÁM ƠN BÁC NHIỀU.

+ thay đổi text style từ "bigfont" về "standard" ---> cái này là thằng TEXT nào thuộc style bigfont thì sẽ chuyển về standard. Còn các thằng khác ko chuyển.

 

+ CHỌN THÊM THUỘC TÍNH BIGFONT ---->(command "-style" ) tìm hiểu thêm lệnh này nhé.

  • 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

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  

×