LaTeX和KaTeX的介绍
来源:网络
编辑:浅尘
时间:2022-01-10
历史:
上期讲到TeX,由于它是基于底层编程语言的电子排版系统,提供版面编辑的底层命令,使用时操作复杂,工作效率不高,所以基于TeX的高灵活性高可扩展性,创造出了LaTex。
LaTex(https://www.latex-project.org/)是TeX的扩展命令集合,通过整合常用的版面设置操作,降低了排版的工作量和难度。
LaTex 强大的排版功能,特别是对科技文档的支持,已经使它成为撰写科研论文的事实上的标准,它完全使用文本描述排版,对于复杂的数学公式、表格、化学分子式等完全不在话下,甚至可以排五线谱、棋谱、电路图等。
但对于前端开发而言,需求是在网页上以文本形式展示数学公式,所以只需要一个LaTeX的子集,能渲染数学公式即可。
KaTeX就是这样一个支持HTML的轻量级的数学公式引擎,它由Khan Academy(https://www.khanacademy.org/)开发,使用起来也非常简单。
npm地址:https://www.npmjs.com/package/katex
github地址:https://github.com/KaTeX/KaTeX
官网地址:https://katex.org/
第一步,引入KaTeX的JS代码与CSS样式:
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/katex@0.10.1/dist/katex.min.css"> <script defer src="https://cdn.jsdelivr.net/npm/katex@0.10.1/dist/katex.min.js"></script>
第二步,通过一个简单的JS调用就可以正确渲染出数学公式:
katex.render("x=rac{-bpmsqrt{b^2-4ac}}{2a}", document.getElementById("math"));
使用JavaScript手动渲染还是稍微麻烦了一点,最好是通过Markdown按照下面的语法:
```math x=rac{-bpmsqrt{b^2-4ac}}{2a} ```
就自动渲染出数学公式:
x=2a−b±b2−4ac
如果要内嵌KaTeX公式,可以用这样的Markdown语法:
内嵌的Katex效果$`E=mc^2`$就是这样
内嵌的KaTeX效果E=mc2就是这样。
通过一点点jQuery的代码,很容易实现自动渲染。
可视化:
渲染公式很容易,但是像这样的公式:
f(x)=∫−∞∞fξe2πiξxdξ
想要正确地写出它的文本形式可不容易:
f(x)=int_{-infty}^inftywidehat fxi,e^{2pi ixi x},dxi
如果仅仅为了写个公式,就去学LaTeX语法,那没有十天半月的肯定不行。这个时候,你需要一个可视化公式编辑器(http://www.wiris.com/editor/demo/en/developers)的神器,它可以让我们可视化地编辑公式,然后自动得到它的LaTeX文本。
相关文章:
- [前端]javascript的call和apply的区别
- [前端]多版本node的安装和切换详细操作步骤_node.js
- [前端]js实现点击切换和自动播放的轮播图_javascript技巧
- [前端]深入理解JavaScript内存管理和GC算法_javascript技巧
- [前端]uni-app和原生小程序混合开发的具体实现过程_javascript技巧
- [前端]JavaScript时间复杂度和空间复杂度_javascript技巧
- [前端]JavaScript进阶之函数和对象知识点详解_javascript技巧
- [前端]Node.js数据流Stream之Readable流和Writable流用法_node.js
- [前端]Node.js数据流Stream之Duplex流和Transform流用法_node.js
- [前端]前端node Session和JWT鉴权登录示例详解_node.js
相关推荐:
- [前端]Vue3 编写自定义指令插件的示例代码_vue.js
- [前端]vue使用element实现上传图片和修改图片功能_vue.js
- [前端]JS前端架构pnpm构建Monorepo方式管理demo_JavaScript
- [前端]Iconfont不能上传如何维护Icon_React
- [前端]jquery实现手风琴展开效果_jquery
- [前端]js前端实现word excel pdf ppt mp4图片文本等文件预览_JavaScript
- [前端]uniapp实现横屏签字版_javascript技巧
- [前端]微信小程序实现手写签名(签字版)_javascript技巧
- [前端]vue 大文件分片上传(断点续传、并发上传、秒传)_vue.js
- [前端]微信小程序实现日期范围选择_javascript技巧
栏目分类
最新文章
- 如何在 JavaScript 中把字符串转换成数字
- 怎么理解ES6中Proxy及使用场景
- 详解vuex中的this.$store.dispatch方法
- javascript的call和apply的区别
- 为什么要使用Reflect对象
- 前端一些好学好用的代码规范-git hook+husky + commitlint
- 前端一些好学好用的代码规范-git hook+husky + commitlint
- 解决报错Node Sass does not yet support your current environment: Windows 64-bit with Unsupported
- mac安装nvm
- npm husky install .git can not be found解决方案
热门文章
- CSS世界PDF电子版百度云网盘下载
- JavaScript权威指南(第6版)中文版PDF电子版百度云网盘下载
- Web服务 原理与技术[Michael P. Papazoglou]PDF电子版百度云网盘下载[44.7M]
- 基于TypeScript的HTML5游戏开发本科毕业设计PDF电子版百度云网盘下载
- 详解vue修改elementUI的分页组件视图没更新问题
- javascript的call和apply的区别
- WebKit技术内幕朱永盛PDF电子版百度云网盘下载
- JAVASCRIPT语言精髓与编程实践.周爱民.扫描版PDF电子版百度云网盘下载
- 精彩绝伦的CSS[Eric A. Meyer]PDF电子版百度云网盘下载[25.8M]
- HTML5与CSS3基础教程(第8版)[Elizabeth Castro]PDF电子版百度云网盘下载[72M]