Konwersja plików Word do PDF jest obecnie powszechną praktyką i jest preferowana przed udostępnieniem dokumentów. MS Word zapewnia wbudowaną funkcję zapisywania dokumentów Word w formacie PDF, jednak może się zdarzyć, że będziesz chciał programowo przekonwertować dokument Word na PDF, na przykład w swoich aplikacjach internetowych, lub możesz wymagać wsadowej konwersji Word do PDF bez instalowania MS Office. W tym artykule dowiesz się, jak przekonwertować program Word na format PDF przy użyciu języka C# w środowisku .NET lub .NET Core.
Konwersja C# Word do PDF - Scenariusze
Z tego artykułu dowiesz się, jak:
- Konwertuj Worda na PDF w C#
- Konwertuj żądane strony dokumentu Word na PDF w C#
- Konwersja Word do PDF z określonym standardem PDF, takim jak PDF 1.7, PDF/A-1a itp.
- Konwertuj Word na PDF z kompresją obrazu/tekstu w C#
- Word do PDF z podpisem cyfrowym w C#
- Konwersja Word do PDF z żądaną jakością JPEG dla obrazów
C# .NET API do konwersji programu Word do formatu PDF
Aspose.Words for .NET to potężny interfejs API do tworzenia i manipulowania popularnymi formatami dokumentów programu Word. Interfejs API zapewnia również łatwy sposób konwersji dokumentów programu Word do formatu PDF z wysokim stopniem wierności. Dlatego w przypadku konwersji programu Word na PDF w języku C# najpierw dodamy odwołanie do Aspose.Words for .NET DLL w projekcie lub zainstalujemy go przy użyciu jednej z poniższych metod.
Korzystanie z Menedżera pakietów NuGet
- Utwórz/otwórz projekt w programie Visual Studio.
- Przejdź do Menedżera pakietów NuGet i wyszukaj Aspose.Words.
- Zainstaluj Aspose.Words dla platformy .NET.
Korzystanie z konsoli Menedżera pakietów
PM> Install-Package Aspose.Words
Prosta konwersja Worda do PDF w C#
Aby przekonwertować dokument programu Word do formatu PDF, należy wywołać metodę Document.Save() i określić nazwę pliku wyjściowego z rozszerzeniem „.pdf”. Poniższy przykładowy kod pokazuje, jak przekonwertować dokument programu Word na format PDF w języku C#.
// Załaduj dokument z dysku.
Document doc = new Document("word.doc");
// Zapisz jako PDF
doc.Save("output.pdf");
Dokument Worda
Przekonwertowany plik PDF
Konwertuj wybrane strony Worda na PDF w C#
Możesz także dostosować konwersję Word do PDF, określając zakres stron, które chcesz uzyskać w wynikowym dokumencie PDF. Możesz albo przekonwertować pierwsze N stron, albo zdefiniować zakres stron określając indeks strony początkowej. Poniższy przykładowy kod pokazuje, jak przekonwertować 3 strony, zaczynając od drugiej strony programu Word, do formatu PDF w języku C#.
Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// Konwertuj 3 strony, zaczynając od indeksu 1, gdzie 0 to indeks pierwszej strony
options.PageIndex = 1;
options.PageCount = 3;
// Zapisz Worda jako PDF
doc.Save("output.pdf", options);
C# Konwertuj Word na PDF z określonym standardem
Dokumenty PDF mogą być zgodne z różnymi standardami PDF, takimi jak PDF 1.7, PDF 1.5, PDF/A-1a itp. Zgodnie z tym Aspose.Words for .NET umożliwia określenie poziomu zgodności PDF w konwersji Word do PDF. Możesz określić poziom zgodności za pomocą wyliczenia PdfCompliance. Poniższy przykładowy kod pokazuje, jak ustawić poziom zgodności w programie Word do konwersji PDF w języku C#.
Document doc = new Document("word.docx");
// Ustaw zgodność PDFSaveOption na PDF17
PdfSaveOptions options = new PdfSaveOptions();
options.Compliance = PdfCompliance.Pdf17;
// Konwertuj Worda na PDF
doc.Save("output.pdf", options);
C# Konwersja programu Word do formatu PDF z kompresją tekstu/obrazu
Format PDF obsługuje kompresję tekstu i obrazu w celu zmniejszenia rozmiaru dokumentu. Ponieważ dokument PDF może być nieporęczny, kompresja jego zawartości ułatwia przesyłanie, udostępnianie, drukowanie itp. Kompresja tekstu i obrazu może być również stosowana w konwersji Word na PDF przy użyciu Aspose.Words for .NET.
Opcje kompresji tekstu
W wyliczeniu PdfTextCompression dostępne są następujące opcje kompresji tekstu.
- Brak: zapisywanie pliku PDF bez kompresji tekstu.
- Flate: Zapisywanie plików PDF z kompresją flate (ZIP).
Kompresja obrazu
W wyliczeniu PdfImageCompression dostępne są następujące opcje kompresji obrazu.
- Auto: API automatycznie wybiera najodpowiedniejszą kompresję dla każdego obrazu w dokumencie.
- Jpeg: Kompresja do obrazów JPEG (nie obsługuje przezroczystości).
Poniższy przykładowy kod pokazuje, jak przekonwertować program Word na format PDF z kompresją tekstu i obrazu w języku C#.
Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// Kompresja tekstu i obrazu
options.TextCompression = PdfTextCompression.Flate;
options.ImageCompression = PdfImageCompression.Auto;
// Zapisz Worda jako PDF
doc.Save("output.pdf", options);
Konwersja C# Word do PDF z podpisem cyfrowym
Możesz także zastosować podpis cyfrowy do wyjściowego pliku PDF podczas konwersji programu Word na PDF. Klasa CertificateHolder umożliwia określenie certyfikatu cyfrowego i hasła. Klasa PdfDigitalSignatureDetails umożliwia podanie szczegółów podpisu cyfrowego, takich jak posiadacz certyfikatu, przyczyna, lokalizacja oraz data/godzina. Poniższy przykładowy kod pokazuje, jak przekonwertować program Word na format PDF z podpisem cyfrowym w języku C#.
Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// Szczegóły dotyczące podpisów cyfrowych
CertificateHolder certHolder = CertificateHolder.Create("signature.pfx", "12345");
options.DigitalSignatureDetails = new PdfDigitalSignatureDetails(certHolder, "reason", "location", DateTime.Now);
// Zapisz Worda jako PDF
doc.Save("output.pdf", options);
Konwertuj Word na PDF z pożądaną jakością JPEG w C#
Możesz także określić żądaną jakość JPEG, jaką chcesz uzyskać w przekonwertowanym dokumencie PDF, używając właściwości PdfSaveOptions.JpegQuality. Wartość JpegQuality może wahać się od 0 do 100, gdzie 0 oznacza najgorszą jakość, ale maksymalną kompresję, a 100 oznacza najlepszą jakość, ale minimalną kompresję.
Poniższy przykładowy kod pokazuje, jak ustawić jakość JPEG podczas konwertowania programu Word na format PDF w języku C#.
Document doc = new Document("word.docx");
// Ustaw jakość JPEG
PdfSaveOptions options = new PdfSaveOptions();
options.JpegQuality = 100;
// Konwertuj Worda na PDF
doc.Save("output.pdf", options);
Wniosek
W tym artykule nauczyłeś się konwertować dokumenty programu Word do formatu PDF w języku C# z różnymi opcjami. Odwiedź dokumentację Aspose.Words for .NET, aby zobaczyć pełny zestaw funkcji oferowanych przez API. W przypadku jakichkolwiek pytań lub wątpliwości skontaktuj się z nami za pośrednictwem naszego forum.