Wstaw obiekt Ole do programu Word za pomocą pakietu Ole

Wstęp

Jeśli kiedykolwiek chciałeś osadzić plik w dokumencie Word, jesteś we właściwym miejscu. Niezależnie od tego, czy jest to plik ZIP, arkusz Excela czy jakikolwiek inny typ pliku, osadzenie go bezpośrednio w dokumencie Word może być niezwykle przydatne. Pomyśl o tym jak o tajnej skrytce w dokumencie, w której możesz schować wszelkiego rodzaju skarby. A dziś pokażemy, jak to zrobić za pomocą Aspose.Words dla .NET. Gotowy, aby zostać czarodziejem Worda? Zanurzmy się!

Wymagania wstępne

Zanim zaczniemy, upewnij się, że masz następujące rzeczy:

  1. Aspose.Words dla .NET: Jeśli jeszcze tego nie zrobiłeś, pobierz je ze stronyTutaj.
  2. Środowisko programistyczne: Visual Studio lub inne środowisko programistyczne .NET.
  3. Podstawowa znajomość języka C#: Nie musisz być ekspertem, ale dobra znajomość języka C# będzie pomocna.
  4. Katalog dokumentów: folder, w którym można przechowywać i wyszukiwać dokumenty.

Importuj przestrzenie nazw

Po pierwsze, uporządkujmy nasze przestrzenie nazw. Musisz uwzględnić następujące przestrzenie nazw w swoim projekcie:

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

Podzielmy to na mniejsze kroki, aby łatwiej było śledzić instrukcję.

Krok 1: Skonfiguruj swój dokument

Wyobraź sobie, że jesteś artystą z pustym płótnem. Najpierw potrzebujemy naszego pustego płótna, którym jest nasz dokument Word. Oto, jak go skonfigurować:

// Ścieżka do katalogu dokumentów
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

Ten kod inicjuje nowy dokument Word i konfiguruje DocumentBuilder, którego użyjemy do wstawiania treści do naszego dokumentu.

Krok 2: Przeczytaj swój stary obiekt

Następnie przeczytajmy plik, który chcesz osadzić. Wyobraź sobie, że podnosisz skarb, który chcesz ukryć w swojej tajnej skrytce:

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

Ten wiersz odczytuje wszystkie bajty z pliku ZIP i zapisuje je w tablicy bajtów.

Krok 3: Wstaw obiekt Ole

Teraz nadchodzi magiczna część. Osadzimy plik w naszym dokumencie Word:

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";
}

Tutaj tworzymy strumień pamięci z tablicy bajtów i używamyInsertOleObject metodę osadzania go w dokumencie. Ustawiamy również nazwę pliku i nazwę wyświetlaną dla osadzonego obiektu.

Krok 4: Zapisz swój dokument

Na koniec zapiszmy nasze arcydzieło:

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

Zapisuje dokument z osadzonym plikiem w określonym katalogu.

Wniosek

I masz! Udało Ci się osadzić obiekt OLE w dokumencie Word za pomocą Aspose.Words dla .NET. To tak, jakbyś dodał ukryty klejnot do swojego dokumentu, który może zostać odsłonięty w dowolnym momencie. Ta technika może być niezwykle przydatna w wielu zastosowaniach, od dokumentacji technicznej po raporty dynamiczne.

Najczęściej zadawane pytania

Czy mogę osadzać inne typy plików za pomocą tej metody?

Tak, możesz osadzać różne typy plików, takie jak arkusze Excela, pliki PDF i obrazy.

Czy potrzebuję licencji na Aspose.Words?

Tak, potrzebujesz ważnej licencji. Możesz ją uzyskaćlicencja tymczasowa do oceny.

Jak mogę dostosować nazwę wyświetlaną obiektu OLE?

Możesz ustawićDisplayName własnośćOlePackage aby go dostosować.

Czy Aspose.Words jest kompatybilny z .NET Core?

Tak, Aspose.Words obsługuje zarówno .NET Framework, jak i .NET Core.

Czy mogę edytować osadzony obiekt OLE w dokumencie Word?

Nie, nie możesz edytować obiektu OLE bezpośrednio w programie Word. Musisz go otworzyć w jego natywnej aplikacji.