このページでは

Qt Lottie Animation

Qt Lottie Animation では、Lottie形式のファイル内のグラフィックスやアニメーションをレンダリングするためのQML APIを提供しています。これらは通常、Adobe After Effects用のLottieプラグインからエクスポートされます。

LottieAnimation アイテムは、QPainterソフトウェアレンダラーを使用して、アニメーションを中間バッファにレンダリングします。これにより、イラストのサイズや対象となるハードウェアに関して、パフォーマンス上の制約が生じる可能性があります。 代替手段として、lottietoqmlというツールが同梱されています。このツールは、Lottie アニメーションを QML に変換します。その結果、Qt Quick のハードウェアアクセラレーション対応レンダラーを使用してレンダリングできるようになります。

コンパイル時に Lottie ファイルが判明している場合は、lottietoqmlツール、またはそのツールをラップした CMake コマンド `qt_target_qml_from_lottie` を使用して、それらを QML に変換することも可能です。

最後に、VectorImage (Qt Quick )アイテムは、Lottie形式のファイルを直接読み込むことができます。このアイテムは、プラグイン内のlottietoqml機能を使用して、実行時にそれらをQMLに変換します。

はじめに

次のステートメントを使用して、型をインポートします。

import Qt.labs.lottieqt

制限事項

この実装は、Lottieのマスター仕様に準拠しています。エクスポートされたLottieファイルに仕様との相違が認められた場合、可能な限りその差異が考慮されます。

一般的な制限事項

  • 式はサポートされていません
  • タイムラインはフレームモードのみをサポートしており、タイムモードはサポートしていません

警告: Qt Lottie Animation の入力ファイルは 、信頼できるコンテンツであるとみなされます。アプリケーション開発者は、信頼できないソースからのデータを絶対に渡さないよう推奨されます。

アニメーションレベルの制限

以下のプロパティはサポートされていません:

  • assets - 再利用可能なテキストおよび画像
  • chars text

レイヤー

以下のプロパティはサポートされていません:

  • bm (ブレンドモード)

図形

以下を含む、あまり使用されない要素や図形はサポートされていません:

  • ネストされたリピーターシェイプ

また、複数のアクティブなトリムパス(例:ネストされたグループ内のトリムパス)を使用した場合の挙動は予測できない点にもご注意ください。

エフェクト

サポートされているエフェクトは、Slide およびLayer Fill のみです。

例

  • qtlottieviewer の例では、LottieAnimation アイテムを使用して、Qt Quick アプリケーションで Lottie ファイルをロード、表示、および制御する方法を示しています。
  • lottietoqml の例では、lottietoqmlツールを使用して Lottie ファイルをQt Quick シーンに変換し、それらをアプリケーションに読み込む方法を示しています。

ライセンス

Qt Lottie Animation は、The Qt Company から商用ライセンスで提供されています。また、GNU General Public License バージョン 3 のもとでも利用可能です。詳細については、「Qt ライセンス」を参照してください。

参考

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