使用QImage打开图片,显示在QLabel控件内,label_width 和 label_height 表示显示控件的宽和高,temp_image 表示打开的图片。
float scale_w = label_width_ / temp_image->width(); //宽的比例 float scale_h = label_height_ / temp_image->height(); //高的比例 float new_width, new_height; //新的宽和高 if ((label_width_ >= temp_image->width()) && (label_height_ >= temp_image->height())) //图片的原始宽和高均小于显示控件的宽和高 { new_width = temp_image->width(); new_height = temp_image->height(); } else if (scale_w > scale_h) { new_width = temp_image->width() * scale_h; new_height = temp_image->height() * scale_h; } else if (scale_w <= scale_h) { new_width = temp_image->width() * scale_w; new_height = temp_image->height() * scale_w; }