Repository navigation
Best Practices vi
Hammad Maqbool edited this page Oct 29, 2026
·
1 revision
English · 简体中文 · 繁體中文 · Español · العربية · Français · Português (Brasil) · Deutsch · हिन्दी · 日本語 · 한국어 · Русский · Bahasa Indonesia · Türkçe · Italiano · Tiếng Việt
Những thói quen này xuất phát trực tiếp từ cách docxi hoạt động, và phần lớn giúp ngăn một sự cố được liệt kê trong Khắc phục sự cố. Chúng được nhóm theo chủ đề. Lời khuyên về thiết lập trang áp dụng cho mọi người, còn lời khuyên về bảo mật và hiệu năng quan trọng nhất với các ứng dụng chạy production.
-
Truyền cả bốn lề cùng lúc. Hash bạn truyền cho
Docxi::Document.newthay thế các giá trị mặc định, và giá trị nào trongtop,right,bottomvàleftbị bỏ qua sẽ được ghi rỗng. -
Đặt đầu trang và chân trang cho trang đầu. docxi luôn bật chế độ trang đầu riêng. Nếu trang 1 cần đầu trang hoặc chân trang, hãy gọi thêm
add_first_headervàadd_first_footer.
-
Dùng
space: truecho khoảng trắng ở đầu hoặc cuối. Nếu không, Word sẽ xóa chúng và các từ của hai run sẽ dính vào nhau. -
Đặt định dạng chung ở cấp đoạn văn. Các tùy chọn truyền cho
p, nhưsize:hoặcfont:, áp dụng cho mọi run bên trong, nên bạn ít phải lặp lại hơn. -
Dùng
p.brđể ngắt dòng vàdocument.br(page: true)để ngắt trang.document.brkhông kèmpage: truesẽ tạo ra XML không hợp lệ.
-
Đặt viền trên hàng hoặc ô, không đặt trên bảng. Trong 0.1.0,
borders:ở cấp bảng được áp dụng cho từng ô thay vì cho đường viền ngoài của bảng. -
Khai báo
columns_widthcho mọi cột. Các ô lấy độ rộng từ đó, nên bảng giữ được bố cục như bạn mong muốn.
- Dùng tệp PNG. Mọi hình ảnh đều được lưu dưới dạng part PNG.
-
Đặt kích thước hình ảnh nội dòng bằng
style:, ví dụstyle: { width: "120pt", height: "60pt" }. Đây là cách đặt kích thước hình ảnh duy nhất hoạt động đúng như mong đợi trong 0.1.0. -
Truyền đường dẫn thay vì một
Fileđang mở nếu tài liệu có thể được kết xuất nhiều lần. Hình ảnh từ IO được đọc trong lúcrender, và lần kết xuất thứ hai sẽ nhận một hình ảnh rỗng. -
Hình ảnh trong đầu trang, trong ô bảng và hình ảnh định vị cho đến bản 0.2.0. Chiều rộng và chiều cao của chúng đều được tính bằng
width * height * 14.92EMU, nên kết quả luôn là hình vuông. Để có một hình vuông cạnhSinch, hãy truyềnwidthvàheightbằngMath.sqrt(S * 914400 / 14.92).round, tức khoảng 248 cho một inch.
-
Không truyền chuỗi không đáng tin cậy vào
add_media. Đường dẫn khiến docxi đọc tệp đó từ máy chủ của bạn, còn URL khiến máy chủ của bạn tải nó xuống. Hãy truyền một IO do chính bạn mở, hoặc kiểm tra giá trị trước. Xem Bảo mật. -
Văn bản được thoát ký tự tự động. Các chuỗi truyền cho
textđược ghi dưới dạng văn bản XML, nên dữ liệu người dùng nhập không thể thay đổi cấu trúc tài liệu.
-
Dựng tài liệu lớn trong tác vụ nền. Toàn bộ tài liệu được dựng trong bộ nhớ khi bạn gọi
render. Xem Tích hợp. -
Kết xuất một lần, rồi dùng lại các byte. Hãy giữ
word.render.stringnếu bạn cần gửi hoặc lưu tài liệu nhiều lần. -
Ghim một phiên bản tương thích bằng
gem "docxi", "~> 0.1". -
Kiểm thử những gì bạn tạo ra. Tệp
.docxlà một zip chứa các tệp XML, nên bài kiểm thử có thể giải nén và kiểm tra XML. Chính các bài kiểm thử của docxi cũng hoạt động theo cách này. Xem Kiến trúc.
docxi wiki · README · Installation · Troubleshooting · Report an issue · MIT License
Start
Build documents
Help
Project
Links
Languages