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.

Layer ignores auto layout

A layer that ignores the auto layout is drawn in front of the layout.

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 that QML cannot draw as one color.

Rendering as image

Set to be rendered as images.

Shapes and effects

Some layers and effects are always rendered as images.

Skipped layer

Layer was skipped.

Stroke alignment

Stroke aligned to the inside or outside of the line.

Stroke on Text

Stroke properties for a text layer.

Transforms or flipping

The layer is transformed of flipped.

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
  • If you set the line height property for a Text layer in Figma, the plugin converts it into QML Text, not Qt for MCUs StaticText.

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

Fills that a Qt for MCUs rectangle cannot draw.

Non-solid fill or non-linear gradient

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

Rotated child layers

Rotated layer contains other layers.

Rotation

Rectangle layer is rotated.

Skewed layer

Skewed layers are rendered as images for Qt for MCUs.

Text auto resize

Automatically resized text.

Text case

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

Text decoration

Text styled with strikeout or underline.

Text line height

Text line height is set in Figma.

Text truncation

Truncated text.

Top visible fill

Fills that QML cannot draw as one color.

Unsuitable font

No support for complex scripts.

Unsupported properties

Properties that Qt for MCUs StaticText 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 QML components 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. If you swap a nested instance inside a component instance, Figma to Qt reports an Instance swap issue and the instance keeps the main component's original layer until you select Reset overrides to revert the swap.

Duplicate sibling layer names

The layer has several child layers with the same name.

Ignored override

Override on an instance that a variant state overwrites.

Ill-defined component

Figma component is not well-defined.

Instance swap

Instance swap in a component instance.

Layer renamed

The layer name differs from the main component.

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 moved

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

Variant layer parent conflict

The plugin drops a layer that only some variants have when they place it under different parent layers.

Variant layer type conflict

Layers that share a name across variants but have different types.

Variant layout mismatch

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

Asset issues

If a Figma layer has properties that have no equivalent in QML, the plugin converts it into an asset and creates a QML Image for it. You can select the asset file format for all assets.

The following table summarizes issues that might occur when creating assets.

Asset orientation

Asset is incorrectly placed.

Cannot create an asset

The plugin could not create an asset from the layer.

Cannot save asset as SVG

The plugin cannot save the layer as an SVG file, so it saved it as a PNG.

Matched layer saved as PNG asset

The same layer in another variant or instance is saved as a PNG image.

SVG file cannot draw layer content

An SVG file cannot draw the layer content, so the layer is saved as PNG.

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.