diff options
author | Jan Holesovsky <kendy@collabora.com> | 2019-10-18 11:19:04 +0200 |
---|---|---|
committer | Tomaž Vajngerl <quikee@gmail.com> | 2020-03-17 22:01:15 +0100 |
commit | 6ac2d66c78d6c080aabfa46157113684c2f3a3b0 (patch) | |
tree | f9f3311931b517eeeca54701aa9dc772ee28698a /offapi/com/sun | |
parent | dc3c59a1d9e9240acfbc1a613115f04f577d1ca4 (diff) |
pdfium: Make Insert -> Image... use VectorGraphicData for PDF.
In principle, the current Svg/Emf/Wmf and PDF handling is trying to
achieve the same thing: Keep the original stream untouched, provide a
replacement graphics, and a kind of rendering.
To hold the data, the Svg/Emf/Wmf and PDF were using different structures
though. This commit consolidatates that, and makes the Insert
-> Image... (for PDF) actually using the VectorGraphicData to hold the
original stream.
This breaks loading the PDF as a document via PDFium - I'll fix it in
the next commit(s).
Change-Id: Iac102f32b757390a03438c165e430283851cc10b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90561
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
Diffstat (limited to 'offapi/com/sun')
-rw-r--r-- | offapi/com/sun/star/graphic/PdfTools.idl | 27 | ||||
-rw-r--r-- | offapi/com/sun/star/graphic/XPdfDecomposer.idl | 39 |
2 files changed, 66 insertions, 0 deletions
diff --git a/offapi/com/sun/star/graphic/PdfTools.idl b/offapi/com/sun/star/graphic/PdfTools.idl new file mode 100644 index 000000000000..b9f2e562dbf2 --- /dev/null +++ b/offapi/com/sun/star/graphic/PdfTools.idl @@ -0,0 +1,27 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#ifndef com_sun_star_graphic_PdfTools_idl +#define com_sun_star_graphic_PdfTools_idl + +#include <com/sun/star/graphic/XPdfDecomposer.idl> + +module com { module sun { module star { module graphic +{ + +/** Service to convert a PDF stream into a bitmap primitive. + */ + +service PdfTools : XPdfDecomposer; + +} ; } ; } ; } ; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/graphic/XPdfDecomposer.idl b/offapi/com/sun/star/graphic/XPdfDecomposer.idl new file mode 100644 index 000000000000..85b38c035c8c --- /dev/null +++ b/offapi/com/sun/star/graphic/XPdfDecomposer.idl @@ -0,0 +1,39 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#ifndef __com_sun_star_graphic_XPdfDecomposer_idl__ +#define __com_sun_star_graphic_XPdfDecomposer_idl__ + +#include <com/sun/star/uno/XInterface.idl> + +module com { module sun { module star { module graphic { + +interface XPrimitive2D; + +/** XPdfDecomposer interface + + This renders a PDF data into a bitmap and returns it as a primitive. + */ +interface XPdfDecomposer : ::com::sun::star::uno::XInterface +{ + /** Retrieve decomposed list - in this case a bitmap with the rendered PDF. + + @param xPdfData + The PDF data. + + @since LibreOffice 7.0 + */ + sequence<XPrimitive2D> getDecomposition([in] sequence<byte> xPdfData); +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |