summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorTomaž Vajngerl <tomaz.vajngerl@collabora.co.uk>2020-03-13 20:04:45 +0100
committerTomaž Vajngerl <quikee@gmail.com>2020-03-18 09:23:15 +0100
commit27ee05f860e8225a41e15e0853fcef00a9d7a621 (patch)
tree277ae811da1551accde88468607d513d411be05e /include
parent9054c36d4ea3bee25fb9a47a96a0ea2cd07148c3 (diff)
pdfium: support for pages when using PDF import with pdfium
Moving PDF to use VectorGraphicData in Graphic has temporary removed the support for showing different PDF pages when opening the PDF using pdfium (LO_IMPORT_USE_PDFIUM=1). This adds the support for back by specifying whcih PDF page to render when creating the VectorGraphicData (and can't be changd afterwards), which is used to create a Graphic and contains the PDF source data array. Change-Id: Ib915216b8d4c0c063d0fead44ff156b1915a35d2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90562 Tested-by: Jenkins Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Diffstat (limited to 'include')
-rw-r--r--include/vcl/graph.hxx2
-rw-r--r--include/vcl/vectorgraphicdata.hxx12
2 files changed, 8 insertions, 6 deletions
diff --git a/include/vcl/graph.hxx b/include/vcl/graph.hxx
index 271de60d1605..6e70f66731ac 100644
--- a/include/vcl/graph.hxx
+++ b/include/vcl/graph.hxx
@@ -204,8 +204,6 @@ public:
const VectorGraphicDataPtr& getVectorGraphicData() const;
- /// Set the page number of the multi-page source this Graphic is rendered from.
- void setPageNumber(sal_Int32 nPageNumber);
/// Get the page number of the multi-page source this Graphic is rendered from.
sal_Int32 getPageNumber() const;
diff --git a/include/vcl/vectorgraphicdata.hxx b/include/vcl/vectorgraphicdata.hxx
index 096c89e1aa56..8ccf45b51e5d 100644
--- a/include/vcl/vectorgraphicdata.hxx
+++ b/include/vcl/vectorgraphicdata.hxx
@@ -70,6 +70,9 @@ private:
// extra:
std::unique_ptr<WmfExternal> mpExternalHeader;
+ // If the vector format has more pages this denotes which page to render
+ sal_Int32 mnPageIndex;
+
// on demand creators
void ensurePdfReplacement();
void ensureReplacement();
@@ -82,10 +85,9 @@ public:
VectorGraphicData(
const VectorGraphicDataArray& rVectorGraphicDataArray,
const OUString& rPath,
- VectorGraphicDataType eVectorDataType);
- VectorGraphicData(
- const OUString& rPath,
- VectorGraphicDataType eVectorDataType);
+ VectorGraphicDataType eVectorDataType,
+ sal_Int32 nPageIndex = -1);
+ VectorGraphicData(const OUString& rPath, VectorGraphicDataType eVectorDataType);
~VectorGraphicData();
/// compare op
@@ -107,6 +109,8 @@ public:
const std::deque< css::uno::Reference< css::graphic::XPrimitive2D > >& getPrimitive2DSequence() const;
const BitmapEx& getReplacement() const;
BitmapChecksum GetChecksum() const;
+
+ sal_Int32 getPageIndex() const { return mnPageIndex; }
};
typedef std::shared_ptr< VectorGraphicData > VectorGraphicDataPtr;