[Libreoffice-commits] core.git: starmath/qa starmath/source

Takeshi Abe tabe at fixedpoint.jp
Sat Nov 19 07:51:21 UTC 2016


 starmath/qa/extras/data/tdf103500.mml |   41 ++++++++++++++++++++++++++++++++++
 starmath/qa/extras/mmlimport-test.cxx |    9 +++++++
 starmath/source/node.cxx              |    6 ++++
 3 files changed, 55 insertions(+), 1 deletion(-)

New commits:
commit f533b3f39956fe8028c1f7f7cc3c37b0feed8b57
Author: Takeshi Abe <tabe at fixedpoint.jp>
Date:   Fri Nov 18 17:10:44 2016 +0900

    tdf#103500 Import stretchy integral symbol from MathML
    
    as "intd".
    
    Change-Id: Ic8a4feef7a3a19c8ed5bca2f09f80901e2b6d343
    Reviewed-on: https://gerrit.libreoffice.org/30953
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Takeshi Abe <tabe at fixedpoint.jp>

diff --git a/starmath/qa/extras/data/tdf103500.mml b/starmath/qa/extras/data/tdf103500.mml
new file mode 100644
index 0000000..7c49669
--- /dev/null
+++ b/starmath/qa/extras/data/tdf103500.mml
@@ -0,0 +1,41 @@
+<math xmlns="http://www.w3.org/1998/Math/MathML">
+  <mrow>
+    <mrow>
+      <munderover>
+        <mo stretchy="false">∫</mo>
+        <mi>a</mi>
+        <mi>b</mi>
+      </munderover>
+      <mrow>
+        <mfrac>
+          <mn>1</mn>
+          <mi>x</mi>
+        </mfrac>
+        <mspace width="0.5em"/>
+        <mstyle mathvariant="normal">
+          <mi mathvariant="normal">d</mi>
+        </mstyle>
+        <mi>x</mi>
+      </mrow>
+    </mrow>
+    <mo stretchy="false">=</mo>
+    <mrow>
+      <munderover>
+        <mo stretchy="true">∫</mo>
+        <mi>a</mi>
+        <mi>b</mi>
+      </munderover>
+      <mrow>
+        <mfrac>
+          <mn>1</mn>
+          <mi>y</mi>
+        </mfrac>
+        <mspace width="0.5em"/>
+        <mstyle mathvariant="normal">
+          <mi mathvariant="normal">d</mi>
+        </mstyle>
+        <mi>y</mi>
+      </mrow>
+    </mrow>
+  </mrow>
+</math>
diff --git a/starmath/qa/extras/mmlimport-test.cxx b/starmath/qa/extras/mmlimport-test.cxx
index 9bbc08a..3db697f 100644
--- a/starmath/qa/extras/mmlimport-test.cxx
+++ b/starmath/qa/extras/mmlimport-test.cxx
@@ -34,6 +34,7 @@ public:
     void testMaction();
     void testMspace();
     void testtdf99556();
+    void testTdf103500();
 
     CPPUNIT_TEST_SUITE(Test);
     CPPUNIT_TEST(testSimple);
@@ -41,6 +42,7 @@ public:
     CPPUNIT_TEST(testMaction);
     CPPUNIT_TEST(testMspace);
     CPPUNIT_TEST(testtdf99556);
+    CPPUNIT_TEST(testTdf103500);
     CPPUNIT_TEST_SUITE_END();
 
 private:
@@ -120,6 +122,13 @@ void Test::testtdf99556()
     CPPUNIT_ASSERT_EQUAL_MESSAGE("loaded text", sExpected, mxDocShell->GetText());
 }
 
+void Test::testTdf103500()
+{
+    loadURL(m_directories.getURLFromSrc("starmath/qa/extras/data/tdf103500.mml"));
+    CPPUNIT_ASSERT_EQUAL(OUString("{{ int csub a csup b {1 over x ` d x}} = {intd csub a csup b {1 over y ` d y}}}"),
+                         mxDocShell->GetText());
+}
+
 
 CPPUNIT_TEST_SUITE_REGISTRATION(Test);
 
diff --git a/starmath/source/node.cxx b/starmath/source/node.cxx
index 3db53a9..fe84e55 100644
--- a/starmath/source/node.cxx
+++ b/starmath/source/node.cxx
@@ -2447,7 +2447,11 @@ void SmMathSymbolNode::Arrange(OutputDevice &rDev, const SmFormat &rFormat)
 void SmMathSymbolNode::CreateTextFromNode(OUString &rText)
 {
     OUString sStr;
-    MathType::LookupChar(GetToken().cMathChar, sStr, 3);
+    sal_Unicode cChar = GetToken().cMathChar;
+    if (cChar == MS_INT && GetScaleMode() == SCALE_HEIGHT)
+        sStr = "intd ";
+    else
+        MathType::LookupChar(cChar, sStr, 3);
     rText += sStr;
 }
 


More information about the Libreoffice-commits mailing list