V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
b244183
V2EX  ›  程序员

如何自行打印代码(带高亮 样式什么的)

  •  
  •   b244183 · 2015-09-19 21:42:14 +08:00 · 8704 次点击
    这是一个创建于 3139 天前的主题,其中的信息可能已经有所发展或是发生改变。
    14 条回复    2015-09-21 00:05:51 +08:00
    janxin
        1
    janxin  
       2015-09-19 22:10:24 +08:00
    找个在线的代码格式化带高亮的工具复制到 Word 里


    编辑器的话:
    ultraedit 应该是支持直接输出成 RTF 的
    Sublimetext 有 SublimeHighlight ,可以输出 RTF
    Atom 有 copy-as-rtf
    liiihhhh
        2
    liiihhhh  
       2015-09-19 22:19:16 +08:00
    如果是你用 vs 的话,直接复制到 word 就可以了,格式什么的都会带过来
    twor2
        3
    twor2  
       2015-09-19 22:23:24 +08:00
    mcfog
        4
    mcfog  
       2015-09-19 22:29:07 +08:00
    试了试至少 Mac 上 J 家的 IDE 是可以直接复制到 word 里带高亮的
    exoticknight
        5
    exoticknight  
       2015-09-19 22:31:08 +08:00
    曾经试过 sublime text 转出 pdf 打印
    SCaffrey
        6
    SCaffrey  
       2015-09-19 22:33:57 +08:00
    hljs+打印 html
    Comdex
        7
    Comdex  
       2015-09-19 22:58:30 +08:00
    @janxin
    @liiihhhh
    @twor2
    @exoticknight
    @SCaffrey 大家所说的都是不带行号的吧?
    SourceMan
        8
    SourceMan  
       2015-09-20 00:06:08 +08:00 via Android
    截屏,打印图片
    88250
        9
    88250  
       2015-09-20 00:21:34 +08:00   ❤️ 1
    有两种方式:

    1. 分析源码并构造语法树,根据元素语义进行高亮(专业 IDE 里是这个方式)
    2. 通过正则表达式匹配源码元素并进行高亮(通常前端高亮工具是这个方式)

    1 的实现难度较高,但是很准确
    2 非常简单,但是有的时候会错误高亮

    看情况了,建议楼主用 2 ,除非你要写 IDE~
    llhhss
        10
    llhhss  
       2015-09-20 02:08:34 +08:00 via iPhone
    Notepad++
    用带格式的复制复制到 word 打印
    blank4me
        11
    blank4me  
       2015-09-20 09:21:45 +08:00   ❤️ 1
    vim 使用 TOhtml 命令可以生成 html 文件。有了 html 就可以打印了。
    joyee
        12
    joyee  
       2015-09-20 11:09:10 +08:00
    markdown -> HTML -> 通过 JavaScript 代码高亮( e.g. 用 highlight.js ,当然要自己撸一个也是可以的)-> Chrome 转换成 PDF -> 打印

    这种方式可以各种自由微调(比如换行、行距,字体什么的更不在话下……)而且如果是代码夹杂正文的也很方便。

    不过我其实比较好奇的是,全彩打代码,不贵吗 hhhhhhhhh
    janxin
        13
    janxin  
       2015-09-20 12:36:55 +08:00
    @joyee 这样肯定就不考虑成本了
    lanphon
        14
    lanphon  
       2015-09-21 00:05:51 +08:00
    latex 下的 lstlisting 宏包,直接生成 PDF 文件
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5267 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 09:04 · PVG 17:04 · LAX 02:04 · JFK 05:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.