Hướng dẫn convert word to html php script - chuyển đổi từ sang tập lệnh html php

Hướng dẫn convert word to html php script - chuyển đổi từ sang tập lệnh html php

Từ HTML

Giấy phép PHPDocxAdvCorced và Premium bao gồm chức năng chuyển đổi các tệp Docx thành HTML với các lớp PHP gốc.docx Advanced and Premium licenses include the functionality of transforming DOCX files to HTML with native PHP classes.

Hiện tại có hai cách để chuyển đổi Word thành HTML với PHPDOCX:transform Word to HTML with phpdocx:

  • Với plugin chuyển đổiconversion plugin
  • Với lớp PHP gốc của TransformDocAdvHTMLTransformDocAdvHTML native PHP class

Plugin chuyển đổi thực thi libreoffice hoặc openoffice để thực hiện chuyển đổi. Phương pháp này có bất lợi: Nó không phải là PHP gốc và yêu cầu gọi các chương trình bên ngoài, bên cạnh đó, nó không cho phép tùy chỉnh đầu ra mà với các sửa đổi PHP DOM sau khi chuyển đổi.conversion plugin executes LibreOffice or OpenOffice to perform the conversion. This method has a disadvantage: it is not native PHP and requires calling external programs, besides, it doesn't allow to customize the output but with PHP DOM modifications after the conversion.

Các lớp PHP bản địa có trong giấy phép nâng cao và cao cấp cho phép chuyển đổi DOCX thành HTML với PHP độc quyền. Các tính năng chính của chức năng này là như sau:Advanced and Premium licenses allow to transform DOCX to HTML with PHP exclusively. The main features of this functionality are the following:

  • Chuyển đổi nội dung, kiểu dáng và thuộc tínhcontents, styles and properties
  • Các lớp PHP bản địa PHP classes
  • Dễ dàng tùy chỉnhcustomizable
  • Biến đổi Docx được tạo từ đầu và các mẫuscratch and templates

Việc chuyển đổi có thể được thực hiện chỉ bằng ba dòng mã:

trong đó document.docx có thể là một docx được tạo bằng phpDocx hoặc từ nguồn khác (ms word, libreoffice, v.v.). Giấy phép cao cấp cũng có thể chuyển đổi các tài liệu trong bộ nhớ.docx or from other source (MS Word, LibreOffice, etc). Premium licenses can also transform in-memory documents.

Các thẻ và thuộc tính OOXML được hỗ trợ

PhpDocx phân tích nội dung, kiểu, thuộc tính và nội dung XML khác.docx parses contents, styles, properties and other XML contents.

Danh sách các nội dung và kiểu hiện đang phân tích cú pháp bao gồm (Nội dung/Kiểu OOXML và Chuyển đổi HTML/CSS):

  • Tài liệu (W: Body):

    • màu nền (W: nền) => w: màu (màu nền)
    • Hình ảnh nền (V: Bối cảnh) => ID (hình nền-hình ảnh)
    • Border (W: PGBorder) => W: Top (Border-Top), W: Bottom (Border-Bottom), W: Left (Border-Left), W: Right (Border-Chân): W: Màu sắc (Border- Border- Màu sắc: #HEX), W: SZ (Border-Width), W: Val (Border-Style: Nil, none, Dashed, chấm, Double, Solid), W: Space (Padding)
  • Các phần (W: Sectpr):

    • Kích thước (W: PGSZ) => W: W (Max-Width)
    • Biên độ (W: PGMAR) => W: Top (Margin-Top), W: Bottom (Biên giới)
    • Cột (W: COLS) => W: Num (cột)
  • Tiêu đề và Metas (CP: CoreProperies):,

    • Tiêu đề (DC: Tiêu đề) =>
    • Tác giả (DC: Người tạo) => (Tác giả)
    • Mô tả (DC: Mô tả) => (Mô tả)
    • Từ khóa (CP: Từ khóa) => (Từ khóa)
  • Chuỗi văn bản (W: T) và Kiểu văn bản (W: RPR):

    • văn bản (w: t) =>
    • in đậm (w: b) => w: val (font-weight: in đậm)
    • Màu sắc (W: Màu) => W: Val (màu: #HEX)
    • Double Line qua (W: DStrike) => W: Val (phong cách trang trí văn bản: Double)
    • Gia đình phông chữ (W: RFonts) => W: ASCII (Font-Family), W: CS (Font-Family)
    • Kích thước phông chữ (W: SZ) => W: Val (kích thước phông chữ)
    • Điểm nổi bật (W: Điểm nổi bật) => W: Val (màu nền)
    • italic (w: i) => w: val (kiểu phông chữ: in nghiêng)
    • dòng qua (w: strike) => w: on (trang trí văn bản: dòng thông qua)
    • CASE (W: SmallCaps) => W: Val (Text-Transform: chữ hoa; kích thước phông chữ: Nhỏ)
    • Trang trí văn bản (w: u) => w: val (trang trí văn bản: không có hoặc gạch chân; phong cách trang trí văn bản: nét đứt, chấm, đôi, rắn, lượn sóng, không có)
    • Trường hợp trên (W: Caps) => W: Val (Text-Transform: chữ hoa)
    • Vanish (W: Vanish) => W: Val (khả năng hiển thị: ẩn; khả năng hiển thị: khả năng hiển thị)
    • Căn chỉnh dọc (W: Vertalign) => W: Val (dọc-Align: Sub; dọc-Align: Super)
  • Đoạn văn (W: PPR):

    • Màu nền (W: SHD) => W: SHD (màu nền)
    • in đậm (w: b) => w: val (font-weight: in đậm)
    • Màu sắc (W: Màu) => W: Val (màu: #HEX)
    • Màu sắc (W: Màu) => W: Val (màu: #HEX)
    • Double Line qua (W: DStrike) => W: Val (phong cách trang trí văn bản: Double)
    • Gia đình phông chữ (W: RFonts) => W: ASCII (Font-Family), W: CS (Font-Family)
    • Kích thước phông chữ (W: SZ) => W: Val (kích thước phông chữ)
    • Điểm nổi bật (W: Điểm nổi bật) => W: Val (màu nền)
    • Điểm nổi bật (W: Điểm nổi bật) => W: Val (màu nền)
    • italic (w: i) => w: val (kiểu phông chữ: in nghiêng)
    • dòng qua (w: strike) => w: on (trang trí văn bản: dòng thông qua)
    • dòng qua (w: strike) => w: on (trang trí văn bản: dòng thông qua)
    • CASE (W: SmallCaps) => W: Val (Text-Transform: chữ hoa; kích thước phông chữ: Nhỏ)
    • Trang trí văn bản (w: u) => w: val (trang trí văn bản: không có hoặc gạch chân; phong cách trang trí văn bản: nét đứt, chấm, đôi, rắn, lượn sóng, không có)
    • Trường hợp trên (W: Caps) => W: Val (Text-Transform: chữ hoa)
    • Vanish (W: Vanish) => W: Val (khả năng hiển thị: ẩn; khả năng hiển thị: khả năng hiển thị)
    • Căn chỉnh dọc (W: Vertalign) => W: Val (dọc-Align: Sub; dọc-Align: Super)
    • Trang trí văn bản (w: u) => w: val (trang trí văn bản: không có hoặc gạch chân; phong cách trang trí văn bản: nét đứt, chấm, đôi, rắn, lượn sóng, không có)
    • Trường hợp trên (W: Caps) => W: Val (Text-Transform: chữ hoa)
    • Vanish (W: Vanish) => W: Val (khả năng hiển thị: ẩn; khả năng hiển thị: khả năng hiển thị)
    • Trường hợp trên (W: Caps) => W: Val (Text-Transform: chữ hoa)
    • Vanish (W: Vanish) => W: Val (khả năng hiển thị: ẩn; khả năng hiển thị: khả năng hiển thị)
    • Word Wrap (W: WordWrap) => W: Val (Word-wrap: break word)
  • Hình ảnh (W: Vẽ): (PNG, JPG và các định dạng khác được hỗ trợ bởi các trình duyệt web; WMF được hỗ trợ nếu ImageImagick được cài đặt)

    • Biên giới (A: LN, A: NoFill) => W (chiều rộng), A: Prstdash (Style: Dashed, chấm, Solid), A: SRGBCLR (màu)
    • float (wp: vị trí, wp: align) => right (float: rẽ phải), trái (float: trái), trung tâm (hiển thị: block; margin-lft
    • Chiều cao (WP: Mức độ) => Cy (chiều cao)
    • Liên kết (A: HlinkClick) => R: ID (href)
    • Biên độ (WP: EffectExtent, WP: vị trí, WP: vị trí) => t (Margin-top), R (lề) .
    • Kết thúc văn bản (WP: Inline, WP: Anchor) => WP: Inline (Hiển thị: Inline), WP: Wrapsquare (Float: Left), WP: Wrapnone S sau đó (Vị trí: Tuyệt đối; Z -Index: -1)
    • Chiều rộng (WP: Mức độ) => CX (Chiều rộng)
    • SRC (r: nhúng, r: link) => hình ảnh được nhúng và liên kết
    • được lưu dưới dạng tệp hoặc dưới dạng base64 (chỉ cho hình ảnh nhúng)
  • Danh sách (W: NumPR) :,,

    • Loại (W: NumID) => W: Val và W: ILVL (kiểu danh sách kiểu: Circle, Disc, Decimal, Lower-Alpha, Lower-Roman, Upper-Alpha, Upper-Roman)
    • Xem các yếu tố đoạn văn cho các phong cách khác
    • Một số kiểu như kích thước màu hoặc phông chữ có thể được kế thừa cho nội dung LI từ biểu tượng LI. Trong trường hợp này, nội dung phải có phong cách riêng
  • Liên kết:

    • Bookmark (W: BookmarkStart, W: Bookmarkend) => W: name ()
    • Phục hồi chéo (W: orthText) => pageref ()
    • liên kết (W: orthText) => siêu liên kết ()
  • các yếu tố hình thức

    • Hộp kiểm (W: orthText) => (Hộp kiểm)
    • ngày (w: ngày) => (ngày)
    • Input (W: orthText) => (văn bản)
    • select (w: usterText, w: comboBox) => ()
  • Styles (Xem các yếu tố trên cùng trang này cho các kiểu được hỗ trợ)

    • ký tự/chạy (W: RPR)
    • Đoạn văn (W: PPR)
    • Danh sách (W: PPR, W: Numid, W: ILVL)
    • Bảng (W: Kiểu)
    • Tệp Styles (W: Styles) => Nhân vật/Run (W: Rstyle), đoạn văn và Danh sách (W: PSTYLE), Bảng
    • Đánh số tệp => Danh sách (W: AbstractNum)
    • Kiểu mặc định (W: DocDefaults, W: Style W: Default = "1") => W: RPR, W: PPR
  • Bảng (W: TBL):

    • Align (W: JC) => W: Val (Margin-Left, Margin-Right)
    • Border (W: tblborder) => W: Top, W: Right, W: Bottom, W: Left (Border-: Style Style [Dashed, Dotted, Double, none, Solid]
    • Bố cục (W: tbllayout) => W: Loại cố định (bảng đặt bảng)
    • Biên độ (W: TBLIND, W: TBLPPR) => W: W (Margin-Left), W: BottomFromtext (Margin-Bottom), W: TopFromtext (Margin-Top)
    • Chiều rộng (W: TBLW) => W: Loại PCT, DXA W: W (chiều rộng)
    • Kiểu Col đầu tiên (W: TBLSTYLEPR) => W: Loại (W: Kiểu RPR)
    • Kiểu hàng đầu tiên (W: TBLSTYLEPR) => W: Loại (W: RPR và W: Kiểu PPR)
    • Kiểu col cuối cùng (W: TBLSTYLEPR) => W: Loại (W: Kiểu RPR)
    • Kiểu hàng cuối cùng (W: TBLSTYLEPR) => W: Loại (W: RPR và W: Kiểu PPR)
    • Band1Horz Style (W: TBLSTYLEPR) => W: Loại (W: RPR và W: Kiểu PPR)
    • Band2Horz Style (W: TBLSTYLEPR) => W: Loại (W: RPR và W: Kiểu PPR)
    • Chiều cao hàng (W: TRPR) => W: Trheight (chiều cao)
    • ROWSPAN (W: Vmerge) => W: Khởi động lại Val, Tiếp tục (Rowspan)
    • Màu nền ô (W: SHD) => W: Fill (màu nền)
    • Biên giới ô (W: TCPR) => W: Top, W: Right, W: Bottom, W: Left (Border-: Width Style [Dashed, Dotted, Double, none, Solid] màu)
    • Padding tế bào (W: TBLCELLMAR) => W: Top (Padding-Top), W: Right (Đadding-Shle
    • Căn chỉnh dọc của ô (W: Valign) => trên cùng, dưới, trung tâm, cả hai và mặc định W: Val (dọc-Align)
    • Chiều rộng ô (W: TCW) => W: W (chiều rộng)
    • Colspan (W: GridSpan) => W: Val (Colspan)
    • Hướng văn bản (W: TextDirection) => W: Val BTLR, TBLRV, TBRL và TBRLV (chế độ viết, biến đổi, không gian trắng)
  • các yếu tố khác

    • break (w: br) => ()
    • Nhận xét (W: Nhận xét, W: Nhận xét) => Được thêm vào cuối trang ()
    • ngày (w: orthText) => thời gian ()
    • EndNote (W: EndNotereference, W: EndNote) => Được thêm vào cuối trang ()
    • Tệp bên ngoài (w: altchunk) => r: id ()
    • Footer (W: FooterReference, W: FTR) => () được thêm vào phần dưới của phần của nó
    • Tiêu đề (W: HeaderReference, W: HDR) => () được thêm vào phần trên cùng của phần của nó
    • Chú thích (W: footnotereference) => được thêm vào cuối trang ()
    • Phương trình toán học => Văn phòng Mathml
    • Các trường đơn giản (W: fldsimple) => Tác giả, Nhận xét, LastSavedby, Tiêu đề
    • Tab (w: tab) => () Mặc định bên trái lề
    • Textbox (V: Textbox) => (), Style (Min-Height, Float, Width), FillColor (Màu nền), Top-Top (Margin-Top), StrokeColor (Màu đường biên giới, Phong cách Biên giới) (chiều rộng biên giới)
    • Nội dung được theo dõi (W: INS, W: DEL) => (,)

    WARNING:

  • Thực tế là một thẻ không được phân tích cú pháp không có nghĩa là nội dung của nó biến mất khỏi đầu ra HTML. Nó chỉ ngụ ý rằng các thuộc tính OOXML liên quan của chúng không được tính đến trực tiếp. Con cái và nội dung văn bản của họ sẽ được phân tích cú pháp và kết xuất với các kiểu tương ứng của chúng vào đầu ra HTML.does not mean its content disappears from the HTML output. It only implies that their associated OOXML properties are not taken directly into account. Their children and text content will be parsed and rendered with their corresponding styles into the HTML output.

Các tính năng chuyển đổi có trong PHPDocx cho phép chuyển đổi các tài liệu DOCX phức tạp được tạo từ đầu hoặc sử dụng các mẫu. Chúng ta hãy xem một số mẫu và đầu ra HTML của chúng.docx allow to transform complex DOCX documents generated from scratch or using templates. Let's take a look at some samples and their HTML output.

Docx với phần A4 và đoạn văn:

Hướng dẫn convert word to html php script - chuyển đổi từ sang tập lệnh html php

Docx với bảng:

Hướng dẫn convert word to html php script - chuyển đổi từ sang tập lệnh html php

Docx với danh sách và kiểu văn bản:

Hướng dẫn convert word to html php script - chuyển đổi từ sang tập lệnh html php

Docx với tiêu đề và chân trang:

Hướng dẫn convert word to html php script - chuyển đổi từ sang tập lệnh html php

Docx từ một mẫu:

Hướng dẫn convert word to html php script - chuyển đổi từ sang tập lệnh html php

Cách tùy chỉnh các phép biến đổi

Gần như tất cả các chức năng có sẵn để thực hiện các phép biến đổi Docx sang HTML có thể được tùy chỉnh.can be customized.

Hai lớp chính cho các phép biến đổi là: TransformDocADVHTML và TransformDocAdvHTMlPlugin.TransformDocAdvHTML and TransformDocAdvHTMLPlugin.

TransformDocADVHTML là lớp để phân tích các cấu trúc Docx và thực hiện chuyển đổi thành HTML. Hàm tạo của nó nhận được một đối tượng của loại TransformDocADVHTMLPlugin đặt các tùy chọn xuất. Lớp này có thể được mở rộng để tùy chỉnh chuyển đổi của từng phần tử, ví dụ: Transformw_bookmarkStart để đánh dấu hoặc Transformw_Sectpr cho các phần. is the class for parsing DOCX structures and performs the transformation to HTML. Its constructor receives an object of the TransformDocAdvHTMLPlugin type that sets the export options. This class can be extended to customize the transformation of each element, e.g., transformW_BOOKMARKSTART for bookmarks or transformW_SECTPR for sections.

TransformDocADVHTMLPLUGIN cho phép tạo các plugin biến đổi theo yêu cầu của dự án. Ví dụ: chèn hình ảnh là base64, bỏ qua các phần, tùy chỉnh các yếu tố chuyển đổi, đặt phương thức để đặt kích thước xuất và đặt CSS, JavaScript và HTML tùy chỉnh. PHPDocx bao gồm TransformDocADVHTMLDEFaultPlugin, plugin mặc định để thực hiện các phép biến đổi. allows to generate transformation plugins according to the project requirements. E.g.: inserting images as base64, ignoring sections, customizing conversion factors, setting the method to set export sizes and set CSS, JavaScript and custom HTML. phpdocx includes the TransformDocAdvHTMLDefaultPlugin, the default plugin to perform transformations.

Tất cả các tùy chọn có sẵn được giải thích kỹ lưỡng trong trang tài liệu API của phương thức TransformDocAdvHTML.