Protobuf Qt GUI Types Module
protobuf で Qt Gui のネイティブ型を使うためのサポートを提供します。詳細...
このモジュールは Qt 6.6 で導入されました。
詳しい説明
Qt::ProtobufQtGuiTypes は、Qt Gui タイプの選択をカプセル化するために設計された、定義済みの protobuf メッセージのライブラリです。
サポートされている Qt Gui タイプのリストです:
Qt GUIの使い方
Qt GUI タイプのサポートを有効にするには、CMake プロジェクトに ProtobufQtGuiTypes を依存関係として追加します:
... find_package(Qt REQUIRED COMPONENTS Protobuf ProtobufQtGuiTypes) ... # After target creation target_link_libraries(${TARGET} PRIVATE Qt::ProtobufQtGuiTypes)
Qt GUI タイプをフィールドとして使用するメッセージのシリアライズまたはデシリアライズの前に、登録メソッドを呼び出します:
// e.g. in main.cpp QtProtobuf::qRegisterProtobufQtGuiTypes(); ...
サポートされているメッセージはすべて、Qt GUIモジュールのQt型を記述した特別な.protoファイル(QtGui.proto)に記述されています。
このファイルを使用して、他の言語やフレームワーク用のコードを生成することもできます。
インターフェイスの .proto ファイルに、必要な Qt GUI タイプモジュールをインポートします:
syntax = "proto3"; package project.module.component; import "QtGui/QtGui.proto"; message QMatrix4x4Message { QtGui.QMatrix4x4 matrix = 1; }
Qt Protobuf ジェネレーターは、ProtobufQtGuiTypes パッケージが提供する Qt GUI タイプを検出し、直接使用します。これにより、追加の変換なしでこれらの型を柔軟に使用できます。
QImage シリアル化
ProtobufQtGuiTypes ライブラリは、QImage クラスで動作する可能性を提供します。通常、ライブラリはすべてのQImage オブジェクトをPNG
フォーマットに変換します。しかし、QImage がhttps://doc.qt.io/qt-6/qimage.html#Format-enuma {浮動小数点フォーマット} を使用して作成された場合、PNG
に変換するとデータが失われます。データ損失を防ぐため、ライブラリは、システムでサポートされている場合は自動的に画像ファイルをTIFF
フォーマットに変換し、そうでない場合はPNG
に変換します。
注意: TIFF
を使いたくない場合は、明示的に画像を浮動小数点でない形式に変換する必要があります。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。