BezierInfo-2:一个开发仓库
这是"贝塞尔曲线入门"的开发仓库,该入门指南托管在 https://pomax.github.io/BezierInfo-2/
这是入门指南的新代码库,采用纯HTML/CSS/原生JS技术栈 - 旧版本可在2016-react分支上找到
新版本仍在开发中,当前任务列表请参见 https://github.com/Pomax/BezierInfo-2/issues/257
构建所有内容
使用当前的Node LTS版本(目前为v16)或更高版本,通过npm install
安装所有项目依赖。请注意,node-canvas需要您使用操作系统的包管理器安装一些Cairo库/头文件,对于Windows用户有特别说明,因为Windows没有类Unix系统那样的包管理功能。为了成功编译,GTK是必需的,但JPEG支持不是(本仓库的代码只生成PNG图像)。
还需注意,您需要安装TeX并包含几个依赖项:在Windows上,安装MiKTeX并设置为根据需要自动安装。在Linux/Unix等系统上,您需要安装以下软件包:
- xzdec
- libpoppler-glib-dev
对于LaTeX工作,您需要:
- texlive
- texlive-xetex
- texlive-extra-utils
- fonts-unfonts-core
- pdf2svg
为了简化操作,如果您的发行版使用apt-get,只需运行:
> sudo apt-get update && sudo apt-get install xzdec libpoppler-glib-dev texlive texlive-xetex texlive-extra-utils pdf2svg
如果您使用其他包安装方法,请注意对于LaTeX,您需要xetex
、pdfcrop
以及以下字体(使用TeX发行版管理器安装):
- Linux Libertine
- XITS Math
- TeX Gyre
- TeX Gyre Math
- Arphic-ttf
- IPAex(不是type1)
- UnBatang
注意:pdf2svg在Linux上可以像其他软件一样安装,但在Windows上需要自行构建工具,之后您需要将pdf2svg.exe文件放在合适的位置(如C:\Program Files (x86)\pdf2svg
),然后手动将其目录添加到PATH环境变量中,以便Windows在执行pdf2svg
命令时知道在哪里查找。
安装好所有依赖后,您现在可以使用以下命令进行持续测试:
> npm test
这将以"监视"模式启动构建,在浏览器中打开编译后的项目,并在您更新和保存文件时重新编译。
要运行单次完整构建,而不是持续构建,请使用:
> npm start
请注意,对于开发工作,您通常需要在处理代码时一直运行npm test
。一旦准备好提交PR,请运行npm start
进行"真正的"构建而不是开发构建,然后形成提交,这样您就能推送"最终"代码而不是中间的开发代码。
专门命令:
npm run regenerate
运行构建,然后对最终的.html文件运行prettier
,并运行link-checker
以确保内容中没有死链接。npm run deploy
运行regenerate
,然后将docs
目录的内容复制到../bezierinfo
,这是实际网页视图仓库在我文件系统中的位置。
更专门的命令:
请查看package.json中的"scripts"
部分,了解完整的命令列表。大多数这些命令只是构建链步骤,单独运行它们基本上没有意义。
奇怪的个人依赖?
有一些依赖项是从我自己的项目分支中拉取的,因为我的版本包含一些补丁(由我自己或其他人提供),这些补丁解决了尚未合并到上游的问题或不足(或者已合并但尚未发布新版本?)。