1. Produkty
  2.   Aspose.PSD
  3.   Aspose.PSD FOSS for Python

Aspose.PSD FOSS pro Python

Open-source Python knihovna pro načítání, prohlížení a ukládání souborů PSD/PSB s přístupem k metadatům vrstev. Licencována pod MIT, není vyžadován Adobe Photoshop.

Open-Source Python knihovna pro soubory PSD/PSB

Aspose.PSD FOSS for Python je volná, pod licencí MIT, čistá Python knihovna pro načítání, prohlížení, a ukládání souborů Adobe Photoshop PSD a PSB bez nutnosti Adobe Photoshopu nebo jakéhokoli proprietárního runtime. Poskytuje lehkou, samostatnou API zaměřenou na PsdImage a Layer, která Python vývojářům poskytuje programový přístup ke struktuře PSD dokumentu bez nativních závislostí při kompilaci. Knihovna načítá rozměry souboru PSD/PSB, barevný režim, hloubku bitů a metodu komprese a zpřístupňuje každou vrstvu přes PsdImage.layers: každá Layer uvádí její název, hranice, neprůhlednost, viditelnost a klíč režimu prolnutí (BlendMode), spolu s nízkoúrovňovými informacemi o kanálech (ChannelInformation) a daty masky (LayerMaskData). Podmnožina metadat vrstvy — název, hranice (left/top/right/bottom), a režim prolnutí — může být upravená přímo a uložena zpět na disk pomocí PsdImage.save(); vše ostatní na povrchu je z designu jen pro čtení v tomto FOSS buildu. Aspose.PSD FOSS for Python je licencována pod MIT. Nainstalujte ji pomocí pip install aspose-psd-foss — knihovna nemá žádné třetí strany nativní závislosti, pouze standardní knihovnu Python. Pro rodinu podnikových produktů viz Aspose.PSD — Enterprise Product Family.

Načíst a prozkoumat soubory PSD/PSB

  • Image.load(file_path) otevře soubor a vrátí instanci PsdImage
  • PsdImage.width, height a channels_count udávají rozměry plátna a počet kanálů
  • Podrobnosti hlavičky dokumentu jsou načteny z režimu barev a metadat komprese parsovaného souboru
  • PsdImage.layers vrací úplný seznam objektů Layer v pořadí dokumentu

Ověřit a katalogizovat soubory návrhů

  • Ověřte dávku designových souborů před jejich předáním do následného procesu
  • Vytvořte lehký katalog aktiv s rozměry a počty vrstev souborů PSD/PSB
  • Detekujte soubory PSB (velké dokumenty), které vyžadují odlišné zpracování než standardní PSD

Práce s vrstvami

  • PsdImage.layers vrací každou Layer v pořadí dokumentu; každá Layer poskytuje name, bounds, opacity, is_visible a blend_mode_key
  • Layer.channel_information poskytuje metadata kanálů pro podrobnější inspekci
  • Layer.channels_count uvádí, kolik obrazových kanálů vrstva nese
  • PsdImage.layers lze samotné přiřadit nově pro odebrání nebo změnu pořadí vrstev

Struktura auditní vrstvy

  • Zkontrolujte strukturu vrstev PSD bez otevření Photoshopu
  • Vytvořte zprávu o názvech vrstev, viditelnosti a režimech prolnutí pro revizi designu
  • Identifikujte skryté nebo vrstvy s nulovou neprůhledností, které zůstaly po předchozích úpravách

Upravit základní metadata vrstvy

  • Layer.name, Layer.left/top/right/bottom a Layer.blend_mode_key lze nastavit přímo
  • PsdImage.save(file_path) uloží upravený dokument zpět na disk
  • Načtení uloženého souboru pomocí PsdImage.load potvrzuje, že úpravy proběhly správně obousměrně
  • Vlastnosti, které nejsou výše uvedeny (informace o kanálech, data masky, rozsahy míchání), při nastavení vyvolají NotSupportedException — tato verze podporuje pouze úpravy metadat, nikoli úplné přepracování

Lehká, skriptovatelná úpravy

  • Přejmenovat vrstvy programově jako součást automatizovaného pipeline pro organizaci souborů
  • Přesunout nebo změnit velikost ohraničujícího rámečku vrstvy bez designového nástroje
  • Hromadně aktualizovat režimy prolnutí napříč mnoha soubory pro konzistenci

Zkontrolujte kanál a data zdroje

  • Layer.channel_information vystavuje kolekce metadat pro každý kanál
  • Layer.has_mask_data a has_blending_ranges_data hlásí, zda jsou přítomny volitelné sekce
  • PsdLoadException a PsdSaveException zobrazují chyby načítání/ukládání s jasnými zprávami
  • Všechny třídy jsou čisté Python bez kompilovaných rozšiřujících modulů

Diagnostikovat a kontrolovat

  • Diagnostikujte, proč se konkrétní soubor PSD nedaří načíst, s typizovanou výjimkou místo obecné chyby
  • Zkontrolujte, zda vrstva nese masku nebo data rozsahu míchání před jejím zpracováním
  • Prohlédněte metadata na úrovni kanálů pro diagnostiku na úrovni formátu

Načtěte soubor PSD a prozkoumejte jeho vrstvy

Načtěte soubor pomocí Image.load, abyste získali instanci PsdImage pro členy specifické pro PSD.

from aspose_psd_foss.image import Image
with Image.load("test.psd") as image:
    print(f"Width: {image.width}, Channels: {image.channels_count}, Layers: {len(image.layers)}")

Upravit ohraničení vrstvy a režim prolnutí, potom uložit

Ohraničení vrstvy a režim prolnutí lze změnit přímo a uložit zpět na disk.

from aspose_psd_foss.psdimage import PsdImage
from aspose_psd_foss.layers.blendmode import BlendMode

with PsdImage.load("test.psd") as image:
    image.layers[0].left = 10
    image.layers[0].top = 20
    image.layers[0].right = 40
    image.layers[0].bottom = 60
    image.layers[0].blend_mode_key = BlendMode.MULTIPLY
    image.save("edited.psd")

with PsdImage.load("edited.psd") as reloaded:
    print(f"Bounds: {reloaded.layers[0].bounds}, BlendMode: {reloaded.layers[0].blend_mode_key}")

Číst informace kanálu (pouze ke čtení)

Informace o kanálu lze číst, ale nelze je přiřadit — pokus o nastavení vyvolá NotSupportedException.

from aspose_psd_foss.psdimage import PsdImage
with PsdImage.load("test.psd") as image:
    layer = image.layers[0]
    channel_information = layer.channel_information
    print(f"Channel count: {layer.channels_count}, first channel: `NotSupportedException`")
    # layer.channel_information = channel_information  # raises NotSupportedException

Často kladené dotazy

Jaký je licenční model?

Aspose.PSD FOSS for Python je licencován pod licencí MIT. Můžete jej používat, upravovat a redistribuovat podle podmínek licence MIT, včetně komerčních produktů.

Jak nainstaluji Aspose.PSD FOSS for Python?

Viz výše uvedená sekce instalace pro aktuální instalační příkaz.

Které formáty může Aspose.PSD FOSS for Python číst a zapisovat?

Načítá a ukládá soubory PSD a PSB (Photoshop large document). Není určen k renderování ani exportu pixelových dat do jiných rastrových formátů, jako jsou PNG nebo JPEG.

Jaká je hlavní třída vstupního bodu?

PsdImage (podtřída Image). Načtěte dokument pomocí PsdImage.load, poté přečtěte jeho kolekci layers a vlastnosti hlavičky.

Mohu upravit metadata vrstvy?

Ano — Layer poskytuje funkční setter pro několik vlastností, jako je viditelnost a název, a PsdImage.layers samotné má funkční setter pro nahrazení kolekce. Několik konkrétních vlastností (informace o kanálech, data masky, rozsahy míchání a některé zdroje na úrovni dokumentu) je v této FOSS verzi pouze ke čtení a při nastavení vyvolá NotSupportedException.

  

Podpora a vzdělávací materiály

 Čeština