sample-psd-digital-painting-1920x1080.psd
Dimensions:1920×1080
2.43 MB
PSD Download PSD samplePSD · 5 PSD sample files available
Download free Adobe Photoshop PSD sample files including multi-layer digital art, photo retouching masks, 32-bit CMYK prepress print sheets, and UI design layers.
PSD test suite
5 PSD sample files available
sample-psd-digital-painting-1920x1080.psd
Dimensions:1920×1080
2.43 MB
PSD Download PSD samplesample-psd-photo-retouch-1600x1200.psd
Dimensions:1600×1200
550.4 KB
PSD Download PSD samplesample-psd-prepress-cmyk-1200x800.psd
Dimensions:1200×800
95.4 KB
PSD Download PSD samplesample-psd-ui-design-800x600.psd
Dimensions:800×600
246.5 KB
PSD Download PSD samplesample-psd-raw-uncompressed-640x480.psd
Dimensions:640×480
900.1 KB
PSD Download PSD sampleTechnical specification & guide
The Adobe Photoshop Document format (.psd) is the industry-standard raster graphic file container engineered to preserve complex non-destructive visual edits. It encapsulates independent raster and vector layers, adjustment layers, layer masks, alpha channels, clipping paths, color management profiles, and a high-fidelity flattened composite image within a proprietary five-section binary structure.
Originally conceived in 1987 by Thomas and John Knoll as a Macintosh program named Display, the technology was acquired by Adobe Systems in 1988 and launched commercially as Adobe Photoshop 1.0 in February 1990 with single-layer editing.
Photoshop 3.0 (September 1994) revolutionized digital design by introducing multi-layer composition, allowing artists to stack, blend, hide, and manipulate independent visual elements without altering underlying pixels.
Photoshop 5.0 and 6.0 (1998–2000) introduced layer styles, editable vector text, layer masks, and adjustment layers, transforming the PSD container into a comprehensive non-destructive graphics workbench.
With Photoshop CS in 2003, Adobe addressed the 30,000×30,000 pixel and 2 GB file size limits of traditional 32-bit integer PSDs by introducing the PSB (Photoshop Big) Large Document Format, expanding dimensions to 300,000×300,000 pixels and file sizes up to 4 Exabytes.
1. File Header (26 bytes): Starts with the 4-byte signature "8BPS" (0x38 0x42 0x50 0x53), version 1 (2 bytes), 6 reserved zero bytes, channel count (2 bytes, 1 to 56), document height in pixels (4 bytes), document width in pixels (4 bytes), color depth per channel (2 bytes, 1, 8, 16, or 32 bits), and color mode (2 bytes: 1=Grayscale, 2=Indexed, 3=RGB, 4=CMYK, 9=Lab).
2. Color Mode Data Section: 4-byte length prefix. For RGB and CMYK documents, this section length is 0. For indexed color or duotone modes, it holds color table data.
3. Image Resources Section: 4-byte length prefix, followed by consecutive Image Resource Blocks prefixed with signature "8BIM". Contains ResolutionInfo at ID 0x03ED (declaring 300 or 72 DPI), thumbnail previews (0x0409 / 0x040C), IPTC-NAA metadata (0x0404), ICC color profiles (0x040F), and grid/guide settings.
4. Layer and Mask Information Section: 4-byte length prefix. Contains layer count (Int16), layer records (bounding rectangles, channel counts, blend mode keys like "norm", "mul ", "over", opacity, flags, and Pascal-string layer names), followed by channel image data (raw or PackBits RLE) for each layer, and global layer mask info.
5. Image Data Section: The final section contains the pre-rendered, flattened composite image. It begins with a 2-byte compression flag (0 = Raw uncompressed, 1 = RLE PackBits, 2 = ZIP without prediction, 3 = ZIP with prediction), followed by planar channel data (all Red, then all Green, then all Blue, or Cyan, Magenta, Yellow, Black). This section ensures backward compatibility and instant previews in viewers that do not parse the full layer tree.
Non-Destructive Layer Hierarchy: Enables multi-layer composition where background plates, character art, typography, and adjustment layers can be edited, reordered, or hidden without degrading underlying image data.
Prepress CMYK Color Separation: Native support for 32-bit CMYK color mode (8 bits each for Cyan, Magenta, Yellow, and Key/Black) tailored for commercial offset print production, prepress workflows, and professional color grading.
Dual-Mode Storage (Layers + Composite): Incorporates both editable source layer data and a full-resolution flattened composite, allowing modern editors to manipulate layers while third-party viewers display the composite image instantly.
PackBits RLE Planar Compression: Compresses each scanline independently using Apple PackBits run-length encoding across planar color channels, keeping file sizes manageable while enabling fast, parallelized disk I/O.
Adobe Creative Cloud: Full native reading and writing in Adobe Photoshop, Adobe Illustrator, Adobe InDesign, Adobe After Effects, and Adobe Premiere Pro.
Third-Party Graphic Suites: Seamless support in Affinity Photo, GIMP, Photopea, Corel Painter, Krita, Paint.NET, Clip Studio Paint, and Procreate for iPad.
Image Viewers & Operating Systems: Native shell thumbnail previewing in macOS Finder, Windows File Explorer (via Adobe codec or third-party preview handlers), IrfanView, and XnView.
Developer Libraries & Runtimes: Comprehensive programmatic parsing via Python (psd-tools, Pillow), Node.js (ag-psd), libvips, and ImageMagick CLI.
Compare how Adobe PSD layered container architecture contrasts with raster photography formats, vector containers, and large-document formats.
| Technical characteristic | PSD (Photoshop Document) | TIFF (Tagged Image) | PNG (Portable Network) | AI (Adobe Illustrator) | PSB (Photoshop Big) | Operational considerations |
|---|---|---|---|---|---|---|
| Primary Purpose | Layered raster graphics & design | Archival raster photography & print | Lossless web graphics & icons | Vector illustration & logos | Extreme large-format raster design | PSD is the standard master format for non-destructive raster design. |
| Layer Architecture | Native multi-layer & adjustment layers | Multi-page / Photoshop TIFF layers | Single flat layer only | Vector layer hierarchy & artboards | Native multi-layer & adjustment layers | PNG cannot store editable layers or adjustment masks. |
| Maximum Dimensions | 30,000 × 30,000 pixels | 4,294,967,295 pixels (BigTIFF) | 2,147,483,647 pixels | Vector (infinite scalability) | 300,000 × 300,000 pixels | Projects exceeding 30,000 px or 2 GB must use PSB instead of PSD. |
| Color Modes | RGB, CMYK, Grayscale, Lab, Duotone | RGB, CMYK, Grayscale, Lab, CIELAB | RGB, Grayscale, Indexed color | RGB, CMYK | RGB, CMYK, Grayscale, Lab | PNG lacks native CMYK color space support for prepress printing. |
| Compression Schemes | PackBits RLE, ZIP, or Raw | LZW, Deflate, PackBits, CCITT | Deflate (ZLIB lossless) | PDF / Flate compression | PackBits RLE, ZIP, or Raw | PackBits RLE allows fast sequential reading of individual layer scanlines. |
| Web Browser Support | None (requires export to WebP/PNG) | None (requires export or plugin) | Universal native web support | None (requires SVG export) | None (requires export) | PSD is an authoring master format, not a direct web delivery format. |
Reference production-ready code examples to inspect layers, extract pixel channels, export composite images, and convert PSD files using developer libraries.
Python (psd-tools Layer Inspection & Composite Extraction):
# Python: Inspect layers and extract flattened composite using psd-tools
from psd_tools import PSDImage
def inspect_psd(file_path):
psd = PSDImage.open(file_path)
print(f"Document Size: {psd.width}x{psd.height} px, Color Mode: {psd.color_mode}")
print(f"Total Layers: {len(psd)}")
# Iterate through layer hierarchy
for index, layer in enumerate(psd):
print(f"Layer [{index}]: '{layer.name}' (Visible: {layer.visible}, Blend: {layer.blend_mode})")
# Export high-fidelity composite image as PNG
composite = psd.composite()
composite.save("flattened_output.png")
print("Composite exported to flattened_output.png")
inspect_psd("sample-psd-digital-painting-1920x1080.psd")Node.js (ag-psd Layer Parser & Canvas Render):
// Node.js: Parse PSD buffer and inspect layers using ag-psd
import { readFileSync, writeFileSync } from 'node:fs';
import { readPsd } from 'ag-psd';
const psdBuffer = readFileSync('sample-psd-digital-painting-1920x1080.psd');
const psd = readPsd(psdBuffer, { skipCompositeImageData: false });
console.log(`PSD Dimensions: ${psd.width}x${psd.height} px`);
console.log(`Color Mode: ${psd.colorMode}, DPI: ${psd.imageResources?.resolutionInfo?.horizontalResolution || 300}`);
if (psd.children) {
psd.children.forEach((layer, idx) => {
console.log(`Layer ${idx}: "${layer.name}" (Opacity: ${layer.opacity}, Blend: ${layer.blendMode})`);
});
}
// Write composite canvas to disk if rendered
if (psd.canvas) {
const pngBuffer = psd.canvas.toBuffer('image/png');
writeFileSync('node_composite.png', pngBuffer);
console.log('Saved node_composite.png');
}ImageMagick CLI (Layer Separation & Composite Export):
# ImageMagick CLI: Extract layers and composite from a PSD file
# 1. Extract the merged composite image (frame 0)
magick "sample-psd-digital-painting-1920x1080.psd[0]" composite.png
# 2. Extract specific individual layers (frame 1, frame 2)
magick "sample-psd-digital-painting-1920x1080.psd[1]" layer_background.png
magick "sample-psd-digital-painting-1920x1080.psd[2]" layer_character.png
# 3. Inspect document metadata, channels, and color profiles
identify -verbose sample-psd-digital-painting-1920x1080.psdPython (Pillow Quick Web Preview Conversion):
# Python Pillow: Open PSD file and convert to web-ready JPEG or PNG
from PIL import Image
with Image.open("sample-psd-photo-retouch-1600x1200.psd") as img:
print(f"Format: {img.format}, Size: {img.size}, Mode: {img.mode}")
# If in CMYK mode, convert to RGB before saving as PNG/JPEG
if img.mode == "CMYK":
img = img.convert("RGB")
img.save("photo_preview.jpg", "JPEG", quality=92, optimize=True)
print("Saved preview to photo_preview.jpg")Key technical parameters, magic bytes, structure headers, and color encoding standards governing the Adobe Photoshop PSD format.
A PSD (Photoshop Document) file is the native file format of Adobe Photoshop. Unlike flat image formats like JPEG or PNG, a PSD file stores an entire multi-layered canvas where each layer—such as photographic elements, hand-painted digital artwork, vector shapes, typographic text, or color adjustment curves—remains completely independent and non-destructively editable. Layers can be individually repositioned, masked, blended, or hidden without altering the surrounding visual content.
PSD and PSB share an almost identical internal structure, but PSD is constrained by 32-bit unsigned integer headers limiting maximum canvas dimensions to 30,000 × 30,000 pixels and total file size to 2 Gigabytes. PSB (Photoshop Big) expands internal coordinates to 64-bit integers, supporting canvas sizes up to 300,000 × 300,000 pixels and file sizes up to 4 Exabytes (4 billion Gigabytes), making it the standard for massive billboards, high-resolution panorama stitching, and cinema matte paintings.
Yes. Major modern image editors including Affinity Photo, GIMP, Photopea, Krita, Paint.NET, Clip Studio Paint, and Procreate provide reverse-engineered support for reading and writing Adobe PSD files. They can parse standard raster layers, layer masks, and blend modes. Furthermore, any image viewer that does not parse the full layer hierarchy can instantly display the pre-rendered flattened composite stored in Section 5 (Image Data Section) of the PSD file.
When saving a PSD file in Photoshop with "Maximize Compatibility" enabled, Photoshop writes two representations of your art into the file: the full, editable multi-layer tree in Section 4, and an unlayered, pre-rendered composite image in Section 5. This dual-representation architecture allows external applications—such as Adobe Premiere Pro, InDesign, Apple macOS Finder, and quick-look image viewers—to display an instantaneous, accurate preview without needing to execute Photoshop's complex blending engine.
PSD has native architectural support for 32-bit CMYK color mode, where pixels are stored as four separate planar color channels: Cyan, Magenta, Yellow, and Key (Black) with 8 bits of precision per channel. This preserves precise plate separation and dot gain calibration according to specific ICC printing profiles (such as U.S. Web Coated SWOP or ISO Coated v2), ensuring printed colors match prepress expectations without the gamut clipping of RGB.