psd

package module
v0.0.0-...-5976db4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 21, 2017 License: MIT Imports: 10 Imported by: 0

README

go-psd

go-psd is a library for parsing Photoshop PSD files.

Documentation

Index

Constants

View Source
const (
	ColorModeBitmap       = ColorMode(0)
	ColorModeGrayScale    = ColorMode(1)
	ColorModeIndexed      = ColorMode(2)
	ColorModeRGB          = ColorMode(3)
	ColorModeCMYK         = ColorMode(4)
	ColorModeMultichannel = ColorMode(7)
	ColorModeDuotone      = ColorMode(8)
	ColorModeLab          = ColorMode(9)
)

Variables

View Source
var (
	ErrHeaderFormat    = errors.New("psd: invalid header format")
	ErrHeaderVersion   = errors.New("psd: invalid header version")
	ErrHeaderChannels  = errors.New("psd: invalid header channels")
	ErrHeaderHeight    = errors.New("psd: invalid header height")
	ErrHeaderWidth     = errors.New("psd: invalid header width")
	ErrHeaderDepth     = errors.New("psd: invalid header depth")
	ErrHeaderColorMode = errors.New("psd: invalid header colorMode")
)

header error

View Source
var (
	ErrColorModeData = errors.New("psd: invalid color mode data")
)
View Source
var (
	ErrImageResourceBlock = errors.New("psd: invalid image resource block")
)

Functions

func Encode

func Encode(w io.Writer, psd *PSD) error

Types

type AdditionalInfo

type AdditionalInfo struct {
	Key  string
	Data []byte
}

type BlendModeKey

type BlendModeKey string

func (BlendModeKey) String

func (b BlendModeKey) String() string

type BlendingRanges

type BlendingRanges struct {
	CompositeGrayBlend *BlendingRangesData
	Channels           []*BlendingRangesData
}

type BlendingRangesData

type BlendingRangesData struct {
	Source      int
	Destination int
}

type Channel

type Channel struct {
	ID     int
	Length int
}

type Clipping

type Clipping byte

func (Clipping) String

func (c Clipping) String() string

type ColorMode

type ColorMode int

func (ColorMode) Channels

func (c ColorMode) Channels() int

func (ColorMode) String

func (c ColorMode) String() string

type ColorModeData

type ColorModeData struct {
	Data []byte
}

type GlobalLayerMask

type GlobalLayerMask struct {
	OverlayColor    int
	ColorComponents []byte
	Opacity         int
	Kind            int
	Fillers         int
}
type Header struct {
	Version   int
	Channels  int
	Height    int
	Width     int
	Depth     int
	ColorMode ColorMode
}

func (*Header) IsPSB

func (h *Header) IsPSB() bool

func (*Header) Rect

func (h *Header) Rect() image.Rectangle

type Image

type Image interface {
	image.Image
	Source(rect image.Rectangle, src ...[]byte)
}

type ImageResourceBlock

type ImageResourceBlock struct {
	ID   int
	Name string
	Data []byte
}

type Layer

type Layer struct {
	Index int
	ID    int

	LegacyName string
	Name       string

	Rect  image.Rectangle
	Image image.Image

	Channels     []*Channel
	BlendModeKey BlendModeKey
	Opacity      int
	Clipping     Clipping
	Flags        byte
	Filler       byte

	TransparencyProtected bool
	Visible               bool
	Obsolete              bool
	IrrelevantPixelData   bool

	Mask            *Mask
	BlendingRanges  *BlendingRanges
	AdditionalInfos []*AdditionalInfo
}

type Mask

type Mask struct {
	Rect image.Rectangle

	DefaultColor byte
	Flags        byte

	Padding []byte

	RealFlags         *byte
	RealBackground    *byte
	RectEnclosingMask *image.Rectangle
}

type PSD

type PSD struct {
	Header          *Header
	ColorModeData   *ColorModeData
	ImageResources  []*ImageResourceBlock
	Layers          []*Layer
	GlobalLayerMask *GlobalLayerMask
	AdditionalInfos []*AdditionalInfo
	Image           image.Image
}

func Decode

func Decode(r io.Reader) (*PSD, error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL