Interface: EngravingSettings
Detailed settings for the engraving rendering process.
EngravingSettings controls all aspects of how text appears when engraved on a 3D product. These settings affect the visual appearance, size, positioning, and rendering quality of engraved text, as well as how the text is applied to the 3D model's textures.
Properties
adjustFont
adjustFont:
boolean
If true
, font size will automatically adjust to fit the available space.
Useful for ensuring text fits within designated areas on the product.
fontFamily
fontFamily:
string
Font family name for the engraved text. In case of non-default fonts, ensure they are loaded beforehand.
fontSize
fontSize:
number
Font size for the engraved text in pixels. Controls the visual size of text in the engraving.
fontStyle?
optional
fontStyle:FontStyle
Font style applied to the text.
Deprecated
Use fontStyles array instead.
fontStyles?
optional
fontStyles:FontStyle
[]
List of available font styles for this engraving. Allows offering multiple style options to users (normal, italic, oblique).
fontStyleValue?
optional
fontStyleValue:string
Currently selected font style value. Contains the active font style selection from the available options.
fontWeight?
optional
fontWeight:FontWeight
Weight/thickness of the font. Controls how light or heavy the text appears.
invertH
invertH:
boolean
If true
, text will appear embossed (raised) instead of engraved (recessed).
This setting inverts the height map to change between positive and negative relief.
level
level:
number
The depth level of the engraving texture. Affects how the texture is rendered and its visual prominence.
lineHeight?
optional
lineHeight:number
Line height multiplier for multi-line text. Alternative to lineSpace that uses font-relative sizing.
lines
lines:
number
The number of text lines supported by this engraving. Determines how many separate lines of text users can enter.
lineSpace
lineSpace:
number
Spacing between lines of text in multi-line engravings in pixels. Controls vertical spacing when multiple lines are entered.
mobileTextureSize
mobileTextureSize:
number
The resolution of the texture used for engraving on mobile devices. Typically lower than desktop to conserve memory on mobile devices.
smoothing
smoothing:
number
Smoothing level for the engraved edges. Higher values create smoother transitions between the text and the surface.
strength
strength:
number
Depth/strength of the engraving or embossing effect. Higher values create deeper engravings or more prominent embossing.
strokeText
strokeText:
boolean
If true
, text will be rendered with stroke outlines instead of filled.
Creates an outline effect around characters rather than solid shapes.
textAlign
textAlign:
CanvasTextAlign
The horizontal alignment of the text (left, center, right). Controls how text is positioned horizontally within the engraving area.
textBaseline?
optional
textBaseline:CanvasTextBaseline
The vertical alignment of the text (top, middle, bottom). Controls how text is positioned vertically within the engraving area.
Deprecated
Use more modern positioning methods instead.
textTransform?
optional
textTransform:string
Text transformation to apply (uppercase, lowercase, capitalize, etc). Automatically transforms user input according to this setting.
textureSize
textureSize:
number
The resolution of the texture used for engraving on desktop devices. Higher values create sharper text but require more memory.
useAlbedo
useAlbedo:
boolean
If true
, engraving will affect the color/albedo texture of the material.
This can create color differences in the engraved area.
useBump
useBump:
boolean
If true
, engraving will affect the bump/normal map of the material.
This creates the visual depth effect that makes the text appear engraved.