Chèn Đối Tượng Ole Vào Word Với Gói Ole

Giới thiệu

Nếu bạn từng muốn nhúng một tệp vào tài liệu Word, bạn đã đến đúng nơi rồi. Cho dù đó là tệp ZIP, bảng tính Excel hay bất kỳ loại tệp nào khác, việc nhúng tệp trực tiếp vào tài liệu Word của bạn có thể cực kỳ hữu ích. Hãy nghĩ về nó như việc có một ngăn bí mật trong tài liệu của bạn, nơi bạn có thể cất giữ đủ loại kho báu. Và hôm nay, chúng ta sẽ hướng dẫn cách thực hiện việc này bằng Aspose.Words cho .NET. Sẵn sàng trở thành phù thủy Word chưa? Hãy cùng bắt đầu nào!

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

Trước khi bắt đầu, hãy đảm bảo bạn có những điều sau:

  1. Aspose.Words cho .NET: Nếu bạn chưa tải xuống, hãy tải xuống từđây.
  2. Môi trường phát triển: Visual Studio hoặc bất kỳ môi trường phát triển .NET nào khác.
  3. Hiểu biết cơ bản về C#: Bạn không cần phải là chuyên gia, nhưng việc hiểu biết về C# sẽ giúp ích cho bạn.
  4. Thư mục tài liệu: Một thư mục nơi bạn có thể lưu trữ và lấy tài liệu.

Nhập không gian tên

Trước tiên, hãy sắp xếp các không gian tên của chúng ta. Bạn cần đưa các không gian tên sau vào dự án của mình:

using System;
using System.IO;
using Aspose.Words;
using Aspose.Words.Drawing;

Chúng ta hãy chia nhỏ thành các bước nhỏ để bạn có thể dễ dàng thực hiện theo.

Bước 1: Thiết lập tài liệu của bạn

Hãy tưởng tượng bạn là một nghệ sĩ với một trang giấy trắng. Đầu tiên, chúng ta cần trang giấy trắng, đó là tài liệu Word của chúng ta. Sau đây là cách bạn thiết lập:

// Đường dẫn đến thư mục tài liệu của bạn
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

Đoạn mã này khởi tạo một tài liệu Word mới và thiết lập DocumentBuilder mà chúng ta sẽ sử dụng để chèn nội dung vào tài liệu.

Bước 2: Đọc Đối tượng Cũ của Bạn

Tiếp theo, hãy đọc tệp bạn muốn nhúng. Hãy nghĩ về điều này như việc nhặt kho báu bạn muốn giấu trong ngăn bí mật của mình:

byte[] bs = File.ReadAllBytes(dataDir + "Zip file.zip");

Dòng này đọc tất cả các byte từ tệp ZIP của bạn và lưu trữ chúng trong một mảng byte.

Bước 3: Chèn đối tượng Ole

Bây giờ đến phần kỳ diệu. Chúng ta sẽ nhúng tệp vào tài liệu Word của mình:

using (Stream stream = new MemoryStream(bs))
{
    Shape shape = builder.InsertOleObject(stream, "Package", true, null);
    OlePackage olePackage = shape.OleFormat.OlePackage;
    olePackage.FileName = "filename.zip";
    olePackage.DisplayName = "displayname.zip";
}

Ở đây, chúng ta tạo một luồng bộ nhớ từ mảng byte và sử dụngInsertOleObject phương pháp nhúng nó vào tài liệu. Chúng tôi cũng đặt tên tệp và tên hiển thị cho đối tượng nhúng.

Bước 4: Lưu tài liệu của bạn

Cuối cùng, chúng ta hãy lưu lại kiệt tác của mình:

doc.Save(dataDir + "WorkingWithOleObjectsAndActiveX.InsertOleObjectWithOlePackage.docx");

Thao tác này sẽ lưu tài liệu cùng với tệp nhúng của bạn trong thư mục đã chỉ định.

Phần kết luận

Và bạn đã có nó! Bạn đã nhúng thành công một đối tượng OLE vào một tài liệu Word bằng Aspose.Words cho .NET. Giống như thêm một viên ngọc ẩn vào tài liệu của bạn và có thể được tiết lộ bất cứ lúc nào. Kỹ thuật này có thể cực kỳ hữu ích cho nhiều ứng dụng, từ tài liệu kỹ thuật đến báo cáo động.

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

Tôi có thể nhúng các loại tệp khác bằng phương pháp này không?

Có, bạn có thể nhúng nhiều loại tệp khác nhau như bảng tính Excel, PDF và hình ảnh.

Tôi có cần giấy phép sử dụng Aspose.Words không?

Vâng, bạn cần một giấy phép hợp lệ. Bạn có thể nhận được mộtgiấy phép tạm thời để đánh giá.

Làm thế nào để tùy chỉnh tên hiển thị của đối tượng OLE?

Bạn có thể thiết lậpDisplayName tài sản củaOlePackage để tùy chỉnh nó.

Aspose.Words có tương thích với .NET Core không?

Có, Aspose.Words hỗ trợ cả .NET Framework và .NET Core.

Tôi có thể chỉnh sửa đối tượng OLE nhúng trong tài liệu Word không?

Không, bạn không thể chỉnh sửa đối tượng OLE trực tiếp trong Word. Bạn cần mở nó trong ứng dụng gốc của nó.