Как оформить программный код (С++) в Microsoft Word?
Есть программный код на C++, который необходимо вставить в отчет по работе в Word 2013.
Но если напрямую вставлять его — то получается совершенно не читаемая белиберда.
Хочется оформить так, как код выглядит в компиляторе — с номерами строк, правильным форматированием и подсветкой синтаксиса.
Встроенных средств для этого я не нашел. Подскажите, как это можно сделать?
- Вопрос задан более трёх лет назад
- 113487 просмотров
Оценить 4 комментария
- Вконтакте
Батенька, а вам не кажется, что здесь про микроскоп фраза ой как уместна… Хотя, даже не она, а немного другая!
Латех осилить сложно что ли?
Как так? Создаете свой стиль, там настраивайте шрифт, отступы, табуляцию и тд. Вставляете текст и применяете к нему ваш стиль. Подстветка останется, если в стиле не переопределять цвет шрифта.
С номерами строк придется труднее — надо будет настроить свой стиль нумерации, и в созданном выше стиле абзаца указать, чтобы использовать эту нумерацию.
Displaying Code Snippets in Microsoft Word with Syntax Highlighting

Finding a way to decently show our source code on the web recently became a rather trivial task thanks to many JavaScript + CSS based libraries such as highlightjs, PrismJS, Prettify, SyntaxHighlighter & more. It's not so easy to achieve the same results inside a text-editing software such as MS Word, to the point that I've seen more than few devs adopting the awful & dreadful screenshot method, which consist in blindly capture a portion of their developer framework GUI and then embedding it as an image inside the Word document.
Should we do that? Of course no! There is at least one better way to do that, which also is far less intrusive (and size-intensive) and also gives us the chance to modify/review our code snippet after it has been pasted. Let's see how we can do it.
- Open MS Word and place the cursor where you want to paste the snippet.
- Go to the Insert tab, from there click to the Object. button close to the right-end of the toolbar. A popup will show up: select OpenDocument Text.
- A new "embedded" document will appear: go to your favourite Developer Framework, such as Visual Studio, Eclipse, Android Studio, Notepad++ or the one doing the highlight the way you want it to be. Copy the code from there and paste it to the new document.
- Save and close the new document.
Your efforts will be rewarded with something like that:

This solution, other than being visually nice, grants you the following benefits:
Как отобразить фрагменты кода в формате MS Word с сохранением и подсветкой синтаксиса?
кто-нибудь знает способ для отображения кода в документах Microsoft Word, который сохраняет окраску и форматирование? Предпочтительно, чтобы метод также был ненавязчивым и простым в обновлении.
Я попытался включить код в качестве обычного текста, который выглядит ужасно и мешает при редактировании обычного текста. Я также попытался вставить объекты, документ WordPad и текстовое поле в документ, а затем поместить код внутри этих объектов. Код выглядит намного лучше и его легче избежать при редактировании остальной части текста. Однако эти объекты могут охватывать только одну страницу, что делает редактирование кошмаром, когда необходимо добавить несколько страниц кода.
наконец, я знаю, что есть гораздо лучшие редакторы/форматы, которые не имеют проблем с этим, но я застрял в работе с MS word.
30 ответов
вот лучший способ, для меня, добавить код внутри word:
- перейдите на вкладку» вставить», нажмите кнопку» объект » (она находится справа)
- выберите «текст OpenDocument», который откроет новый встроенный документ word
- скопируйте и вставьте код из Visual Studio / Eclipse внутри этой встроенной страницы word
- сохранить и закрыть
результат выглядит очень красиво. Вот преимущества этого метода:
- в код сохраняет свой оригинальный макет и цвета
- код отделен от остальной части документа, как если бы это было изображение или диаграмма
- орфографические ошибки не будут выделены в коде (это круто !)
и это занимает всего несколько секунд.
скачать и установить Блокнот++ и сделать следующее:
вставьте код в окно;
Выберите язык программирования из меню язык;
выбрать текст для копирования;
щелкните правой кнопкой мыши и выберите команды плагина ->копировать текст с синтаксисом Выделение;
вставить его в MS Word и вы хорошо идти!
обновление 29/06/2013:
Notepad++ имеет плагин под названием «NppExport» (поставляется с предустановленной), который позволяет копировать в RTF, HTML и все. Он позволяет использовать десятки языков, в то время как вышеупомянутые IDE ограничены несколькими (без других плагинов).
Я использую копирование всех форматов в буфер обмена и «вставить как HTML » в MS word.


Код Addin теперь доступен в Office Addins с Office 365 ! Просто выберите код и нажмите преобразовать его, и он преобразует текст кода в форматированный цветовой код с номерами строк .
Немного Радоваться!
прочитав много связанных ответов, я наткнулся на свое собственное решение, которое для меня является наиболее подходящим.
результат выглядит так: 
Как вы можете видеть, это та же подсветка синтаксиса, что и при переполнении стека, что довольно удивительно.
при переполнении стека
- перейти Задать Вопрос (предпочтительно с хром)
- вставить код и добавить Language тега (например, Java), чтобы получить синтаксис hightlighting
- копировать код из preview
- вставить > таблица > 1×1
- вставить код
- Дизайн Таблицы > Границы > Нет Границы
- выберите код > изменить > найти > заменить
Поиск Документа ^p (Знак Абзаца) Заменить На ^l (Ручной Разрыв Строки)
(Это необходимо для удаления пробелов между некоторыми строками) - снова выберите код > обзор > язык > проверка «не проверять орфографию или грамматику»
- наконец, добавьте заголовок, используя ссылки > вставить заголовок > новая метка > назовите его «листинг» или sth
пример кода спасибо этот парень
Я набираю свой код в Visual Studio, а затем копирую-вставляю в word. он сохраняет цвета.
просто скопируйте сгенерированный код и вставьте его в программное обеспечение для редактирования word. До сих пор я пробовал это на MS Word и WPS Writer, работает очень хорошо. Не играет хорошо с Firefox, но отлично работает в Chrome (и IE тоже, но кто хочет это использовать).
одним из основных преимуществ является то, что, в отличие от надстройки формата кода для Word, она не возиться с вашим кодом, и уважает синтаксис различных языков. Я пробовал много других вариантов, предложенных в другом ответе, но я нашел этот наиболее эффективным (быстрый и действительно эффективное).
существует также другой инструмент onlinz, указанный в другом ответе (markup.su) но я нахожу выход planetB более элегантным (хотя и менее универсальным).
вход :

выход :

когда я это сделал, я широко использовал стили. Это очень помогает.
то, что я делаю, это создать стиль абзаца (возможно, называемый» Code Example » или что-то в этом роде), который использует моноширинный шрифт, тщательно выбранные вкладки, очень светло-серый фон, тонкую черную границу выше и ниже (что помогает видимости много) и с орфографией выключен. Я также убедиться, что в строке и между абзацами устанавливаются правильно. Затем я создаю дополнительные стили символов сверху (например,, » Comment «,» String «,» Keyword «,» Function Name Decl «,» Variable Name Decl «), который я накладываю сверху; те устанавливают цвет и является ли текст полужирным/курсивом. Затем довольно просто пройти и пометить вставленный пример как код, и он выйдет очень хорошо, и это хорошо работает для коротких фрагментов. Длинные куски кода, вероятно, не должны быть в чем-то, что собирается ехать на мертвое дерево. 🙂
преимущество делать его таким образом что легко приспособиться к какой бы код вы ни делали; вам не нужно полагаться на какую-то IDE, чтобы выяснить, что происходит для вас. (Главная проблема? Печатные страницы обычно не так широки, как окна редактора, поэтому упаковка будет сосать. )
попробуйте определить стиль под названием » Код » и сделать его использовать небольшой шрифт фиксированной ширины, он должен выглядеть лучше.
использовать CTRL + пробел для сброса стиля.
может быть, это слишком просто, но вы пытались вставить свой код и установить шрифт на нем, чтобы курьер новый?
Если вы похожи на меня и слишком ленивы или спешите и не хотите загружать дополнительное программное обеспечение, вы можете использоватьhttp://markup.su/highlighter/. Это очень прямолинейно и поддерживает несколько тем подсветки и многие языки программирования.
в моем случае я использую Код Visual Studio, что не позволяет копировать с форматом из-за CSS, участвующего в стилизации (как сообщалось здесь).
скопируйте текст из Окно предварительного просмотра, а затем в Word перейдите к Insert — > Textbox, вставьте предварительный просмотр с веб-сайта, выделите весь текст, а затем отключить проверку орфографии для текстового поля.
вот как выглядит код, наконец.
Если вы используете Возвышенное Текст, вы можете скопировать код из Sublime в MS Word, сохранив подсветку синтаксиса.
установить пакет под названием SublimeHighlight.
в Sublime, используя курсор, выберите код, который вы хотите скопировать, щелкните его правой кнопкой мыши, выберите «Копировать как rtf» и вставьте в MS Word.
Это немного косвенно, но работает очень хорошо. Получить LiveWriter и установить этот плагин:
вставьте свой код с помощью плагина в сообщение в блоге. Выберите все и скопируйте его в Word.
Он отлично выглядит и может включать номера строк. Он также охватывает страницы прилично.
по моему опыту copy-paste из eclipse и Notepad++ работает непосредственно с word.
по какой-то причине у меня возникла проблема с файлом, который не сохранил окраску. Я сделал новый .java-файл, скопируйте-вставьте код в это, затем скопируйте-вставьте в word, и это сработало.
Как сказали другие ребята, создайте новый стиль абзаца. Что я делаю, так это использую моно-разнесенный шрифт, такой как courier new, небольшой размер, близкий к 8px для шрифтов, один разнесенный без пространства между абзацами, сделайте табуляции небольшой (0,5 см,1 см. 5 см), поместите простую границу строки вокруг текста и отключите проверки грамматики. Таким образом, я достиг линейного торможения eclipse, поэтому мне больше ничего не нужно делать.
надеюсь, что помогла 😉
используйте моноширинный шрифт, например Консоль Lucida,, который поставляется с Windows. Если вырезать / вставить из Visual Studio или что-то, что поддерживает подсветку синтаксиса, часто можно сохранить цветовую схему подсветки синтаксиса.
Vim имеет отличную функцию, которая преобразует код в формат HTML, сохраняя подсветку синтаксиса, стиль шрифта, цвет фона и даже номера строк. Запустить :TOhtml и vim создает новый буфер, содержащий разметку html.
затем откройте этот html-файл в веб-браузере и скопируйте/вставьте все, что он отобразил в Word. Vim советы wiki имеет дополнительная информация.
Это самый простой подход, которому я следую. Рассмотрим, что я хочу вставить java-код.
я вставляю код здесь, чтобы пробелы, вкладки и цветочные скобки были аккуратно сформированы http://www.tutorialspoint.com/online_java_formatter.htm
затем я вставляю код, полученный из Шага 1 здесь, чтобы цвета, шрифты были добавлены в код http://markup.su/highlighter/
вставить предварительный код, полученный от шага 2 до MS word. Наконец, это будет выглядеть так

на самом деле нет чистого способа сделать это, и он все еще может выглядеть подозрительно на основе ваших точных настроек стиля.
Что вы можете попытаться сделать, это сначала запустить преобразование кода в HTML (есть много программ, которые это делают), а затем попытаться открыть HTML-файл с помощью word, который, надеюсь, предоставит вам форматированный и красивый код, а затем скопировать и вставить его в документ.
вы также можете использовать SciTE для вставки кода, если вы не хотите устанавливать тяжелые IDEs, а затем загружать плагины для всего кода, который вы делаете. Просто выберите язык из меню язык, введите код, высокий свет код, выберите Редактировать- > Копировать как RTF, вставить в слово с форматированием (по умолчанию вставить).
SciTE поддерживает следующие языки, но, вероятно, поддерживает другие: Abaqus*, Ada, ANS.1 MIB файлы определения*, APDL, ассемблер (NASM, MASM), асимптота*, AutoIt*, Проспект*, пакетные файлы (МС-Дос), Баан* Баш*, BlitzBasic*, щелкнуть по этому значку*, Си/Си++/Си#, Clarion, cmake*, conf (Apache), CSound, CSS; а, д, сравнить файлы*, е-сценарий*, таких*, Эрланг*, флагманский корабль (Клипер / пакете xbase), Flash (ActionScript), Фортран*, Д.* разрыв*, то gettext, Хаскелл, в формате HTML* в HTML с внедренными JavaScript, на языке VBScript, PHP и ASP*, Gui4Cli* ИДЛ — как MSIDL и XPIDL*, Ини свойства* и подобные, помощи innosetup*, на Java*, наличие*, а*, много*, Хама*, Луа*, Сделать, Матлаб*, то metapost*, MMIXAL, СУБД MSSQL, программы, НСИ*, цель CAML*, опал, Октав* Паскаль/Делфи*, Perl, и большинство из них, за исключением некоторых сомнительных случаях*, МН/м* прогресс*, приписка*, ПОВ-Рей*, powerbasic выступает*, он*, перебазируют* питон*, р*, у Rebol*, Рубин* схемы*, scriptol*, Specman E и*, специй, общее, SQL и PLSQL, TADS3*, Tex и LaTeX, на TCL/ТЗ*, с VB и VBScript*, на языке Verilog*, комплекс*, в XML*, и YAML*.
Я использую Word 2010, и мне нравится копировать и вставлять из GitHub gist. Только не забудьте сохранить исходное форматирование!
затем я меняю шрифт на DejaVu Sans Mono.
вы можете выбрать копирование С или без нумерации.
копирование в Eclipse и вставка его в Word также является еще одним вариантом.
Лучшая презентация для кода в документах-шрифт фиксированной ширины (как он должен отображаться в IDE), с слабым, затененным фоном или светлой границей, чтобы отличить блок от другого текста.
если его исходный код Java скопируйте его в Visual Studio, а затем скопируйте его обратно в Word.
Ok, это странно, но для решения проблемы цвета фона я вставляю текст как обычно, выделяю весь блок, нажимаю на инструмент выделения, чтобы выделить (даже если выделение установлено на «нет цвета»), а затем я могу стиль текстового блока без цвета фона текста, оставшегося белым. Я использую VS 11 и Word 2010, но проблема существует уже давно (см. http://www.visualstudiodev.com/visual-studio-setup-installation/copypaste-code-from-vs-1305.shtml)
Если вы используете Android Studio, вы можете просто скопировать и вставить, и код будет сохранен и цветах, а также. Достаточно просто!
Я также искал его и в конечном итоге создал что-то для моего отображения кода. Вот хороший способ:
- создайте прямоугольную форму и поместите текст внутри.
- измените шрифт на Consolas и размер

просто вставьте код в MS Words, выберите его- > затем щелкните правой кнопкой мыши — > нумерация. В этом случае MS Word будет интерпретировать ваш код как маркер / нумерованный список.
Если вы используете TextMate (в OS X), используйте команду «копировать как rtf». Он поместит красиво напечатанный текст в буфер обмена.
оттуда вы можете вставить в word или что-нибудь еще.
из Powershell ISE скопировать и вставить слово.
То же самое с Visual Studio.
Если у вас уже есть документ, созданный с большим количеством фрагментов кода в нем, и вы мчитесь против времени (как я, к сожалению). Сохраните файл как .doc в противоположность .docx и вуаля! Работать на меня. Фу!
Примечание: очевидно, что ваш документ не может иметь причудливых функций из > word 2007.
примечание 2: размер файла становится больше, если это важно для вас.
самое простое решение, по крайней мере для меня, — вставить код в документ, выделить его, а затем перейти к:
главная -> стили -> > -> код
Это имеет то преимущество, что код теперь доступен для поиска в документе (в отличие от решения gargamel), а также может форматировать код, который является несколькими страницами.
How to Insert Source Code in MS Word
Sometimes one might want to insert a code snippet in Word documents. For instance, I have been creating a closure report for one of my project where I need to insert code snippets. If you are a programmer or developer, then you might want to insert source code into documents. This tutorial will explain how to insert source code in MS Word.
You might think what’s the big deal in inserting source code in Word documents. All it needs is to copy source code and paste it into Word isn’t? Yes, I hear it. But try doing it and you will realize why just copy & paste is not the right way of inserting source code in MS Word. The reason is, just copy paste of source code will have many issues – such as loss of text format, syntax highlighting, indentation and Word highlighting syntax errors.
Ok! What about taking a snapshot of the code and inserting it into Word? Of course, you can do that. But you will not be able to edit the code inside the document. So, here’s the right way of inserting source code in MS Word.
How to Insert Source code in MS Word?
Microsoft Word allows to insert source code into documents as an Object. To do that, follow the below steps.
Step 1: Click on INSERT > Object . Alternatively, you can press ALT + N and then ‘J’ to open Object dialog box.

Step 2: Select «OpenDocument Text» under «Create New» tab in Object dialog box.

Step 3: Click «OK»
Step 4: A new document will be opened with the name as «Document in <name of your parent document>»
Step 5: Copy source code from any programming development environment and paste it in the newly opened document (let’s call it as source code document).
Step 6: Save and close source code document. Remember, you are closing only the newly opened document and not the parent document.
You will notice lots of spelling errors being highlighted in the new document. But never mind, Word will ignore all those once you save and close the document.
Step 7: You will be taken back to your parent document, where you will find the source code being inserted.
That’s it! You can double-click on the inserted object to edit the source code.
How to copy source code from PuTTY and paste it into Word retaining text formats?
Did you copy source code from PuTTY and pasted it into Word document as an object to only see text formats being removed? Well, it means while copying the source code PuTTY should copy it in RTF (Rich Text Format) format. It does not do that by default and here’s how you can enable it.
Step 1: Right-click on PuTTY title bar and select «Change Settings»
Step 2: Click on Window > Selection and check “ Paste to clipboard in RTF as well as plain text» under heading «Formatting of pasted characters»

Step 3: Click «Apply»
Step 4: Now copy source code from PuTTY and paste it into Word document.
How to copy source code from Notepad++ and paste it into Word?
Step 1: Open your code in Notepad++.
Step 2: Select the code, right-click and select Plugin commands > Copy Text with Syntax Highlighting .
Step 3: Paste it into Word document and you will see syntax highlighting being retained.

Still source code in Word does not retain format and syntax highlighting?
Then you can take help from this link, which use Google’s Syntax highlighter to format your code and adds language specific syntax highlighting. Now copy the formatted code and paste it in Word.