16 #ifndef QGSABSTRACTGEOPDFEXPORTER_H 17 #define QGSABSTRACTGEOPDFEXPORTER_H 19 #include "qgis_core.h" 21 #include <QTemporaryDir> 31 class QgsGeoPdfRenderedFeatureHandler;
62 static bool geoPDFCreationAvailable();
70 static QString geoPDFAvailabilityExplanation();
95 , renderedBounds( renderedBounds )
144 : pagePoint( pagePoint )
145 , geoPoint( geoPoint )
227 bool useIso32000ExtensionFormatGeoreferencing =
true;
236 bool useOgcBestPracticeFormatGeoreferencing =
false;
241 bool includeFeatures =
true;
270 bool finalize(
const QList< QgsAbstractGeoPdfExporter::ComponentLayerDetail > &components,
const QString &destinationFile,
const ExportDetails &details );
280 QString generateTemporaryFilepath(
const QString &filename )
const;
312 QMap< QString, QMap< QString, QgsFeatureList > > mCollatedFeatures;
319 QList< VectorComponentDetail > mVectorComponents;
321 QString mErrorMessage;
322 QTemporaryDir mTemporaryDir;
324 bool saveTemporaryLayers();
326 QString createCompositionXml(
const QList< QgsAbstractGeoPdfExporter::ComponentLayerDetail > &components,
const ExportDetails &details );
328 friend class TestQgsLayoutGeoPdfExport;
329 friend class TestQgsGeoPdfExport;
332 #endif //QGSABSTRACTGEOPDFEXPORTER_H Abstract base class for GeoPDF exporters.
QList< QgsAbstractGeoPdfExporter::GeoReferencedSection > georeferencedSections
List of georeferenced sections.
A rectangle specified with double values.
QString author
Metadata author tag.
QString mapLayerId
Associated map layer ID, or an empty string if this component layer is not associated with a map laye...
ControlPoint(const QgsPointXY &pagePoint, const QgsPointXY &geoPoint)
Constructor for ControlPoint, at the specified pagePoint (in millimeters) and geoPoint (in CRS units)...
A class to represent a 2D point.
QgsGeometry renderedBounds
Bounds, in PDF units, of rendered feature.
QString group
Optional layer group name.
QgsAbstractMetadataBase::KeywordMap keywords
Metadata keyword map.
A geometry is the spatial representation of a feature.
QString displayAttribute
Field name for display.
QString sourceVectorLayer
Layer name in vector dataset to use as the source.
QSizeF pageSizeMm
Page size, in millimeters.
QMap< QString, QString > customLayerTreeGroups
Optional map of map layer ID to custom logical layer tree group in created PDF file.
The feature class encapsulates a single feature including its id, geometry and a list of field/values...
QDateTime creationDateTime
Metadata creation datetime.
QString mapLayerId
Associated map layer ID.
Contains details of a control point used during georeferencing GeoPDF outputs.
QString creator
Metadata creator tag.
QgsFeature feature
Rendered feature.
RenderedFeature(const QgsFeature &feature, const QgsGeometry &renderedBounds)
Constructor for RenderedFeature.
QList< QgsAbstractGeoPdfExporter::ControlPoint > controlPoints
List of control points corresponding to this georeferenced section.
QgsCoordinateReferenceSystem crs
Coordinate reference system for georeferenced section.
Contains information about a feature rendered inside the PDF.
QString sourceVectorPath
File path to the (already created) vector dataset to use as the source for this component layer...
QString subject
Metadata subject tag.
Contains information relating to a single PDF layer in the GeoPDF export.
QString errorMessage()
Returns the last error message encountered during the export.
QgsRectangle pageBoundsMm
Bounds of the georeferenced section on the page, in millimeters.
QString group
Optional group name, for arranging layers in top-level groups.
Contains details of a particular input component to be used during PDF composition.
QString name
User-friendly name for the generated PDF layer.
QgsPolygon pageBoundsPolygon
Bounds of the georeferenced section on the page, in millimeters, as a free-form polygon.
QString title
Metadata title tag.
This class represents a coordinate reference system (CRS).
QString sourcePdfPath
File path to the (already created) PDF to use as the source for this component layer.
QString producer
Metadata producer tag.
QgsPointXY pagePoint
Coordinate on the page of the control point, in millimeters.
QgsPointXY geoPoint
Georeferenced coordinate of the control point, in CRS units.
QString name
User-friendly name for the generated PDF layer.