On this page

Conversion issues

Figma to Qt converts Figma designs into QML code. Some Figma layers have properties that have no equivalent in QML. The Issues page describes the differences and offers to automatically fix some issues.

The following table summarizes the properties that QML doesn't support.

Bound variables

Layer properties are bound to variables.

Complex line strokes

Stroke settings that a QML shape path cannot express.

Complex strokes

Stroke settings that EllipseShape cannot express.

Constraint and text alignment mismatch

A text layer aligned to one edge and constrained to another.

Font files

Too many or no font files added.

Invalid control setup

Missing or invalid control properties.

Layout child positioning

Cannot position a QML component.

Layout padding

Too much padding in an auto layout.

Missing variables

Variables not available in the current file.

Mixed font style

Different font family, weight, size, or style (such as, bold or italic) within one text layer.

Mixed line height

Different line height values within one text layer.

Mixed or non-solid fill

Only some words or characters have a fill within one text layer.

Mixed stroke weight

Different stroke weight values within a rectangle layer.

Non-solid strokes

Strokes styled with a gradient or other fill.

Non-solid text fill

Text styled with a gradient or other fill.

Rendering as image

Set to be rendered as images.

Shapes and effects

Always rendered as images.

Skewed layer

Skewed layers are rendered as images for Qt for MCUs.

Skipped layer

Layer was skipped.

Stroke alignment

Stroke aligned to the inside or outside of the line.

Unsupported end caps

End caps that a QML shape path cannot draw.

Converting into Qt for MCUs

Qt for MCUs takes into account the resource constraints on the MCU platforms, such as memory footprint and CPU cycles. It enables your application to perform optimally with the resources available on MCU platforms.

To keep your application lean, help Figma to Qt to convert the Figma design into Qt for MCUs code instead of assets. Keep the following in mind when working in Figma:

  • Rotate only Text, Image, or Line layers
  • If you use effects, you can either render the layer as an Image or skip the effects
  • Figma to Qt cannot convert shapes into Qt for MCUs SvgPathItem. Line layers are the exception: they are converted into a Shape that holds a ShapePath, but without dash patterns, which Qt for MCUs doesn't support

The following table summarizes additional properties that Qt for MCUs doesn't support.

Complex script

Complex text script.

Dash pattern on stroke

Dashed stroke on a line or vector layer.

Mixed corner radius

Individual radius values for each corner of a rectangle.

Non-solid fill or non-linear gradient

Layer styled with a non-linear gradient or non-solid fills.

Rotated child layers

Rotated layer has children.

Rotation

Rectangle layer is rotated.

Strokes

Layer has strokes.

Text auto resize

Automatically resized text.

Text case

Text styled with text case (such as small caps).

Text decoration

Text styled with strikeout, underline, and so on.

Text truncation

Truncated text.

Top visible fill

Non-solid text fill for the top visible fill.

Unsuitable font

No support for complex scripts.

Unsupported properties

Properties that Qt for MCUs doesn't support.

Components and variants

Figma to Qt converts each Figma main component into a QML component and each instance into an instance of the component. It converts variants into a QML component with states. You can override the properties of the main component or variant in the instances.

Note: For best results, all variants should have the exact same internal layer structure, including the same nesting depth.

If the plugin shows you issues about component instances, check that:

  • The layer names match across components and their instances.
  • Names of added layers in variants are not the same as names of layers in the default variant.
  • Positions of layers in variants match those in the default variant, counted from the bottom of the layers panel.

Note: Swapping instances is not supported.

Asset orientation

Asset is incorrectly placed.

Conflicting overrides

Variant instances overridden in ways that are not supported.

Conflicting variants

Conflicting variant instances.

Duplicate sibling layer names

Sibling layers have identical names, so the plugin uses the layer structure to identify them.

Ignored override

Override on an instance that a variant state overwrites.

Ill-defined component

Figma component is not well-defined.

Inconsistent variants

The plugin ignores layers that have a different parent in one or more variants.

Instance swap

Instance swap in a component instance.

Layer name or position

The layer name or position differ from the default variant of the main component.

Layer names

Layer names changed between a main component and its instance.

Missing main component

The main component of an instance is missing.

Missing states

States removed from a control.

Nested variants

Self-nested variant.

Variant layer reordered

The plugin drops the variant changes because the position or parent of the layer differs from the default variant.

Variant layout mismatch

The plugin drops a layout because its auto layout setting doesn't match that of the corresponding layer in other variants.

Project issues

When you download the converted design, Figma to Qt creates a QML project that contains all the necessary files. You can specify advanced layer settings to instruct the plugin on how to convert layers.

The following table summarizes issues in the created projects. They are shown by the compiler or other tools developers use to build and run the project.

Invalid QML type

Custom QML type doesn't exist.

See also Fix conversion issues, Render layers as images, and Design guideline.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.