このページでは

Qt Lottie Animation

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

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

コンパイル時にLottieファイルがわかっていれば、lottietoqmlツールや、このツールをラップしたqt_target_qml_from_lottieCMakeコマンドを使ってQMLに変換することもできます。

最後に、VectorImage Qt Quick アイテムは、Lottieフォーマットのファイルを直接読み込むことができます。プラグインのlottietoqml機能を使って、実行時にQMLに変換します。

はじめに

以下の文を使って、型をインポートしてください:

import Qt.labs.lottieqt

制限事項

この実装は、lottieのマスター仕様に従っています。エクスポートされたLottieファイルの仕様との差異は、可能な限り考慮されます。

一般的な制限

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

警告 Qt Lottie Animation の入力ファイルは、信頼できるコンテンツであることを前提としています。アプリケーション開発者は、信頼できないソースからのデータを決して渡さないようにしてください。

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

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

  • assets - 再利用可能なテキストと画像
  • chars テキスト

レイヤー

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

  • ao (自動オリエンテーション)
  • bm (ブレンドモード)
  • maskProperties (マスク)
  • sr (タイムストレッチ)

シェイプ

めったに使用されないいくつかの要素やシェイプはサポートされていません:

  • gstroke (グラデーションストローク) 要素
  • ネストされたリピータ シェイプ

また、複数のアクティブなトリムパス (ネストされたグループのトリムパスなど) を使用する場合の動作は予測できません。

エフェクト

サポートされているエフェクトはSlideLayer Fill のみです。

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

ライセンス

Qt Lottie Animation は、The Qt Companyから商用ライセンスで入手できます。また、GNU General Public License, version 3でも利用可能です。詳細はQt Licensingを参照してください。

リファレンス

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