From 2332239082db6a33ee66bb08491c1e9cf099f9b6 Mon Sep 17 00:00:00 2001 From: Aleks Kissinger Date: Tue, 18 Dec 2018 09:53:00 +0100 Subject: preview works --- src/gui/latexprocess.cpp | 8 ++++---- src/gui/previewwindow.cpp | 15 ++++++++++++--- 2 files changed, 16 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/gui/latexprocess.cpp b/src/gui/latexprocess.cpp index f81e883..20b22a4 100644 --- a/src/gui/latexprocess.cpp +++ b/src/gui/latexprocess.cpp @@ -18,7 +18,7 @@ LatexProcess::LatexProcess(PreviewWindow *preview, QObject *parent) : QObject(pa connect(_proc, SIGNAL(finished(int)), this, SLOT(finished(int))); // for debug purposes - _workingDir.setAutoRemove(false); + // _workingDir.setAutoRemove(false); } void LatexProcess::makePreview(QString tikz) @@ -57,9 +57,9 @@ void LatexProcess::makePreview(QString tikz) f.open(QIODevice::WriteOnly); QTextStream tex(&f); tex << "\\documentclass{article}\n"; - tex << "\\usepackage[active,tightpage]{preview}\n"; - tex << "\\PreviewEnvironment{tikzpicture}\n"; tex << "\\usepackage{tikzit}\n"; + tex << "\\usepackage[graphics,active,tightpage]{preview}\n"; + tex << "\\PreviewEnvironment{tikzpicture}\n"; tex << "\\input{" + tikzit->styleFile() + "}\n"; tex << "\\begin{document}\n\n"; tex << tikz; @@ -89,7 +89,7 @@ void LatexProcess::finished(int exitCode) if (exitCode == 0) { QString pdf = _workingDir.path() + "/preview.pdf"; _output->appendPlainText("\n\nSUCCESSFULLY GENERATED: " + pdf + "\n"); - //_preview->setPdf(pdf); + _preview->setPdf(pdf); emit previewFinished(); } else { _output->appendPlainText("\n\npdflatex RETURNED AN ERROR\n"); 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 #include #include +#include #include 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(w) / size.width(), static_cast(h) / size.height()); int dpi = static_cast(scale * 72.0); -- cgit v1.2.3