どーも、ぐるたか@guru_takaです。
Nuxtにて、マークダウン内のLateXをMathJaxで数式化することがあったので、その方法をまとめておきます!
前提:'nuxtjs/markdownit'
がインストール済み
Nuxt環境で、マークダウンをhtml化するのに重宝する'@nuxtjs/markdownit'
がインストールされていることが前提です。
導入方法については、以下の記事にて解説しているので、初見の方はぜひ参考にしてみて下さい!
【Nuxt】@nuxtjs/markdownitでマークダウンからhtmlに生成する方法マークダウン内のLateXを数式化する方法
以下のGihub Gist 内のソースを参考に進めていきます。
参考 VueJS c omponent transforming Markdown and LateX in HTMLまず、nuxt.config.js
に以下コードを追記します。
nuxt.config.js
script: [
{
src:
'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/MathJax.js?config=TeX-AMS_HTML'
}
],
その後、LateXを数式に変換したいvueファイルに対し、以下のようにコードを書けばOKです!
sample.vue
<template>
<div v-html="$md.render(マークダウンのテキスト代入)"></div>
</template>
............
<script>
import ipynb2html from '@/plugins/ipynb2html'
export default {
............
mounted() {
this.renderMathJax()
},
methods: {
renderMathJax() {
if (window.MathJax) {
window.MathJax.Hub.Config({
TeX: { equationNumbers: { autoNumber: 'AMS' } },
tex2jax: {
inlineMath: [
['$', '$'],
['\\(', '\\)']
],
processEscapes: true
},
'HTML-CSS': { matchFontHeight: false },
displayAlign: 'center',
displayIndent: '2em'
})
window.MathJax.Hub.Queue(['Typeset', window.MathJax.Hub])
}
}
}
}
............
window.MathJax.Hub.Config
の設定は、好きなように変更できます。
ググってみると参考になる記事が色々ありますので、チェックしてみると良いでしょう!
参考 MathJaxによる数式表示 参考 Web上で綺麗な数式を記述できるMathjax.jsプラグインの使い方 | SPYWEB簡単な解説
簡単に3行でまとめると、こんな感じ!
- MathJaxのライブラリをCDN経由で読み込み
- その後、mount時にMathJaxの設定ファイル読み込み
- 後は、
'nuxtjs/markdownit'
でマークダウンをhtml化
コメントを残す