mirror of
https://github.com/crystalidea/qt6windows7.git
synced 2025-07-04 00:05:25 +08:00
qt 6.5.1 original
This commit is contained in:
15
tests/manual/qimagereader/CMakeLists.txt
Normal file
15
tests/manual/qimagereader/CMakeLists.txt
Normal file
@ -0,0 +1,15 @@
|
||||
# Copyright (C) 2022 The Qt Company Ltd.
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
|
||||
#####################################################################
|
||||
## qimagereader Binary:
|
||||
#####################################################################
|
||||
|
||||
qt_internal_add_manual_test(qimagereader
|
||||
GUI
|
||||
SOURCES
|
||||
main.cpp
|
||||
LIBRARIES
|
||||
Qt::Gui
|
||||
Qt::Widgets
|
||||
)
|
BIN
tests/manual/qimagereader/Qt_logostrap_CMYK.jpg
Normal file
BIN
tests/manual/qimagereader/Qt_logostrap_CMYK.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 246 KiB |
66
tests/manual/qimagereader/main.cpp
Normal file
66
tests/manual/qimagereader/main.cpp
Normal file
@ -0,0 +1,66 @@
|
||||
// Copyright (C) 2016 The Qt Company Ltd.
|
||||
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0
|
||||
|
||||
#include <QWidget>
|
||||
#include <QHBoxLayout>
|
||||
#include <QApplication>
|
||||
#include <QPainter>
|
||||
#include <QImage>
|
||||
#include <QImageReader>
|
||||
|
||||
class MyWidget : public QWidget
|
||||
{
|
||||
public:
|
||||
MyWidget(QWidget * parent, const QString &imagefname, bool scaleImage)
|
||||
: QWidget(parent), fileName(imagefname), scale(scaleImage)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
virtual void paintEvent(QPaintEvent * /*event*/)
|
||||
{
|
||||
QPainter painter(this);
|
||||
QImageReader reader(fileName);
|
||||
if (!reader.canRead()) {
|
||||
qWarning("Unable to read image file %s", fileName.toLocal8Bit().constData());
|
||||
return;
|
||||
}
|
||||
if (!scale){
|
||||
QImage image = reader.read();
|
||||
painter.drawImage(rect(), image);
|
||||
}else{
|
||||
reader.setScaledSize( QSize(rect().width(), rect().height()) );
|
||||
QImage image = reader.read();
|
||||
painter.drawImage(rect(), image);
|
||||
}
|
||||
}
|
||||
|
||||
private:
|
||||
QString fileName;
|
||||
bool scale;
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
||||
// both the scaled and unscaled version of the CMYK encoded JPEG
|
||||
// should have the same colors and not look corrupted.
|
||||
|
||||
int main(int argc, char** argv)
|
||||
{
|
||||
QApplication app(argc, argv);
|
||||
|
||||
QWidget mainWidget;
|
||||
mainWidget.setWindowTitle("Colors in images are identical?");
|
||||
mainWidget.setMinimumSize(400,400);
|
||||
QHBoxLayout *l = new QHBoxLayout;
|
||||
MyWidget *w1 = new MyWidget(&mainWidget,"Qt_logostrap_CMYK.jpg", false);
|
||||
MyWidget *w2 = new MyWidget(&mainWidget,"Qt_logostrap_CMYK.jpg", true);
|
||||
l->addWidget(w1);
|
||||
l->addWidget(w2);
|
||||
mainWidget.setLayout(l);
|
||||
mainWidget.show();
|
||||
|
||||
return app.exec();
|
||||
}
|
||||
|
2
tests/manual/qimagereader/qimagereader.pro
Normal file
2
tests/manual/qimagereader/qimagereader.pro
Normal file
@ -0,0 +1,2 @@
|
||||
QT += widgets
|
||||
SOURCES += main.cpp
|
Reference in New Issue
Block a user