LibreOffice Module sw (master) 1
|
#include <memory>
#include "docxattributeoutput.hxx"
#include "docxhelper.hxx"
#include "docxsdrexport.hxx"
#include "docxexportfilter.hxx"
#include "docxfootnotes.hxx"
#include "writerwordglue.hxx"
#include "ww8par.hxx"
#include <fmtcntnt.hxx>
#include <fmtftn.hxx>
#include <fchrfmt.hxx>
#include <tgrditem.hxx>
#include <fmtruby.hxx>
#include <fmtfollowtextflow.hxx>
#include <fmtanchr.hxx>
#include <breakit.hxx>
#include <redline.hxx>
#include <unoframe.hxx>
#include <textboxhelper.hxx>
#include <rdfhelper.hxx>
#include "wrtww8.hxx"
#include <comphelper/processfactory.hxx>
#include <comphelper/random.hxx>
#include <comphelper/string.hxx>
#include <comphelper/flagguard.hxx>
#include <comphelper/sequence.hxx>
#include <oox/token/namespaces.hxx>
#include <oox/token/tokens.hxx>
#include <oox/export/utils.hxx>
#include <oox/mathml/imexport.hxx>
#include <oox/drawingml/drawingmltypes.hxx>
#include <oox/token/relationship.hxx>
#include <oox/export/vmlexport.hxx>
#include <oox/ole/olehelper.hxx>
#include <editeng/autokernitem.hxx>
#include <editeng/unoprnms.hxx>
#include <editeng/fontitem.hxx>
#include <editeng/tstpitem.hxx>
#include <editeng/spltitem.hxx>
#include <editeng/widwitem.hxx>
#include <editeng/shaditem.hxx>
#include <editeng/brushitem.hxx>
#include <editeng/postitem.hxx>
#include <editeng/wghtitem.hxx>
#include <editeng/kernitem.hxx>
#include <editeng/crossedoutitem.hxx>
#include <editeng/cmapitem.hxx>
#include <editeng/udlnitem.hxx>
#include <editeng/langitem.hxx>
#include <editeng/lspcitem.hxx>
#include <editeng/escapementitem.hxx>
#include <editeng/fhgtitem.hxx>
#include <editeng/colritem.hxx>
#include <editeng/hyphenzoneitem.hxx>
#include <editeng/ulspitem.hxx>
#include <editeng/contouritem.hxx>
#include <editeng/shdditem.hxx>
#include <editeng/emphasismarkitem.hxx>
#include <editeng/twolinesitem.hxx>
#include <editeng/charscaleitem.hxx>
#include <editeng/charrotateitem.hxx>
#include <editeng/charreliefitem.hxx>
#include <editeng/paravertalignitem.hxx>
#include <editeng/pgrditem.hxx>
#include <editeng/frmdiritem.hxx>
#include <editeng/blinkitem.hxx>
#include <editeng/charhiddenitem.hxx>
#include <editeng/editobj.hxx>
#include <editeng/keepitem.hxx>
#include <editeng/borderline.hxx>
#include <sax/tools/converter.hxx>
#include <svx/xdef.hxx>
#include <svx/xfillit0.hxx>
#include <svx/xflclit.hxx>
#include <svx/xflgrit.hxx>
#include <svx/svdouno.hxx>
#include <svx/unobrushitemhelper.hxx>
#include <svl/grabbagitem.hxx>
#include <tools/date.hxx>
#include <tools/datetime.hxx>
#include <tools/datetimeutils.hxx>
#include <svl/whiter.hxx>
#include <rtl/tencinfo.h>
#include <sal/log.hxx>
#include <sot/exchange.hxx>
#include <docufld.hxx>
#include <authfld.hxx>
#include <flddropdown.hxx>
#include <fmtclds.hxx>
#include <fmtinfmt.hxx>
#include <fmtline.hxx>
#include <ftninfo.hxx>
#include <htmltbl.hxx>
#include <lineinfo.hxx>
#include <ndgrf.hxx>
#include <ndole.hxx>
#include <ndtxt.hxx>
#include <pagedesc.hxx>
#include <paratr.hxx>
#include <swmodule.hxx>
#include <swtable.hxx>
#include <txtftn.hxx>
#include <fmtautofmt.hxx>
#include <docsh.hxx>
#include <docary.hxx>
#include <fmtclbl.hxx>
#include <IDocumentSettingAccess.hxx>
#include <IDocumentRedlineAccess.hxx>
#include <grfatr.hxx>
#include <frmatr.hxx>
#include <txtatr.hxx>
#include <frameformats.hxx>
#include <textcontentcontrol.hxx>
#include <formatflysplit.hxx>
#include <o3tl/string_view.hxx>
#include <o3tl/unit_conversion.hxx>
#include <osl/file.hxx>
#include <utility>
#include <vcl/embeddedfontshelper.hxx>
#include <com/sun/star/i18n/ScriptType.hpp>
#include <com/sun/star/i18n/XBreakIterator.hpp>
#include <com/sun/star/chart2/XChartDocument.hpp>
#include <com/sun/star/drawing/ShadingPattern.hpp>
#include <com/sun/star/text/GraphicCrop.hpp>
#include <com/sun/star/embed/EmbedStates.hpp>
#include <com/sun/star/embed/Aspects.hpp>
#include <com/sun/star/text/ControlCharacter.hpp>
#include <algorithm>
#include <cstddef>
#include <stdarg.h>
#include <string_view>
#include <toolkit/helper/vclunohelper.hxx>
#include <unicode/regex.h>
#include <frozen/bits/defines.h>
#include <frozen/bits/elsa_std.h>
#include <frozen/unordered_map.h>
Go to the source code of this file.
Namespaces | |
namespace | docx |
Macros | |
#define | MAX_CELL_IN_WORD 62 |
Functions | |
static bool | lcl_isOnelinerSdt (std::u16string_view rName) |
Are multiple paragraphs disallowed inside this type of SDT? More... | |
static void | checkAndWriteFloatingTables (DocxAttributeOutput &rDocxAttributeOutput) |
static bool | impl_WriteRunText (FSHelperPtr const &pSerializer, sal_Int32 nTextToken, const sal_Unicode *&rBegin, const sal_Unicode *pEnd, bool bMove=true, const OUString &rSymbolFont=OUString()) |
Output sal_Unicode* as a run text (<t>the text</t>). More... | |
static void | impl_borderLine (FSHelperPtr const &pSerializer, sal_Int32 elementToken, const SvxBorderLine *pBorderLine, sal_uInt16 nDist, bool bWriteShadow, const table::BorderLine2 *pStyleProps=nullptr) |
static OutputBorderOptions | lcl_getTableCellBorderOptions (bool bEcma) |
static OutputBorderOptions | lcl_getBoxBorderOptions () |
static void | impl_borders (FSHelperPtr const &pSerializer, const SvxBoxItem &rBox, const OutputBorderOptions &rOptions, std::map< SvxBoxItemLine, css::table::BorderLine2 > &rTableStyleConf, ww8::Frame *pFramePr=nullptr) |
sal_Int32 | DocxStringGetToken (DocxStringTokenMap const *pMap, std::u16string_view rName) |
static rtl::Reference<::sax_fastparser::FastAttributeList > | CreateDocPrAttrList (DocxExport &rExport, int const nAnchorId, std::u16string_view const &rName, std::u16string_view const &rTitle, std::u16string_view const &rDescription) |
static bool | lcl_guessQFormat (const OUString &rName, sal_uInt16 nWwId) |
Guesses if a style created in Writer (no grab-bag) should be qFormat or not. More... | |
static OString | lcl_ConvertNumberingType (sal_Int16 nNumberingType, const SfxItemSet *pOutSet, OString &rFormat, const OString &sDefault="") |
static char | toHexChar (int value) |
static bool | lcl_ListLevelsAreDifferentForExport (const SwNumFormat &rFormat1, const SwNumFormat &rFormat2) |
static void | WriteFootnoteSeparatorHeight (::sax_fastparser::FSHelperPtr const &pSerializer, SwTwips const nHeight) |
static void | impl_WriteTabElement (FSHelperPtr const &pSerializer, const SvxTabStop &rTab, tools::Long tabsOffset) |
rtl::Reference< FastAttributeList > | docx::SurroundToVMLWrap (SwFormatSurround const &rSurround) |
static std::optional< sal_Int32 > | lcl_getDmlAlpha (const SvxBrushItem &rBrush) |
Variables | |
constexpr OUStringLiteral | MSWORD_CH_SHADING_FILL = u"FFFFFF" |
constexpr OUStringLiteral | MSWORD_CH_SHADING_COLOR = u"auto" |
constexpr OUStringLiteral | MSWORD_CH_SHADING_VAL = u"pct15" |
#define MAX_CELL_IN_WORD 62 |
Definition at line 1303 of file docxattributeoutput.cxx.
|
static |
Definition at line 434 of file docxattributeoutput.cxx.
References SwNode::EndOfSectionIndex(), SwFormat::GetAnchor(), SwFormatAnchor::GetAnchorNode(), SwFormat::GetAttrSet(), SwFormat::GetContent(), SwFormatAnchor::GetContentAnchor(), SwFormatContent::GetContentIdx(), DocxAttributeOutput::GetExport(), SwFormat::GetFlySplit(), SwTable::GetFrameFormat(), SfxGrabBagItem::GetGrabBag(), SfxItemSet::GetItem(), SwNodeIndex::GetNode(), SwTableNode::GetTable(), SwNode::GetTableNode(), SwNode::GetTextNode(), SfxBoolItem::GetValue(), SwNode::IsTableNode(), RES_FRMATR_GRABBAG(), and DocxAttributeOutput::WriteFloatingTable().
Referenced by DocxAttributeOutput::StartParagraph().
|
static |
Definition at line 5125 of file docxattributeoutput.cxx.
References oox::core::ECMA_376_1ST_EDITION, DocxExport::GetFilter(), oox::core::FilterBase::getVersion(), and value.
Referenced by DocxAttributeOutput::FlyFrameGraphic(), and DocxAttributeOutput::WritePostponedChart().
sal_Int32 DocxStringGetToken | ( | DocxStringTokenMap const * | pMap, |
std::u16string_view | rName | ||
) |
Definition at line 4757 of file docxattributeoutput.cxx.
References DocxStringTokenMap::nToken, OUStringToOString(), DocxStringTokenMap::pToken, and sName.
Referenced by DocxTableStyleExport::CnfStyle(), DocxAttributeOutput::LatentStyles(), DocxAttributeOutput::TableDefinition(), DocxTableStyleExport::Impl::tableStyleTableCellMar(), DocxTableStyleExport::Impl::tableStyleTcBorder(), DocxTableStyleExport::Impl::tableStyleTcBorders(), and DocxExport::WriteSettings().
|
static |
Definition at line 4220 of file docxattributeoutput.cxx.
References ColorTransparency, msfilter::util::ConvertColor(), FSNS(), o3tl::mm100, sColor, and o3tl::toTwips().
Referenced by DocxAttributeOutput::CharBorder(), and impl_borders().
|
static |
Definition at line 4374 of file docxattributeoutput.cxx.
References OutputBorderOptions::aShadowLocation, OutputBorderOptions::bUseStartEnd, OutputBorderOptions::bWriteDistance, OutputBorderOptions::bWriteTag, IDocumentSettingAccess::get(), SwFormat::GetBox(), SvxBoxItem::GetDistance(), SwFormat::GetDoc(), SwDoc::getIDocumentSettingAccess(), SvxBoxItem::GetLine(), i, impl_borderLine(), INVERT_BORDER_SPACING, OutputBorderOptions::pDistances, and OutputBorderOptions::tag.
Referenced by DocxAttributeOutput::FormatBox(), DocxAttributeOutput::SectionPageBorders(), and DocxAttributeOutput::TableCellProperties().
|
static |
Output sal_Unicode* as a run text (<t>the text</t>).
When bMove is true, update rBegin to point after the end of the text + 1, meaning that it skips one character after the text. This is to make the switch in DocxAttributeOutput::RunText() nicer ;-)
Definition at line 3670 of file docxattributeoutput.cxx.
References FSNS().
Referenced by DocxAttributeOutput::RunText().
|
static |
Definition at line 8849 of file docxattributeoutput.cxx.
References FSNS(), SvxTabStop::GetAdjustment(), SvxTabStop::GetFill(), SvxTabStop::GetTabPos(), and u.
Referenced by DocxAttributeOutput::ParaTabStop().
|
static |
Definition at line 7085 of file docxattributeoutput.cxx.
References SfxItemSet::Get(), SvxLanguageItem::GetLanguage(), LANGUAGE_CHINESE_SIMPLIFIED, RES_CHRATR_CJK_LANGUAGE(), SVX_NUM_ARABIC, SVX_NUM_BITMAP, SVX_NUM_CHAR_SPECIAL, SVX_NUM_CHARS_LOWER_LETTER, SVX_NUM_CHARS_LOWER_LETTER_N, SVX_NUM_CHARS_UPPER_LETTER, SVX_NUM_CHARS_UPPER_LETTER_N, SVX_NUM_ROMAN_LOWER, and SVX_NUM_ROMAN_UPPER.
Referenced by DocxAttributeOutput::NumberingLevel(), DocxAttributeOutput::SectionPageNumbering(), and DocxAttributeOutput::WriteFootnoteEndnotePr().
|
static |
Definition at line 4362 of file docxattributeoutput.cxx.
References OutputBorderOptions::bUseStartEnd, OutputBorderOptions::bWriteDistance, OutputBorderOptions::bWriteTag, and OutputBorderOptions::tag.
Referenced by DocxAttributeOutput::FormatBox(), and DocxAttributeOutput::SectionPageBorders().
|
static |
Definition at line 9466 of file docxattributeoutput.cxx.
References Color::GetAlpha(), SvxBrushItem::GetColor(), and SvxBrushItem::TransparencyToPercent().
Referenced by DocxAttributeOutput::FormatBackground().
|
static |
Definition at line 4350 of file docxattributeoutput.cxx.
References OutputBorderOptions::bUseStartEnd, OutputBorderOptions::bWriteDistance, OutputBorderOptions::bWriteTag, and OutputBorderOptions::tag.
Referenced by DocxAttributeOutput::TableCellProperties().
|
static |
Guesses if a style created in Writer (no grab-bag) should be qFormat or not.
Definition at line 6603 of file docxattributeoutput.cxx.
References o3tl::sorted_vector< typename Value, typename Compare, template< typename, typename > class Find, bool >::find(), ww::stiCaption, ww::stiEmphasis, ww::stiLev1, ww::stiLev9, ww::stiNormal, ww::stiStrong, ww::stiSubtitle, ww::stiTitle, and ww::stiUser.
Referenced by DocxAttributeOutput::StartStyle().
|
static |
Are multiple paragraphs disallowed inside this type of SDT?
Definition at line 406 of file docxattributeoutput.cxx.
References u.
Referenced by DocxAttributeOutput::StartParagraph().
|
static |
Definition at line 7457 of file docxattributeoutput.cxx.
References SwFormat::GetAttrSet(), SwNumFormat::GetCharFormat(), SwNumFormat::SetCharFormat(), and SwNumFormat::SetCharFormatName().
Referenced by DocxAttributeOutput::OverrideNumberingDefinition().
|
static |
Definition at line 7323 of file docxattributeoutput.cxx.
References value.
Referenced by DocxAttributeOutput::EmbedFontStyle().
|
static |
Definition at line 8615 of file docxattributeoutput.cxx.
References FSNS().
Referenced by DocxAttributeOutput::FootnotesEndnotes().
|
constexpr |
Definition at line 8010 of file docxattributeoutput.cxx.
Referenced by DocxAttributeOutput::CharBackground().
|
constexpr |
Definition at line 8009 of file docxattributeoutput.cxx.
Referenced by DocxAttributeOutput::CharBackground().
|
constexpr |
Definition at line 8011 of file docxattributeoutput.cxx.
Referenced by DocxAttributeOutput::CharBackground().