Cách sử dụng nâng cao các tài liệu có thể chỉnh sửa

Giới thiệu

Nếu bạn là nhà phát triển .NET đang tìm cách nâng cao khả năng chỉnh sửa tài liệu của mình thì GroupDocs.Editor dành cho .NET cung cấp một bộ công cụ mạnh mẽ. Hướng dẫn toàn diện này sẽ hướng dẫn bạn cách sử dụng nâng cao các tài liệu có thể chỉnh sửa bằng GroupDocs.Editor, chia nhỏ từng bước một cách chi tiết để đảm bảo bạn có thể khai thác hết tiềm năng của nó.

Điều kiện tiên quyết

Trước khi đi sâu vào các chức năng nâng cao, hãy đảm bảo bạn có những điều sau:

Nhập không gian tên

Để bắt đầu, hãy đảm bảo bạn nhập các vùng tên cần thiết trong dự án .NET của mình:

using System;
using System.Collections.Generic;
using System.IO;
using GroupDocs.Editor.HtmlCss.Resources;
using GroupDocs.Editor.HtmlCss.Resources.Fonts;
using GroupDocs.Editor.HtmlCss.Resources.Images;
using GroupDocs.Editor.HtmlCss.Resources.Textual;
using GroupDocs.Editor.Options;

Bước 1: Tạo một phiên bản EditableDocument

Đầu tiên, bạn cần tạo một thể hiện củaEditableDocument bằng cách tải và chỉnh sửa tài liệu đầu vào có định dạng được hỗ trợ.

string inputFilePath = "YourSampleDocument.docx";
Editor editor = new Editor(inputFilePath, delegate { return new WordProcessingLoadOptions(); });
EditableDocument beforeEdit = editor.Edit(new WordProcessingEditOptions());

Ở bước này, chúng ta tải tài liệu đầu vào và chuẩn bị chỉnh sửa.

Bước 2: Trích xuất tài nguyên tài liệu

CácEditableDocument chứa nhiều tài nguyên khác nhau có thể được trích xuất và thao tác. Hãy chia nhỏ những điều này:

Bước 2.1: Trích xuất toàn bộ tài liệu dưới dạng HTML

Bạn có thể tạo một chuỗi chứa toàn bộ tài liệu với tất cả tài nguyên được nhúng dưới dạng HTML.

string allAsHtmlInsideOneString = beforeEdit.GetEmbeddedHtml();

Chuỗi này sẽ khá lớn vì nó bao gồm các bảng định kiểu, hình ảnh và phông chữ được mã hóa trong base64.

Bước 2.2: Trích xuất tất cả hình ảnh

Trích xuất tất cả hình ảnh từ tài liệu.

List<IImageResource> allImages = beforeEdit.Images;

Bước 2.3: Trích xuất tất cả phông chữ

Trích xuất tất cả các phông chữ được sử dụng trong tài liệu.

List<FontResourceBase> allFonts = beforeEdit.Fonts;

Bước 2.4: Trích xuất tất cả các bảng định kiểu

Trích xuất tất cả các bảng định kiểu ở định dạng văn bản.

List<CssText> allStylesheets = beforeEdit.Css;

Bước 2.5: Thu thập tất cả tài nguyên

Tập hợp tất cả các tài nguyên trong một cuộc gọi.

List<IHtmlResource> allResources = beforeEdit.AllResources;

Điều này bao gồm hình ảnh, phông chữ và bảng định kiểu.

Bước 2.6: Lấy đánh dấu HTML

Nhận đánh dấu HTML của tài liệu mà không cần tài nguyên được nhúng.

string htmlMarkup = beforeEdit.GetContent();

Bước 3: Điều chỉnh liên kết ngoài

Đôi khi, bạn cần điều chỉnh các liên kết bên ngoài để trỏ đến trình xử lý tài nguyên tùy chỉnh. Đây là cách thực hiện:

Bước 3.1: Chuẩn bị tiền tố tùy chỉnh

Chuẩn bị các tiền tố sẽ thêm vào các liên kết bên ngoài ban đầu.

string customImagesRequesthandlerUri = "http://example.com/ImagesHandler/id=";
string customCssRequesthandlerUri = "http://example.com/CssHandler/id=";
string customFontsRequesthandlerUri = "http://example.com/FontsHandler/id=";

Bước 3.2: Tạo đánh dấu HTML có tiền tố

Tạo đánh dấu HTML với các liên kết được điều chỉnh.

string prefixedHtmlMarkup = beforeEdit.GetContent(customImagesRequesthandlerUri, customCssRequesthandlerUri);

Bước 3.3: Lấy nội dung HTML chỉ có nội dung

Một số trình soạn thảo WYSIWYG chỉ xử lý đánh dấu HTML thuần túy không có tiêu đề.

string onlyBodyContent = beforeEdit.GetBodyContent();

Bước 3.4: Nội dung chỉ có nội dung có tiền tố

Tạo nội dung chỉ có nội dung với tiền tố hình ảnh tùy chỉnh.

string prefixedBodyContent = beforeEdit.GetBodyContent(customImagesRequesthandlerUri);

Bước 3.5: Trích xuất bảng định kiểu

Trích xuất các bảng định kiểu được sử dụng trong tài liệu.

List<string> stylesheets = beforeEdit.GetCssContent();

Bước 3.6: Bảng định kiểu có tiền tố

Trích xuất các bảng định kiểu với tiền tố tùy chỉnh.

List<string> prefixedStylesheets = beforeEdit.GetCssContent(customImagesRequesthandlerUri, customFontsRequesthandlerUri);

Bước 4: Lưu tài liệu dưới dạng HTML

Lưu tài liệu đã chỉnh sửa dưới dạng tệp HTML, bao gồm cả tài nguyên của nó.

string htmlFilePath = Path.Combine("output", Path.GetFileNameWithoutExtension(inputFilePath) + ".html");
beforeEdit.Save(htmlFilePath);

Phương pháp này tạo một thư mục riêng cho các tài nguyên như biểu định kiểu, hình ảnh và phông chữ.

Bước 5: Loại bỏ tài liệu có thể chỉnh sửa

Công cụ EditableDocumentIDisposable và cung cấp khả năng kiểm tra xem phiên bản đó có được xử lý hay không.

Console.WriteLine("EditableDocument is {0} disposed", !beforeEdit.IsDisposed ? "not" : "already");

Bước 5.1 Xử lý sự kiện vứt bỏ

Bạn cũng có thể đăng ký sự kiện xử lý.

EventHandler someMethod = delegate { Console.WriteLine("Disposing event was spotted!"); };
beforeEdit.Disposed += someMethod;

Bước 6: Tạo tài liệu có thể chỉnh sửa từ HTML

Tạo một phiên bản EditableDocument từ một tài liệu HTML.

Bước 6.1: Từ tệp HTML

EditableDocument afterEditFromFile = EditableDocument.FromFile(htmlFilePath, null);

Bước 6.2: Từ đánh dấu HTML

EditableDocument afterEditFromMarkup = EditableDocument.FromMarkup(htmlMarkup, allResources);

Các phiên bản này (afterEditFromFile và afterEditFromMarkup) giống hệt với phiên bản gốc (trướcEdit).

Bước 7: Xử lý thủ công

Loại bỏ thủ công các phiên bản EditableDocument của bạn.

beforeEdit.Dispose();
afterEditFromFile.Dispose();
afterEditFromMarkup.Dispose();
editor.Dispose();

Điều này đảm bảo làm sạch tài nguyên thích hợp.

Phần kết luận

GroupDocs.Editor cho .NET cung cấp các công cụ mạnh mẽ để chỉnh sửa tài liệu theo chương trình. Bằng cách làm theo hướng dẫn từng bước này, bạn có thể quản lý nội dung tài liệu, tài nguyên và định dạng đầu ra một cách hiệu quả. Cho dù bạn đang nhúng tài nguyên, điều chỉnh liên kết bên ngoài hay chuyển đổi tài liệu sang HTML, GroupDocs.Editor đều trang bị cho bạn chức năng cần thiết để thao tác tài liệu nâng cao.

Câu hỏi thường gặp

GroupDocs.Editor hỗ trợ những định dạng nào?

GroupDocs.Editor hỗ trợ nhiều định dạng khác nhau bao gồm DOCX, XLSX, PPTX, v.v.

Tôi có thể sử dụng GroupDocs.Editor mà không cần giấy phép không?

Có, bạn có thể sử dụng nó vớidùng thử miễn phí hoặc mộtgiấy phép tạm thời.

Làm cách nào để trích xuất các tài nguyên cụ thể từ một tài liệu?

Bạn có thể trích xuất hình ảnh, phông chữ và biểu định kiểu bằng các phương pháp được cung cấp nhưImages, Fonts , VàCss.

Có thể điều chỉnh các liên kết trong đầu ra HTML không?

Có, bạn có thể điều chỉnh các liên kết bên ngoài bằng cách chỉ định tiền tố tùy chỉnh cho hình ảnh, CSS và phông chữ.

Làm cách nào để lưu tài liệu đã chỉnh sửa dưới dạng tệp HTML?

Sử dụngSave phương pháp củaEditableDocumentclass để lưu tài liệu dưới dạng tệp HTML, bao gồm cả tài nguyên của nó.