我的博客主站是基于notion的,这是我的notion主页。因为notion的markdown格式和csdn不兼容,所以别的文章内容可能会缺图和排版错误,请谅解。
所有文章我都会贴上notion的原链接,加载可能会慢些。但notion确实是一个好用的写作+效率工具,而且界面排版方便美观,推荐大家使用。
这篇原文的链接在manim的安装中,有更好的排版和图片,后续更新也会在里面,推荐前往浏览。
按道理说,跟着网上的教程来一步一步走是不会出问题的。但是我电脑内存快不够了,同时又想把manim装在WSL里,于是踩下了好多的坑。这里总结一下:
pip
git下来的 requirements.txt
,虽然conda里面用pip废一点点空间,但是真的方便很多,不用走弯路。readme.md
来就行了。嫌速度慢可以换成清华源 conda create -n manim python=3.7 #-n 表示环境的名称
conda activate manim
cd "the path of your project"
git clone https://github.com/3b1b/manim.git
cd manim
pip3 install manimlib
python3 -m pip install -r requirements.txt
sox
和ffmpeg
应该没有问题,直接apt就行。cairo也是apt,命令上官网搜。但是tex出了问题。因为有两个win和wsl两个相对独立的环境,两边都装texlive硬盘容量吃不消,于是想压榨空间。但是很不巧,失败了。
miktex
,花了一点时间,但是相关的tex编辑器是可以用的(vscode的远程tex)。所以我就以为装好了。但是结果运行manim的时候出错了,报错信息如下。具体原因在svg_modules中,似乎是svg文件生成出错了。试了很多方法之后,发现问题出在miktex缺少一些tex组件。把miktex卸载了,重新装 texlive-full
就行了。 sudo apt install sox ffmpeg texlive-full libcairo2-dev
python3 ./manim.py example_scenes.py OpeningManimExample-pl
python3 ./manim.py example_scenes.py SquareToCircle -pl
python3 ./manim.py example_scenes.py WarpSquare -pl
python3 ./manim.py example_scenes.py WriteStuff -pl
python3 ./manim.py example_scenes.py UpdatersExample -pl
UserWarning: g0-84 not recognized
,并回溯到 break_up_by_substrings
函数出现list index out of range。原因是生成的svg的元素没有正确读入svgMobject中,导致尝试索引一个空list。