diff options
Diffstat (limited to 'writerperfect/source/writer/EPUBExportFilter.cxx')
-rw-r--r-- | writerperfect/source/writer/EPUBExportFilter.cxx | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/writerperfect/source/writer/EPUBExportFilter.cxx b/writerperfect/source/writer/EPUBExportFilter.cxx index ef2ba333e55b..f30f18bb6735 100644 --- a/writerperfect/source/writer/EPUBExportFilter.cxx +++ b/writerperfect/source/writer/EPUBExportFilter.cxx @@ -43,10 +43,16 @@ sal_Int32 EPUBExportFilter::GetDefaultSplitMethod() return libepubgen::EPUB_SPLIT_METHOD_HEADING; } +sal_Int32 EPUBExportFilter::GetDefaultStylesMethod() +{ + return libepubgen::EPUB_STYLES_METHOD_INLINE; +} + sal_Bool EPUBExportFilter::filter(const uno::Sequence<beans::PropertyValue> &rDescriptor) { sal_Int32 nVersion = EPUBExportFilter::GetDefaultVersion(); sal_Int32 nSplitMethod = EPUBExportFilter::GetDefaultSplitMethod(); + sal_Int32 nStylesMethod = EPUBExportFilter::GetDefaultStylesMethod(); uno::Sequence<beans::PropertyValue> aFilterData; for (sal_Int32 i = 0; i < rDescriptor.getLength(); ++i) { @@ -63,6 +69,8 @@ sal_Bool EPUBExportFilter::filter(const uno::Sequence<beans::PropertyValue> &rDe aFilterData[i].Value >>= nVersion; else if (aFilterData[i].Name == "EPUBSplitMethod") aFilterData[i].Value >>= nSplitMethod; + else if (aFilterData[i].Name == "EPUBStylesMethod") + aFilterData[i].Value >>= nStylesMethod; } // Build the export filter chain: the package has direct access to the ZIP @@ -74,6 +82,9 @@ sal_Bool EPUBExportFilter::filter(const uno::Sequence<beans::PropertyValue> &rDe , nVersion #endif ); +#if LIBEPUBGEN_VERSION_SUPPORT + aGenerator.setStylesMethod(static_cast<libepubgen::EPUBStylesMethod>(nStylesMethod)); +#endif uno::Reference<xml::sax::XDocumentHandler> xExportHandler(new exp::XMLImport(aGenerator)); uno::Reference<lang::XInitialization> xInitialization(mxContext->getServiceManager()->createInstanceWithContext("com.sun.star.comp.Writer.XMLOasisExporter", mxContext), uno::UNO_QUERY); |