---
title: "Working with Photoshop (PSD) Files"
canonical: https://www.graphicsmill.com/docs/gm/working-with-psd-files.htm
product: "Graphics Mill"
---

# Working with Photoshop (PSD) Files
 
PSD is a de facto standard for designers all over the world. This image format is rather complex and stores a lot of layers and additional data (image layers, text layers, applied effects, etc.). In addition, it is a closed proprietary format from Adobe. Therefore Graphics Mill offers limited support of the PSD format, namely, reading raster, text, shape, and group layers from `.psd` files and merging layers into a bitmap. Such functionality allows the creating of personalized graphics.
 
PSD files can contain a number of layers of different types. Graphics Mill distinguishes the following types of layers:
 
- Raster layers
- Text layers
- Group layers
- Shape layers
- Smart objects
- Unknown layers (layers of any other types)

In Graphics Mill, the main class to work with PSD files is the [PsdReader](https://www.graphicsmill.com/docs/gm/T_Aurigma_GraphicsMill_Codecs_Psd_PsdReader.htm.md) *image reader*. For basic information about *image readers*, see the [Working with Files](https://www.graphicsmill.com/docs/gm/working-with-files.htm.md) topic. The **PsdReader** allows opening PSD images (from a file or from a stream), provides access to the layers through the [PsdReader.Frames](https://www.graphicsmill.com/docs/gm/P_Aurigma_GraphicsMill_Codecs_Psd_PsdReader_Frames.htm.md) property, allows the reading of image metadata information, and so on.
 
The [PsdFrame](https://www.graphicsmill.com/docs/gm/T_Aurigma_GraphicsMill_Codecs_Psd_PsdFrame.htm.md) class represents a PSD layer. It provides information about the layer and allows for retrieving the layer bitmap (available for text and raster layers). The [PsdTextFrame](https://www.graphicsmill.com/docs/gm/T_Aurigma_GraphicsMill_Codecs_Psd_PsdTextFrame.htm.md) class provides the text information for text layers, such as font and paragraph settings, text box boundaries, the text string itself, and so on.
 
Reading PSD layers is part of the core `Aurigma.GraphicsMill.Core.xNN ` package. To render a PSD template and personalize it, you also need the `Aurigma.GraphicsMill.Templates.xNN ` package. It contains the **PsdProcessor** class and the [Aurigma.GraphicsMill.Templates](https://www.graphicsmill.com/docs/gm/N_Aurigma_GraphicsMill_Templates.htm.md) namespace. For installation instructions, see [Installation and Redistribution Notices](https://www.graphicsmill.com/docs/gm/installation-and-redistribution-notices.htm.md).
 
This section contains the following articles:
 
- The [Loading Raster Layers](https://www.graphicsmill.com/docs/gm/loading-raster-layers.htm.md) topic describes how to open a PSD image, get its raster layers, access their properties and obtain the bitmaps of the layers.
- The [Loading Text Layers](https://www.graphicsmill.com/docs/gm/loading-text-layers.htm.md) topic describes how to open a PSD image, get its text layers, and access the text properties of the layers.
- The [Working with Group Layers](https://www.graphicsmill.com/docs/gm/working-with-group-layers.htm.md) topic describes what a group layer is, explains how to use hierarchical and flat access to layers, and illustrates the object structure for hierarchical access.

**Important** 
Graphics Mill does not offer full PSD support. Therefore, when you create a PSD file to be processed by Graphics Mill, you should use only layers and features described in these articles. Undetectable layers will be identified as unknown and unsupported layer parameters will be ignored.
