diff options
author | Aleks Kissinger <aleks0@gmail.com> | 2018-12-18 09:53:00 +0100 |
---|---|---|
committer | Aleks Kissinger <aleks0@gmail.com> | 2018-12-18 09:53:00 +0100 |
commit | 2332239082db6a33ee66bb08491c1e9cf099f9b6 (patch) | |
tree | 4f226e662be2372b874ff8f5fb5a875813889fd5 /src/gui/previewwindow.cpp | |
parent | 6121b486e168334db70cbbe7a67afe56c0272748 (diff) |
preview works
Diffstat (limited to 'src/gui/previewwindow.cpp')
-rw-r--r-- | src/gui/previewwindow.cpp | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/gui/previewwindow.cpp b/src/gui/previewwindow.cpp index 0a37e1b..8625045 100644 --- a/src/gui/previewwindow.cpp +++ b/src/gui/previewwindow.cpp @@ -13,6 +13,7 @@ #include <QFile> #include <QTextStream> #include <QStandardPaths> +#include <QMessageBox> #include <cmath> PreviewWindow::PreviewWindow(QWidget *parent) : @@ -45,7 +46,15 @@ PreviewWindow::~PreviewWindow() void PreviewWindow::setPdf(QString file) { Poppler::Document *oldDoc = _doc; - _doc = Poppler::Document::load(file); + Poppler::Document *newDoc = Poppler::Document::load(file); + if (!newDoc) { + QMessageBox::warning(nullptr, + "Could not read PDF", + "Could not read: '" + file + "'."); + return; + } + + _doc = newDoc; _doc->setRenderHint(Poppler::Document::Antialiasing); _doc->setRenderHint(Poppler::Document::TextAntialiasing); _doc->setRenderHint(Poppler::Document::TextHinting ); @@ -82,8 +91,8 @@ void PreviewWindow::render() { QSizeF size = _page->pageSizeF(); QRect rect = ui->scrollArea->visibleRegion().boundingRect(); - int w = rect.width(); - int h = rect.height(); + int w = rect.width() - 20; + int h = rect.height() - 20; qreal scale = fmin(static_cast<qreal>(w) / size.width(), static_cast<qreal>(h) / size.height()); int dpi = static_cast<int>(scale * 72.0); |