---
title: "Release notes for Editor SDK | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/design-editor/release-notes/"
---

# Release notes for Editor SDK

> This topic describes new features and recent improvements in the Editor SDK. For a complete list of bug fixes, see the [changelogs](#changelogs).

## Customer's Canvas 7.4.0 - September 18, 2026

- All SDK components now use Graphics Mill 12. This update brings the following improvements:
    - `ImageItem` in a graphics container now supports `CompressedImage`. If an image does not require processing, it stays in the compressed form. The extraction logic is exposed in `ImageExtensionMethods`: use `GetBitmapFromImage` for operations over the bitmap, such as processing before rendering, and `GetBitmapScope`, which returns an `IDisposable` wrapper, for read-only scenarios, such as counting colors in `ColorDiscoverer`.
    - The font registry is now built by several workers whose small registries are merged into one root registry. The new `FontRegistryBuildWorkerCount` parameter in the Design Atoms configuration sets the number of workers. Registry cloning now uses the new Graphics Mill `Merge` operation. It is nearly free and runs about two orders of magnitude faster than before.
    - Soft masks are now processed without rasterization.

## Design Editor 7.4.0 - September 18, 2026

### New Features

- **Variable elements**: Added a **Variable** toggle to the top toolbar that marks design elements as variables, that is, sets the `IsVariable` model property. Previously, this was done with a checkbox in Object Inspector. The toggle is available for text elements that have no paragraphs and in-string variables, QR codes and barcodes, and image placeholders that are not variables by default.
- **Variable tokens**: Added the possibility to predefine the list of variables available for insertion into text. Define the [`variableTokens`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/interfaces/ConfigurationInterfaces.VariableToken.md) field in **clientConfig.json**:

  ```json
  [
    { "title": "First name", "token": "{{first_name}}" },
    { "title": "Last name", "token": "{{last_name}}" }
  ]
  ```

  In the editor, a dropdown on the top toolbar shows these tokens in text editing mode. The selected token is inserted at the cursor position.

## Design Atoms 7.4.0 - September 18, 2026

### New Features

- **Variable elements visualization**: Design elements marked as variables now use a different color for the outline and grips on the canvas.
- **Variable tokens**: Added support for inserting predefined variable tokens into text at the cursor position.

### General Improvements

- Proof images now adapt to the device DPI.

### Breaking Changes

- In the front-end model, `Size` is renamed to `ImageSize`. Update your code references accordingly.
- The legacy text engine is removed from the backend. The `ForceLegacyTextRendering` parameter is removed from the Design Atoms configuration.

## Design Atoms 7.3.6 - September 2, 2026

### Proof Rendering Improvements

- Extended proof rendering bounds by the largest border width to prevent clipping when print areas are flush with surface edges.
- Borders are now rendered on top of all design layers when rendering proofs with mockups.

### Border Line Auto-scaling

- Added the `FixedBorderWidth` property to `BorderLine` to control border thickness and spacing behavior:
    - `true`: Uses the specified thickness and spacing as-is, without adjustments.
    - `false`: Automatically adjusts thickness and spacing based on rendering DPI and product size for optimal visibility in proofs.

## Design Editor 7.3.5 - August 26, 2026

### General Improvements

- **Image Editor**: Added image source selection so that image edits are preserved correctly.
- **RecolorEffect**: Added support for automatically cropping images to opaque content bounds after background removal.
- **IDML conversion**:
  - Introduced `ColorProfileResolutionPolicy` in `ConvertSettings` to handle missing color profiles during conversion. You can now choose to throw an exception, assign a default profile, or use a fallback profile.
  - Updated Design Editor configuration with the new [`TemplateColorProfileNotSpecifiedMode`](https://customerscanvas.com/docs/on-premises/design-editor/it-ops/config-backend/appsettings.md#TemplateColorProfileNotSpecifiedMode) and [`TemplateColorProfileNotFoundMode`](https://customerscanvas.com/docs/on-premises/design-editor/it-ops/config-backend/appsettings.md#TemplateColorProfileNotFoundMode) settings for color profile resolution. Supported modes: `AssignDefaultProfiles` and `ThrowException`.
- [`UpdateSurfacesCommand`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/reference/design-editor-iframe/classes/ObjectModel.Product.md#updatesurfaces): Added the `clearRemovedItems` parameter. When enabled, user-deleted items are not recreated on a new surface if the item names match.

## Design Atoms 7.3.5 - August 26, 2026

### Breaking Changes

- [`ColorUtils`](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms/ColorUtils.md): The `ParseToWebColor(Color color)` method has been renamed to [`ConvertToWebColor(Color color)`](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms/ColorUtils.md#converttowebcolor). Update your code references accordingly.
- [`TemplateConverter`](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Convert/TemplateConverter.md): Added new overloads that use the `ConvertSettings` type. Conversion parameters have been moved to this type. **Important:** Overloads that accept conversion parameters as direct method arguments are now deprecated and will be removed in a future version.

## Design Atoms 7.3.4 - July 30, 2026

### General Improvements

- Added **application prefix** to DesignAtoms log categories to prevent collisions across services.
- Ensured **concurrent access** to metadata files in FileSystemStorage for multi-instance mode.

## Design Editor 7.3.3 - July 24, 2026

### General Improvements

- Optimized the **Recolor effect** performance.
- Improved **font substitution rules** for IDML templates: fonts defined in formatted text through `font-family` and `font-style` are now also included in the missing font check and are either substituted, or an exception is thrown, depending on the [`FontSubstitutionEnabled`](https://customerscanvas.com/docs/on-premises/design-editor/it-ops/config-backend/appsettings.md#FontSubstitutionEnabled) parameter.
- Added the **`MissingFonts` collection** to the `State` object. Design Editor processes it based on the same `FontSubstitutionEnabled` parameter, and you can also use this collection when opening editors based on the Design Atoms API.
- Added the **`Reimport` and `Clone` methods** to `PaletteService` and the `ParseToWebColor` method to `ColorUtils`.
- Added the `/AddResourceFromCache` endpoint, which **promotes cached images** to the state resources storage.

## Design Editor 7.3.2 - July 7, 2026

### Configuration Updates

- **Updated the default [`RepositoryCleaners.config`](https://customerscanvas.com/docs/on-premises/design-editor/it-ops/config-backend/repository-cleaners.md)**: the default values now better match real resource consumption. If you upgrade from earlier versions and rely on the default configuration, review your cleanup settings:
    - `LastAccessObsolescencePeriodInDays` is renamed to `LastAccessObsolescencePeriodInHours`. The parameter now takes the obsolescence period in hours instead of days. Recalculate the values in your existing configuration files.
    - `MaxRepositorySize` is deprecated, use `MaxRepositorySizeInBytes` instead.
    - Added the `UtilizationTarget` parameter, which defines the utilization level (in percent) at which the cleanup process stops.
    - New defaults: `StateResourcesRepository` now uses the `LastAccess` strategy with a 48-hour obsolescence period; `ArtifactsRepository` uses the `MaxSize` strategy with `MaxUtilizationThreshold` set to `80`, `MaxRepositorySizeInBytes` to `4294967296` (4 GB), and `UtilizationTarget` to `50`.

## Design Editor 7.3.0 - June 18, 2026

### Configuration Updates

- **State Resource Caching**: Added the [`EnableCachingStateResources`](https://customerscanvas.com/docs/on-premises/design-editor/it-ops/config-backend/design-atoms.md#EnableCachingStateResources) parameter (disabled by default) to **`Aurigma.DesignAtoms.config`**. When enabled, state resources are cached to improve performance in scenarios with high read-to-write ratios (e.g., heavy artifact rendering).
- **Automated Repository Cleanup**: Introduced a new [`RepositoryCleaners.config`](https://customerscanvas.com/docs/on-premises/design-editor/it-ops/config-backend/repository-cleaners.md) file to automate cleanup for three target repositories:
    - **Target Repositories**:
        - `StateResourcesRepository`: Design assets and complex shapes saved within state files.
        - `ArtifactsRepository`: Generated rendering outputs, including proofs and high-resolution files.
        - `StaticFilesRepository`: External files such as Asset Storage designs, fonts, and color profiles.
    - **Supported Strategies**:
        - `MaxSize`: Triggers cleanup when the repository storage volume exceeds a specified threshold.
        - `LastAccess`: Triggers cleanup based on a file expiration period (inactivity duration).
- **File System Storage Tuning**: Added configuration parameters for the `DesignAtoms.Storage.FileSystemStorage` implementation:
    - `StorageRootPath`: The root folder path for file-based storage. Can be a local folder or a network path. Default: `~App_Data/Storage`.
    - `PreloadFilesInMemory`: When `true`, files up to 100 MB are loaded into `MemoryStream` instead of `FileStream` for faster access. This parameter affects memory consumption: for small data volumes, you can achieve a ~15% performance improvement, but at the cost of increased memory usage.
    - `UseResourcesProtectorForMultipleInstanses`: When `true`, a file-based resource protector is used instead of `InMemoryProtector`. This parameter is meaningful only when a single resource storage is shared by multiple Design Editor instances.

## Design Atoms 7.2.6 - May 28, 2026

### Print Area Borders in Proofs

- Added the possibility to **render print area borders** in proof files and mockup previews. A new `PrintAreaBorderLine` properties define the border style on the print area, and a new option in rendering configs `ProofConfig` controls whether the border is drawn.

## Design Atoms 7.2.5 - May 19, 2026

### Max Artwork Size Visualization Update

- Redesigned the **max artwork size** visualization and validation to properly support different shapes. **Circle**, **square**, and **ellipse** are now handled as distinct cases with appropriate logic:
  - **Rectangular shapes** now render from the center, consistent with circular behavior.
  - **Ellipses** are validated by checking whether a bounding rectangle of all objects can be inscribed within the given ellipse dimensions. The visualization shows an ellipse with a rectangular boundary, matching the approach used for rectangular areas.
- Fixed the **drawing order**: the max artwork size indicator no longer renders on top of grips and other UI elements, providing a cleaner and less obstructive canvas view.

### Improved PrintArea visualization

- The print area boundary line is now shown only when slug and bleed are absent. Fixed inconsistent display of the out-of-bounds warning when content exceeds the print area.

## Design Editor 7.2.3 - April 29, 2026

### Text Rendering Engine Update

This release switches the text rendering engine to a more stable and accurate implementation. The update includes:

- Fixes for known rendering issues with specific fonts.
- Improved support for **tabs**, **subscript**, and **superscript**.
- More precise spacing and alignment calculations.
- Better rendering performance, especially for handwritten fonts.

### Public Gallery Performance Improvements

- Improved **public gallery performance** for large-scale galleries. Session-based request balancing now routes all requests to a single Design Editor instance, preventing empty responses from uninitialized categories.
- Metadata loading and cache population have been parallelized for up to a **4–5x speed improvement**, and cancellation tokens prevent redundant operations from degrading editor responsiveness.

## Design Atoms 7.2.3 - April 29, 2026

### IDML Color Profile Handling

- Changed **importing IDML files**: the original color profile embedded in the IDML is now retained and assigned to all elements. Previously, a default profile was used for rendering. An error occurs if the required profile is missing when importing.

## Design Atoms 7.2.2 - April 9, 2026

### Non-Rectangular Print Areas

Added support for **non-rectangular print areas** defined by custom paths:
- **Viewer**: Rendering bleed and slug using the `PrintArea.Shape`.
- **Hi-res outputs**: Print area paths are automatically applied as clipping masks, ensuring only content within the print area boundaries is rendered.
- **Proof images**: The new `IRenderingProperty.usePrintAreasAsClippingMasks` property allows you to control whether print areas act as clipping masks for proof images. When set to `true`, content extending beyond the print area is clipped; when `false` (default), content is rendered completely for backward compatibility.

### Changes in the Model

- **ImageSource.containsOnlyVectorElements**: Added a new property to the frontend `ImageSource` interface to indicate whether the image contains only vector elements (`RasterViolation`).
- **ViewerConfiguration.printZone**: Added a new property for [visualizing print area boundaries](https://customerscanvas.com/docs/on-premises/design-atoms-js/howto/viewer.md#print-area-visualization).

### Deprecation

The following properties have been deprecated and will return empty values when accessed:

- `viewer.clientSideOptions` - returns an empty object
- `viewer.exceptionDescription` - returns an empty string  
- `viewer.returnValue` - returns an empty string

## Design Editor 7.2.2 - April 9, 2026

### New Features

- **Added the `ObjectInspectorVisibilityChanged` event**, which fires when the Object Inspector is shown or hidden. The event provides an `isVisible` boolean to indicate the current visibility state.

### Improvements

- Improved the **pinch-to-zoom behavior** on the canvas. The zoom action now anchors to the pinch points.

## Design Editor 7.2.0 - March 23, 2026

### Rendering Container Groups to Separate Files

- **Container Grouping**: You can now group containers of the same type to render them onto the same page or file.
- **Group Management**: Added the `HiResOutputRenderContainerGroupToSeparateFiles` property to `RenderingConfig`. This controls how container groups are rendered to output files.

### Non-Proportional Text Scaling in Text Areas

Added support for a new **non-proportional text scaling** in text areas, allowing text to **stretch horizontally and vertically** independently, similar to the legacy `<AST>` marker behavior.

- **Overflow Strategy + Shrink Mode**: Mapped to `textWhizz.CopyFittingMode` for seamless integration.
- **Fill + Scale Mode**: Mimics `<AST>` behavior, enabling flexible text distortion without switching to the old text engine.

## Design Atoms 7.2.0 - March 23, 2026

### Rendering Container Groups to Separate Files

You can now **group containers** of the same type to **render them onto the same page or file**. To control how container groups to be rendered, set the `HiResOutputRenderContainerGroupToSeparateFiles` property to `true` in `RenderingConfig`. By default, groups remain empty (set to `null`) to maintain legacy rendering behavior. New grouping rules apply only when a specific group is defined for a container.

### Non-Proportional Text Scaling in Text Areas

Added support for **non-proportional text scaling** in text areas, allowing text to **stretch horizontally and vertically** independently, similar to the legacy `<AST>` marker behavior.

### New Violation Checks

- Added a **new violation** to detect if the combined bounding box of objects in a container exceeds its size limits, with support for both **rectangular and elliptical shapes**. You can enable this check via `maxArtworkSizeWarning` in `ViewerConfiguration`.
- Added an **enhanced violation check** for objects extending into the bleed area, now supporting **non-rectangular PrintArea shapes**. You can enable this check via `outOfPrintAreaViolationWarningEnabled` in `ViewerConfiguration`.

### Library Updates & Maintenance

- **ES2017 Compilation Standard**

    **Design Atoms** libraries are now compiled to **ES2017**, improving compatibility with modern JavaScript environments.

- **Dependency Updates**:

    - Removed legacy dependencies: **lodash-es**, **underscore**, and **clone**.
    - Added **@aurigma/utils-js** (published on NPM) for optimized utility functions.

- **TypeScript Upgrade**

    Updated **TypeScript** to version **4.9.5**, ensuring better type safety and developer experience.

### Deprecation

`HiResOutputChannelContainersToSeparateFiles` is now deprecated. This parameter will be removed in a future release. To ensure compatibility and leverage the new grouping logic, please migrate to the `HiResOutputRenderContainerGroupToSeparateFiles` setting.

## Design Editor 7.1.73 - February 26, 2026

- **VCard UTF-8 Support**: Added UTF-8 encoding for VCard fields, ensuring special characters display correctly in previews and when scanned via cameras.
- **Image Editor Data Handling**: Improved stability of rendering previews for the Image Editor by moving request data from the query string to the body.

## Design Editor 7.1.72 - February 5, 2026

- **Authentication Upgrades**: The Design Editor cloud instance now supports Customer's Canvas Hub OAuth2/JWT authentication, replacing the outdated SQLite token storage. This change **eliminates redundancy**, boosts reliability, and ensures a smoother, more secure login experience. To enable this new schema, set [`AuthorizationScheme`](https://customerscanvas.com/docs/on-premises/design-editor/it-ops/config-backend/appsettings.md#authorization) to `"JWT"` in **AppSettings.config** in your tenant.
- **Rendering API Improvements**: Image previews are now **requested only after significant zoom changes**, reducing unnecessary server calls. Optimal zoom thresholds were experimentally determined to balance quality and efficiency:
    - New previews fetch only when truly needed.
    - Minor adjustments reuse the current image (resized dynamically). This boosts performance and reduces system load.
    - To adjust the default settings, use the [`imageResizeRequestConfig`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/editor-configuration/reference.md#image-resize-requests) configuration.

## Design Atoms 7.1.71 - January 27, 2026

- **Placeholder Resizing Behavior Update**: Introduced new resizing logic for placeholders when cover mode is disabled, allowing empty areas:
    - Resizing the placeholder frame **does not affect content size** unless the frame reaches the content boundaries.
    - Once boundaries are reached, content resizes **proportionally** (both when increasing or decreasing the frame).
    - Rules apply **regardless of Fit/Fill mode**.

- **Placeholder Handling Configuration**: Introduced new frontend settings to enhance placeholder behavior and provide flexibility in how placeholders scale and fit content:
    - `viewerConfiguration.handlers.placeholderCropMode`: Enables **Adobe Express-like cropping mode** for placeholders, allowing intuitive scaling and cropping via grip handles. Default: enabled.
    - `viewerConfiguration.handlers.placeholderFitMode`: Controls **Fit mode compatibility**:
        - `"Always"` (default): Maintains the **Fit position** regardless of resizing (new behavior in version **7.1.55**).
        - `"Insert"`: Reverts to the **legacy  behavior** (before [7.1.55](#design-editor-7155---august-12-2025)) for backward compatibility.

## IFrame API 7.1.71 - January 27, 2026

**Placeholder Handling Enhancements**: Two new parameters have been added to the [`canvas.handlers`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/editor-configuration/reference.md#item-processing-rules) object to improve placeholder behavior:
- `placeholderCropMode`:
Enables **Adobe Express-like cropping** for placeholders, allowing users to intuitively scale and crop content using grip handles. Default: `true`.
- `placeholderFitMode`:
Controls the **fit position behavior** when resizing placeholders.
    - `"Always"` (default): Preserves the fit position regardless of resizing (new behavior in **7.1.55**).
    - `"Insert"`: Reverts to the **legacy behavior** (pre-7.1.55), where the fit position may change when resizing.

## Design Editor 7.1.69 - December 11, 2025

- Added an endpoint [`POST /api/users/{userId}/states/{stateId}/generate-white-ink`](https://customerscanvas.com/docs/on-premises/design-editor/apis/state-files.md#generate-white-ink-layer) to **generate a white ink underlay** for enhanced print quality on transparent or colored materials. You can specify the generation mode (`WhiteInkOnly`, `Page`, or `Container`) and optional rendering settings. The endpoint returns a new state ID and a high-resolution output URLs.

## Design Editor 7.1.68 - December 4, 2025

- **Optimization: Alpha Mask Processing**. Now, the system respects the original DPI of images, preventing memory issues for large outputs.
- **Colorize algorithm improvements**. Reduced memory usage, eliminated leaks, and optimized pixel processing, significantly lowering overhead during intensive operations.

## Design Editor 7.1.64 - October 30, 2025

Colorize algorithm improvements:

- **Smart Binary Thresholding**: The binary mask for alpha contours is now generated using a dynamic thresholding algorithm, replacing the previous grayscale conversion method. This resolves issues where bright objects were not processed correctly, even with contrast adjustments.
- **Background Detection & Removal**: Added logic to detect and remove solid backgrounds (e.g., white backgrounds in logos). Previously, alpha masks were applied universally, which sometimes introduced artifacts.
- **Performance Boost**: Pixel values are now written directly to bitmap memory instead of using `SetPixel`, improving recoloring speed by ~1.3x. However, large images may still take up to two minutes to process.
- **Minor Optimizations**: Fixed potential memory leaks and performed minor refactoring for better stability.

## Design Editor 7.1.59 - September 5, 2025

Enhanced the behavior of placeholder content manipulation so that **Fit** mode now works consistently across all alignment settings, including when alignment is set to **None**. No specific alignment mode needs to be selected for **Fit** mode to apply.

## Design Editor 7.1.58 - August 25, 2025

Improved the algorithm to colorize images:
- When you insert a vector image (PDF, SVG) into a placeholder with the colorize effect enabled, it will remain vector after applying the effect.
- The colorize effect will also maintain spot colors when recoloring images.

## Design Editor 7.1.55 - August 12, 2025

Improved behavior of placeholder content when manipulating it. To maintain the **Fit** mode, ensure both the horizontal and vertical alignment of the content in the placeholder are specified, with neither set to **None**.

## Design Editor 7.1.54 - July 31, 2025

Added the possibility to disable caching when generating hi-res and proof images. To do so, include the query parameter `?disableCache=true` in the URL obtained through the `finishProductDesign()` JS method or the `~/api/HiRes/GenerateHiRes` endpoint.

## Design Editor 7.1.52 - July 21, 2025

- The endpoint [`/api/ProductTemplates/DesignInfo/{id}`](https://customerscanvas.com/docs/on-premises/design-editor/apis/designs-and-mockups.md) now includes the `textContent` field for text items in the response.
- Improved resource persistence in templates. External images referenced through URLs, paths to Asset Storage, and paths to private assets can now be embedded into state files for long-term data preservation using the `IStateResourceService.EmbedProductImagesAsync()` method. If an image becomes unavailable, it will be removed from the state. After invoking this method, save the updated state file.

## Design Atoms 7.1.46 - May 29, 2025

Added support for non-separable blend modes: Hue, Saturation, and Luminosity.

## Design Atoms 7.1.41 - April 7, 2025

**Breaking Change**: The type of the `AutolayoutSettings.Margin` property has been changed from `int` to `float` to prevent group layout changes caused by rounding issues.

## Design Editor 7.1.39 - March 8, 2025

The [`pdfRenderKeepOriginalColors`](https://customerscanvas.com/docs/on-premises/design-editor/apis/personalized-rendering.md#hiresoptions) property was added to the `renderingConfig` with a default value of `false`. This enhancement allows you to preserve the original colors in your templates and assets, not just across the entire instance, but also for a single rendering operation.

## IFrame API 7.1.33 - December 3, 2024

- Changed logic of toggling the [snap lines](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/editor-configuration/rulers-grids-snaplines.md#snap-lines). The `defaultValue` of snap line checkboxes now defines their initial appearance. Removed the `initialValue` property from `ISnapElementConfiguration`.
- Improved user experience with changing product themes. You can now skip adding themes to history when using the `applyProductTheme()` method. To prevent the user from reverting to a previous theme with the **Undo** button, pass `{ addToHistory: false }` as the [second parameter](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/howto/change-theme.md#changing-color-themes-at-runtime).

## Design Editor 7.1.30 - November 5, 2024

- You can now toggle the Object Inspector using the IFrame API. To do so, use the `Editor.toggleObjectInspector` method.
- Added support for PSD files created in Photoshop 2024, 2025.

## IFrame API 7.1.30 - November 5, 2024

Added the `Editor.toggleObjectInspector` method to toggle the Object Inspector through the IFrame API.

## Design Editor 7.1.24 - August 9, 2024

- You can now define the [channel containers](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/product-definition/post-press-finishing-layers.md) in IDML templates. To configure the containers, you can use [the same markers](https://customerscanvas.com/docs/on-premises/design-editor/it-ops/advanced/markers.md#spot-containers) that you used in PSD templates.
- Added the possibility to hide the channel container tabs in the Object inspector with the [`containerTabsEnabled`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/editor-configuration/reference.md#containerTabsEnabled) property.
- Added the possibility to configure the appearance of inactive channel containers. You can disable their transparency with the [`inactiveContainerTransparencyEnabled`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/editor-configuration/reference.md#inactiveContainerTransparencyEnabled) property and define how transparent they should be with the [`inactiveContainerTransparencyLevel`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/editor-configuration/reference.md#inactiveContainerTransparencyLevel).

## Design Editor 6.23.14 - July 31, 2024

- You can now define the [channel containers](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/product-definition/post-press-finishing-layers.md) in IDML templates. To configure the containers, you can use [the same markers](https://customerscanvas.com/docs/on-premises/design-editor/it-ops/advanced/markers.md#spot-containers) that you used in PSD templates.
- Added the possibility to hide the channel container tabs in the Object inspector with the [`containerTabsEnabled`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/editor-configuration/reference.md#containerTabsEnabled) property.
- Added the possibility to configure the appearance of inactive channel containers. You can disable their transparency with the [`inactiveContainerTransparencyEnabled`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/editor-configuration/reference.md#inactiveContainerTransparencyEnabled) property and define how transparent they should be with the [`inactiveContainerTransparencyLevel`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/editor-configuration/reference.md#inactiveContainerTransparencyLevel).

## Design Editor 7.1.20 - June 14, 2023

- Implemented a Hand tool that allows for moving around the canvas without selecting and moving design elements. To move the viewport, you can hold down the wheel and drag the canvas. As an alternative, you can hold down the spacebar and drag the canvas with the left mouse button.
- Canvas scrollbars now don't appear by default. Added the [`scrollbarEnabled`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/editor-configuration/reference.md#scrollbarEnabled) property, which enables the scrollbars when the design does not fit the canvas at the current zoom level. To display scrollbars, set `scrollbarEnabled` to `true` in **clientConfig.json**.

## Design Atoms 7.1.20 - June 14, 2023

Implemented a Hand tool that allows for moving around the viewer without selecting and moving design items. To move the viewport, you can hold down the wheel and drag the canvas. As an alternative, you can press and hold the left mouse button while holding down the space bar, and drag the canvas.

## Design Editor 7.1.18 - May 22, 2023

- Added support for regions defined in channel containers. You can now add a design element with the `<R>` marker to a container layer group (`<CN>`).
- Improved logic of aligning elements on the canvas. One selected object is now aligned relative to the print area. Two or more selected objects are aligned inside a common bound box. A selected object inside a group is aligned relative to the bound box of the group.

## Design Editor 7.1.16 – April 28, 2024

Added an endpoint [`/api/ProductTemplates/DesignInfo/{id}`](https://customerscanvas.com/docs/on-premises/design-editor/apis/designs-and-mockups.md) to retrieve a list of layers from an InDesign template. To pass a template ID, specify its path with the file name, for example, `/api/ProductTemplates/DesignInfo/some-folder/some-idml-template`

## Design Editor 7.1.14 – April 22, 2024

- Added the possibility to import graphic frames from IDML templates as image placeholders. To do so, set the `InterpretEmptyGraphicFrameAsImagePlaceholder` to `true` in **Aurigma.DesignAtoms.config**. By default, this parameter is `false`, and graphic frames are loaded depending on the `<PH>` marker.
- You can now load and personalize templates that have only [channel containers](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/product-definition/post-press-finishing-layers.md). When the templates do not have design elements in the Background, Main, or Foreground containers, these containers won't be added by default. To enable this feature, set the `useSpecifiedContainersOnly` property to `true` when defining a product through `ISurfaceDefinition` or `ISurfaceTemplate`.

## Design Atoms 7.1.14 – April 22, 2024

- Added the `InterpretEmptyGraphicFrameAsImagePlaceholder` configuration parameter to import graphic frames from IDML files as image placeholders. Its default value is `false`, and graphic frames are loaded depending on the `<PH>` marker.
- Added the possibility to import design files that have only channel containers. When the designs do not have items in the Background, Main, or Foreground containers, they won't be added by default.

## IFrame API 7.1.14 – April 22, 2024

Improved methods for channel containers to work without the Background, Main, or Foreground containers. `PrintArea.insertContainer`, `PrintArea.removeContainer`, and `PrintArea.moveContainer` can now work with a single container in a print area.

## Design Atoms 7.1.13 – April 15, 2024

- Added support for brush fill defined in IDML templates.
- Optimized the speed of VDP rendering in the text-as-text output mode.

## Design Editor 6.23.12 – April 1, 2024

Added the possibility to retrieve a list of layers from InDesign templates with the endpoint `/api/ProductTemplates/DesignInfo/{id}`. To specify a template, pass its path with the file name, for example, `/api/ProductTemplates/DesignInfo/some-folder/some-idml-template`

## Design Atoms 7.1.10 – March 6, 2024

Improved performance of loading images from Asset Storage for VDP scenarios.

## IFrame API 7.1.10 – March 6, 2024

The `BoundsNotification` event now returns an array of `bounds` for all product surfaces.

## UI Framework 4.46.46 - February 22, 2024

You can now open a preselected product variant by SKU in the editor and then change the options if needed. To do so, initialize the driver with an SKU in `optionBasedProductInfo.selectedVariantSku` and `optionBasedProductInfo.selectionStrategy` set to `"Preselect"`.

## Design Editor 7.1.8 – January 26, 2024

You can now prevent your customers from saving images in the Image Editor through the context menu. To disable the context menu, set the [`widgets.ImageEditorDialog.imageContextMenuEnabled`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/editor-configuration/reference.md#imageContextMenuEnabled) property to `false` in **clientConfig.json**.

## Design Atoms 7.1.8 – January 26, 2024

Removed the limitation on the size of the region being added to the viewer. Now it can take up to 100% of the possible area.

## IFrame API 7.1.8 – January 26, 2024

Added `options` to the `loadUserInfo` method to define how this info should be reflected in the history. You can now skip adding these changes to the history as well as replace the last snapshot.

## Design Editor 7.1.5 – December 8, 2023

Added the possibility set the `outputColor` of texture and spot containers through the `updateContainer` method of the IFrame API.

## Design Atoms 7.1.5 – December 8, 2023

Improved user experience for double and triple clicks when selecting characters in text. The delay time is now 500ms.

## Design Editor 7.1.4 – November 30, 2023

- Added the possibility to edit rotated text elements in popup boxes in TextWhizz. To do so, set [`canvas.rotatedTextInPlaceEditEnabled`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/editor-configuration/reference.md#rotatedTextInPlaceEditEnabled) to `false` in **clientConfig.json** or runtime configuration.
- You can now specify what color the spot and texture containers will be drawn in PDF files by using the `<COC>` marker. For example, `<COC_cmyk(0%,0%,100%,0%)>` enables the yellow color to render these containers.

## Design Editor 6.23.10 – November 30, 2023

Added the possibility to edit rotated text elements in popup boxes in TextWhizz. To do so, set `canvas.rotatedTextInPlaceEditEnabled` to `false` in **clientConfig.json** or runtime configuration.

## Design Atoms 7.1.3 – November 22, 2023

- Added the possibility to display the path of curved text items.
- Interactive zone improvements:
    - Added the possibility to configure margins inside the labels in CSS format. For example, to define different margins for the top, right, bottom, and left sides, you can use a string like `"5 10 5 20"`.
    - Changed the drawing order. Now the highlighted zone is drawn first.
    - Now, the active zone does not change when rotating the design.

## IFrame API 7.1.3 – November 22, 2023

- Added the possibility to display the path of curved text by using the [`canvas.curvedTextBaselineDrawStates`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/editor-configuration/reference.md#curvedTextBaselineDrawStates) parameter. Now, the path appears when the user interacts with a specific text element.
- Added checking for message source and ignoring messages from outside the Design Editor.

## UI Framework 4.46.20 – October 25, 2023

- Improved the layout of the modal windows on mobile devices. 
- Added the possibility to open a workflow for a special SKU. In this case, you can't select inactive option values. 

## Design Editor 7.1.0 - October 24, 2023

Implemented a more realistic display of CMYK colors on the canvas and proof images.

## Design Atoms 7.1.0 - October 24, 2023

- Added support for interactive zones. You can now define logical design regions that are important to the user during editing. These zones become highlighted when the user clicks or hovers the pointer over them.
- Added support for PDF BleedBox when importing PDF files as templates. You can now specify if it should be applied or not through the `PdfBleedBoxMode` property. By default, the bleed zone of the first page is applied if the print area doesn't contain a bleed definition.
- Improved processing of `Spot` and `Texture` containers in `IProductRenderer.RenderHiRes` methods. Previously, these containers were rendered only on the same page with the main container, but now they will appear either on a separate page or in separate files, depending on the `RenderingConfig` settings.

## Design Atoms 7.0.2 - September 18, 2023

- Added support for vector output from spot containers.
- Added handling of corrupted font files.

## UI Framework 4.46.14 - September 7, 2023

Added the possibility to localize the **Saved projects** dialog box. To [change the translations](https://customerscanvas.com/docs/on-premises/ui-framework/ui/localization.md), use the `savedprojects.dialogs.list` key group. You can find the default translations in the **locales.json** file.

## Design Editor 7.0.1 - July 31, 2023

- Added support for full screen mode on iOS devices. To add the **Full window** button to the bottom toolbar, set [`fullWindowButtonEnabled`](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/editor-configuration/reference.md#fullWindowButtonEnabled) to `true`.
- Added support for the `BlackAndTransparent` image effect.

## Customer's Canvas 7.0.0 - June 28, 2023

- All SDK components now use Graphics Mill 11. This engine supports text shadows, complex vector paths, and large image sizes. Design rendering speed has been increased by 20%. However, the speed of loading, parsing, and rendering of complex designs with a large number of elements has been increased by several times. In some cases, a tenfold increase has been achieved.
- All SDK components now use Microsoft .NET Framework 4.8.0.

## DesignAtoms.Model 7.0.0 - June 28, 2023

- The following converter classes were moved from the `Serialization.Json` namespace to DesignAtoms:
    - `EffectConverter`
    - `FileFormatConverter`
    - `OpenTypeFeatureConverter`
    - `ParagraphSettingsConverter`
- Attributes with converters were removed from class attributes. Now they are set in the serialization settings in DesignAtoms.
- The following classes for working with text were added to the model:
    - `DesignAtoms.Model.Items.ParagraphSettings`
    - `DesignAtoms.Model.Items.ParagraphDirection`
    - `DesignAtoms.Model.Configuration.PdfTextOutputMode`
- In the `ArchedTextItem` class, the `Warp` property was removed, since not supported in Graphics Mill 11.
- The `RenderingConfig.HiResOutputRendering.PdfTextOutputMode` property was added to the configuration with a default value of `null`.

## Design Atoms 7.0.0 - June 28, 2023

- You can now define how text will be rendered to PDF files - as a set of vector outlines or as a text object. The `IConfiguration.PdfTextOutputMode` property controls this feature. If this property was not set in the `RenderingConfig`, then the value from `IConfiguration` will be used. So, the text rendering method can be set both for a single object and globally.
- Bounded text items with overflow strategy `FitToWidth` now uses copyfitting settings from the Graphics Mill engine. In other cases, copyfitting settings built into Design Atoms are still used. In the future releases, `BoundedTextItem` will use copyfitting settings from Graphics Mill for all strategies.
- Added the `JustificationConverter` class for conversion between `DesignAtoms.Model.Items.TextAlignment` and the following Graphics Mill properties: `Codecs.Idml.Justification`, `Codecs.Psd.PsdTextJustification`, `AdvancedDrawing.TextAlignment`, TextWhizz-string, and GM-string.
- Added the `ParagraphSettingsConverter` class to convert `Codecs.Idml.Paragraph` to `DesignAtoms.Model.Items.ParagraphSettings`.
- Implemented the `GraphicsContainerItemsProcessor` class for color conversion when rendering a `GraphicsContainer`.

## DesignAtoms.ImageProcessing 7.0.0 - June 28, 2023

- Added the `GraphicsContainerAnalyzer` class to get information about PDF, which is used in testing.
- Added the `GraphicsContainerShapeExtractor` class to extract shapes from PDF, which is used in the Design Editor.

## Design Editor 7.0.0 - June 28, 2023

- The implementation of extracting shapes from PDF was moved to `DesignAtoms.ImageProcessing`.
- For NLB scenarios:
    - Added a TokenService
    - Removed support for MS SQL Server

## Changelogs

For detailed changelogs and a complete list of bug fixes, refer to the corresponding SDK component:

- [Design Editor Web App](https://customerscanvas.com/docs/on-premises/design-editor/it-ops/changelog.md)
- [Design Editor IFrame API](https://customerscanvas.com/docs/on-premises/design-editor/iframe-api/changelog.md)
- [Design Atoms Frontend](https://customerscanvas.com/docs/on-premises/design-atoms-js/changelog.md)
- [Design Atoms Backend](https://customerscanvas.com/docs/on-premises/design-atoms-cs/changelog.md)
- [UI Framework](https://customerscanvas.com/docs/on-premises/ui-framework/changelog.md)
