Add proper PDF creator metadata
This commit is contained in:
committed by
WandererFan
parent
58d64e2442
commit
5ac886fa0e
@@ -36,6 +36,7 @@
|
||||
|
||||
#include <boost/regex.hpp>
|
||||
|
||||
#include <App/Application.h>
|
||||
#include <App/DocumentObjectPy.h>
|
||||
#include <App/DocumentPy.h>
|
||||
#include <App/PropertyFile.h>
|
||||
@@ -777,6 +778,15 @@ PyObject* ApplicationPy::sExport(PyObject * /*self*/, PyObject *args)
|
||||
printer.setPdfVersion(QPagedPaintDevice::PdfVersion_A1b);
|
||||
printer.setOutputFormat(QPrinter::PdfFormat);
|
||||
printer.setOutputFileName(fileName);
|
||||
|
||||
QString appname = QCoreApplication::applicationName();
|
||||
auto config = App::Application::Config();
|
||||
QString major = QString::fromUtf8(config["BuildVersionMajor"].c_str());
|
||||
QString minor = QString::fromUtf8(config["BuildVersionMinor"].c_str());
|
||||
QString point = QString::fromUtf8(config["BuildVersionPoint"].c_str());
|
||||
QString suffix = QString::fromUtf8(config["BuildVersionSuffix"].c_str());
|
||||
printer.setCreator(QString::fromUtf8("%1 %2.%3.%4%5").arg(appname, major, minor, point, suffix));
|
||||
|
||||
view->print(&printer);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -56,6 +56,7 @@
|
||||
#include <Base/Exception.h>
|
||||
#include <Base/Interpreter.h>
|
||||
#include <Base/Parameter.h>
|
||||
#include <App/Application.h>
|
||||
|
||||
|
||||
using namespace Gui;
|
||||
@@ -511,6 +512,15 @@ void EditorView::printPdf()
|
||||
printer.setPdfVersion(QPagedPaintDevice::PdfVersion_A1b);
|
||||
printer.setOutputFormat(QPrinter::PdfFormat);
|
||||
printer.setOutputFileName(filename);
|
||||
|
||||
QString appname = QCoreApplication::applicationName();
|
||||
auto config = App::Application::Config();
|
||||
QString major = QString::fromUtf8(config["BuildVersionMajor"].c_str());
|
||||
QString minor = QString::fromUtf8(config["BuildVersionMinor"].c_str());
|
||||
QString point = QString::fromUtf8(config["BuildVersionPoint"].c_str());
|
||||
QString suffix = QString::fromUtf8(config["BuildVersionSuffix"].c_str());
|
||||
printer.setCreator(QString::fromUtf8("%1 %2.%3.%4%5").arg(appname, major, minor, point, suffix));
|
||||
|
||||
d->textEdit->document()->print(&printer);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -39,6 +39,7 @@
|
||||
|
||||
#include <Base/Interpreter.h>
|
||||
#include <App/Document.h>
|
||||
#include <App/Application.h>
|
||||
|
||||
#include "MDIView.h"
|
||||
#include "MDIViewPy.h"
|
||||
@@ -264,6 +265,15 @@ void MDIView::printPdf()
|
||||
printer.setPdfVersion(QPagedPaintDevice::PdfVersion_A1b);
|
||||
printer.setOutputFormat(QPrinter::PdfFormat);
|
||||
printer.setOutputFileName(filename);
|
||||
|
||||
QString appname = QCoreApplication::applicationName();
|
||||
auto config = App::Application::Config();
|
||||
QString major = QString::fromUtf8(config["BuildVersionMajor"].c_str());
|
||||
QString minor = QString::fromUtf8(config["BuildVersionMinor"].c_str());
|
||||
QString point = QString::fromUtf8(config["BuildVersionPoint"].c_str());
|
||||
QString suffix = QString::fromUtf8(config["BuildVersionSuffix"].c_str());
|
||||
printer.setCreator(QString::fromUtf8("%1 %2.%3.%4%5").arg(appname, major, minor, point, suffix));
|
||||
|
||||
print(&printer);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -50,6 +50,8 @@
|
||||
# include <Inventor/SoPickedPoint.h>
|
||||
#endif
|
||||
|
||||
|
||||
#include <App/Application.h>
|
||||
#include <App/Document.h>
|
||||
#include <App/GeoFeature.h>
|
||||
#include <Base/Builder3D.h>
|
||||
@@ -257,6 +259,15 @@ void View3DInventor::printPdf()
|
||||
printer.setOutputFormat(QPrinter::PdfFormat);
|
||||
printer.setPageOrientation(QPageLayout::Landscape);
|
||||
printer.setOutputFileName(filename);
|
||||
|
||||
QString appname = QCoreApplication::applicationName();
|
||||
auto config = App::Application::Config();
|
||||
QString major = QString::fromUtf8(config["BuildVersionMajor"].c_str());
|
||||
QString minor = QString::fromUtf8(config["BuildVersionMinor"].c_str());
|
||||
QString point = QString::fromUtf8(config["BuildVersionPoint"].c_str());
|
||||
QString suffix = QString::fromUtf8(config["BuildVersionSuffix"].c_str());
|
||||
printer.setCreator(QString::fromUtf8("%1 %2.%3.%4%5").arg(appname, major, minor, point, suffix));
|
||||
|
||||
print(&printer);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -529,6 +529,15 @@ void DrawingView::printPdf()
|
||||
printer.setFullPage(true);
|
||||
printer.setOutputFormat(QPrinter::PdfFormat);
|
||||
printer.setOutputFileName(filename);
|
||||
|
||||
QString appname = QCoreApplication::applicationName();
|
||||
auto config = App::Application::Config();
|
||||
QString major = QString::fromUtf8(config["BuildVersionMajor"].c_str());
|
||||
QString minor = QString::fromUtf8(config["BuildVersionMinor"].c_str());
|
||||
QString point = QString::fromUtf8(config["BuildVersionPoint"].c_str());
|
||||
QString suffix = QString::fromUtf8(config["BuildVersionSuffix"].c_str());
|
||||
printer.setCreator(QString::fromUtf8("%1 Drawing %2.%3.%4%5").arg(appname, major, minor, point, suffix));
|
||||
|
||||
printer.setPageOrientation(m_orientation);
|
||||
QList<QListWidgetItem*> items = listWidget->selectedItems();
|
||||
if (items.size() == 1) {
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
#include "PreCompiled.h"
|
||||
|
||||
#ifndef _PreComp_
|
||||
#include <QApplication>
|
||||
#include <QPalette>
|
||||
#include <QPrintDialog>
|
||||
#include <QPrintPreviewDialog>
|
||||
@@ -30,6 +31,7 @@
|
||||
#include <QTextDocument>
|
||||
#endif
|
||||
|
||||
#include <App/Application.h>
|
||||
#include <App/DocumentObject.h>
|
||||
#include <App/Range.h>
|
||||
#include <Base/Tools.h>
|
||||
@@ -307,6 +309,15 @@ void SheetView::printPdf()
|
||||
printer.setPageOrientation(QPageLayout::Landscape);
|
||||
printer.setOutputFormat(QPrinter::PdfFormat);
|
||||
printer.setOutputFileName(filename);
|
||||
|
||||
QString appname = QCoreApplication::applicationName();
|
||||
auto config = App::Application::Config();
|
||||
QString major = QString::fromUtf8(config["BuildVersionMajor"].c_str());
|
||||
QString minor = QString::fromUtf8(config["BuildVersionMinor"].c_str());
|
||||
QString point = QString::fromUtf8(config["BuildVersionPoint"].c_str());
|
||||
QString suffix = QString::fromUtf8(config["BuildVersionSuffix"].c_str());
|
||||
printer.setCreator(QString::fromUtf8("%1 Spreadsheet %2.%3.%4%5").arg(appname, major, minor, point, suffix));
|
||||
|
||||
print(&printer);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -188,6 +188,15 @@ void PagePrinter::printAllPdf(QPrinter* printer, App::Document* doc)
|
||||
pdfWriter.setPdfVersion(QPagedPaintDevice::PdfVersion_A1b);
|
||||
|
||||
pdfWriter.setTitle(documentName);
|
||||
|
||||
QString appname = QCoreApplication::applicationName();
|
||||
auto config = App::Application::Config();
|
||||
QString major = QString::fromUtf8(config["BuildVersionMajor"].c_str());
|
||||
QString minor = QString::fromUtf8(config["BuildVersionMinor"].c_str());
|
||||
QString point = QString::fromUtf8(config["BuildVersionPoint"].c_str());
|
||||
QString suffix = QString::fromUtf8(config["BuildVersionSuffix"].c_str());
|
||||
pdfWriter.setCreator(QString::fromUtf8("%1 TechDraw %2.%3.%4%5").arg(appname, major, minor, point, suffix));
|
||||
|
||||
pdfWriter.setResolution(printer->resolution());
|
||||
QPageLayout pageLayout = printer->pageLayout();
|
||||
// we want to set the layout for the first page before we make the painter(&pdfWriter) or the layout for the first page will
|
||||
@@ -356,6 +365,14 @@ void PagePrinter::printPdf(ViewProviderPage* vpPage, const std::string& file)
|
||||
pdfWriter.setTitle(documentName);
|
||||
// default pdfWriter dpi is 1200.
|
||||
|
||||
QString appname = QCoreApplication::applicationName();
|
||||
auto config = App::Application::Config();
|
||||
QString major = QString::fromUtf8(config["BuildVersionMajor"].c_str());
|
||||
QString minor = QString::fromUtf8(config["BuildVersionMinor"].c_str());
|
||||
QString point = QString::fromUtf8(config["BuildVersionPoint"].c_str());
|
||||
QString suffix = QString::fromUtf8(config["BuildVersionSuffix"].c_str());
|
||||
pdfWriter.setCreator(QString::fromUtf8("%1 TechDraw %2.%3.%4%5").arg(appname, major, minor, point, suffix));
|
||||
|
||||
// set up the page layout
|
||||
auto dPage = vpPage->getDrawPage();
|
||||
double width = A4Heightmm; // default to A4 Landscape 297 x 210
|
||||
|
||||
Reference in New Issue
Block a user