• Sets new print areas for the surface. Returns new product instance containing the changed surface.

    newPrintAreas = [{
        designFile: "stamp"
        .then(function (product) {
            return product.surfaces[0].setPrintAreas(newPrintAreas);
        .then(function (product) {
            console.log("A print area is successfully set for product " +;
        .catch(function (error) {
            console.error("Setting a print area failed with exception: ", error);


    • printAreas: IPrintAreaTemplate | IPrintAreaDefinition

      Print areas to set.

    • Optional options: object

      Additional configuration settings for the print areas.

      • 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 a user are wiped. The default value is true.

      • Optional updateRevertData?: boolean

        If true then 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 >