Exporting Designs from Graphics Software

You can export designs from graphics software, such as Adobe Photoshop and GIMP, to QML files. Each scene is converted into a single QML file with an Image or a Text item for each layer and saved on the development PC. Top-level layer groups are converted into merged QML Image types.

Note: GIMP does not support grouping, and therefore, each layer is exported as an item in GIMP.

You can open the QML file in Qt Creator for editing. By default, the export scripts generate Qt Quick 1 files. To edit the files in Qt Quick Designer, change the import statements in the export scripts to import Qt Quick 2. Or, you can change the import statement in each file after generating the files.

If you edit the file in Adobe Photoshop and export it to the same directory again, any changes you made in Qt Creator are overwritten. However, you can re-export graphical assets without recreating the QML code.

If you create vector graphics with other tools that have an Adobe Photoshop export option, such as Adobe Illustrator, you can export them first to Photoshop and then to QML.

Conversion Rules

The following rules apply to the conversions:

  • Layer names are used as item names. Spaces and hash marks (#) are replaced with underscore characters to create valid ids for the items.
  • Layer styles, such as drop shadows, are converted to images.
  • Offset, size, ordering and opacity are preserved.
  • Text layers are converted to Text items, unless you specify that they be converted to Image items.
  • Hidden layers can be exported, and their visibility is set to hidden.
  • PNG images are copied to the images subirectory.

Preparing Files for Conversion

To create QML files that are easy to use, prepare the Adobe Photoshop or GIMP designs for exporting, as follows:

  • To minimize the number of items, minimize the number of layers or use top-level layer groups, because each layer or layer group is exported as a Text or Image item.
  • To make sure that all related items are exported to the same item, use top-level layer groups.
  • To determine that some layers are not exported, hide them, and deselect the Export hidden check box during exporting.
  • To make it easier to find the layers and layer groups after exporting them, use descriptive names for them.
  • To make sure that image dimensions are preserved during export, create at least one fully filled layer (which can be hidden), such as a background layer. If the export script does not find a fully filled layer, it resizes all images to the size of the canvas.
  • To prevent errors during export, make sure that the layers are not locked. Locked layers cannot be exported.
  • To avoid unexpected results, do not use Blending Mode effects. They are not exported.

Exporting from Adobe Photoshop to QML

The script has been tested to work on Adobe Photoshop CS 4 and 5, but it might also work on other versions.

  1. Clone the repository that contains the export script, Export QML.jx, from Qt Code Review.

    Note: Read the README.txt file in the repository for latest information about the script.

  2. To generate QML files that you can edit in Qt Quick Designer, edit the import statement in Export QML.jx. For example:
    qmlfile.write("import QtQuick 2.5\n");
  3. Double-click the export script to add the export command to the Scripts menu. You can also copy the script file to the Adobe Photoshop scripts directory (typically, \Presets\Scripts in the Photoshop installation directory).
  4. In Adobe Photoshop, choose File > Scripts > Export to QML to export the scene to a QML file.
  5. In the Export Document to QML dialog, enter a name and location for the QML file.
  6. Select the Rasterize text check box to export text layers as images, not as Text items.
  7. Select the Group layers check box to export each top-level group as a merged QML Image item.
  8. Select the Export hidden check box to export hidden layers and to set their visibility property to hidden.
  9. Deselect the Export QML check box if you have modified the QML document in Qt Creator, but still want to re-export graphical assets.
  10. Click Export.

The QML file is saved to the location that you specified. In Qt Creator, choose File > Open File or Project to open the QML file.

Note: Existing files are replaced without warning.

Exporting from GIMP to QML

The script has been tested to work on GIMP 2. You can download GIMP 2 from GIMP Downloads.

  1. Clone the repository that contains the export script, qmlexporter.py, from Qt Code Review.

    Note: Read the INSTALL.txt in the repository for latest information about the script.

  2. Copy the export script to the plug-ins directory in the GIMP installation directory.
  3. Check the properties of the file to make sure that it is executable.

    On Linux, run the following command: chmod u+rx

  4. To generate QML files that you can edit in Qt Quick Designer, edit the import statement in qmlexporter.py. For example:
    f.write('import QtQuick 2.5\n')
  5. Restart GIMP to have the export command added to the File menu.
  6. Choose File > Export to QML to export the design to a QML file.
  7. In the Export Layers to a QML Document dialog, enter a name and location for the QML file, and click Export.

The QML file is saved to the location that you specified. In Qt Creator, choose File > Open File or Project to open the QML file.

Note: Existing files are replaced without warning.

© 2017 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.