「TeX数式のチェック」の版間の差分

提供: MeryWiki
ナビゲーションに移動 検索に移動
MSY-07 (トーク | 投稿記録)
ハイライト効果の適用、マークアップの修正
MSY-07 (トーク | 投稿記録)
SyntaxHighlightにcopyの追加
 
(同じ利用者による、間の6版が非表示)
2行目: 2行目:


Google Chart APIを利用したバージョンとMathjavを利用したバージョンがあります。
Google Chart APIを利用したバージョンとMathjavを利用したバージョンがあります。
== 注意事項 ==
このマクロはInternet Explorer上で動作しますが、Internet Explorerのサポートは2022年6月16日に終了したため、このマクロを使用することはおすすめしません。


== Google Chart APIを利用したバージョン ==
== Google Chart APIを利用したバージョン ==
8行目: 11行目:
クリップボードに<img>タグの内容がコピーされます。
クリップボードに<img>タグの内容がコピーされます。


<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript" copy>
// GetFormulaImage.js
// GetFormulaImage.js
// 20131021
// 2013-10-21


var baseURL_google = 'http://chart.apis.google.com/chart?cht=tx&chl=';
var baseURL_google = 'http://chart.apis.google.com/chart?cht=tx&chl=';
var url = baseURL_google;
var url = baseURL_google;
var objIE = new ActiveXObject( "InternetExplorer.Application" );
var objIE = new ActiveXObject("InternetExplorer.Application");


var sel = Editor.ActiveDocument.Selection;
var sel = editor.ActiveDocument.selection;
if ( sel.IsEmpty ){
if (sel.IsEmpty) {
    Quit();
Quit();
} else {
} else {
    var encoded_TeXcode = encodeURIComponent( sel.Text );
var encoded_TeXcode = encodeURIComponent(sel.Text);
    url += encoded_TeXcode;
url += encoded_TeXcode;
};
}


ClipboardData.SetData( "<img alt=\"" + sel.Text + "\"" + " src=\"" + url + "\"/> ");
ClipboardData.SetData("<img alt=\"" + sel.Text + "\"" + " src=\"" + url + "\"/> ");


with(objIE) {
objIE.Width = 300;
    Width = 300;
objIE.Height = 200;
    Height = 200;
objIE.AddressBar = false;
    AddressBar = false;
objIE.MenuBar = false;
    MenuBar = false;
objIE.StatusBar = false;
    StatusBar = false;
objIE.ToolBar = false;
    ToolBar = false;
objIE.Navigate(url);
    Navigate( url );
objIE.Visible = true;
    Visible = true;
}
</syntaxhighlight>
</syntaxhighlight>


41行目: 42行目:


<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">
    Navigate( url );
objIE.Navigate(url);
</syntaxhighlight>
</syntaxhighlight>


47行目: 48行目:


<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript">
    Navigate( "about:blank" );
objIE.Navigate("about:blank");
    document.write("<html><head></head><body>" + "<img src='" + url + "'/><br /><br />" + sel.Text + "</body></html>");
objIE.document.write("<html><head></head><body>" + "<img src='" + url +"'/><br /><br />" + sel.Text + "</body></html>");
</syntaxhighlight>
</syntaxhighlight>


58行目: 59行目:
表示部を右クリックすると、メニューがポップアップします。そこからTeXコードとMathMLコードが得られます。
表示部を右クリックすると、メニューがポップアップします。そこからTeXコードとMathMLコードが得られます。


<syntaxhighlight lang="javascript">
<syntaxhighlight lang="javascript" copy>
// GetFormulaImage_Mathjav.js
// GetFormulaImage_Mathjav.js
// 20131021
// 2013-10-21


var objIE = new ActiveXObject( "InternetExplorer.Application" );
var objIE = new ActiveXObject("InternetExplorer.Application");
var sel = Editor.ActiveDocument.Selection;
var sel = editor.ActiveDocument.selection;
if ( sel.IsEmpty ){ Quit() };
if (sel.IsEmpty) {
Quit();
}


with(objIE) {
objIE.Width = 200;
    Width = 200;
objIE.Height = 150;
    Height = 150;
objIE.AddressBar = false;
    AddressBar = false;
objIE.MenuBar = false;
    MenuBar = false;
objIE.StatusBar = false;
    StatusBar = false;
objIE.ToolBar = false;
    ToolBar = false;
objIE.Navigate("about:blank");
    Navigate( "about:blank" );
objIE.document.write("<html><head>");
    document.write("<html><head>");
objIE.document.write("<script type='text/javascript' src='http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML'></script>");
    document.write("<script type='text/javascript' src='http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML'></script>");
objIE.document.write("</head><body>");
    document.write("</head><body>");
objIE.document.write("<br />\\(" + sel.Text + "\\)<br />");
    document.write("<br />\\(" + sel.Text + "\\)<br />");
objIE.document.write("</body></html>");
    document.write("</body></html>");
objIE.refresh();
    refresh();
objIE.Visible = true;
    Visible = true;
}
</syntaxhighlight>
</syntaxhighlight>

2025年6月30日 (月) 01:07時点における最新版

TeX形式で記述した数式を画像でチェックできます。確認したいTeXコードを選択してマクロを実行してください。

Google Chart APIを利用したバージョンとMathjavを利用したバージョンがあります。

注意事項[編集]

このマクロはInternet Explorer上で動作しますが、Internet Explorerのサポートは2022年6月16日に終了したため、このマクロを使用することはおすすめしません。

Google Chart APIを利用したバージョン[編集]

Googleは本機能を非推奨に分類しています。ご承知おきください。The Infographics portion of Google Chart Tools has been officially deprecated as of April 20, 2012. It will continue to work as per our deprecation policy.

クリップボードに<img>タグの内容がコピーされます。

// GetFormulaImage.js
// 2013-10-21

var baseURL_google = 'http://chart.apis.google.com/chart?cht=tx&chl=';
var url = baseURL_google;
var objIE = new ActiveXObject("InternetExplorer.Application");

var sel = editor.ActiveDocument.selection;
if (sel.IsEmpty) {
	Quit();
} else {
	var encoded_TeXcode = encodeURIComponent(sel.Text);
	url += encoded_TeXcode;
}

ClipboardData.SetData("<img alt=\"" + sel.Text + "\"" + " src=\"" + url + "\"/> ");

objIE.Width = 300;
objIE.Height = 200;
objIE.AddressBar = false;
objIE.MenuBar = false;
objIE.StatusBar = false;
objIE.ToolBar = false;
objIE.Navigate(url);
objIE.Visible = true;

元のTeXコードも一緒に見たい場合は、

objIE.Navigate(url);

の部分を

objIE.Navigate("about:blank");
objIE.document.write("<html><head></head><body>" + "<img src='" + url +"'/><br /><br />" + sel.Text + "</body></html>");

と変更してください。

Mathjavを利用したバージョン[編集]

画像のコピーはできません。

表示部を右クリックすると、メニューがポップアップします。そこからTeXコードとMathMLコードが得られます。

// GetFormulaImage_Mathjav.js
// 2013-10-21

var objIE = new ActiveXObject("InternetExplorer.Application");
var sel = editor.ActiveDocument.selection;
if (sel.IsEmpty) {
	Quit();
}

objIE.Width = 200;
objIE.Height = 150;
objIE.AddressBar = false;
objIE.MenuBar = false;
objIE.StatusBar = false;
objIE.ToolBar = false;
objIE.Navigate("about:blank");
objIE.document.write("<html><head>");
objIE.document.write("<script type='text/javascript' src='http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML'></script>");
objIE.document.write("</head><body>");
objIE.document.write("<br />\\(" + sel.Text + "\\)<br />");
objIE.document.write("</body></html>");
objIE.refresh();
objIE.Visible = true;
スポンサーリンク