Đến nội dung


Hình ảnh
- - - - -

Canh Text theo hàng dọc


  • Please log in to reply
4 replies to this topic

#1 khanhhongle

khanhhongle

    Chưa sử dụng CAD

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

Đã gửi 30 November 2012 - 01:52 PM

Chào các bạn,
Mình có một số text hoặc mtext bố trí rời rạc trong bản vẽ.
Nay muốn sắp xếp lại chúng ngay ngắn theo hàng dọc (phương đứng), với một khoảng cách định trước thì trong cad có hỗ trợ không. Mình có tìm Lisp nhưng vẫn chưa thấy vì thú thật là nhiều quá mà mình là người mới. Bạn nào biết thì cho cái link hộ. Thank rất nhiều.
  • 0

#2 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5451 Bài viết
Điểm đánh giá: 2625 (tuyệt vời)

Đã gửi 30 November 2012 - 02:00 PM

Nhiều lắm. Đây là 1 link:
http://www.cadviet.c...opic=13440&st=0
  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#3 khanhhongle

khanhhongle

    Chưa sử dụng CAD

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

Đã gửi 30 November 2012 - 02:04 PM

Chào huynh Doan Van Ha,
Mình cũng đang đọc topic này nhưng nội dung chỉ canh chỉnh các text theo phương ngang (left, right, center...) mà khoảng cách các text (mtext) theo phương đứng (trục Y) không thấy nói tới...Mong huynh tư vấn thêm.
Cám ơn thật nhiều.
Trân trọng
  • 0

#4 Doan Van Ha

Doan Van Ha

    biết lệnh adcenter

  • CADViet Team
  • PipPipPipPipPipPipPip
  • 5451 Bài viết
Điểm đánh giá: 2625 (tuyệt vời)

Đã gửi 30 November 2012 - 02:27 PM

Bạn dùng lệnh DX để canh thẳng, sau đó dùng lệnh DFX để giản dòng.
  • 0

* Chỉ nên yêu cầu Lisp khi bạn làm việc đó mất cả ngày nhưng họ chỉ viết 1 giờ. Đừng nêu yêu cầu Lisp khi bạn chỉ làm 1 giờ nhưng bắt họ phải mất cả ngày.

* Nhờ viết lisp cũng như đi khám bệnh. Chỉ gởi căn cước và than sắp chết thì không bác sỹ nào cứu sống được.


#5 quansla

quansla

    biết lệnh xclip

  • Members
  • PipPipPipPipPipPipPip
  • 643 Bài viết
Điểm đánh giá: 224 (khá)

Đã gửi 30 November 2012 - 02:31 PM

Tạm thời thì mình đang dùng cái này, bạn xem dùng được thì dùng,
tên lệnh
  • CCot can text thẳng đứng
  • CCHang (dễ nhầm nhầm với lệnh Change của Cad) căn text phương ngang
  • DanTexty tạo khoảng cách cho các Text
  • Lệnh DanTexty còn có thể dùng lệnh sau thay thế: ddab



    ;;can text thang cot voi nhau
    (defun c:Ccot(/ TDT XTextmau dt i )
    (if(setq TDT (ssget '((0 . "*TEXT"))))
    (progn
    (command "JUSTIFYTEXT" TDT "" "L")
    (If (null(setq Xtextmau (car(getpoint "\Nhap tao do diem"))))
    (setq Xtextmau (cadr(assoc 10 (entget(car(entsel"\nChon Text mau dau tien:"))))))
    )
    (progn
    (command "undo" "begin")
    ;;;list se canh tat ca cac Text ve cung mot toa do x(giu nguyen toa do y)
    (setq i 0)
    (while (< i (sslength TDT))
    (setq dt (entget(ssname TDT i)))
    (setq i (1+ i))
    (setq dt (subst
    (subst XTextmau (cadr(assoc 10 dt)) (assoc 10 dt))
    (assoc 10 dt) dt))
    (entmod dt)
    )
    (command "undo" "end")
    )
    )
    (print)
    ))

    ;-------------------------------------------------- ;;;------can text ve cung mot hang------------
    (defun c:CcHang(/ TDT YTextmau dt i )
    (if(setq TDT (ssget '((0 . "*TEXT"))))
    (progn
    (command "JUSTIFYTEXT" TDT "" "L")
    (If (null(setq Ytextmau (cadr(getpoint "\Nhap tao do diem"))))
    (setq Ytextmau (caddr(assoc 10 (entget(car(entsel"\nChon Text mau dau tien:"))))))
    )
    (progn
    (command "undo" "begin")
    ;;;list se canh tat ca cac Text ve cung mot hang(toa do y)(giu nguyen toa do x)
    (setq i 0)
    (while (< i (sslength TDT))
    (setq dt (entget(ssname TDT i)))
    (setq i (1+ i))
    (setq dt (subst
    (subst yTextmau (caddr(assoc 10 dt)) (assoc 10 dt))
    (assoc 10 dt) dt))
    (entmod dt)
    )
    (command "undo" "end")
    )
    )
    ))
    ;--------------------------------------------------
    ;-------------------------------------------------- ;-----------------dan Text Phuong dung--------------------------
    (defun KhoangCach (/ k t1 t2)
    (prompt "\nChon Text lay khoang cach/Nhap khoang cach")
    (if (setq k (getdist "\nNhap khoang cach"))
    (progn
    k
    )
    (progn
    (prompt "\nChon Text lay khoang cach")
    (if (setq TDT (ssget (list (cons 0 "*text"))))
    (progn
    (setq N (sslength TDT))
    (setq t1 (entget (ssname TDT (- N 1)))
    t2 (entget (ssname TDT (- N 2)))
    )
    (- (nth 2 (assoc 10 t1)) (nth 2 (assoc 10 t2)))
    )
    )
    )
    )
    )
    ;;Lisp dan Text phuong dung
    (defun DanTexty (/ TDT dt k i p pdt)
    (if (setq k (khoangcach))
    (progn
    (alert "\nChon Text can dan")
    (setq TDT nill)
    (while (null TDT)
    (setq TDT (ssget (list (cons 0 "*text"))))
    )
    (setq N (sslength TDT)
    p (cdr (assoc 10 (entget (ssname TDT (1- N)))))
    i (- N 2)
    )
    (while (> i -1)
    (setq dt (entget (ssname TDT i)))
    (setq pdt (cdr (assoc 10 dt))
    pdt (list (car pdt) (- (cadr p) k) 0)
    p pdt
    )
    (entmod (subst (cons 10 p) (assoc 10 dt) dt))
    (setq i (1- i))
    )
    )
    (progn
    (alert "\nPhai nhap KHOANG CACH, hoac chon Text ")
    (princ)
    )
    )
    )
    (defun c:DanTexty () (DanTexty))
    (defun c:ddan () (DanTexty)) ;-----------------dan Text Phuong dung--------------------------
    ;;;Ho tro chon truoc doi tuong
    (defun c:`2()
    (ssget (list (assoc 0 (entget(car (entsel "\nChon doi tuong mau"))))))
    )
    ;;--------------------------------------------------------------


  • 0