[Libreoffice-commits] core.git: Branch 'distro/suse/suse-4.0' - 3 commits - oox/inc oox/source

Muthu Subramanian sumuthu at collabora.com
Wed Dec 18 06:39:42 PST 2013


 oox/inc/oox/drawingml/textcharacterproperties.hxx       |    1 +
 oox/source/drawingml/textcharacterproperties.cxx        |   10 ++++++++++
 oox/source/drawingml/textcharacterpropertiescontext.cxx |    2 ++
 oox/source/export/drawingml.cxx                         |    8 ++++----
 4 files changed, 17 insertions(+), 4 deletions(-)

New commits:
commit c0dd1682420f0e9e18a74a0ec5fd02b029573c80
Author: Muthu Subramanian <sumuthu at collabora.com>
Date:   Thu Dec 12 18:24:42 2013 +0530

    n#828390: Reset charescapement.
    
    Unless the value is reset - the escapement
    seems to continue to the next set of textruns.

diff --git a/oox/source/drawingml/textcharacterproperties.cxx b/oox/source/drawingml/textcharacterproperties.cxx
index 4230148..c531bc1 100644
--- a/oox/source/drawingml/textcharacterproperties.cxx
+++ b/oox/source/drawingml/textcharacterproperties.cxx
@@ -129,6 +129,9 @@ void TextCharacterProperties::pushToPropMap( PropertyMap& rPropMap, const XmlFil
     if( moBaseline.has() ) {
         rPropMap[ PROP_CharEscapement ] <<= sal_Int16(moBaseline.get( 0 ) / 1000);
         rPropMap[ PROP_CharEscapementHeight ] <<= sal_Int8(DFLT_ESC_PROP);
+    } else {
+        rPropMap[ PROP_CharEscapement ] <<= sal_Int16(0);
+        rPropMap[ PROP_CharEscapementHeight ] <<= sal_Int8(100); // 100%
     }
 
     if( !bUseOptional || moBold.has() ) {
commit 1d42520a36bb2a3131330e03e7f25d4ae5a99241
Author: Muthu Subramanian <sumuthu at collabora.com>
Date:   Wed Dec 18 20:19:48 2013 +0530

    Fix fdo#70220 Superscript not imported from pptx.
    
    Ported from: 840a8573c8cebe67ddd3c9fe106c7dbd789bb334
    (Original Author: Thorsten)

diff --git a/oox/inc/oox/drawingml/textcharacterproperties.hxx b/oox/inc/oox/drawingml/textcharacterproperties.hxx
index 3dc4062..1073fa6 100644
--- a/oox/inc/oox/drawingml/textcharacterproperties.hxx
+++ b/oox/inc/oox/drawingml/textcharacterproperties.hxx
@@ -46,6 +46,7 @@ struct TextCharacterProperties
     OptValue< sal_Int32 > moHeight;
     OptValue< sal_Int32 > moSpacing;
     OptValue< sal_Int32 > moUnderline;
+    OptValue< sal_Int32 > moBaseline;
     OptValue< sal_Int32 > moStrikeout;
     OptValue< sal_Int32 > moCaseMap;
     OptValue< bool >    moBold;
diff --git a/oox/source/drawingml/textcharacterproperties.cxx b/oox/source/drawingml/textcharacterproperties.cxx
index 0163f82..4230148 100644
--- a/oox/source/drawingml/textcharacterproperties.cxx
+++ b/oox/source/drawingml/textcharacterproperties.cxx
@@ -21,6 +21,7 @@
 #include <com/sun/star/lang/Locale.hpp>
 #include <com/sun/star/awt/FontSlant.hpp>
 #include <com/sun/star/awt/FontWeight.hpp>
+#include <editeng/escapementitem.hxx>
 #include "oox/helper/helper.hxx"
 #include "oox/helper/propertyset.hxx"
 #include "oox/core/xmlfilterbase.hxx"
@@ -52,6 +53,7 @@ void TextCharacterProperties::assignUsed( const TextCharacterProperties& rSource
     moHeight.assignIfUsed( rSourceProps.moHeight );
     moSpacing.assignIfUsed( rSourceProps.moSpacing );
     moUnderline.assignIfUsed( rSourceProps.moUnderline );
+    moBaseline.assignIfUsed( rSourceProps.moBaseline );
     moStrikeout.assignIfUsed( rSourceProps.moStrikeout );
     moCaseMap.assignIfUsed( rSourceProps.moCaseMap );
     moBold.assignIfUsed( rSourceProps.moBold );
@@ -124,6 +126,11 @@ void TextCharacterProperties::pushToPropMap( PropertyMap& rPropMap, const XmlFil
     rPropMap[ PROP_CharStrikeout ] <<= GetFontStrikeout( moStrikeout.get( XML_noStrike ) );
     rPropMap[ PROP_CharCaseMap ] <<= GetCaseMap( moCaseMap.get( XML_none ) );
 
+    if( moBaseline.has() ) {
+        rPropMap[ PROP_CharEscapement ] <<= sal_Int16(moBaseline.get( 0 ) / 1000);
+        rPropMap[ PROP_CharEscapementHeight ] <<= sal_Int8(DFLT_ESC_PROP);
+    }
+
     if( !bUseOptional || moBold.has() ) {
         float fWeight = moBold.get( false ) ? awt::FontWeight::BOLD : awt::FontWeight::NORMAL;
         rPropMap[ PROP_CharWeight ] <<= fWeight;
diff --git a/oox/source/drawingml/textcharacterpropertiescontext.cxx b/oox/source/drawingml/textcharacterpropertiescontext.cxx
index 605ebb0..2119dc6 100644
--- a/oox/source/drawingml/textcharacterpropertiescontext.cxx
+++ b/oox/source/drawingml/textcharacterpropertiescontext.cxx
@@ -56,6 +56,8 @@ TextCharacterPropertiesContext::TextCharacterPropertiesContext(
         mrTextCharacterProperties.moUnderline = aAttribs.getToken( XML_u );
     if ( aAttribs.hasAttribute( XML_strike ) )
         mrTextCharacterProperties.moStrikeout = aAttribs.getToken( XML_strike );
+    if ( aAttribs.hasAttribute( XML_baseline ) )
+        mrTextCharacterProperties.moBaseline = aAttribs.getInteger( XML_baseline );
 
 //  mrTextCharacterProperties.moCaseMap     = aAttribs.getToken( XML_cap );
     if ( aAttribs.hasAttribute( XML_b ) )
commit 4d4fb2a6f8afd525bffbc465779a6bf95e5debd9
Author: Muthu Subramanian <sumuthu at collabora.com>
Date:   Wed Dec 18 20:08:41 2013 +0530

    n#828390: Explictly export font properties.
    
    Seems like the status is returned as default,
    but the font properties needs to be still exported.

diff --git a/oox/source/export/drawingml.cxx b/oox/source/export/drawingml.cxx
index bfe3ed9..ff3f62a 100644
--- a/oox/source/export/drawingml.cxx
+++ b/oox/source/export/drawingml.cxx
@@ -667,14 +667,14 @@ void DrawingML::WriteRunProperties( Reference< XPropertySet > rRun, sal_Bool bIs
     sal_Int32 nSize = 1800;
     sal_Int32 nCharEscapement = 0;
 
-    if( GETAD( CharHeight ) )
+    if( GETA( CharHeight ) )
         nSize = (sal_Int32) (100*(*((float*) mAny.getValue())));
 
-    if ( ( bComplex && GETAD( CharWeightComplex ) ) || GETAD( CharWeight ) )
+    if ( ( bComplex && GETA( CharWeightComplex ) ) || GETA( CharWeight ) )
         if ( *((float*) mAny.getValue()) >= awt::FontWeight::SEMIBOLD )
             bold = "1";
 
-    if ( ( bComplex && GETAD( CharPostureComplex ) ) || GETAD( CharPosture ) )
+    if ( ( bComplex && GETA( CharPostureComplex ) ) || GETA( CharPosture ) )
         switch ( *((awt::FontSlant*) mAny.getValue()) )
         {
             case awt::FontSlant_OBLIQUE :
@@ -789,7 +789,7 @@ void DrawingML::WriteRunProperties( Reference< XPropertySet > rRun, sal_Bool bIs
         WriteSolidFill( color );
     }
 
-    if( GETAD( CharFontName ) ) {
+    if( GETA( CharFontName ) ) {
         const char* typeface = NULL;
         const char* pitch = NULL;
         const char* charset = NULL;


More information about the Libreoffice-commits mailing list