wyodrębnij obrazy z pdf w Python

Obrazy są powszechnie używane w dokumentach PDF wraz z tekstem, co sprawia, że treść jest bardziej atrakcyjna i rozbudowana. Podczas przetwarzania i analizowania dokumentów PDF może być konieczne wyodrębnienie obrazów. Dlatego w tym artykule pokażemy, jak programowo przetwarzać pliki PDF i wyodrębniać obrazy w Python. Przewodnik krok po kroku i przykładowy kod zademonstrują cały proces ekstrakcji obrazu.

Biblioteka Python do wyodrębniania obrazów z plików PDF

Aby wyodrębnić obrazy z pliku PDF, użyjemy Aspose.Words for Python. Jest to potężna i bogata w funkcje biblioteka do tworzenia i manipulowania dokumentami tekstowymi, w tym PDF i DOCX. Możesz zainstalować bibliotekę z PyPI za pomocą następującego polecenia pip.

> pip install aspose-words

Kroki, aby wyodrębnić obrazy z pliku PDF

Aspose.Words for Python pozwala wyodrębnić obrazy z pliku PDF w kilku prostych krokach. Poniżej przedstawiono przepływ pracy dotyczący wyodrębniania obrazów z pliku PDF przy użyciu Aspose.Words for Python.

  • Załaduj plik PDF z żądanej lokalizacji.
  • Konwertuj pliki PDF na format DOCX.
  • Przetwarzaj pliki PDF w wersji DOCX i wyodrębniaj obrazy
  • Zapisz każdy obraz jako plik w wybranej lokalizacji.

W poniższej sekcji pokazano, jak przekształcić powyższe kroki w kod Python i wyodrębnić obrazy z pliku PDF.

Wyodrębnij obrazy z pliku PDF w Python

W procesie ekstrakcji obrazu najpierw przekonwertujemy plik PDF do formatu DOCX. W pliku DOCX obrazy są reprezentowane przez węzły kształtu. Dlatego przetworzymy każdy kształt i wyodrębnimy z niego obraz.

Poniżej przedstawiono kroki, aby wyodrębnić obrazy z pliku PDF w Python.

  • Najpierw załaduj plik PDF przy użyciu klasy Document.
  • Następnie zapisz PDF w formacie DOCX i załaduj wersję DOCX pliku PDF.
  • Pobierz wszystkie kształty do obiektu, używając metody Document.getchildnodes(NodeType.SHAPE, True).
  • Zapętlaj kształty i wykonaj następujące operacje dla każdego węzła kształtu:
    • Rzuć kształt na typ Shape za pomocą metody asshape().
    • Użyj metody Shape.hasimage(), aby sprawdzić, czy kształt ma obraz.
    • Wyodrębnij obraz z kształtu i zapisz go za pomocą metody Shape.imagedata.save(string).

Poniższy przykład kodu demonstruje wyodrębnianie obrazu z dokumentu PDF w języku Python.

# Importuj moduł Aspose.Words for Python
import aspose.words as aw

# załaduj plik PDF i przekonwertuj do formatu Word DOCX
pdf = aw.Document("document.pdf")
pdf.save("pdf.docx")

# załaduj wersję PDF DOCX
doc = aw.Document("pdf.docx")

# odzyskać wszystkie kształty
shapes = doc.get_child_nodes(aw.NodeType.SHAPE, True)
imageIndex = 0

# pętla przez kształty
for shape in shapes :
    shape = shape.as_shape()
    if (shape.has_image) :

        # ustaw nazwę pliku obrazu
        imageFileName = f"Image.ExportImages.{imageIndex}_{aw.FileFormatUtil.image_type_to_extension(shape.image_data.image_type)}"

        # zapisać obraz
        shape.image_data.save(imageFileName)
        imageIndex += 1

Biblioteka wyodrębniania obrazów PDF w języku Python — uzyskaj bezpłatną licencję

Możesz uzyskać darmową tymczasową licencję na wyodrębnianie obrazów z plików PDF bez ograniczeń ewaluacyjnych.

Wniosek

Podczas analizy dokumentów PDF konieczne jest również wyodrębnienie obrazów wraz z tekstem. W tym artykule nauczyłeś się, jak wyodrębniać obrazy z pliku PDF w Python. Możesz po prostu zainstalować Aspose.Words for Python i zintegrować ekstrakcję obrazów w swoich aplikacjach.

Przeglądaj bibliotekę ekstrakcji obrazów PDF firmy Aspose

Aspose.Words for Python oferuje szereg innych funkcji do manipulowania dokumentami tekstowymi. Możesz odwiedzić dokumentację, aby dowiedzieć się więcej o bibliotece. Jeśli masz jakieś pytania, daj nam znać za pośrednictwem naszego forum.

Zobacz też