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

Aspose.PSD FOSS voor Python

Open-source Python bibliotheek voor het laden, inspecteren en opslaan van PSD/PSB-bestanden met toegang tot laag-metadata. MIT-licentie, geen Adobe Photoshop vereist.

Open-Source Python Bibliotheek voor PSD/PSB-bestanden

Aspose.PSD FOSS for Python is een gratis, MIT-gelicentieerde, pure Python bibliotheek voor het laden, inspecteren, en opslaan van Adobe Photoshop PSD- en PSB-bestanden zonder dat Adobe Photoshop of een propriëtaire runtime vereist is. Het biedt een lichtgewicht, zelfstandige API gecentreerd rond PsdImage en Layer, waardoor Python ontwikkelaars programmatische toegang krijgen tot de structuur van een PSD-document zonder native dependencies om te compileren. De bibliotheek leest de afmetingen, kleurmodus, bitsnelheid en compressiemethode van een PSD/PSB-bestand, en maakt elke laag toegankelijk via PsdImage.layers: elke Layer geeft zijn naam, grenzen, dekking, zichtbaarheid en blend-modus sleutel (BlendMode) weer, samen met lagere kanaalinformatie (ChannelInformation) en maskergegevens (LayerMaskData). Een subset van laagmetadata — naam, grenzen (left/top/right/bottom), en blend-modus — kan ter plekke worden aangepast en terug naar schijf worden geschreven met PsdImage.save(); alles anders aan de oppervlakte is bij ontwerp alleen-lezen in deze FOSS-build. Aspose.PSD FOSS for Python is MIT-gelicentieerd. Installeer het met pip install aspose-psd-foss — de bibliotheek heeft geen third-party native dependencies, alleen de Python standaardbibliotheek.

Voor de enterprise productfamilie, zie Aspose.PSD — Enterprise Product Family.

Laad en inspecteer PSD/PSB-bestanden

  • Image.load(file_path) opent een bestand en retourneert een PsdImage-instantie
  • PsdImage.width, height en channels_count geven de afmetingen van het canvas en het aantal kanalen weer
  • Documentheaderdetails worden gelezen uit de kleurmodus en compressiemetadata van het geparseerde bestand
  • PsdImage.layers retourneert de volledige lijst van Layer-objecten in documentvolgorde

Valideren en catalogiseren van ontwerpbestanden

  • Valideer een batch ontwerpbestanden voordat je ze doorgeeft aan een downstream-proces
  • Bouw een lichtgewicht assetcatalogus van PSD/PSB-dimensies en het aantal lagen
  • Detecteer PSB (large-document) bestanden die andere behandeling vereisen dan standaard PSD

Werken met lagen

  • PsdImage.layers retourneert elke Layer in documentvolgorde; elke Layer biedt name, bounds, opacity, is_visible en blend_mode_key
  • Layer.channel_information biedt kanaalmetadata voor diepere inspectie
  • Layer.channels_count geeft aan hoeveel beeldkanalen een laag bevat
  • PsdImage.layers zelf kan opnieuw worden toegewezen om lagen te verwijderen of te herschikken

Auditlaagstructuur

  • Controleer de laagstructuur van een PSD zonder Photoshop te openen
  • Genereer een rapport van laagnaam, zichtbaarheid en mengmodi voor een ontwerpreview
  • Identificeer verborgen of lagen met nul-opaciteit die overblijven van eerdere bewerkingen

Bewerk basislaagmetadata

  • Layer.name, Layer.left/top/right/bottom, en Layer.blend_mode_key kunnen rechtstreeks worden ingesteld
  • PsdImage.save(file_path) slaat het gewijzigde document terug op schijf op
  • Het opnieuw laden van een opgeslagen bestand met PsdImage.load bevestigt dat de bewerkingen correct round-trip verlopen
  • Eigenschappen die hierboven niet zijn vermeld (kanaalinformatie, maskergegevens, blending ranges) veroorzaken een NotSupportedException wanneer ze worden ingesteld — deze build ondersteunt alleen bewerkingen op metadata, niet volledige herauthoring

Lichtgewicht, scriptbare bewerkingen

  • Hernoem lagen programmatisch als onderdeel van een geautomatiseerde bestandsorganisatie-pipeline
  • Verplaats of wijzig de afmetingen van de begrenzingsbox van een laag zonder een ontwerptool
  • Werk blend-modi batchgewijs bij in veel bestanden voor consistentie

Inspecteer kanaal- en resourcegegevens

  • Layer.channel_information exposeert per-kanaal metadata-collecties
  • Layer.has_mask_data en has_blending_ranges_data geven aan of optionele secties aanwezig zijn
  • PsdLoadException en PsdSaveException geven laad-/opslaffouten weer met duidelijke berichten
  • Alle klassen zijn pure Python zonder gecompileerde extensiemodules

Diagnose en Inspectie

  • Diagnose waarom een bepaald PSD-bestand niet laadt, met een getypeerde uitzondering in plaats van een generieke fout
  • Controleer of een laag mask- of blending-range-gegevens bevat voordat je deze verwerkt
  • Inspecteer per-kanaal-metadata voor diagnostiek op formatteringsniveau

Laad een PSD-bestand en inspecteer de lagen

Laad een bestand met Image.load om een PsdImage-instantie te krijgen voor PSD-specifieke leden.

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)}")

Bewerk laaggrenzen en mengmodus, sla vervolgens op

Laaggrenzen en mengmodus kunnen ter plaatse worden gewijzigd en terug naar schijf worden opgeslagen.

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}")

Kanaalinformatie lezen (Alleen-lezen)

Kanaalinformatie kan worden gelezen maar niet opnieuw toegewezen — een poging om het in te stellen veroorzaakt 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

Veelgestelde vragen

Wat is het licentiemodel?

Aspose.PSD FOSS for Python is gelicentieerd onder de MIT-licentie. Je kunt het gebruiken, aanpassen en herdistribueren onder de voorwaarden van de MIT-licentie, ook in commerciële producten.

Hoe installeer ik Aspose.PSD FOSS for Python?

Zie de installatiesectie hierboven voor het huidige installcommando.

Welke formaten kan Aspose.PSD FOSS for Python lezen en schrijven?

Het laadt en slaat PSD- en PSB-bestanden (Photoshop large document) op. Het rendert of exporteert geen pixelgegevens naar andere rasterformaten zoals PNG of JPEG.

Wat is de hoofd-instappuntklasse?

PsdImage (een subklasse van Image). Laad een document met PsdImage.load, lees vervolgens de layers-collectie en header-eigenschappen.

Kan ik laagmetadata wijzigen?

Ja — Layer exposeert een werkende setter voor verschillende eigenschappen, zoals zichtbaarheid en naam, en PsdImage.layers zelf heeft een werkende setter voor het vervangen van de collectie. Een paar specifieke eigenschappen (kanaalinformatie, maskergegevens, mengbereiken, en sommige document-niveau resources) zijn alleen-lezen in deze FOSS-build en veroorzaken een NotSupportedException als ze worden ingesteld.

  

Ondersteuning en leermiddelen

 Nederlands