LibreOffice Module oox (master) 1
textcharacterproperties.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 *
9 * This file incorporates work covered by the following license notice:
10 *
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18 */
19
20#ifndef INCLUDED_OOX_DRAWINGML_TEXTCHARACTERPROPERTIES_HXX
21#define INCLUDED_OOX_DRAWINGML_TEXTCHARACTERPROPERTIES_HXX
22
23#include <oox/helper/helper.hxx>
27
30
31namespace oox { class PropertySet; }
32
33namespace oox::drawingml {
34
35
37{
48 std::optional< OUString > moLang;
49 std::optional< sal_Int32 > moHeight;
51 std::optional< double > moFontScale;
52 std::optional< sal_Int32 > moSpacing;
53 std::optional< sal_Int32 > moUnderline;
54 std::optional< sal_Int32 > moBaseline;
55 std::optional< sal_Int32 > moStrikeout;
56 std::optional< sal_Int32 > moCaseMap;
57 std::optional< bool > moBold;
58 std::optional< bool > moItalic;
59 std::optional< bool > moUnderlineLineFollowText;
60 std::optional< bool > moUnderlineFillFollowText;
61 std::optional<LineProperties> moTextOutlineProperties;
62
66
67 std::vector<css::beans::PropertyValue> maTextEffectsProperties;
68
70 void assignUsed( const TextCharacterProperties& rSourceProps );
71
75 float getCharHeightPoints( float fDefault ) const;
76
78 void pushToPropMap(
79 PropertyMap& rPropMap,
80 const ::oox::core::XmlFilterBase& rFilter ) const;
81
83 void pushToPropSet(
84 PropertySet& rPropSet,
85 const ::oox::core::XmlFilterBase& rFilter ) const;
86
88};
89
90
91} // namespace oox::drawingml
92
93#endif
94
95/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
A helper that maps property identifiers to property values.
Definition: propertymap.hxx:52
A wrapper for a UNO property set.
Definition: propertyset.hxx:58
carries a CT_TextFont
Definition: textfont.hxx:33
void pushToPropMap(PropertyMap &rPropMap, const ::oox::core::XmlFilterBase &rFilter) const
Writes the properties to the passed property map.
void pushToPropSet(PropertySet &rPropSet, const ::oox::core::XmlFilterBase &rFilter) const
Writes the properties to the passed property set.
std::optional< double > moFontScale
If a font scale has to be applied manually to moHeight.
std::vector< css::beans::PropertyValue > maTextEffectsProperties
bool mbHasVisualRunProperties
Set if there was a property set that alters run visually during import.
float getCharHeightPoints(float fDefault) const
Returns the current character size.
void assignUsed(const TextCharacterProperties &rSourceProps)
Overwrites all members that are explicitly set in rSourceProps.
std::optional< LineProperties > moTextOutlineProperties