mirror of
https://github.com/YACReader/yacreader
synced 2025-06-04 01:28:55 -04:00
Merge pull request #62 from YACReader/feature/magnifying_glass_fixes
Feature/magnifying glass fixes
This commit is contained in:
commit
d459056615
@ -77,14 +77,15 @@ void MagnifyingGlass::updateImage(int x, int y)
|
|||||||
}
|
}
|
||||||
if (outImage) {
|
if (outImage) {
|
||||||
QImage img(zoomWidth, zoomHeight, QImage::Format_RGB32);
|
QImage img(zoomWidth, zoomHeight, QImage::Format_RGB32);
|
||||||
|
img.setDevicePixelRatio(devicePixelRatio());
|
||||||
img.fill(Configuration::getConfiguration().getBackgroundColor());
|
img.fill(Configuration::getConfiguration().getBackgroundColor());
|
||||||
if (zw > 0 && zh > 0) {
|
if (zw > 0 && zh > 0) {
|
||||||
QPainter painter(&img);
|
QPainter painter(&img);
|
||||||
painter.drawPixmap(xOffset, yOffset, p->pixmap()->copy(xp, yp, zw, zh));
|
painter.drawPixmap(xOffset, yOffset, image->copy(xp, yp, zw, zh));
|
||||||
}
|
}
|
||||||
setPixmap(QPixmap().fromImage(img));
|
setPixmap(QPixmap().fromImage(img));
|
||||||
} else
|
} else
|
||||||
setPixmap(p->pixmap()->copy(xp, yp, zoomWidth, zoomHeight));
|
setPixmap(image->copy(xp, yp, zoomWidth, zoomHeight));
|
||||||
} else {
|
} else {
|
||||||
int xp = static_cast<int>(((x - p->widget()->pos().x()) * wFactor) - zoomWidth / 2);
|
int xp = static_cast<int>(((x - p->widget()->pos().x()) * wFactor) - zoomWidth / 2);
|
||||||
int yp = static_cast<int>((y + currentPos) * hFactor - zoomHeight / 2);
|
int yp = static_cast<int>((y + currentPos) * hFactor - zoomHeight / 2);
|
||||||
@ -117,14 +118,15 @@ void MagnifyingGlass::updateImage(int x, int y)
|
|||||||
}
|
}
|
||||||
if (outImage) {
|
if (outImage) {
|
||||||
QImage img(zoomWidth, zoomHeight, QImage::Format_RGB32);
|
QImage img(zoomWidth, zoomHeight, QImage::Format_RGB32);
|
||||||
|
img.setDevicePixelRatio(devicePixelRatio());
|
||||||
img.fill(Configuration::getConfiguration().getBackgroundColor());
|
img.fill(Configuration::getConfiguration().getBackgroundColor());
|
||||||
if (zw > 0 && zh > 0) {
|
if (zw > 0 && zh > 0) {
|
||||||
QPainter painter(&img);
|
QPainter painter(&img);
|
||||||
painter.drawPixmap(xOffset, yOffset, p->pixmap()->copy(xp, yp, zw, zh));
|
painter.drawPixmap(xOffset, yOffset, image->copy(xp, yp, zw, zh));
|
||||||
}
|
}
|
||||||
setPixmap(QPixmap().fromImage(img));
|
setPixmap(QPixmap().fromImage(img));
|
||||||
} else
|
} else
|
||||||
setPixmap(p->pixmap()->copy(xp, yp, zoomWidth, zoomHeight));
|
setPixmap(image->copy(xp, yp, zoomWidth, zoomHeight));
|
||||||
}
|
}
|
||||||
move(static_cast<int>(x - float(width()) / 2), static_cast<int>(y - float(height()) / 2));
|
move(static_cast<int>(x - float(width()) / 2), static_cast<int>(y - float(height()) / 2));
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user