Ten szybki samouczek zawiera informacje na temat jak wyodrębnić wszystkie obrazy z dokumentu Word w Pythonie. Zapewnia wszystkie zasoby do konfiguracji środowiska i wprowadza ważne konstrukcje API, które są wymagane do wykonania zadania, w tym nazwy klas, metody i właściwości. Możesz postępować zgodnie z instrukcjami i napisać kompletny program do wyodrębniania obrazów z dokumentu Word w pythonie, na przykład wyodrębniania obrazów z pliku DOCX i zapisywania go jako typ obrazu PNG, JPG itp. na dysku.
Kroki, aby wyodrębnić obrazy z pliku Word w Pythonie
- Skonfiguruj środowisko, aby używało Aspose.Words dla Pythona przez .NET do wyodrębniania obrazów
- Załaduj źródłowy plik programu Word z obrazami za pomocą obiektu klasy Document
- Uzyskaj listę wszystkich kształtów z załadowanego dokumentu za pomocą metody get_child_nodes()
- Przeanalizuj wszystkie elementy w kolekcji kształtów i wykryj obrazy
- Twórz unikalne nazwy plików dla każdego wykrytego obrazu w kolekcji kształtów
- Zapisz wyodrębniony obraz na dysku pod unikalną nazwą
Te kroki opisują proces wyodrębniania obrazów z dokumentu programu Word w języku Python przez udostępnienie konfiguracji środowiska i kroków pisania programu. Po utworzeniu środowiska załaduj plik Word z obrazami za pomocą obiektu klasy Document i pobierz z niego kolekcję wszystkich kształtów. Ponieważ klasa Shape posiada metody wykrywania obrazów, można wyodrębnić obrazy i zapisać je na dysku pod określoną nazwą.
Kod do wyodrębniania zdjęć z dokumentu programu Word w Pythonie
import aspose.words as aw | |
# Load the license | |
wordProtected = aw.License() | |
wordProtected.set_license("Aspose.Total.lic") | |
# Load a document | |
wordDocument = aw.Document("WordFileWithImages.docx") | |
# Get shapes collection | |
allShapes = wordDocument.get_child_nodes(aw.NodeType.SHAPE, True) | |
# Declare counter for images | |
index = 0 | |
# Iterate through all the shapes to detect and save images | |
for shape in allShapes: | |
# Type cast the node object to shape | |
shape = shape.as_shape() | |
if(shape.has_image): | |
index = index + 1 | |
# Prepare file name using the image counter and image type in the shape object | |
image_file_name = f"File.extract_images.{index}{aw.FileFormatUtil.image_type_to_extension(shape.image_data.image_type)}" | |
# Save the extracted image on the disk | |
shape.image_data.save(image_file_name) | |
print ("Images extracted successfully from the Word file") |
Tutaj przedstawiony jest kod, który demonstruje proces wyodrębniania obrazu z programu Word w Pythonie poprzez ładowanie pliku źródłowego za pomocą obiektu klasy Document, który ma wiele funkcji, takich jak udostępnianie hasła do chronionych plików, ustawianie kodowania i dołączanie ostrzeżenia wywołania zwrotne do kontrolowania procesu ładowania. Podobnie metoda get_child_nodes() służy do wyodrębniania kształtów, jednak można pobierać inne węzły, takie jak nagłówki, stopki, tabele, komentarze, przypisy i treść itp.
Ten artykuł poprowadził nas do pobrania wszystkich zdjęć z pliku Word w Pythonie. Jeśli chcesz poznać proces wstawiania zdjęcia do pliku Word, zapoznaj się z artykułem na jak wstawić obraz w programie Word za pomocą Pythona.