2012-07-29 2 views
0

이 질문은 길지는 모르겠지만 관계없이 시도해야합니다. 저는 수학 방정식을 입력하고 해결할 수있는 WPF C# 응용 프로그램에서 수학 프로젝트를하고 있습니다. 방정식을 웹 브라우저 컨트롤 (MathML을 처리 할 수있는 유일한 방법)으로 렌더링 (표시)하고 Internet Explorer에서 mathML을 이해할 수 있도록 MathPlayer 3.0을 설치했습니다.javascript window.print() function에서 MathML을 인쇄하는 방법

지금까지 모든 것이 순조롭게 진행되었습니다. 사용자가 과거에 해왔 던 방정식을 기반으로 보고서를 생성하고이 보고서를 인쇄 할 수 있기를 원합니다. 웹 브라우저 컨트롤을 사용하고 있었기 때문에 Javascript window.print() 함수를 사용하려고 생각했습니다. 유일한 문제는 아무 것도 인쇄되지 않는다는 것입니다 (아마도 페이지의 mathML 때문일 수 있습니다).

broswer에서 MathPlayer로 렌더링 한 mathML을 인쇄하는 방법에 대해 나에게 조언을 해줄 수있는 사람이 누구인지 알 수 있습니다. (http://www.dessci.com/en/products/mathplayer/tech/accessibility.htm에서 볼 수 있듯이 MathPlayer mathML로 페이지를 인쇄 할 수 있습니다. 페이지가 인쇄 가능합니다 (오른쪽 클릭, 인쇄 미리보기).

모든 종류의 의견이나 도움을 주시면 감사하겠습니다.

+0

UDPATE : javascript 함수 : window.print()가 WPF 웹 브라우저 컨트롤에서 전혀 작동하지 않습니다. 다른 사람들이 MathML 방정식을 인쇄 할 수 있다는 것을 알고 있습니까? – YoungProgrammer

답변

0

좋아요, 그래서 제가 원했던 것은 아니지만, 필요한 것을하기위한 매우 "더러운"해결책을 찾았습니다.

Firefox는 애드온없이 기본적으로 MathML을 지원하는 유일한 브라우저이기 때문에 Firefox를 프로젝트 설치에 포함 시켰습니다. 그래서 내 WPF 애플 리케이션에서 문서를 인쇄하려고 할 때, 나는 모든 HTML을 파일로 작성하고 body가 로딩 될 때 document.print() 함수를 호출하는 javascript를 포함했다. 그런 다음 Firefox로 만든 HTML 파일을 시작하는 프로세스를 만들었습니다. 브라우저가 열리면 javascript가 인쇄 대화 상자를 호출합니다.

내가 말했듯이 이것은 완벽하지는 않지만 browserControl에서 렌더링되는 mathML을 인쇄하는 방법이었습니다.

참고 : Peter Krautzberger의 제안이 효과가 있었지만 내 앱이 인터넷 연결과 독립적으로 실행되기를 원했습니다.

0

MathJax을 사용하여 MathML을 렌더링 할 수도 있습니다. 인쇄가 제대로 작동해야합니다. [면책 사항 : 저는 MathJax 팀에 속해 있습니다.]

관련 문제