Przejdź do treści stopki
POMOC DOTYCZąCA JęZYKA PYTHON

imageio python (Jak to działa dla programistów)

Imageio to wszechstronna biblioteka języka Python przeznaczona do odczytu i zapisu szerokiego zakresu danych obrazowych, w tym obrazów animowanych, danych wolumetrycznych i formatów naukowych. Zapewnia proste i spójne API, co czyni go doskonałym wyborem dla programistów i analityków danych zajmujących się przetwarzaniem danych obrazowych. W tym artykule przyjrzymy się, jak można wykorzystać Imageio do odczytu i zapisu obrazów, a później zajmiemy się również IronPDF firmy Iron Software do generowania dokumentów PDF. Oba te pakiety mogą być używane do tworzenia obrazów i przechowywania ich w dokumentach PDF w celach archiwizacyjnych.

Dlaczego warto korzystać z Imageio?

Imageio oferuje kilka zalet:

  1. Obsługa wielu formatów: Obsługuje wiele formatów obrazów, w tym PNG, JPEG, GIF, TIFF i inne.
  2. Łatwość użytkowania: API jest proste w użyciu, nawet dla początkujących.
  3. Kompatybilność międzyplatformowa: Imageio działa na różnych systemach operacyjnych, w tym Windows, macOS i Linux.
  4. Integracja z innymi bibliotekami: Można ją używać razem z innymi bibliotekami Pythona, takimi jak NumPy i Matplotlib, do zaawansowanego przetwarzania obrazów i wizualizacji.

Pierwsze kroki z Imageio

Instalacja

Możesz zainstalować Imageio za pomocą pip:

pip install imageio
pip install imageio
SHELL

Podstawowe zastosowanie

Oto prosty przykład pokazujący, jak odczytywać i zapisywać obrazy za pomocą Imageio:

import imageio.v3 as iio

# Read an image
image = iio.imread('image.jpg')
print(image.shape)  # Output: (329, 559, 3)

# Write the image to a new file
iio.imwrite('newimage.jpg', image)
import imageio.v3 as iio

# Read an image
image = iio.imread('image.jpg')
print(image.shape)  # Output: (329, 559, 3)

# Write the image to a new file
iio.imwrite('newimage.jpg', image)
PYTHON

W tym przykładzie Imageio odczytuje plik obrazu i drukuje jego kształt. Następnie zapisuje obraz do nowego pliku.

Wynik

imageio python (Jak to działa dla programistów): Rysunek 1 – Odczyt i zapis obrazu za pomocą Imageio

Zaawansowane funkcje

Imageio oferuje wiele zaawansowanych funkcji do bardziej złożonych zadań związanych z przetwarzaniem obrazów:

  1. Odczytywanie z różnych źródeł: Imageio może odczytywać obrazy z plików, adresów URL, a nawet strumieni bajtów.
  2. Obrazy animowane: Obsługuje odczyt i zapis obrazów animowanych, takich jak pliki GIF.
  3. Przetwarzanie wideo: Imageio obsługuje pliki wideo, umożliwiając odczyt i zapis klatek wideo.
  4. Dane wolumetryczne: Obsługuje odczyt i zapis danych wolumetrycznych, co jest przydatne w zastosowaniach naukowych.

Przykład: Tworzenie pliku GIF

Oto przykład tworzenia pliku GIF z serii obrazów przy użyciu Imageio:

import imageio.v2 as imageio
import numpy as np  # Import NumPy for numerical operations

# List of image file paths
image_files = ['img1.jpg', 'img2.jpg']  # Specify your image files here

# Read images and store them in a list
images = []
for file in image_files:
    images.append(imageio.imread(file))

# Save the images as a GIF
imageio.mimsave('output2.gif', images, duration=1.0)  # Duration is in seconds per frame
import imageio.v2 as imageio
import numpy as np  # Import NumPy for numerical operations

# List of image file paths
image_files = ['img1.jpg', 'img2.jpg']  # Specify your image files here

# Read images and store them in a list
images = []
for file in image_files:
    images.append(imageio.imread(file))

# Save the images as a GIF
imageio.mimsave('output2.gif', images, duration=1.0)  # Duration is in seconds per frame
PYTHON

W tym przykładzie Imageio odczytuje serię obrazów i tworzy animowany plik GIF.

imageio python (Jak to działa dla programistów): Rysunek 2 – Wynik w formacie GIF

Przedstawiamy IronPDF

imageio python (Jak to działa dla programistów): Rysunek 3 – IronPDF: biblioteka PDF dla języka Python

IronPDF to potężna biblioteka języka Python przeznaczona do tworzenia, edytowania i podpisywania plików PDF przy użyciu HTML, CSS, obrazów i JavaScript. Oferuje wydajność na poziomie komercyjnym przy niewielkim zużyciu pamięci i łatwym w obsłudze interfejsie. Najważniejsze funkcje obejmują:

Konwersja HTML do PDF:

Konwertuj pliki HTML, ciągi znaków HTML i adresy URL na pliki PDF. Na przykład, renderuj stronę internetową jako plik PDF przy użyciu renderera PDF przeglądarki Chrome.

Obsługa wielu platform:

IronPDF jest przeznaczony dla Python 3+ i działa również na systemach Windows, Mac, Linux oraz platformach chmurowych.
IronPDF jest również dostępny w środowiskach .NET, Java, Python i Node.js.

Redakcja i podpisanie:

Ustawiaj właściwości, dodawaj zabezpieczenia za pomocą haseł i uprawnień oraz stosuj podpisy cyfrowe w plikach PDF.

Szablony stron i ustawienia:

Możesz dostosować pliki PDF, dodając nagłówki, stopki, numery stron i regulowane marginesy. Dodatkowo obsługuje niestandardowe rozmiary papieru i responsywne układy.

Zgodność z normami:

Zgodny ze standardami PDF, w tym PDF/A i PDF/UA, obsługuje kodowanie znaków UTF-8 oraz zarządza zasobami, takimi jak obrazy, CSS i czcionki.

Instalacja

pip install ironpdf

Generowanie dokumentów PDF przy użyciu IronPDF i Imageio

Wymagania wstępne

  1. Upewnij się, że Visual Studio Code jest zainstalowane jako edytor kodu
  2. Zainstalowano Python w wersji 3

Na początek utwórzmy plik w języku Python, aby dodać nasze skrypty.

Otwórz Visual Studio Code i utwórz plik ImageioDemo.py.

Zainstaluj niezbędne biblioteki:

pip install imageio
pip install ironpdf
pip install imageio
pip install ironpdf
SHELL

Następnie dodaj poniższy kod, aby zademonstrować użycie pakietów IronPDF i Imageio dla języka Python.

import imageio.v2 as imageio
import numpy as np
from ironpdf import * 

# Apply your license key
License.LicenseKey = "your-key"

# List of image file paths
image_files = ['img1.jpg', 'img2.jpg', 'img3.jpg']

# Read images and store them in a list
images = []
for file in image_files:
    images.append(imageio.imread(file))

# Save the images as a GIF
imageio.mimsave('output2.gif', images, duration=0.5)  # Duration is in seconds per frame

# Convert the GIF to PDF
ImageToPdfConverter.ImageToPdf("output2.gif").SaveAs("ironPdf-imageio.pdf")
import imageio.v2 as imageio
import numpy as np
from ironpdf import * 

# Apply your license key
License.LicenseKey = "your-key"

# List of image file paths
image_files = ['img1.jpg', 'img2.jpg', 'img3.jpg']

# Read images and store them in a list
images = []
for file in image_files:
    images.append(imageio.imread(file))

# Save the images as a GIF
imageio.mimsave('output2.gif', images, duration=0.5)  # Duration is in seconds per frame

# Convert the GIF to PDF
ImageToPdfConverter.ImageToPdf("output2.gif").SaveAs("ironPdf-imageio.pdf")
PYTHON

Wyjaśnienie kodu

Ten skrypt konwertuje listę plików graficznych (img1.jpg, img2.jpg, img3.jpg) na plik GIF, a następnie konwertuje ten plik GIF na dokument PDF.

  1. Importowanie bibliotek:

    • imageio.v2 as imageio: Importuje bibliotekę imageio do przetwarzania obrazów.
    • numpy as np: Importuje NumPy do operacji numerycznych (choć nie jest to wyraźnie wykorzystane w podanym fragmencie kodu).
    • from ironpdf import *: Importuje niezbędne funkcje z biblioteki IronPDF.
  2. Klucz licencyjny:

    • License.LicenseKey = "your-key": Ustawia klucz licencyjny biblioteki IronPDF. Zastąp "your-key" rzeczywistym kluczem licencyjnym.
  3. Lista plików graficznych:

    • image_files = ['img1.jpg', 'img2.jpg', 'img3.jpg']: Definiuje listę zawierającą ścieżki do trzech plików graficznych (img1.jpg, img2.jpg, img3.jpg).
  4. Odczytywanie obrazów:

    • for file in image_files: images.append(imageio.imread(file)): Przechodzi przez każdą ścieżkę pliku w image_files, odczytuje obraz za pomocą imageio.imread() i dołącza dane obrazu do listy images.
  5. Tworzenie pliku GIF:

    • imageio.mimsave('output2.gif', images, duration=0.5): Zapisuje obrazy przechowywane na liście images jako plik GIF o nazwie 'output2.gif'. Parametr duration=0.5 określa czas trwania (w sekundach) każdej klatki w pliku GIF.
  6. Konwersja plików GIF do formatu PDF:
    • ImageToPdfConverter.ImageToPdf("output2.gif").SaveAs("ironPdf-imageio.pdf"): Konwertuje plik GIF ("output2.gif") wygenerowany w poprzednim kroku do formatu PDF przy użyciu funkcji ImageToPdfConverter biblioteki IronPDF i zapisuje go jako "ironPdf-imageio.pdf".

Skrypt najpierw odczytuje wiele plików graficznych, kompiluje je w animację GIF o określonych czasach trwania klatek, a następnie konwertuje tę animację GIF na dokument PDF przy użyciu funkcji biblioteki IronPDF. Obrazy GIF są zapisane w pliku PDF jako seria obrazów, jak pokazano poniżej.

Wynik

imageio python (Jak to działa dla programistów): Rysunek 4 – Animowany plik GIF

PDF

imageio python (Jak to działa dla programistów): Rysunek 5 – Wynik w formacie PDF

Licencja IronPDF

IronPDF działa na kluczu licencyjnym dla języka Python. IronPDF for Python oferuje bezpłatną licencję probną, aby umożliwić użytkownikom zapoznanie się z jego rozbudowanymi funkcjami przed zakupem.

Umieść klucz licencyjny na początku skryptu przed użyciem pakietu IronPDF:

from ironpdf import * 
# Apply your license key
License.LicenseKey = "your-key"
from ironpdf import * 
# Apply your license key
License.LicenseKey = "your-key"
PYTHON

Wnioski

Imageio to potężna i elastyczna biblioteka do przetwarzania obrazów w języku Python. Łatwość obsługi, obsługa wielu formatów i zaawansowane funkcje sprawiają, że jest to cenne narzędzie dla programistów i analityków danych. Niezależnie od tego, czy potrzebujesz wykonać proste operacje na obrazach, czy też przetwarzać złożone dane obrazowe/wolumetryczne, Imageio zapewnia potrzebną funkcjonalność w przyjaznym dla użytkownika pakiecie. IronPDF to wszechstronna biblioteka języka Python przeznaczona do tworzenia, edycji i konwersji dokumentów PDF. Obsługuje takie zadania, jak generowanie plików PDF od podstaw, konwersja HTML i obrazów do formatu PDF oraz wykonywanie różnych operacji na dokumentach, takich jak scalanie i zabezpieczanie plików PDF. Jest kompatybilny z wieloma platformami i płynnie integruje się z aplikacjami w języku Python, co czyni go potężnym narzędziem do programowego wykonywania zadań związanych z plikami PDF.

W połączeniu z tymi bibliotekami możemy przetwarzać obrazy i zapisywać wyniki w formacie PDF do celów archiwizacji.

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej

Zespol wsparcia Iron

Jestesmy online 24 godziny, 5 dni w tygodniu.
Czat
Email
Zadzwon do mnie