Polotno Docs

SVGElement

Documentation for the SVGElement schema definition in the Polotno Design JSON Schema.

SVGElement

Type Information

Base Type: object

Properties

PropertyTypeDescription
alwaysOnTopbooleanWhether element stays on top of others.
animationsArray<Animation>Animation configurations.
blurEnabledbooleanWhether blur effect is enabled.
blurRadiusnumberBlur radius in pixels.
borderColorstringBorder color.
borderSizenumberBorder width in pixels.
brightnessnumberBrightness level (-1 to 1).
brightnessEnabledbooleanWhether brightness effect is enabled.
colorsReplaceobjectColor replacement mappings.
contentEditablebooleanWhether element content can be edited.
cornerRadiusnumberCorner radius in pixels.
cropHeightnumberCrop height as percentage (0-1).
cropWidthnumberCrop width as percentage (0-1).
cropXnumberCrop X offset as percentage (0-1).
cropYnumberCrop Y offset as percentage (0-1).
customunknownCustom data attached to the element.
draggablebooleanWhether element can be dragged.
filtersobjectApplied image filters.
flipXbooleanWhether SVG is flipped horizontally.
flipYbooleanWhether SVG is flipped vertically.
grayscaleEnabledbooleanWhether grayscale effect is enabled.
heightnumberHeight in pixels.
idstringUnique identifier for the element.
keepRatiobooleanWhether to maintain aspect ratio when resizing.
maskSrcstringURL or data URI for SVG mask.
namestringDisplay name for the element.
opacitynumberOpacity level (0-1).
resizablebooleanWhether element can be resized.
rotationnumberRotation angle in degrees.
selectablebooleanWhether element can be selected.
sepiaEnabledbooleanWhether sepia effect is enabled.
shadowBlurnumberShadow blur radius in pixels.
shadowColorstringShadow color.
shadowEnabledbooleanWhether shadow is enabled.
shadowOffsetXnumberShadow horizontal offset in pixels.
shadowOffsetYnumberShadow vertical offset in pixels.
shadowOpacitynumberShadow opacity (0-1).
showInExportbooleanWhether element appears in exports.
srcstringURL or data URI of the SVG file.
stretchEnabledbooleanWhether stretch mode is enabled.
styleEditablebooleanWhether element style can be edited.
type"svg"Element type identifier.
visiblebooleanWhether element is visible.
widthnumberWidth in pixels.
xnumberX position in pixels.
ynumberY position in pixels.

JSON Schema

{
  "additionalProperties": false,
  "properties": {
    "alwaysOnTop": {
      "description": "Whether element stays on top of others.",
      "type": "boolean"
    },
    "animations": {
      "description": "Animation configurations.",
      "items": {
        "$ref": "#/definitions/Animation"
      },
      "type": "array"
    },
    "blurEnabled": {
      "description": "Whether blur effect is enabled.",
      "type": "boolean"
    },
    "blurRadius": {
      "description": "Blur radius in pixels.",
      "type": "number"
    },
    "borderColor": {
      "description": "Border color.",
      "type": "string"
    },
    "borderSize": {
      "description": "Border width in pixels.",
      "type": "number"
    },
    "brightness": {
      "description": "Brightness level (-1 to 1).",
      "type": "number"
    },
    "brightnessEnabled": {
      "description": "Whether brightness effect is enabled.",
      "type": "boolean"
    },
    "colorsReplace": {
      "additionalProperties": {
        "type": "string"
      },
      "description": "Color replacement mappings.",
      "type": "object"
    },
    "contentEditable": {
      "description": "Whether element content can be edited.",
      "type": "boolean"
    },
    "cornerRadius": {
      "description": "Corner radius in pixels.",
      "type": "number"
    },
    "cropHeight": {
      "description": "Crop height as percentage (0-1).",
      "type": "number"
    },
    "cropWidth": {
      "description": "Crop width as percentage (0-1).",
      "type": "number"
    },
    "cropX": {
      "description": "Crop X offset as percentage (0-1).",
      "type": "number"
    },
    "cropY": {
      "description": "Crop Y offset as percentage (0-1).",
      "type": "number"
    },
    "custom": {
      "description": "Custom data attached to the element."
    },
    "draggable": {
      "description": "Whether element can be dragged.",
      "type": "boolean"
    },
    "filters": {
      "additionalProperties": {
        "additionalProperties": false,
        "properties": {
          "intensity": {
            "description": "Filter intensity value (-1 to 1).",
            "type": "number"
          }
        },
        "required": [
          "intensity"
        ],
        "type": "object"
      },
      "description": "Applied image filters.",
      "type": "object"
    },
    "flipX": {
      "description": "Whether SVG is flipped horizontally.",
      "type": "boolean"
    },
    "flipY": {
      "description": "Whether SVG is flipped vertically.",
      "type": "boolean"
    },
    "grayscaleEnabled": {
      "description": "Whether grayscale effect is enabled.",
      "type": "boolean"
    },
    "height": {
      "description": "Height in pixels.",
      "type": "number"
    },
    "id": {
      "description": "Unique identifier for the element.",
      "type": "string"
    },
    "keepRatio": {
      "description": "Whether to maintain aspect ratio when resizing.",
      "type": "boolean"
    },
    "maskSrc": {
      "description": "URL or data URI for SVG mask.",
      "type": "string"
    },
    "name": {
      "description": "Display name for the element.",
      "type": "string"
    },
    "opacity": {
      "description": "Opacity level (0-1).",
      "type": "number"
    },
    "resizable": {
      "description": "Whether element can be resized.",
      "type": "boolean"
    },
    "rotation": {
      "description": "Rotation angle in degrees.",
      "type": "number"
    },
    "selectable": {
      "description": "Whether element can be selected.",
      "type": "boolean"
    },
    "sepiaEnabled": {
      "description": "Whether sepia effect is enabled.",
      "type": "boolean"
    },
    "shadowBlur": {
      "description": "Shadow blur radius in pixels.",
      "type": "number"
    },
    "shadowColor": {
      "description": "Shadow color.",
      "type": "string"
    },
    "shadowEnabled": {
      "description": "Whether shadow is enabled.",
      "type": "boolean"
    },
    "shadowOffsetX": {
      "description": "Shadow horizontal offset in pixels.",
      "type": "number"
    },
    "shadowOffsetY": {
      "description": "Shadow vertical offset in pixels.",
      "type": "number"
    },
    "shadowOpacity": {
      "description": "Shadow opacity (0-1).",
      "type": "number"
    },
    "showInExport": {
      "description": "Whether element appears in exports.",
      "type": "boolean"
    },
    "src": {
      "description": "URL or data URI of the SVG file.",
      "type": "string"
    },
    "stretchEnabled": {
      "description": "Whether stretch mode is enabled.",
      "type": "boolean"
    },
    "styleEditable": {
      "description": "Whether element style can be edited.",
      "type": "boolean"
    },
    "type": {
      "const": "svg",
      "description": "Element type identifier.",
      "type": "string"
    },
    "visible": {
      "description": "Whether element is visible.",
      "type": "boolean"
    },
    "width": {
      "description": "Width in pixels.",
      "type": "number"
    },
    "x": {
      "description": "X position in pixels.",
      "type": "number"
    },
    "y": {
      "description": "Y position in pixels.",
      "type": "number"
    }
  },
  "required": [
    "alwaysOnTop",
    "animations",
    "blurEnabled",
    "blurRadius",
    "borderColor",
    "borderSize",
    "brightness",
    "brightnessEnabled",
    "colorsReplace",
    "contentEditable",
    "cornerRadius",
    "cropHeight",
    "cropWidth",
    "cropX",
    "cropY",
    "draggable",
    "filters",
    "flipX",
    "flipY",
    "grayscaleEnabled",
    "height",
    "id",
    "keepRatio",
    "maskSrc",
    "opacity",
    "resizable",
    "rotation",
    "selectable",
    "sepiaEnabled",
    "shadowBlur",
    "shadowColor",
    "shadowEnabled",
    "shadowOffsetX",
    "shadowOffsetY",
    "shadowOpacity",
    "showInExport",
    "src",
    "stretchEnabled",
    "styleEditable",
    "type",
    "visible",
    "width",
    "x",
    "y"
  ],
  "type": "object"
}