Über psd-tools, eine Bibliothek, die psd-Dateien in Python verarbeiten kann

Bibliothek psd-tools, die PSD-Dateien in Python verarbeiten können

▼ Offizielles Dokument https://psd-tools.readthedocs.io/en/latest/

Testbild

Dieses Mal werde ich dieses Bild als Beispiel verwenden. 3070374.jpg Designed by Freepik

▼ Ziel herunterladen https://www.freepik.com/free-psd/restaurant-gift-voucher-template_5903685.htm#page=3&position=11

▼ Ebeneninformationen in Photoshop image.png

Wie man psd-tools benutzt

Installation

pip install psd-tools numpy scipy

Wie benutzt man


from psd_tools import PSDImage
if __name__ == '__main__':
    file_path = '/Users/[uesr_name]/Downloads/restaurant-gift-voucher-template/3074963.psd'
    psd = PSDImage.open(file_path)
    psd.compose().save('example.png')

    for layer in psd:
        print(layer)

▼ Ausgabe

▼example.png example.png


Group('Background' size=1772x886)
Group('Design' size=1426x570)
Group('Images' size=1226x1196)
Group('Text' size=1627x443)
Group('Logo' size=386x107)

Wenn Sie auf alle Ebenen zugreifen möchten

Auf alle Ebenen, einschließlich Ordner, kann mit der Methode descants () zugegriffen werden

for layer in list(psd.descendants()):
    print(layer)
Group('Background' size=1772x886)
SolidColorFill('Background' size=1772x886 mask effects)
Group('Design' size=1426x570)
SmartObjectLayer('Brush Stroke' size=1426x413 effects)
ShapeLayer('Rectangle' size=460x80 effects)
Group('Images' size=1226x1196)
SmartObjectLayer('Waffel' size=675x954 effects)
SmartObjectLayer('Food' size=23x27 effects)
SmartObjectLayer('Food' size=23x27 effects)
SmartObjectLayer('Food' size=27x27 effects)
SmartObjectLayer('Tomato Sauce' size=211x208 effects)
SmartObjectLayer('Tomato' size=237x239 effects)
SmartObjectLayer('Orange' size=276x272 effects)
Group('Text' size=1627x443)
TypeLayer('Title' size=506x122)
TypeLayer('20% OFF' size=441x96)
TypeLayer('Voucher ID #56893' size=379x30)
TypeLayer('Web' size=728x27)
TypeLayer('Address')
Group('Logo' size=386x107)
SmartObjectLayer('Place Your Logo Here (Double Click to Edit)' size=386x107)

Konvertieren Sie alle Ebenen in PIL.Image und speichern Sie sie als Ebenennamen


    for layer in list(psd.descendants()):
        print("layer_name: ", layer.name)
        print("is_group(): ", layer.is_group())

        if not layer.is_group():
            pil_img = layer.topil()
            pil_img.save(layer.name + ".png ")

▼ Ergebnis Waffel.png Orange.png Brush Stroke.png Tomato.png Tomato Sauce.png Title.png Background.png 20% OFF.png Web.png Voucher ID #56893.png Food.png

Recommended Posts

Über psd-tools, eine Bibliothek, die psd-Dateien in Python verarbeiten kann
Versuchen Sie es mit APSW, einer Python-Bibliothek, die SQLite ernst nehmen kann
Ich habe PyQCheck, eine Bibliothek, die QuickCheck mit Python ausführen kann, in PyPI registriert.
Veröffentlichung einer Bibliothek, die Zeichendaten in Python-Bildern verbirgt
Aus einem Buch, das Programmierer lernen können ... (Python): Über das Sortieren
Eine Reihe von Skriptdateien, die Wordcloud mit Python3 ausführen
Ein Hinweis zu Mock (Python-Mock-Bibliothek)
Verwenden Sie networkx, eine Bibliothek, die Diagramme in Python verarbeitet (Teil 2: Lernprogramm).
Erstellt eine Bibliothek für Python, die die morphologische Teilung problemlos handhaben kann
Eine Geschichte über einen Erstellungsfehler in einer gemeinsam genutzten Bibliothek, die auf libusb verweist
Einführung einer Bibliothek, die unter Python / Windows nicht in pip enthalten war
Code lesen von faker, einer Bibliothek, die Testdaten in Python generiert
[Python] Holen Sie sich die Dateien mit Python in den Ordner
Ein Memo, das ich schnell in Python geschrieben habe
Ein Programm, das doppelte Anweisungen in Python entfernt
Ein Memo, das ich in Python zusammengeführt habe
Datenanalyse in Python: Ein Hinweis zu line_profiler
Denken Sie daran, eine Python 3-Umgebung in einer Mac-Umgebung zu erstellen
Ein Memorandum über die Python-Tesseract-Wrapper-Bibliothek
Ich möchte eine Prioritätswarteschlange erstellen, die mit Python (2.7) aktualisiert werden kann.
So installieren Sie die Python-Bibliothek, die von Pharmaunternehmen verwendet werden kann
Code lesen von m3u8, einer Bibliothek zum Bearbeiten von m3u8-Dateien im HLS-Videoformat mit Python
[Python] Erstellen eines Tools, mit dem Python-Dateien mit tkinter & über den Teil, der abgefangen wurde, aufgelistet, ausgewählt und ausgeführt werden können
Ein Hinweis zur Bibliotheksimplementierung, in der Hyperparameter mithilfe der Bayes'schen Optimierung in Python untersucht werden
Dämonisiere einen Python-Prozess
Aus einem Buch, das Programmierer lernen können ... (Python): Zeiger
Was ist in dieser Variablen (wenn das Python-Skript ausgeführt wird)?
Erstellt eine Python-Bibliothek DateTimeRange, die Zeitbereiche verarbeitet
Erstellen Sie in Python einen Dekorator, der Argumente dynamisch akzeptiert. Erstellen Sie einen Dekorator
Kann bei Wettkampfprofis eingesetzt werden! Python-Standardbibliothek
[Python] Eine praktische Bibliothek, die Kanji in Hiragana konvertiert
Über __all__ in Python
Ein Memorandum über die Umsetzung von Empfehlungen in Python
Ein Mechanismus zum Aufrufen von Ruby-Methoden aus Python, der in 200 Zeilen ausgeführt werden kann
Veröffentlichen / Hochladen einer in Python erstellten Bibliothek in PyPI
MALSS (Einführung), ein Tool, das maschinelles Lernen in Python unterstützt
Qt-basierte Bibliothek "Poppler", mit der Sie PDFs schnell als Bilder in C ++ oder Python lesen können
So richten Sie einen einfachen SMTP-Server ein, der lokal in Python getestet werden kann
Python-Programm von "Buch, das schwieriges Programmieren leicht lehrt"
Eine Funktion, die iterable in Python in N Teile unterteilt
Durchlaufen Sie einen Generator, der einen Datumsiterator in Python zurückgibt
Eine Geschichte darüber, wie man einen relativen Pfad in Python angibt.
Erstellen wir ein Skript, das sich bei Ideone.com in Python registriert.
Aus einem Buch, das Programmierer lernen können (Python): Nachrichten dekodieren
Entwickelte eine Bibliothek, um die Kindle-Sammlungsliste in Python abzurufen
Ich habe versucht, "ein Programm, das doppelte Anweisungen in Python entfernt"
Verarbeiten Sie die Dateien im Ordner in der Reihenfolge mit dem Shell-Skript
Erstellen Sie den Code, der in Python "A und vorgeben B" ausgibt
[MQTT / Python] Implementierte eine Klasse, die Pub / Sub von MQTT in Python ausführt
Versuchen Sie, ein neuronales Netzwerk in Python aufzubauen, ohne eine Bibliothek zu verwenden
Skripte, die bei der Verwendung von Bottle in Python verwendet werden können
Eine Geschichte über den Versuch, private Variablen in Python zu implementieren.
Informationen zu netaddr, das IP-Adresse, CIDR usw. in Python verarbeitet
Erstellen Sie eine Funktion in Python
Erstellen Sie ein Wörterbuch in Python
Überschreiben Sie Bibliotheksfunktionen in Python
Memorandum über Korrelation [Python]
Erstellen Sie ein Lesezeichen in Python
Ein Memorandum über den Python-Mock
Zeichne ein Herz in Python