QPixmap を使用して Qt の QLabel のアスペクト比を維持する
Qt で、QLabel に画像を表示する では、アスペクト比を維持しながらサイズを変更するという課題がしばしば発生します。これは、ソース画像のサイズの動的な変更を扱う場合に特に重要です。
サイズ ポリシーによるアスペクト比の維持
これに対処するには、ラベルの QSizePolicy を調整します。 は拡張または最小限の拡張を可能にします。例:
<code class="cpp">QLabel label; label.setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Expanding);</code>
QPixmap のスケーリング
アスペクトを維持しながら QLabel 内の QPixmap をスケーリングするには
<code class="cpp">QPixmap pixmap; // Assumed loaded from a source int labelWidth = label.width(); int labelHeight = label.height(); label.setPixmap(pixmap.scaled(labelWidth, labelHeight, Qt::KeepAspectRatio));</code>
このコードを 2 つの場所に挿入します:
QLabel は、使用可能なスペースに従ってアスペクト比を維持しながら QPixmap に合わせてサイズ変更されます。 .
以上がQt の QLabel で画像を表示するときにアスペクト比を維持するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。