2016-06-02 7 views
0

장모용 초등 수학에 따라 MathML을 생성하려고합니다. W3 website의 예제에는 소수점이없는 할당 만 있습니다. enter image description here프리젠 테이션 MathML : 초등 수학에 10 진수를 오랫동안 추가하는 방법의 carryover를 올바르게 배치하는 방법은 무엇입니까?

그래서, 난 그냥 소수점으로 내 자신의 MathML을 파일에 포함 된 번호를 생성 :로

<mstack> 
    <mscarries crossout='updiagonalstrike'> 
    <mn>2</mn> <mn>12</mn> <mscarry crossout='none'> <none/> </mscarry> 
    </mscarries> 
    <mn>2,327</mn> 
    <msrow> <mo>-</mo> <mn> 1,156</mn> </msrow> 
    <msline/> 
    <mn>1,171</mn> 
</mstack> 

가 표시됩니다. 내 MathML을은 다음과 같습니다

<math xmlns="http://www.w3.org/1998/Math/MathML"> 
    <mstack> 
    <mn>789.255</mn> 
    <msrow> 
     <mo>+</mo> 
     <mn>56.86</mn> 
    </msrow> 
    <mscarries> 
     <mn>1</mn> 
     <mn>1</mn> 
     <mn>1</mn> 
     <mn>1</mn> 
     <none/> 
     <none/> 
    </mscarries> 
    <msline/> 
    <mn>846.115</mn> 
    </mstack> 
</math> 

그리고 그 결과는 다음과 같습니다 enter image description here

당신은 이월이 제대로 배치되지 않는 것을 볼 수 있습니다. 가장 오른쪽에서 왼쪽으로 시작하는 대신 (보이지 않는) 소수점 앞에서 시작합니다.

누구나 MathML에 따라 초등 수학을 사용하여 어떻게 그 carryover를 올바르게 배치 할 수 있습니까? (또한 을 mstack의 속성으로 사용하려고 시도했지만 좋지 않습니다.)

미리 감사드립니다.

+0

어떤 렌더링 엔진을 사용하고 있습니까? –

+0

또한 캐리는 영향을 미치는 라인 앞에 와야합니다. –

+0

예, 관련 선 앞에'mscarries '를 두는 것이 옳았습니다. 그러나 제 경우에는 오스트리아 수학 수학 동아리에 따라 수학을 표현하려고합니다 (위와 같습니다). 나는 첫 번째 줄 앞에'mscarries'도 놓으려고했다. 하지만 아무것도 바뀌지 않습니다. 다음 웹 사이트에서 fmath라는 Java 라이브러리를 사용합니다. http://www.fmath.info/formula/java/how_to_use.jsp#mathml – APex

답변

1

내가 아는 한, 웹 기반 MathML 렌더러는 MathML 3의 소위 "기본 수학"섹션을 충분히 지원하지 않습니다.

의견에서 언급 한 것처럼 fmathlocation="s"을 지원하지 않는 것 같습니다.

WIRISMathJax's experimental extension은 (인해 해키 msline 트릭)이에 문제가 있지만 대략 바로 얻을 수 있습니다 (약간의 시각적 결함으로) 가장 가까운.

불행히도, 버그가 다르므로 여기에 각각 하나의 MathML 샘플이 있습니다.

잘 WIRIS (하지만 MathJax)의 다음 작품

:

<math xmlns="http://www.w3.org/1998/Math/MathML"> 
    <mstack> 
    <mn>789.255</mn> 
    <mscarries location="s"> 
     <mn>1</mn> 
     <mn>1</mn> 
     <mn>1</mn> 
     <none/> 
     <mn>1</mn> 
     <none/> 
     <none/> 
    </mscarries> 
    <msrow> 
     <mo>+</mo> 
     <mn>56.86</mn> 
     <none/> 
    </msrow> 
    <msline/> 
    <mn>846.115</mn> 
    </mstack> 
</math> 

다음 하나는 MathJax으로 대략 작품을 좋아하지만 WIRIS합니다 (mml3 확장자로, 예를 들어, http://codepen.io/pkra/pen/QwbJWa 사용).

<math xmlns="http://www.w3.org/1998/Math/MathML"> 
    <mstack> 
    <mn>789.255</mn> 
    <mscarries position="-2" location="s"> 
     <mn>1</mn> 
     <mn>1</mn> 
     <mn>1</mn> 
     <none/> 
     <mn>1</mn> 
    </mscarries> 
    <msrow> 
     <mo>+</mo> 
     <mn>56.86</mn> 
     <none/> 
    </msrow> 
    <msline/> 
    <mn>846.115</mn> 
    </mstack> 
</math> 

면책 조항 : MathJax 팀에 속해 있습니다.