setPrintAreas Method

Callable

  • Sets a new print area for the surface and returns a new product instance containing the changed surface.

    As a result, setPrintAreas moves only texts and image placeholders to new positions and drops other design elements. By default, this method changes the content of placeholders having the same layer names on the current Surface and in the new layout. To maintain the rest elements, set replaceAll to true. In this case, the rest of placeholders take content in a random order according to their type. If the old layout had more placeholders than the new layout, then extra placeholders are removed.

    example
    var newPrintAreas = [{ designFile: "stamp" }];
    var options = { 
        replaceAll: true,
        preserveSafetyLines: false
    };
    editor.getProduct()
        .then(function (product) {
            return product.surfaces[0].setPrintAreas(newPrintAreas, options);
        })
        .then(function (product) {
            console.log("A print area is successfully set for product " + product.id);
        })
        .catch(function (error) {
            console.error("Setting a print area failed with exception: ", error);
        });
    

    Parameters

    • printAreas: ( IPrintAreaTemplate | IPrintAreaDefinition ) []

      Print areas to set.

    • Optional options: object

      Additional configuration settings for the print areas.

      • Optional preserveSafetyLines: boolean

        If true, then current safety lines, if any, are restored in new print areas. If false, safety lines from new print areas are applied. The default value is true.

      • Optional preserveUserChanges: boolean

        If true, then changes made by a user are restored in the new print areas if it is possible. Otherwise, all changes made by the user are wiped. The default value is true.

      • Optional replaceAll: boolean

        If true, design elements whose names do not match move to the new print area in a random order according to their types. If false, only design elements with the same names are moved to the new print area. The default value is false.

      • Optional updateRevertData: boolean

        If true, the new print areas are stored as ones to restore when the product is reverted. Otherwise, the previously stored print areas are restored on product revert. The default value is true.

    Returns Promise < Product >

    A new product instance containing the changed surface.