Skip to content
Back to skills

Vn Xuat Autocad

ASecurity

Đưa bộ hồ sơ DXF vào AutoCAD qua AutoCAD MCP: chuyển sang DWG (ghi đè được cả khi file đang mở), đếm lại số tờ, dọn rác bản vẽ; xuất PDF bằng Python. Dùng khi người dùng cần file DWG, cần mở bản vẽ trong AutoCAD, gặp lỗi "Error saving the document", AutoCAD treo ở hộp thoại lưu, hoặc cần PDF để in.

  • 2 stars
  • 0 votes
  • 0 copies
  • 4 views
  • Added September 24, 2026
developmentpythonbackend

Works with

  • mcp

Security analysis

A100/100

Scanned September 24, 2026

npx -y skills add andyluu98/vn-autocad-skill --skill vn-xuat-autocad --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Vn Xuat Autocad?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Vn Xuat Autocad
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/andyluu98-vn-xuat-autocad/badge)](https://www.skillsdirectory.com/skills/andyluu98-vn-xuat-autocad)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: vn-xuat-autocad
description: >-
  Đưa bộ hồ sơ DXF vào AutoCAD qua AutoCAD MCP: chuyển sang DWG (ghi đè được cả khi file đang
  mở), đếm lại số tờ, dọn rác bản vẽ; xuất PDF bằng Python. Dùng khi người dùng cần file DWG,
  cần mở bản vẽ trong AutoCAD, gặp lỗi "Error saving the document", AutoCAD treo ở hộp thoại lưu,
  hoặc cần PDF để in.
---

# Xuất sang AutoCAD

## Cần gì

- **AutoCAD bản đầy đủ trên Windows.** Các hàm `vla-*` là ActiveX, không có trên AutoCAD LT
  và bản Mac.
- **Một AutoCAD MCP server** có thao tác chạy AutoLISP (`execute_lisp`), ví dụ backend File IPC.
- Không có AutoCAD thì file DXF vẫn mở được trong mọi phần mềm CAD; chỉ bước chuyển DWG là cần.

## Chuyển DXF sang DWG

```python
from vncad import acad
lisp = acad.lisp_open_and_convert("out/HoSo.dxf", "out/dwg/HoSo.dwg")
```

Đưa chuỗi `lisp` cho tool của AutoCAD MCP (thao tác `execute_lisp`). Đoạn LISP tự:

1. Duyệt các bản vẽ đang mở, **đóng bản vẽ nào trùng tên file đích** (không lưu). AutoCAD trả
   đường dẫn gạch ngược, thư viện dùng gạch xuôi: đã đổi về cùng kiểu trước khi so.
2. Nếu chính bản vẽ đang chạy LISP lại là file đích (không đóng được), cho nó "lưu thành" file giữ
   chỗ `C:/temp/_giu_cho_ten_file.dwg` để nhả tên.
3. Mở DXF, zoom vừa khung, lưu DWG (định dạng 2018).

Sau đó **luôn đếm lại số tờ** để xác nhận, không tin vào chữ "CONVERTED":

```lisp
(setq n 0)
(vlax-for x (vla-get-Layouts d) (if (/= (strcase (vla-get-Name x)) "MODEL") (setq n (1+ n))))
(princ (strcat "SO TO: " (itoa n)))
```

Nhiều file một lần: `acad.lisp_convert_batch(ten_cac_file, thu_muc_dxf, thu_muc_dwg)`.
Dọn rác và sửa lỗi trước khi giao: `acad.lisp_purge_and_audit()`.

## PDF

**Không in PDF qua MCP được.** Lệnh in tác động lên bản vẽ đang hoạt động, mà LISP gọi qua MCP luôn
chạy trong ngữ cảnh một bản vẽ cố định; `vla-Activate` báo "Drawing is busy". Xuất PDF bằng Python:

```python
from vncad import render
render.save_pdf(doc, "out/KT-01.pdf", sheet="A3")
```

## Sự cố thường gặp

| Hiện tượng | Nguyên nhân | Cách xử lý |
|---|---|---|
| AutoCAD treo, không trả lời | hộp thoại "Save changes?" do lệnh CLOSE bản vẽ chưa lưu | người dùng bấm No; từ nay chỉ đóng bằng `vla-Close d :vlax-false` |
| "Error saving the document" | file đích đang mở | dùng `lisp_open_and_convert` bản hiện tại (tự nhả khoá) |
| Trả về `BUSY` ở bản cũ | chính bản vẽ đang chạy LISP là file đích | bản hiện tại tự lưu sang file giữ chỗ |
| Chữ tiếng Việt vỡ khi đọc DWG cũ | file gốc mã hoá VNI-Windows | đọc cp1252 rồi ánh xạ VNI sang Unicode |

## Không có MCP

- `acad.send_command(...)`: gửi lệnh qua thư mục IPC `C:/temp`, cần AutoCAD đã nạp `mcp_dispatch.lsp`.
- `acad.write_script(scr, dxf, dwg)`: tạo file `.scr` chạy ngầm bằng `accoreconsole.exe /i <dxf> /s <scr>`.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.