---
title: "Breaking Changes in Graphics Mill 11"
canonical: https://www.graphicsmill.com/docs/gm/breaking-changes-11.htm
archived: false
applies_to:
  - product: "Graphics Mill"
    versions: ["12.1", "6.x-12.x (may differ)"]
    entity_id: "https://www.graphicsmill.com/#software-application"
---

# Breaking Changes in Graphics Mill 11

**Applies to:** Graphics Mill 12.1, 6.x-12.x (may differ)
 
This section covers the API changes that you need to be aware of when migrating to Graphics Mill 11.
 
The approach to working with text has changed. Instead of separate classes for each text type, frames are added to the **Text** class in Graphics Mill 11. You can substitute old classes as follows:
 
- **PathText** - [PathTextFrame](https://www.graphicsmill.com/docs/gm/T_Aurigma_GraphicsMill_Drawing_PathTextFrame.htm.md)
- **DoublePathText** - [DoublePathTextFrame](https://www.graphicsmill.com/docs/gm/T_Aurigma_GraphicsMill_Drawing_DoublePathTextFrame.htm.md)
- **PathBoundedText** - [ShapeTextFrame](https://www.graphicsmill.com/docs/gm/T_Aurigma_GraphicsMill_Drawing_ShapeTextFrame.htm.md)
- **PlainText** - [PointTextFrame](https://www.graphicsmill.com/docs/gm/T_Aurigma_GraphicsMill_Drawing_PointTextFrame.htm.md)
- **BoundedText** - **ShapeTextFrame**

If you used the **Paragraph** and **WrappingPaths** members in the old text classes, then you can get the corresponding properties of text frames instead.
 
Since **GraphicsContainer** may contain a collection of text items, such methods as **GetBlackBox** or **GetContentBounds** now require **FontRegistry**.
 
### Aurigma.GraphicsMill.Drawing.BoundedText
 
#### Removed properties
 
- **Paragraph**
- **WrappingPaths**

### Aurigma.GraphicsMill.Drawing.Font
 
#### Removed properties
 
- **FauxBold**
- **FauxItalic**
- **Hinting**

### Aurigma.GraphicsMill.Drawing.Graphics
 
#### Removed events
 
- **BeforeDrawImage**
- **BeforeDrawPath**

Instead of using these events, you can now access elements of graphics containers through the Items API: [text](https://www.graphicsmill.com/docs/gm/T_Aurigma_GraphicsMill_Drawing_TextItem.htm.md), [images](https://www.graphicsmill.com/docs/gm/T_Aurigma_GraphicsMill_Drawing_ImageItem.htm.md), [shapes](https://www.graphicsmill.com/docs/gm/T_Aurigma_GraphicsMill_Drawing_ShapeItem.htm.md), and [containers](https://www.graphicsmill.com/docs/gm/T_Aurigma_GraphicsMill_Drawing_ContainerItem.htm.md) in the [GraphicsContainer.Items](https://www.graphicsmill.com/docs/gm/P_Aurigma_GraphicsMill_Drawing_GraphicsContainer_Items.htm.md) collection.
 
### Aurigma.GraphicsMill.Drawing.GraphicsContainer
 
#### Changed declaration
 
- [GraphicsContainer.GetAlphaContour(FontRegistry)](https://www.graphicsmill.com/docs/gm/M_Aurigma_GraphicsMill_Drawing_GraphicsContainer_GetAlphaContour_1_1d836bf2.htm.md)
- [GraphicsContainer.GetContentBounds(FontRegistry)](https://www.graphicsmill.com/docs/gm/M_Aurigma_GraphicsMill_Drawing_GraphicsContainer_GetContentBounds_1_1d836bf2.htm.md)

### Aurigma.GraphicsMill.Drawing.Path
 
#### Changed declaration
 
- [Path.DrawText(Text, FontRegistry, Single, Single)](https://www.graphicsmill.com/docs/gm/M_Aurigma_GraphicsMill_Drawing_Path_DrawText_4_520c231e.htm.md)

### Aurigma.GraphicsMill.Drawing.PathBoundedText
 
#### Removed properties
 
- **Paragraph**
- **WrappingPaths**

### Aurigma.GraphicsMill.Drawing.PlainText
 
#### Removed properties
 
- **Paragraph**
- **WrappingPaths**

### Aurigma.GraphicsMill.Drawing.Text
 
Class declaration has been changed, now this is a concrete class implementing different text types with [text frames](https://www.graphicsmill.com/docs/gm/T_Aurigma_GraphicsMill_Drawing_TextFrame.htm.md). For example, as a replacement of the former derived class **PlainText**, the **Text** class obtained **PointTextFrame**.
 
The properties responsible for the symbol and paragraph styles are now moved into new objects: [Text.CharStyle](https://www.graphicsmill.com/docs/gm/P_Aurigma_GraphicsMill_Drawing_Text_CharStyle.htm.md) and [Text.ParagraphStyle](https://www.graphicsmill.com/docs/gm/P_Aurigma_GraphicsMill_Drawing_Text_ParagraphStyle.htm.md).
 
#### Deprecation
 
- **BoundedText**
- **DoublePathText**
- **PathBoundedText**
- **PathText**
- **PlainText**

You can still use these text classes, but they remain for backwards compatibility only and basically wrap **Text** with one of the frames.
 
#### Removed properties
 
- **Alignment**
- **DigitType**
- **Font**
- **Leading**
- **OpenTypeFeatures**
- **Tracking**
- **WordSpacingScale**

#### Changed declaration
 
- [Text.FitTo(RectangleF, FontRegistry, Single, Single)](https://www.graphicsmill.com/docs/gm/M_Aurigma_GraphicsMill_Drawing_Text_FitTo_4_e0d596b2.htm.md)
- [Text.GetBlackBox(FontRegistry, Single, Single)](https://www.graphicsmill.com/docs/gm/M_Aurigma_GraphicsMill_Drawing_Text_GetBlackBox_3_185e8a92.htm.md)

#### Changed visibility from public to internal

```
Aurigma.GraphicsMill.AdvancedDrawing.Text.Create(Text* text, FontRegistry fontRegistry)
```
 
### Aurigma.GraphicsMill.Drawing.TextAlignment
 
#### Removed fields
 
- **Bottom**
- **Top**

Instead, added more justification types.
 
#### Changed declaration

```
public enum TextAlignment
{Left = 0,Center = 1,Right = 2,Justification = 3,JustificationLastLeft = 4,JustificationLastCenter = 5,JustificationLastRight = 6
}
```
 
### Removed classes and interfaces
 
- **Aurigma.GraphicsMill.AdvancedDrawing.DrawImageEventArgs**
- **Aurigma.GraphicsMill.AdvancedDrawing.DrawPathEventArgs**
- **Aurigma.GraphicsMill.AdvancedDrawing.IParagraphText**
- **Aurigma.GraphicsMill.AdvancedDrawing.IWrappedText**
- **Aurigma.GraphicsMill.AdvancedDrawing.ParagraphDirection**
- **Aurigma.GraphicsMill.AdvancedDrawing.ParagraphSettings**
