HtmlToWord đã được tạo ra để sử dụng trong một ứng dụng sử dụng Word để tạo ra các báo cáo dựa trên HTML đầu vào từ một lối vào web & nbsp; Bạn có thể sử dụng nó như vậy.:
nhập khẩu HtmlToWord, win32com.client
word = win32com.client.gencache.EnsureDispatch ("Word.Application")
word.Visible = True # Đừng đặt này là True trong sản xuất!
tài liệu = word.Documents.Add ()
phân tích cú pháp = HtmlToWord.Parser ()
Html = "" "
Đây là một tiêu đề
Đây là số văn bản trong đoạn
- Boo! Tôi là một danh sách
& Nbsp;
"" "
parser.ParseAndRender (Html, word, document.ActiveWindow.Selection)
Hoặc nếu bạn không muốn sử dụng HTML, bạn có thể tạo ra một cây của các thẻ chính mình (Danh sách các thành phần bỏ qua):
từ HtmlToWord.elements nhập khẩu *
parser.Render (word, [
& Nbsp; Heading3 ([Text ("Đây là một danh hiệu")]),
& Nbsp; Đoạn ([Image (thuộc tính = {"src": "http://placehold.it/150x150", "alt": "Tôi đi đây"})]),
& Nbsp; Đoạn ([
& Nbsp; Italic ([Text ("Đây là"), Bold ([Text ("một số")]), Text ("text")]),
& Nbsp; Text ("trong một"),
& Nbsp; HyperLink ([Text ("đoạn")], {"href": "http://google.com"}),
& Nbsp;])
], Document.ActiveWindow.Selection)
thẻ được hỗ trợ và extentions
HtmlToWord hiện hỗ trợ các thẻ HTML sau đây:
- P
- B / strong
- Br
- Div
- Em / i
- U
- Ul
- Ol
- Li
- Bảng
- Tbody
- Tr
- Td
- Img
- Một
- H1 / 2/3/4
Kéo dài
Mở rộng HtmlToWord là khá dễ dàng. Mỗi thẻ là một lớp kế thừa từ BaseElement. Nó có hai phương pháp được gọi là: StartRender và EndRender. Hãy xem trong các yếu tố / headings.py và các yếu tố / text.py cho một số ví dụ đơn giản.
Lý
Tại sao Word? Tại sao không ODF hoặc OpenOffice?
Thời gian. Words Object Model được rất tốt tài liệu với nhiều mẫu có sẵn trên internet - bất kỳ mã .NET trong VB hay C # có thể được dịch khá dễ dàng. Ngày đầu này, bạn có thể ghi lại của Macro trong Word mà tạo ra mã Visual Basic trong khi bạn chơi với một tài liệu, có nghĩa là nó rất nhanh chóng để tìm hiểu làm thế nào để làm việc. ODF trông mát mẻ, nhưng một lần nữa tôi không nhận được bất kỳ trẻ hơn và giao diện COM word đánh dấu tất cả các ô. . Trong tương lai tôi có thể mở rộng mô-đun này để tạo ODF XML, nhưng bây giờ một ước mơ của mình
Yêu cầu :
- Python
Bình luận không