Latex最漂亮高亮代码制造方法

Latex最漂亮高亮代码制造方法,第1张

文章目录 吹牛逼时间简易版:listing包自定义颜色与引入包格式设置代码 完美版:highlight.js原理从头开始配置的方法highlight.js方法的辅助文件,开箱即用目录结构用法

吹牛逼时间

如果你看优秀论文,附录里都会帖代码,虽然附录很多人不看,但是你只要贴了,就肯定会有人看,所以一定要贴的好看。

此前,我知道一些技术,比如listing包,但是这个包限制比较大,而且没有什么成熟的总结,用起来也别扭,经常出现意外。所以我就疯狂谷歌,最后得出结论:

listing包没太大用,只能做个基础的样式,真要好看,还得用highlight.js组件自己做。

但是,highlight.js需要队伍里有个会web开发的,至少基础的HTML,CSS,JS,不说会写,至少会看才能驾驭这项技术,由此可见队伍里有个学计算机的就是好,除了不能给你生孩子,啥都能干()

不过,我还是准备好了一些工具,让一个有vscode编辑器使用基础的人使用(别问我vscode是什么)

简易版:listing包

Latex常用功能模板集合

自定义颜色与引入包

下面几个颜色可以自己修改,使用rgb模式。但是还是可以看出来,可以修改的内容实在是太少了,所以颜色比黑色好点,但是还是比较单调。

\usepackage{listings}
\usepackage{xcolor} % 自定义颜色
\definecolor{str_color}{RGB}{106,135,89} % 这几个颜色自行修改
\definecolor{background_color}{RGB}{43,43,43}
\definecolor{key_color}{RGB}{204,120,50}
\definecolor{comment_color}{RGB}{128,128,128}
格式设置代码
% 设置代码风格
\lstset{
    % 格式控制
    basicstyle=\small,% 设置基本字体
    numbers=left, %设置行号位置
    numberstyle=\tiny, %设置行号大小
    escapeinside=``, %逃逸字符(1左面的键),用于显示中文
    breaklines, %自动折行
    extendedchars=false, %解决代码跨页时,章节标题,页眉等汉字不显示的问题
    %xleftmargin=2em,xrightmargin=2em, aboveskip=1em, %设置边距
    tabsize=4, %设置tab空格数
    showspaces=false, %不显示空格
    frame=single, %设置边框格式
    % 颜色控制,本人独爱dracula风格。更复杂的搭配要先转html再转pdf
    % 只能用注释断行,但是还是容易出现各种玄学问题
    basicstyle=\color{white},
    backgroundcolor=\color{background_color},
    keywordstyle=\color{key_color}, %设置关键字颜色
    stringstyle=\color{str_color}, % 设置字符串颜色
    commentstyle=\color{comment_color}, %设置注释颜色
}
完美版:highlight.js 原理

highlight.js,原理就是,下载一些辅助文件,里面有js代码和css样式。

然后你把你的代码放到一个html里,再把需要的js脚本导入到这个html里,js就可以自动将代码的样式替换为辅助文件里的css样式,在浏览器里打开网页就会看到漂亮的代码。

之后就是用浏览器自带的打印功能即可生成pdf。

这个时候在数学建模论文里不要加附录了就,我们直接将latex的正文部分和附件代码pdf拼接起来就可以。pdf拼接的办法很多,也很无脑,我就不赘述了。

从头开始配置的方法

highlight.js官网

highlight.js方法的辅助文件,开箱即用

当然,我很懒,所以我自己配了个小工具用来辅助,省的自己一次一次写。

链接
提取码:a40i

工具很简单,因为我没有找到更好的办法,所以不能做到完全的无脑使用,还是要稍微懂一点的。

目录结构

code用于临时存放自己的代码,放到一个文件夹里在vscode里复制粘贴比较方便highlight文件夹储存了各种配置,里面有个style文件夹,就存放了各种主题。test文件随便用,用于测试type.css是我自己创建的,用于对应latex一二三级标题大小和字体的css文件模板里面有一二三级标题和代码块,复制粘贴即可使用最终要把自己想填充的内容放到生成代码页文件里,然后在浏览器里打开即可打印pdf 用法


这是我用代码生成的代码图,原始代码就是图中的模板代码(禁止套娃)

你要放什么,就把对应的东西按顺序粘贴到生成代码页里,然后在标签里填充自己要的东西。

第三行的stylesheet,有个href属性,这就是当前代码的样式路径,你可以自己修改路径,选取自己想要的样式,如果不知道长什么样,可以到官网看或者自己试。p标签意思就是一段文本,class属性有title-1,title-2,title-3分别对应三级标题,想修改字号大小可以进type.css里修改数值。然后标签中间夹的就是文本。注意
代码块,class属性就是你要用的语言,为language-语言类型。在code里面填充代码即可。但是请注意,你的代码整体缩进是对应在源文档里的,所以如果你要想让代码紧贴左边,就需要让生成代码页里的代码顶到最左边。具体 *** 作,vscode有shift+tab键整体左移,不错。					
										


					

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/941497.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-17
下一篇 2022-05-17

发表评论

登录后才能评论

评论列表(0条)