summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAleks Kissinger <aleks0@gmail.com>2018-12-18 09:53:00 +0100
committerAleks Kissinger <aleks0@gmail.com>2018-12-18 09:53:00 +0100
commit2332239082db6a33ee66bb08491c1e9cf099f9b6 (patch)
tree4f226e662be2372b874ff8f5fb5a875813889fd5 /src
parent6121b486e168334db70cbbe7a67afe56c0272748 (diff)
preview works
Diffstat (limited to 'src')
-rw-r--r--src/gui/latexprocess.cpp8
-rw-r--r--src/gui/previewwindow.cpp15
2 files changed, 16 insertions, 7 deletions
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 <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);