Konwertuj pliki PDF na obrazy za pomocą języka C#

Może zaistnieć potrzeba udostępnienia stron dokumentów PDF innym osobom w postaci plików graficznych. Jako programista C# możesz z łatwością programowo konwertować pliki PDF do formatu PNG, JPG, TIFF lub BMP w aplikacjach .NET. W tym artykule dowiesz się, jak konwertować pliki PDF na obrazy za pomocą języka C#.

W tym artykule omówiono/omówiono następujące tematy:

Interfejs API konwersji plików PDF na obrazy w języku C#

Do konwersji PDF na obrazy użyję Aspose.PDF for .NET API. Jest to potężny interfejs API do zarządzania plikami PDF, który umożliwia manipulowanie dokumentami PDF z poziomu aplikacji .NET. Umożliwia tworzenie, modyfikowanie, konwertowanie, renderowanie, zabezpieczanie i drukowanie dokumentów bez użycia programu Adobe Acrobat.

Możesz pobrać bibliotekę DLL interfejsu API lub zainstalować ją za pomocą NuGet.

Install-Package Aspose.Pdf

C# Konwertuj pliki PDF na obrazy PNG — tylko kilka kroków

Możesz programowo konwertować pliki PDF na obrazy PNG, wykonując czynności podane poniżej:

  1. Utwórz instancję klasy Document ze ścieżką wejściowego pliku PDF.

  2. Przejdź w pętli wszystkie strony pliku PDF, korzystając z kolekcji Document.Pages i wykonaj następujące czynności: 2.1. Utwórz instancję klasy Resolution i ustaw jej wartość.

    2.2. Utwórz instancję klasy PngDevice i przekaż obiekt Szerokość, Wysokość i Rozdzielczość.

    2.3. Wywołaj metodę Process(Page, String) z numerem strony i wyjściową ścieżką obrazu PNG, aby przekonwertować stronę na format PNG.

Poniższy przykładowy kod pokazuje, jak konwertować strony PDF na obrazy PNG przy użyciu języka C#.

// Otwórz dokument
Document pdfDocument = new Document("C:\\Files\\sample.pdf");

foreach (var page in pdfDocument.Pages)
{
    // Zdefiniuj rozdzielczość
    Resolution resolution = new Resolution(300);

    // Utwórz urządzenie Png z określonymi atrybutami
    // Szerokość, wysokość, rozdzielczość
    PngDevice PngDevice = new PngDevice(500, 700, resolution);

    // Konwertuj konkretną stronę i zapisz obraz do strumienia
    PngDevice.Process(pdfDocument.Pages[page.Number], "C:\\Files\\image" + page.Number + "_out" + ".Png");
}
Konwertuj pliki PDF na obrazy PNG za pomocą języka C#

Konwertuj pliki PDF na obrazy PNG za pomocą języka C#

Klasa Document reprezentuje dokument PDF. Zapewnia kilka właściwości i metod wykonywania różnych funkcjonalności. Kolekcja Document.Pages to zbiór stron dokumentów, a numeracja stron w kolekcji rozpoczyna się od 1. Klasa Resolution definiuje rozdzielczość obrazu. Klasa PngDevice umożliwia zapisywanie stron dokumentu PDF w obrazach PNG. Ta klasa udostępnia następujące metody zapisywania stron w obrazach PNG:

C# Konwertuj pliki PDF na obrazy JPG — krok po kroku

Możesz programowo konwertować pliki PDF na obrazy JPG, wykonując czynności podane poniżej:

  1. Utwórz instancję klasy Document ze ścieżką do pliku wejściowego.

  2. Przejdź w pętli wszystkie strony pliku PDF, korzystając z kolekcji Document.Pages i wykonaj następujące czynności: 2.1. Utwórz instancję klasy Resolution i ustaw jej wartość.

    2.2. Utwórz instancję klasy JpegDevice i przekaż obiekt Szerokość, Wysokość i Rozdzielczość.

    2.3. Wywołaj metodę Process(Page, String) z numerem strony i ścieżką wyjściowego obrazu JPG, aby przekonwertować stronę na JPG.

Poniższy przykładowy kod pokazuje, jak konwertować strony PDF na obrazy JPG przy użyciu języka C#.

// Otwórz dokument
Document pdfDocument = new Document("C:\\Files\\sample.pdf");

foreach (var page in pdfDocument.Pages)
{
    // Zdefiniuj rozdzielczość
    Resolution resolution = new Resolution(300);
    
    // Utwórz urządzenie JPEG z określonymi atrybutami
    // Szerokość, wysokość, rozdzielczość
    JpegDevice JpegDevice = new JpegDevice(500, 700, resolution);

    // Konwertuj konkretną stronę i zapisz obraz do strumienia
    JpegDevice.Process(pdfDocument.Pages[page.Number], "C:\\Files\\image" + page.Number + "_out" + ".Jpg");
}
Konwertuj pliki PDF na obrazy JPG za pomocą języka C#

Konwertuj pliki PDF na obrazy JPG za pomocą języka C#

Konwersja plików PDF w języku C# do BMP — krótki przewodnik

Możesz programowo konwertować pliki PDF na obrazy BMP, wykonując poniższe czynności:

  1. Utwórz instancję klasy Document ze ścieżką do pliku wejściowego.

  2. Przejdź w pętli wszystkie strony pliku PDF, korzystając z kolekcji Document.Pages i wykonaj następujące czynności: 2.1 Utwórz instancję klasy Resolution i ustaw jej wartość.

    2.2 Utwórz instancję klasy BmpDevice i przekaż obiekt Szerokość, Wysokość i Rozdzielczość.

    2.3 Wywołaj metodę Process(Page, String) z numerem strony i ścieżką wyjściowego obrazu BMP, aby przekonwertować stronę na BMP.

Poniższy przykładowy kod pokazuje, jak konwertować strony PDF na obrazy BMP przy użyciu języka C#.

// Otwórz dokument
Document pdfDocument = new Document("C:\\Files\\sample.pdf");

foreach (var page in pdfDocument.Pages)
{
    // Zdefiniuj rozdzielczość
    Resolution resolution = new Resolution(300);
    
    // Utwórz urządzenie PNG z określonymi atrybutami
    // Szerokość, wysokość, rozdzielczość
    BmpDevice BmpDevice = new BmpDevice(500, 700, resolution);

    // Konwertuj konkretną stronę i zapisz obraz do strumienia
    BmpDevice.Process(pdfDocument.Pages[page.Number], "C:\\Files\\image" + page.Number + "_out" + ".bmp");
}
Konwersja plików PDF do BMP przy użyciu języka C#

Konwersja plików PDF do BMP przy użyciu języka C#

Samouczek C#: Jak przekonwertować plik PDF na TIFF

Możesz programowo przekonwertować pliki PDF na TIFF, wykonując poniższe czynności:

  1. Utwórz instancję klasy Document ze ścieżką do pliku wejściowego.
  2. Zainicjuj instancję klasy Resolution i ustaw jej wartość.
  3. Utwórz instancję klasy TiffSettings.
  4. Ustaw różne właściwości, takie jak Kompresja, Głębokość, Kształt i SkipBlankPages itp.
  5. Utwórz instancję klasy TiffDevice z obiektami Rozdzielczość i TiffSettings.
  6. Wywołaj metodę Process(Document, String) z obiektem Document i ścieżką wyjściowego pliku TIFF, aby przekonwertować dokument na format TIFF.

Poniższy przykładowy kod pokazuje, jak przekonwertować plik PDF na plik TIFF przy użyciu języka C#.

// Otwórz dokument
Document pdfDocument = new Document("C:\\Files\\sample.pdf");

// Zdefiniuj rozdzielczość
Resolution resolution = new Resolution(300);

// Utwórz obiekt TiffSettings
TiffSettings tiffSettings = new TiffSettings
{
    Compression = CompressionType.None,
    Depth = ColorDepth.Default,
    Shape = ShapeType.Portrait,
    SkipBlankPages = false
};

// Utwórz urządzenie TIFF
TiffDevice tiffDevice = new TiffDevice(resolution, tiffSettings);

// Konwertuj konkretną stronę i zapisz obraz do strumienia
tiffDevice.Process(pdfDocument, "C:\\Files\\AllPagesToTIFF_out.tif");
Konwersja plików PDF do TIFF przy użyciu języka C#

Konwersja plików PDF do TIFF przy użyciu języka C#

Klasa TiffSettings udostępnia kilka ustawień konwersji pliku PDF do formatu TIFF. Podczas konwersji pliku PDF do formatu TIFF można ustawić jasność, kompresję, typ współrzędnych, głębokość, marginesy, kształt i pomijanie pustych stron.

C# Wyodrębnij obrazy z dokumentów PDF

Możesz programowo wyodrębnić wszystkie obrazy z dowolnego pliku PDF, wykonując czynności podane poniżej:

  • Utwórz instancję klasy Document ze ścieżką do pliku wejściowego.
  • Dla każdej strony utwórz instancję XImage dla każdego obrazu w kolekcji Page.Resources.Images.
  • Utwórz instancję klasy FileStream ze ścieżką do pliku obrazu wyjściowego.
  • Wywołaj metodę Save() z obiektem FileStream, aby zapisać obraz
  • Na koniec zamknij FileStream przy użyciu metody Close().

Poniższy przykładowy kod pokazuje, jak wyodrębnić obrazy z dokumentu PDF przy użyciu języka C#.

// Otwórz dokument
Document pdfDocument = new Document("C:\\Files\\sample.pdf");

// Przeglądaj strony w pętli
foreach (var page in pdfDocument.Pages)
{
    int imageCounter = 1;
    // Przeglądaj w pętli wszystkie obrazy
    foreach (XImage image in page.Resources.Images)
    {
        // Utwórz strumień pliku dla obrazu
        FileStream outputImage = new FileStream(String.Format("C:\\Files\\Page{0}_Image{1}.jpg", page.Number, imageCounter), FileMode.Create);

        // Zapisz obraz wyjściowy
        image.Save(outputImage);

        // Zamknij strumień
        outputImage.Close();

        imageCounter++;
    }
}
Wyodrębnij obrazy z dokumentów PDF za pomocą C#

Wyodrębnij obrazy z dokumentów PDF za pomocą C#

Klasa XImage reprezentuje obraz X-Object. Zapewnia kilka właściwości i metod pracy z obrazami. Klasa XImage udostępnia następujące metody zapisywania obiektu obrazu:

Kolekcja Page.Resources.Images reprezentuje kolekcję obrazów dla konkretnej strony.

Zdobądź bezpłatną licencję

Możesz wypróbować interfejs API bez ograniczeń ewaluacyjnych, prosząc o bezpłatną licencję tymczasową.

Wniosek

W tym artykule nauczyłeś się konwertować strony plików PDF na obrazy przy użyciu języka C#. Nauczyłeś się także, jak programowo konwertować pliki PDF na PNG, PDF na JPG, PDF na BMP i PDF na TIFF. Co więcej, nauczyłeś się wyodrębniać obrazy z pliku PDF za pomocą języka C#. Interfejs API oferuje również opcje kompresji, tworzenie i manipulowanie tabelami, funkcje wykresów i obrazów, rozbudowaną funkcjonalność hiperłączy, zadania związane ze stemplami i znakami wodnymi, rozszerzoną kontrolę bezpieczeństwa i niestandardową obsługę czcionek. Możesz dowiedzieć się więcej o Aspose.PDF for .NET API, korzystając z dokumentacji. W przypadku jakichkolwiek niejasności prosimy o kontakt na forum.

Zobacz też