LibreOffice Module sd (master) 1
pptx-stylesheet.cxx
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#include "epptbase.hxx"
21#include "epptdef.hxx"
22#include "text.hxx"
23#include <tools/color.hxx>
25#include <editeng/svxenum.hxx>
26#include <com/sun/star/beans/XPropertySet.hpp>
27
28using namespace ::com::sun::star;
29
31{
32 sal_uInt16 nFontHeight = 24;
33
34 for ( int nDepth = 0; nDepth < 5; nDepth++ )
35 {
36 PPTExCharLevel& rLev = maCharLevel[ nDepth ];
37 switch ( nInstance )
38 {
41 nFontHeight = 44;
42 break;
47 {
48 switch ( nDepth )
49 {
50 case 0 : nFontHeight = 32; break;
51 case 1 : nFontHeight = 28; break;
52 case 2 : nFontHeight = 24; break;
53 default :nFontHeight = 20; break;
54 }
55 }
56 break;
58 nFontHeight = 12;
59 break;
62 nFontHeight = 24;
63 break;
64 }
65 rLev.mnFlags = 0;
66 rLev.mnFont = 0;
67 rLev.mnAsianOrComplexFont = 0xffff;
68 rLev.mnFontHeight = nFontHeight;
69 rLev.mnFontColor = 0;
70 rLev.mnEscapement = 0;
71 }
72}
73
74void PPTExCharSheet::SetStyleSheet( const css::uno::Reference< css::beans::XPropertySet > & rXPropSet,
75 FontCollection& rFontCollection, int nLevel )
76{
77 PortionObj aPortionObj( rXPropSet, rFontCollection );
78
79 PPTExCharLevel& rLev = maCharLevel[ nLevel ];
80
81 if ( aPortionObj.meCharColor == css::beans::PropertyState_DIRECT_VALUE )
83 if ( aPortionObj.meCharEscapement == css::beans::PropertyState_DIRECT_VALUE )
84 rLev.mnEscapement = aPortionObj.mnCharEscapement;
85 if ( aPortionObj.meCharHeight == css::beans::PropertyState_DIRECT_VALUE )
86 rLev.mnFontHeight = aPortionObj.mnCharHeight;
87 if ( aPortionObj.meFontName == css::beans::PropertyState_DIRECT_VALUE )
88 rLev.mnFont = aPortionObj.mnFont;
89 if ( aPortionObj.meAsianOrComplexFont == css::beans::PropertyState_DIRECT_VALUE )
91 rLev.mnFlags = aPortionObj.mnCharAttr;
92}
93
94void PPTExCharSheet::Write( SvStream& rSt, sal_uInt16 nLev, bool bSimpleText,
95 const css::uno::Reference< css::beans::XPropertySet > & rPagePropSet )
96{
97 const PPTExCharLevel& rLev = maCharLevel[ nLev ];
98
99 sal_uInt32 nCharFlags = 0xefffff;
100 if ( bSimpleText )
101 nCharFlags = 0x7ffff;
102
103 rSt.WriteUInt32( nCharFlags )
104 .WriteUInt16( rLev.mnFlags )
105 .WriteUInt16( rLev.mnFont );
106
107 Color nFontColor = rLev.mnFontColor;
108 if ( nFontColor == COL_AUTO )
109 {
110 bool bIsDark = false;
111 css::uno::Any aAny;
112 if ( PropValue::GetPropertyValue( aAny, rPagePropSet, "IsBackgroundDark", true ) )
113 aAny >>= bIsDark;
114 nFontColor = Color(ColorTransparency, bIsDark ? 0xffffff : 0x000000);
115 }
116 nFontColor.SetAlpha(1);
117 if ( bSimpleText )
118 {
119 rSt.WriteUInt16( rLev.mnFontHeight )
120 .WriteUInt32( sal_uInt32(nFontColor) );
121 }
122 else
123 {
125 .WriteUInt16( 0xffff ) // unknown
126 .WriteUInt16( 0xffff ) // unknown
128 .WriteUInt32( sal_uInt32(nFontColor) )
129 .WriteUInt16( rLev.mnEscapement );
130 }
131}
132
133PPTExParaSheet::PPTExParaSheet( int nInstance, sal_uInt16 nDefaultTab, PPTExBulletProvider* pProv ) :
134 pBuProv ( pProv ),
135 mnInstance ( nInstance )
136{
137 bool bHasBullet = false;
138
139 sal_uInt16 nUpperDist = 0;
140 sal_uInt16 nBulletChar = 0x2022;
141 sal_uInt16 nBulletOfs = 0;
142 sal_uInt16 nTextOfs = 0;
143
144 for ( int nDepth = 0; nDepth < 5; nDepth++ )
145 {
146 PPTExParaLevel& rLev = maParaLevel[ nDepth ];
147 switch ( nInstance )
148 {
149 case EPP_TEXTTYPE_Title :
151 break;
152 case EPP_TEXTTYPE_Body :
156 {
157 bHasBullet = true;
158 nUpperDist = 0x14;
159 }
160 break;
161 case EPP_TEXTTYPE_Notes :
162 nUpperDist = 0x1e;
163 break;
164
165 }
166 switch ( nDepth )
167 {
168 case 0 :
169 {
170 nBulletChar = 0x2022;
171 nBulletOfs = 0;
172 nTextOfs = bHasBullet ? 0xd8 : 0;
173 }
174 break;
175 case 1 :
176 {
177 nBulletChar = 0x2013;
178 nBulletOfs = 0x120;
179 nTextOfs = 0x1d4;
180 }
181 break;
182 case 2 :
183 {
184 nBulletChar = 0x2022;
185 nBulletOfs = 0x240;
186 nTextOfs = 0x2d0;
187 }
188 break;
189 case 3 :
190 {
191 nBulletChar = 0x2013;
192 nBulletOfs = 0x360;
193 nTextOfs = 0x3f0;
194 }
195 break;
196 case 4 :
197 {
198 nBulletChar = 0xbb;
199 nBulletOfs = 0x480;
200 nTextOfs = 0x510;
201 }
202 break;
203 }
204 rLev.mbIsBullet = bHasBullet;
205 rLev.mnBulletChar = nBulletChar;
206 rLev.mnBulletFont = 0;
207 rLev.mnBulletHeight = 100;
208 rLev.mnBulletColor = 0;
209 rLev.mnAdjust = 0;
210 rLev.mnLineFeed = 100;
211 rLev.mnLowerDist = 0;
212 rLev.mnUpperDist = nUpperDist;
213 rLev.mnTextOfs = nTextOfs;
214 rLev.mnBulletOfs = nBulletOfs;
215 rLev.mnDefaultTab = nDefaultTab;
216 rLev.mnAsianSettings = 2;
217 rLev.mnBiDi = 0;
218
219 rLev.mbExtendedBulletsUsed = false;
220 rLev.mnBulletId = 0xffff;
221 rLev.mnBulletStart = 0;
222 rLev.mnMappedNumType = 0;
223 rLev.mnNumberingType = 0;
224 }
225}
226
227void PPTExParaSheet::SetStyleSheet( const css::uno::Reference< css::beans::XPropertySet > & rXPropSet,
228 FontCollection& rFontCollection, int nLevel, const PPTExCharLevel& rCharLevel )
229{
230 ParagraphObj aParagraphObj( rXPropSet, pBuProv );
231 aParagraphObj.CalculateGraphicBulletSize( rCharLevel.mnFontHeight );
232 PPTExParaLevel& rLev = maParaLevel[ nLevel ];
233
234 if ( aParagraphObj.meTextAdjust == css::beans::PropertyState_DIRECT_VALUE )
235 rLev.mnAdjust = aParagraphObj.mnTextAdjust;
236 if ( aParagraphObj.meLineSpacing == css::beans::PropertyState_DIRECT_VALUE )
237 {
238 sal_Int16 nLineSpacing = aParagraphObj.mnLineSpacing;
239 if ( nLineSpacing > 0 ) // if nLinespacing is < 0 the linespacing is an absolute spacing
240 {
241 bool bFixedLineSpacing = false;
242 uno::Any aAny = rXPropSet->getPropertyValue("FontIndependentLineSpacing");
243 if( !(aAny >>= bFixedLineSpacing) || !bFixedLineSpacing )
244 {
245 const FontCollectionEntry* pDesc = rFontCollection.GetById( rCharLevel.mnFont );
246 if ( pDesc )
247 nLineSpacing = static_cast<sal_Int16>( static_cast<double>(nLineSpacing) * pDesc->Scaling + 0.5 );
248 }
249 }
250 else
251 {
252 if ( rCharLevel.mnFontHeight > static_cast<sal_uInt16>( static_cast<double>(-nLineSpacing) * 0.001 * 72.0 / 2.54 ) ) // 1/100mm to point
253 {
254 const FontCollectionEntry* pDesc = rFontCollection.GetById( rCharLevel.mnFont );
255 if ( pDesc )
256 nLineSpacing = static_cast<sal_Int16>( 100.0 * pDesc->Scaling + 0.5 );
257 else
258 nLineSpacing = 100;
259 }
260 else
261 nLineSpacing = static_cast<sal_Int16>(convertMm100ToMasterUnit(nLineSpacing));
262 }
263 rLev.mnLineFeed = nLineSpacing;
264 }
265 if ( aParagraphObj.meLineSpacingBottom == css::beans::PropertyState_DIRECT_VALUE )
266 rLev.mnLowerDist = aParagraphObj.mnLineSpacingBottom;
267 if ( aParagraphObj.meLineSpacingTop == css::beans::PropertyState_DIRECT_VALUE )
268 rLev.mnUpperDist = aParagraphObj.mnLineSpacingTop;
269 if ( aParagraphObj.meForbiddenRules == css::beans::PropertyState_DIRECT_VALUE )
270 {
271 rLev.mnAsianSettings &=~1;
272 if ( aParagraphObj.mbForbiddenRules )
273 rLev.mnAsianSettings |= 1;
274 }
275 if ( aParagraphObj.meParagraphPunctation == css::beans::PropertyState_DIRECT_VALUE )
276 {
277 rLev.mnAsianSettings &=~4;
278 if ( aParagraphObj.mbParagraphPunctation )
279 rLev.mnAsianSettings |= 4;
280 }
281
282 if ( aParagraphObj.meBiDi == css::beans::PropertyState_DIRECT_VALUE )
283 rLev.mnBiDi = aParagraphObj.mnBiDi;
284
285 rLev.mbIsBullet = aParagraphObj.mbIsBullet; //( ( aParagraphObj.nBulletFlags & 1 ) != 0 );
286
287 if ( nLevel )
288 return;
289
290 if (!(aParagraphObj.bExtendedParameters &&
291 aParagraphObj.meBullet == css::beans::PropertyState_DIRECT_VALUE))
292 return;
293
294 for ( sal_Int16 i = 0; i < 5; i++ )
295 {
296 PPTExParaLevel& rLevel = maParaLevel[ i ];
297 if ( i )
298 aParagraphObj.ImplGetNumberingLevel( pBuProv, i, false, false );
299 rLevel.mnTextOfs = aParagraphObj.nTextOfs;
300 rLevel.mnBulletOfs = static_cast<sal_uInt16>(aParagraphObj.nBulletOfs);
301 rLevel.mnBulletChar = aParagraphObj.cBulletId;
302 FontCollectionEntry aFontDescEntry( aParagraphObj.aFontDesc.Name, aParagraphObj.aFontDesc.Family,
303 aParagraphObj.aFontDesc.Pitch, aParagraphObj.aFontDesc.CharSet );
304 rLevel.mnBulletFont = static_cast<sal_uInt16>(rFontCollection.GetId( aFontDescEntry ));
305 rLevel.mnBulletHeight = aParagraphObj.nBulletRealSize;
306 rLevel.mnBulletColor = aParagraphObj.nBulletColor;
307
308 rLevel.mbExtendedBulletsUsed = aParagraphObj.bExtendedBulletsUsed;
309 rLevel.mnBulletId = aParagraphObj.nBulletId;
310 rLevel.mnNumberingType = aParagraphObj.nNumberingType;
311 rLevel.mnBulletStart = aParagraphObj.nStartWith;
312 rLevel.mnMappedNumType = aParagraphObj.nMappedNumType;
313 }
314}
315
316void PPTExParaSheet::Write( SvStream& rSt, sal_uInt16 nLev, bool bSimpleText,
317 const css::uno::Reference< css::beans::XPropertySet > & rPagePropSet )
318{
319 const PPTExParaLevel& rLev = maParaLevel[ nLev ];
320
321 if ( maParaLevel[ 0 ].mbExtendedBulletsUsed || maParaLevel[ 1 ].mbExtendedBulletsUsed ||
322 maParaLevel[ 2 ].mbExtendedBulletsUsed || maParaLevel[ 3 ].mbExtendedBulletsUsed ||
323 maParaLevel[ 4 ].mbExtendedBulletsUsed )
324 {
325 SvStream& rOut = pBuProv->aBuExMasterStream;
326 if ( !nLev )
327 {
329 .WriteUInt32( 5 * 16 + 2 )
330 .WriteUInt16( 5 ); // depth
331 }
332 sal_uInt16 nBulletId = rLev.mnBulletId;
333 if ( rLev.mnNumberingType != SVX_NUM_BITMAP )
334 nBulletId = 0xffff;
335 rOut.WriteUInt32( 0x03800000 )
336 .WriteUInt16( nBulletId )
339 .WriteUInt32( 0 );
340 }
341
342 sal_uInt32 nParaFlags = 0x3ffdff;
343 sal_uInt16 nBulletFlags = ( rLev.mbIsBullet ) ? 0xf : 0xe;
344
345 if ( nLev )
346 nParaFlags &= 0x207fff;
347 if ( bSimpleText )
348 nParaFlags &= 0x7fff;
349 sal_uInt32 nBulletColor = rLev.mnBulletColor;
350 if ( nBulletColor == sal_uInt32(COL_AUTO) )
351 {
352 bool bIsDark = false;
353 css::uno::Any aAny;
354 if ( PropValue::GetPropertyValue( aAny, rPagePropSet, "IsBackgroundDark", true ) )
355 aAny >>= bIsDark;
356 nBulletColor = bIsDark ? 0xffffff : 0x000000;
357 }
358 nBulletColor &= 0xffffff;
359 nBulletColor |= 0xfe000000;
360 rSt.WriteUInt32( nParaFlags )
361 .WriteUInt16( nBulletFlags )
365 .WriteUInt32( nBulletColor )
366 .WriteUInt16( rLev.mnAdjust )
367 .WriteUInt16( rLev.mnLineFeed )
368 .WriteUInt16( rLev.mnUpperDist )
369 .WriteUInt16( rLev.mnLowerDist )
370 .WriteUInt16( rLev.mnTextOfs )
371 .WriteUInt16( rLev.mnBulletOfs );
372
373 if ( bSimpleText || nLev )
374 {
375 if ( nParaFlags & 0x200000 )
376 rSt.WriteUInt16( rLev.mnBiDi );
377 }
378 else
379 {
380 rSt.WriteUInt16( rLev.mnDefaultTab )
381 .WriteUInt16( 0 )
382 .WriteUInt16( 0 )
384 .WriteUInt16( rLev.mnBiDi );
385 }
386}
387
388PPTExStyleSheet::PPTExStyleSheet( sal_uInt16 nDefaultTab, PPTExBulletProvider* pBuProv )
389{
390 for ( int nInstance = EPP_TEXTTYPE_Title; nInstance <= EPP_TEXTTYPE_QuarterBody; nInstance++ )
391 {
392 if (nInstance != EPP_TEXTTYPE_notUsed)
393 {
394 mpParaSheet[ nInstance ].reset(new PPTExParaSheet( nInstance, nDefaultTab, pBuProv ));
395 mpCharSheet[ nInstance ].reset(new PPTExCharSheet( nInstance ));
396 }
397 }
398}
399
401{
402}
403
404void PPTExStyleSheet::SetStyleSheet( const css::uno::Reference< css::beans::XPropertySet > & rXPropSet,
405 FontCollection& rFontCollection, int nInstance, int nLevel )
406{
407 if ( nInstance == EPP_TEXTTYPE_notUsed )
408 return;
409 mpCharSheet[ nInstance ]->SetStyleSheet( rXPropSet, rFontCollection, nLevel );
410 mpParaSheet[ nInstance ]->SetStyleSheet( rXPropSet, rFontCollection, nLevel, mpCharSheet[ nInstance ]->maCharLevel[ nLevel ] );
411}
412
413bool PPTExStyleSheet::IsHardAttribute( sal_uInt32 nInstance, sal_uInt32 nLevel, PPTExTextAttr eAttr, sal_uInt32 nValue )
414{
415 assert(nInstance < PPTEX_STYLESHEETENTRIES && nLevel < 5);
416
417 const PPTExParaLevel& rPara = mpParaSheet[ nInstance ]->maParaLevel[ nLevel ];
418 const PPTExCharLevel& rChar = mpCharSheet[ nInstance ]->maCharLevel[ nLevel ];
419
420 sal_uInt32 nFlag = 0;
421
422 switch ( eAttr )
423 {
424 case ParaAttr_BulletOn : return ( rPara.mbIsBullet ) ? nValue == 0 : nValue != 0;
426 case ParaAttr_BulletFont : return ( rPara.mnBulletFont != nValue );
428 case ParaAttr_BulletColor : return ( rPara.mnBulletColor != nValue );
430 case ParaAttr_BulletHeight : return ( rPara.mnBulletHeight != nValue );
431 case ParaAttr_BulletChar : return ( rPara.mnBulletChar != nValue );
432 case ParaAttr_Adjust : return ( rPara.mnAdjust != nValue );
433 case ParaAttr_LineFeed : return ( rPara.mnLineFeed != nValue );
434 case ParaAttr_UpperDist : return ( rPara.mnUpperDist != nValue );
435 case ParaAttr_LowerDist : return ( rPara.mnLowerDist != nValue );
436 case ParaAttr_TextOfs : return ( rPara.mnTextOfs != nValue );
437 case ParaAttr_BulletOfs : return ( rPara.mnBulletOfs != nValue );
438 case ParaAttr_DefaultTab : return ( rPara.mnDefaultTab != nValue );
439 case ParaAttr_BiDi : return ( rPara.mnBiDi != nValue );
440 case CharAttr_Bold : nFlag = 1; break;
441 case CharAttr_Italic : nFlag = 2; break;
442 case CharAttr_Underline : nFlag = 4; break;
443 case CharAttr_Shadow : nFlag = 16; break;
444 case CharAttr_Strikeout : nFlag = 256; break;
445 case CharAttr_Embossed : nFlag = 512; break;
446 case CharAttr_Font : return ( rChar.mnFont != nValue );
448 case CharAttr_Symbol : return true;
449 case CharAttr_FontHeight : return ( rChar.mnFontHeight != nValue );
450 case CharAttr_FontColor : return ( rChar.mnFontColor != Color(ColorTransparency, nValue) );
451 case CharAttr_Escapement : return ( rChar.mnEscapement != nValue );
452 default:
453 break;
454 }
455 if ( nFlag )
456 {
457 if ( rChar.mnFlags & nFlag )
458 return ( ( nValue & nFlag ) == 0 );
459 else
460 return ( ( nValue & nFlag ) != 0 );
461 }
462 return true;
463}
464
465// the TxCFStyleAtom stores the text properties that are used
466// when creating new objects in PowerPoint.
467
469{
470 const PPTExCharLevel& rCharStyle = mpCharSheet[ EPP_TEXTTYPE_Other ]->maCharLevel[ 0 ];
471
472 sal_uInt16 const nFlags = 0x60 // ??
473 | 0x02 // fontsize;
474 | 0x04; // fontcolor
475
476 sal_uInt32 nCharFlags = rCharStyle.mnFlags;
478
479 rSt.WriteUInt32( EPP_TxCFStyleAtom << 16 ) // recordheader
481 .WriteUInt16( 0x80 | nCharFlags )
482 .WriteUInt16( nFlags )
483 .WriteUInt16( nCharFlags )
484 .WriteInt32( -1 ) // ?
485 .WriteUInt16( rCharStyle.mnFontHeight )
486 .WriteUInt32( sal_uInt32(rCharStyle.mnFontColor) );
487}
488
489/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
constexpr auto convertMm100ToMasterUnit(N n)
void SetAlpha(sal_uInt8 nAlpha)
const FontCollectionEntry * GetById(sal_uInt32 nId)
Definition: pptx-text.cxx:1395
sal_uInt32 GetId(FontCollectionEntry &rFontDescriptor)
Definition: pptx-text.cxx:1357
std::unique_ptr< PPTExCharSheet > mpCharSheet[PPTEX_STYLESHEETENTRIES]
Definition: epptbase.hxx:303
std::unique_ptr< PPTExParaSheet > mpParaSheet[PPTEX_STYLESHEETENTRIES]
Definition: epptbase.hxx:304
bool IsHardAttribute(sal_uInt32 nInstance, sal_uInt32 nLevel, PPTExTextAttr eAttr, sal_uInt32 nValue)
void SetStyleSheet(const css::uno::Reference< css::beans::XPropertySet > &, FontCollection &rFontCollection, int nInstance, int nLevel)
static sal_uInt32 SizeOfTxCFStyleAtom()
Definition: epptbase.hxx:315
void WriteTxCFStyleAtom(SvStream &rSt)
PPTExStyleSheet(sal_uInt16 nDefaultTab, PPTExBulletProvider *pBuProv)
css::beans::PropertyState meLineSpacingBottom
Definition: text.hxx:199
sal_Int16 mnLineSpacingBottom
Definition: text.hxx:208
bool mbParagraphPunctation
Definition: text.hxx:210
css::beans::PropertyState meBiDi
Definition: text.hxx:202
void ImplGetNumberingLevel(PPTExBulletProvider *pBuProv, sal_Int16 nDepth, bool bIsBullet, bool bGetPropStateValue)
Definition: pptx-text.cxx:768
css::beans::PropertyState meBullet
Definition: text.hxx:195
css::beans::PropertyState meLineSpacingTop
Definition: text.hxx:198
bool mbIsBullet
Definition: text.hxx:191
css::beans::PropertyState meForbiddenRules
Definition: text.hxx:200
sal_Int16 mnLineSpacingTop
Definition: text.hxx:207
sal_uInt16 mnTextAdjust
Definition: text.hxx:204
bool mbForbiddenRules
Definition: text.hxx:209
sal_Int16 mnLineSpacing
Definition: text.hxx:205
sal_uInt16 mnBiDi
Definition: text.hxx:211
void CalculateGraphicBulletSize(sal_uInt16 nFontHeight)
Definition: pptx-text.cxx:750
css::beans::PropertyState meParagraphPunctation
Definition: text.hxx:201
css::beans::PropertyState meTextAdjust
Definition: text.hxx:196
css::beans::PropertyState meLineSpacing
Definition: text.hxx:197
sal_uInt16 mnCharHeight
Definition: text.hxx:138
css::beans::PropertyState meCharColor
Definition: text.hxx:128
sal_uInt16 mnCharAttr
Definition: text.hxx:137
css::beans::PropertyState meCharEscapement
Definition: text.hxx:132
css::beans::PropertyState meAsianOrComplexFont
Definition: text.hxx:131
sal_uInt16 mnFont
Definition: text.hxx:139
sal_uInt32 mnCharColor
Definition: text.hxx:136
css::beans::PropertyState meCharHeight
Definition: text.hxx:129
css::beans::PropertyState meFontName
Definition: text.hxx:130
sal_Int16 mnCharEscapement
Definition: text.hxx:141
sal_uInt16 mnAsianOrComplexFont
Definition: text.hxx:140
static bool GetPropertyValue(css::uno::Any &rAny, const css::uno::Reference< css::beans::XPropertySet > &, const OUString &rPropertyName, bool bTestPropertyAvailability=false)
Definition: epptso.cxx:532
SvStream & WriteInt32(sal_Int32 nInt32)
SvStream & WriteUInt16(sal_uInt16 nUInt16)
SvStream & WriteUInt32(sal_uInt32 nUInt32)
ColorTransparency
constexpr ::Color COL_AUTO(ColorTransparency, 0xFF, 0xFF, 0xFF, 0xFF)
PPTExTextAttr
Definition: epptbase.hxx:204
@ ParaAttr_Adjust
Definition: epptbase.hxx:213
@ CharAttr_Embossed
Definition: epptbase.hxx:226
@ CharAttr_Bold
Definition: epptbase.hxx:221
@ ParaAttr_BuHardHeight
Definition: epptbase.hxx:208
@ ParaAttr_LineFeed
Definition: epptbase.hxx:214
@ CharAttr_Symbol
Definition: epptbase.hxx:229
@ ParaAttr_BulletOfs
Definition: epptbase.hxx:218
@ CharAttr_Escapement
Definition: epptbase.hxx:232
@ CharAttr_Strikeout
Definition: epptbase.hxx:225
@ ParaAttr_BulletFont
Definition: epptbase.hxx:210
@ CharAttr_FontHeight
Definition: epptbase.hxx:230
@ ParaAttr_BulletColor
Definition: epptbase.hxx:212
@ ParaAttr_DefaultTab
Definition: epptbase.hxx:219
@ ParaAttr_BulletHeight
Definition: epptbase.hxx:211
@ CharAttr_FontColor
Definition: epptbase.hxx:231
@ ParaAttr_UpperDist
Definition: epptbase.hxx:215
@ CharAttr_Font
Definition: epptbase.hxx:227
@ CharAttr_Underline
Definition: epptbase.hxx:223
@ CharAttr_Shadow
Definition: epptbase.hxx:224
@ ParaAttr_BulletOn
Definition: epptbase.hxx:205
@ ParaAttr_TextOfs
Definition: epptbase.hxx:217
@ ParaAttr_BuHardColor
Definition: epptbase.hxx:207
@ ParaAttr_LowerDist
Definition: epptbase.hxx:216
@ CharAttr_AsianOrComplexFont
Definition: epptbase.hxx:228
@ CharAttr_Italic
Definition: epptbase.hxx:222
@ ParaAttr_BiDi
Definition: epptbase.hxx:220
@ ParaAttr_BuHardFont
Definition: epptbase.hxx:206
@ ParaAttr_BulletChar
Definition: epptbase.hxx:209
#define PPTEX_STYLESHEETENTRIES
Definition: epptbase.hxx:201
#define EPP_TEXTTYPE_CenterBody
Definition: epptdef.hxx:134
#define EPP_PST_ExtendedParagraphMasterAtom
Definition: epptdef.hxx:73
#define EPP_TEXTTYPE_Body
Definition: epptdef.hxx:130
#define EPP_TEXTTYPE_Notes
Definition: epptdef.hxx:131
#define EPP_TEXTTYPE_QuarterBody
Definition: epptdef.hxx:137
#define EPP_TxCFStyleAtom
Definition: epptdef.hxx:66
#define EPP_TEXTTYPE_Title
Definition: epptdef.hxx:129
#define EPP_TEXTTYPE_Other
Definition: epptdef.hxx:133
#define EPP_TEXTTYPE_notUsed
Definition: epptdef.hxx:132
#define EPP_TEXTTYPE_HalfBody
Definition: epptdef.hxx:136
#define EPP_TEXTTYPE_CenterTitle
Definition: epptdef.hxx:135
sal_Int16 nValue
int i
sal_uInt16 mnFlags
Definition: epptbase.hxx:237
sal_uInt16 mnFontHeight
Definition: epptbase.hxx:240
Color mnFontColor
Definition: epptbase.hxx:242
sal_uInt16 mnAsianOrComplexFont
Definition: epptbase.hxx:239
sal_uInt16 mnEscapement
Definition: epptbase.hxx:241
sal_uInt16 mnFont
Definition: epptbase.hxx:238
void Write(SvStream &rSt, sal_uInt16 nLev, bool bSimpleText, const css::uno::Reference< css::beans::XPropertySet > &rPagePropSet)
PPTExCharLevel maCharLevel[5]
Definition: epptbase.hxx:247
PPTExCharSheet(int nInstance)
void SetStyleSheet(const css::uno::Reference< css::beans::XPropertySet > &, FontCollection &rFontCollection, int nLevel)
sal_uInt16 mnAdjust
Definition: epptbase.hxx:266
sal_uInt16 mnLineFeed
Definition: epptbase.hxx:267
sal_uInt16 mnBiDi
Definition: epptbase.hxx:280
sal_uInt16 mnBulletStart
Definition: epptbase.hxx:276
sal_uInt32 mnBulletColor
Definition: epptbase.hxx:264
sal_uInt32 mnMappedNumType
Definition: epptbase.hxx:277
sal_uInt16 mnTextOfs
Definition: epptbase.hxx:270
sal_uInt32 mnNumberingType
Definition: epptbase.hxx:278
sal_uInt16 mnBulletFont
Definition: epptbase.hxx:262
sal_uInt16 mnDefaultTab
Definition: epptbase.hxx:272
sal_uInt16 mnAsianSettings
Definition: epptbase.hxx:279
sal_uInt16 mnLowerDist
Definition: epptbase.hxx:269
sal_uInt16 mnBulletOfs
Definition: epptbase.hxx:271
sal_uInt16 mnUpperDist
Definition: epptbase.hxx:268
sal_uInt16 mnBulletHeight
Definition: epptbase.hxx:263
sal_uInt16 mnBulletId
Definition: epptbase.hxx:275
sal_uInt16 mnBulletChar
Definition: epptbase.hxx:261
bool mbExtendedBulletsUsed
Definition: epptbase.hxx:274
PPTExBulletProvider * pBuProv
Definition: epptbase.hxx:285
sal_uInt32 mnInstance
Definition: epptbase.hxx:287
PPTExParaLevel maParaLevel[5]
Definition: epptbase.hxx:289
void SetStyleSheet(const css::uno::Reference< css::beans::XPropertySet > &, FontCollection &rFontCollection, int nLevel, const PPTExCharLevel &rCharLevel)
PPTExParaSheet(int nInstance, sal_uInt16 nDefaultTab, PPTExBulletProvider *pProv)
void Write(SvStream &rSt, sal_uInt16 nLev, bool bSimpleText, const css::uno::Reference< css::beans::XPropertySet > &rPagePropSet)
SvxNumType nNumberingType
Definition: text.hxx:46
bool bExtendedParameters
Definition: text.hxx:39
css::awt::FontDescriptor aFontDesc
Definition: text.hxx:55
sal_uInt32 nMappedNumType
Definition: text.hxx:59
sal_uInt16 nBulletId
Definition: text.hxx:58
bool bExtendedBulletsUsed
Definition: text.hxx:57
sal_Int16 nBulletRealSize
Definition: text.hxx:52
sal_Int16 nTextOfs
Definition: text.hxx:51
sal_Int32 nBulletOfs
Definition: text.hxx:49
sal_uInt32 nBulletColor
Definition: text.hxx:48
sal_Unicode cBulletId
Definition: text.hxx:54
sal_Int16 nStartWith
Definition: text.hxx:50
SVX_NUM_BITMAP