有没有人知道在Microsoft Word文档中显示保留着色和格式化代码的方法?优选地,该方法也是不显眼的并且易于更新。
我试图将代码包含为常规文本,这些文本看起来很糟糕并且在编辑常规文本时会受到阻碍。我还尝试将对象,写字板文档和文本框插入到文档中,然后将代码放入这些对象中。代码看起来更好,在编辑其余文本时更容易避免。但是,当需要添加几页代码时,这些对象只能跨越一页,这使编辑成为一场噩梦。
最后,我知道有更好的编辑器/格式处理这个问题没有问题,但我无法使用MS字。
答案 0 :(得分:1666)
对我来说,这是在单词中添加代码的最佳方式:
Insert
标签,Text
部分,点击object
按钮(位于右侧)OpenDocument Text
,这将打开一个新的嵌入式Word文档结果看起来非常好。以下是此方法的优点:
只需几秒钟。
答案 1 :(得分:932)
下载并安装Notepad++并执行以下操作:
将代码粘贴到窗口中;
从语言菜单中选择编程语言;
选择要复制的文字;
右键单击并选择 插件命令 - > 使用语法突出显示复制文本 ;
将其粘贴到MS Word中即可开始使用!
更新29/06/2013:
Notepad ++有一个名为“NppExport”的插件(已预先安装),允许您复制到RTF,HTML和ALL。它允许几十种语言,而上述IDE仅限于少数语言(没有其他插件)。
我使用将所有格式复制到剪贴板并在MS word中“粘贴为HTML”。
答案 2 :(得分:111)
代码格式 Addin现已在带Office 365的Office Addins中提供! 只需选择代码并单击转换它,它将代码文本转换为带行号的格式化颜色代码!
Bit Rejoice!
代码格式可在此处获取:https://appsource.microsoft.com/en-us/product/office/WA104379501?tab=Overview
答案 3 :(得分:81)
在阅读了很多相关答案之后,我遇到了自己的解决方案,对我来说这是最合适的解决方案。
正如您所看到的,它与Stack Overflow上的语法突出显示相同,非常棒。
重现的步骤:
堆栈溢出
感谢this guy
的示例代码答案 4 :(得分:59)
有一个不错的在线工具:http://www.planetb.ca/syntax-highlight-word
只需复制生成的代码并将其粘贴到您的文字编辑软件中即可。到目前为止,我已经在 MS Word 和 WPS Writer 上尝试过,效果非常好。 并不适合使用Firefox,但在Chrome上运行得很好(也适用于IE,但是谁想要使用它)。
其中一个主要好处是,与Word的代码格式加载项不同,它会使 NOT 混乱您的代码,并且会尊重各种语言的语法。 我在其他答案中尝试了许多其他选项,但我发现这个选项效率最高(快速且真正有效)。
在另一个答案(markup.su)中引用了另一个onlinz工具,但我发现planetB输出更优雅(虽然不太通用)。
输入:
输出
答案 5 :(得分:52)
我在Visual Studio中键入我的代码,然后复制粘贴到word中。它保留了颜色。
答案 6 :(得分:27)
当我这样做时,我已经广泛使用了样式。它有很大的帮助。
我所做的是创建一个段落样式(可能称为“Code Example
”或类似的东西),它使用等宽字体,精心挑选的标签,非常浅灰色的背景,上下黑色的薄边框(这有助于提高可见度)并且关闭拼写。我还确保线间和段间间距设置正确。然后我在顶部创建其他字符样式(例如,“Comment
”,“String
”,“Keyword
”,“Function Name Decl
”,“Variable Name Decl
”我在上面分层;那些设置颜色以及文本是否为粗体/斜体。然后,通过将粘贴的示例标记为代码并使其看起来非常好而非常简单,这适用于短片段。很长一段代码通常不应该出现在死树上。 : - )
这样做的一个好处是,它很容易适应你正在做的任何代码;你不必依靠某些IDE来弄清楚你发生了什么。 (主要问题?打印页面通常不像编辑器窗口那么宽,所以包装会很糟糕......)
答案 7 :(得分:22)
尝试定义一个名为'code'的样式并使其使用一个小的固定宽度字体,它应该看起来更好。
使用 CTRL + SPACEBAR 重置样式。
答案 8 :(得分:18)
也许这太简单了,但您是否尝试粘贴代码并将其上的字体设置为Courier New?
答案 9 :(得分:18)
如果您喜欢我并且懒得或匆忙并且不想下载其他软件,您可以使用http://markup.su/highlighter/。它非常直接,支持几个高亮主题和许多编程语言。 在我的情况下,我使用的是Visual Studio Code,由于样式化中涉及CSS(报告为here),因此不允许使用格式进行复制。
从“预览”框中复制文本,然后在Word中复制到“插入” - >文本框,从网站粘贴预览,突出显示所有文本,然后disable spell checking for that textbox。
答案 10 :(得分:16)
如果您使用的是 Sublime Text ,则可以将代码从Sublime复制到MS Word,同时保留语法高亮显示。
安装名为SublimeHighlight的包。
在Sublime中,使用光标选择要复制的代码,右键单击它,选择“复制为rtf”,然后粘贴到MS Word中。
答案 11 :(得分:12)
这有点间接,但效果非常好。获取LiveWriter并安装此插件:
http://lvildosola.blogspot.com/2007/02/code-snippet-plugin-for-windows-live.html
使用插件将代码插入博客文章。选择全部并将其复制到Word。
看起来很棒,可以包含行号。它还能很好地跨越页面。
HTH
非洲科尔比
答案 12 :(得分:10)
答案 13 :(得分:9)
根据我的经验,eclipse和Notepad ++的复制粘贴可以直接使用word。
出于某种原因,我遇到了一个没有保留着色的文件的问题。我创建了一个新的.java文件,将代码复制粘贴到该文件,然后复制粘贴到word并且它有效...
正如其他人所说,创造一个新的款式。我所做的是使用单声道字体,如courier new,小尺寸接近8px的字体,单个间隔,段落之间没有空格,使制表停小(0.5cm,1cm,..,5cm),放一个简单的线条边框围绕文本并禁用语法检查。这样我就实现了日食的线路制动,所以我不需要做更多的事情。
希望我帮忙;)
答案 14 :(得分:7)
使用Windows附带的等宽字体Lucida Console,。如果从Visual Studio剪切/粘贴或支持语法高亮显示的内容,您通常可以保留语法高亮显示的颜色方案。
答案 15 :(得分:7)
这是我遵循的最简单的方法。考虑我想粘贴java代码。
我在此处粘贴代码,以便整齐地格式化空格,制表符和花括号http://www.tutorialspoint.com/online_java_formatter.htm
然后我粘贴从步骤1获取的代码,以便将颜色,字体添加到代码http://markup.su/highlighter/
然后将从步骤2获得的预览代码粘贴到MS字。最后它看起来像这样
答案 16 :(得分:7)
Vim有一个很棒的功能,可以将代码转换为HTML格式,保留语法高亮,字体样式,背景颜色甚至行号。运行:TOhtml
并且vim创建一个包含html标记的新缓冲区。
接下来,在Web浏览器中打开此html文件,然后将其呈现的任何内容复制/粘贴到Word。 Vim提示维基有more information。
答案 17 :(得分:6)
答案 18 :(得分:6)
我正在使用Word 2010,我喜欢从github gist复制和粘贴。请记住保持源格式化!
然后我将字体更改为DejaVu Sans Mono。
您可以选择是否使用编号进行复制。
答案 19 :(得分:6)
如果您不想安装繁重的IDE,然后为您正在制作的所有代码下载插件,也可以使用SciTE粘贴代码。只需从语言菜单中选择您的语言,键入您的代码,高亮代码,选择编辑 - >复制为RTF,粘贴到Word格式化(默认粘贴)。
SciTE支持以下语言,但可能支持其他语言:Abaqus *,Ada,ANS.1 MIB定义文件*,APDL,汇编程序(NASM,MASM),Asymptote *,AutoIt *,Avenue *,批处理文件(MS -DOS),Baan *,Bash *,BlitzBasic *,Bullant *,C / C ++ / C#,Clarion ,cmake *,conf(Apache),CSound ,CSS * ,D,差异文件*,E-Script *,Eiffel *,Erlang *,旗舰(Clipper / XBase),Flash(ActionScript),Fortran *,Forth *,GAP *,Gettext,Haskell, HTML *,包含嵌入式JavaScript的HTML,VBScript,PHP和ASP *,Gui4Cli *,IDL - 包括MSIDL和XPIDL *,INI,属性*等,InnoSetup *,Java *,JavaScript *,LISP *,LOT *,Lout * ,Lua *,Make,Matlab *,Metapost *,MMIXAL,MSSQL,nnCron,NSIS *,Objective Caml *,Opal,Octave *,Pascal / Delphi *,Perl,除了一些模糊的情况*,PL / M之外的大部分*,Progress *,PostScript *,POV-Ray *,PowerBasic *,PowerShell *,PureBasic *,Python *,R *,Rebol *,Ruby *,Scheme *,scriptol *,Specman E *,Spice,Smalltalk,SQL和PLSQL,TADS3 *,TeX和LaTeX, Tcl / Tk *,VB和VBScript *,Verilog *,VHDL *,XML *,YAML *。
答案 20 :(得分:5)
复制到Eclipse并将其粘贴到Word中也是另一种选择。
答案 21 :(得分:5)
实际上没有一种干净的方法,根据你的确切风格设置它仍然看起来很腥。
您可以尝试做的是首先运行代码到HTML的转换(有许多程序可以执行此操作),然后尝试用word打开HTML文件,这可能会为您提供格式化和漂亮的代码,然后将其复制并粘贴到您的文档中。
答案 22 :(得分:4)
我也在寻找它并最终为我的代码显示创建了一些东西。 这是一个好方法:
答案 23 :(得分:4)
如果其Java源代码将其复制到Visual Studio,然后将其复制回Word。
答案 24 :(得分:4)
文档中代码的最佳呈现方式是固定宽度字体(因为它应该出现在IDE中),带有模糊的阴影背景或浅色边框,以区分该块与其他文本。
答案 25 :(得分:3)
如果您使用的是 Android Studio ,则可以简单地进行复制和粘贴,代码方面也会保留,颜色也会保留。很简单!
答案 26 :(得分:3)
一个使用多种语言进行着色的网站。 http://hilite.me/
由于它是开源的,因此您可以自己托管。该代码位于github上。
答案 27 :(得分:3)
好的,这很奇怪,但为了解决背景颜色问题,我正常粘贴文本,选择整个块,点击突出显示工具突出显示(即使突出显示设置为“无颜色”),然后我可以设置文本块的样式,而不会使文本的背景颜色保持白色。我使用的是VS 11和Word 2010,但问题已经存在了很长时间(见http://www.visualstudiodev.com/visual-studio-setup-installation/copypaste-code-from-vs-1305.shtml)
答案 28 :(得分:3)
我使用表创建了一种更简单的方法,因为它们更易于创建,管理和更一致(可以将表的样式保存在文档内部 >),但我找不到更好的代码着色方案,对此表示歉意。
步骤:
创建3x3表格。
为您的代码段(如{{3}中所述的)创建一个名称为“ 代码”的“ 段落样式” )
使用先前创建的样式创建另一个名称为“ Code_numberline ”的“ 段落样式”,但这将添加一个编号定义中的行(这将自动进行行编号)。 https://stackoverflow.com/a/25092977/8533804
保存该表格样式并享受!
答案 29 :(得分:3)
如果使用的是Intellij IDEA,只需从IDE复制代码并将其粘贴到Word文档中即可。
答案 30 :(得分:2)
我正在使用Easy Code Formatter。这也是Office加载项。它允许您选择编码样式/,并具有快速格式化按钮。很整齐。
答案 31 :(得分:2)
从Powershell ISE 复制并粘贴到Word 与Visual Studio相同。
答案 32 :(得分:1)
我使用的一种快速方法是使用Snipping Tool(已经内置在Microsoft工具中)进行堆栈溢出预览。
将代码输入Ask Question框后,我会捕获预览并将其作为图片插入MS Word文档。
以上是结果,一张图片,(不是SO代码),你可以把它放进去。
无需担心格式化,语法检查或下载新软件或 插件!
答案 33 :(得分:1)
我已阅读并尝试了所有文章,并希望对所有解决方案进行概述。最好的方法取决于您的要求。如果只有短片段的长度不超过一页,请使用“插入对象”。如果代码长于一页,请使用RTF格式。
插入文本框
插入对象>文档
RTF格式
或任何其他所见即所得的编辑器/在线工具/库来设置代码样式。
某些插件/附件
全部瘫痪或不再工作。
答案 34 :(得分:1)
如果您已经创建了包含大量代码片段的文档,并且您正在与时间赛跑(我很遗憾)。将文件另存为.doc
,而不是.docx
,瞧!为我工作。呼!
注意:显然,您的文档不具备来自>的精彩功能2007年。
注2:如果您担心这个问题,文件大小会变大。
答案 35 :(得分:1)
答案 36 :(得分:1)
答案 37 :(得分:1)
您可以将代码粘贴到LINQPad中。 然后从LINQPad复制到MS Word。 LINQPad支持以下编程语言:C#,VB,SQL,ESQL和F#
答案 38 :(得分:1)
您可以简单地在任何办公程序中使用此插件。
转到插入标签,然后获取加载项,然后搜索Easy Syntax Highlighter
支持
185 种语言和 89 个主题。
自动语言检测。
多语言代码突出显示。
答案 39 :(得分:0)
对我来说,最简单的解决方案是将代码粘贴到文档中,突出显示,然后导航到:
主页 - >款式 - > <<点击样式>>下拉箭头 - >代码
这样做的好处是代码现在可以在文档中搜索(与gargamel的解决方案不同),并且能够格式化多页代码。
答案 40 :(得分:0)
使用“保留源格式” 选项,只需右键单击并粘贴。我几乎每天都会这样做,以记录我的工作。此外,您可以在 File / Options / Advanced / Cut,CopyPaste 中设置用于从各种来源粘贴的“默认粘贴” 。同样有用:在Word选项的同一部分中启用“显示粘贴选项” 。
请注意,代码编辑器主题的所有文本属性(颜色,字体等)都将添加到Word文档的样式表中,因此,我建议您不要直接对粘贴的文本,因为那样会使您的样式表混乱,随后的粘贴将不匹配。快速学习在Word中使用“样式”(实际上是CSS)将是您的一大优势。他们非常强大。使用Word的样式表,您可以对粘贴的文本进行全局更改,但可能会导致后续的粘贴文本添加新样式。
答案 41 :(得分:0)
Hilite似乎尚未在答案中提及,因此:Hilite支持多种语言(20多种),也可以通过API在线使用,并且位于Github上(因此您可以克隆,修改并在不信任在线服务的情况下自行运行)。 在线版本也可以通过CSS规则进行调整。
几分钟前我才发现它,因为我需要一个用于将xQuery复制到Word中的工具,但找不到合适的工具来这样做。源程序是baseX,由于某种原因,其格式无法传输到Word(粘贴时也不能通过保留格式等)。另外,许多给定的答案现在(即06/2019)不再起作用或不支持xQuery。但是,Hilite做得很好。
编辑: 不幸的是,代码块不是结果的一部分,只是突出显示。尽管如此,总比没有好,并且通过添加一个块来调整结果仍然比手工格式化每一行要少
答案 42 :(得分:0)
答案 43 :(得分:0)
您可以只使用PlanetB:http://planetb.ca/syntax-highlight-word
复制并粘贴,选择语言并享受效果。