28

Мне нужно написать документ в MS-Word 2007, который содержит множество примеров кода VB.NET и C #.

Каков наилучший способ заставить код выглядеть разумно в документе?

Какие стили и т.д. Используют люди?

(У меня нет времени вручную редактировать / форматировать код, и я был бы очень рад, если бы он выглядел так же, как в студии разработчиков)

В других работах, которые делают люди, которые пишут книги по программированию, для этого должно быть хорошее автоматизированное решение ...


Мне бы хотелось использовать таблицы стилей слов для управления тем, как выглядит код, но я не хочу "выбирать" каждое ключевое слово и т.д., Чтобы установить его стиль.


см. также https://stackoverflow.com/questions/387453/how-do-you-display-code-snippets-in-ms-word-preserving-format-and-syntax-highlig/2653406#2653406

5 ответов5

14

Вы можете использовать службы выделения исходного текста и скопировать / вставить в документ Word. Я думаю, что это будет самый быстрый способ (обн. Также будет работать простая копировальная паста от VS).

Второй способ - создать стиль для блока кода, сохранить его и затем применить ко всем блокам кода.

11

Word изначально не поддерживает подсветку синтаксиса или другое форматирование кода. Поэтому лучше всего создавать подсветку и т.д. В другой программе (visual studio, eclipse, notepad++ или на этом веб-сайте, который может работать на 14 языках и не требует установки).

Однако при вставке текста выполнение этого непосредственно в самом текстовом документе может привести к таким головным болям, как орфография и грамматические подчеркивания.

Чтобы исправить это, вместо прямого копирования и вставки используйте Вставка -> Объект -> Текст OpenDocument. Это откроет новый документ. Вставьте текст сюда и закройте окно. Ваш код теперь будет отображаться как объект с полным форматированием, показанным в предыдущем окне, но без проверки орфографии или проверки грамматики.

Хотя можно отформатировать код с помощью стилей, для этого нет встроенных стилей, и это не совсем то, для чего предназначены стили. Если вы хотите использовать стили для форматирования кода, просто используйте этот стиль во всех объектах, которые вы создаете.

Обновление: если вы хотите сделать это со стилями кода, вот несколько идей.

  • Используйте стиль абзаца с моноширинным шрифтом
  • Светлый фон (серый работает хорошо)
  • Орфография выключена
  • Убедитесь, что межстрочный интервал соответствует желаемому

Если вы хотите добавить немного больше сложности, вы можете наложить стили символов поверх стиля абзаца, чтобы создать нечто похожее на предварительный просмотр кода в stackoverflow с другим форматированием и / или цветом для имен классов, имен экземпляров и т.д.

Настройка стиля, подобного этому, требует работы, но вы можете получить более настраиваемый результат по сравнению с тем, что вы можете получить, используя подсветку синтаксиса в notepad++ или Visual Studio.

В качестве ускорения при форматировании кода со стилем, это может помочь сначала сделать подсветку синтаксиса в одной из этих программ, а затем использовать утилиту поиска Word для поиска текста, который соответствует цвету или другому стилю шрифта, так что вам не нужно вручную определить, что такое имя класса, например, в коде вручную (оно находится под форматом more-> в приглашении поиска).

4

Мне нравится использовать Notepad++. В NP++ выберите правильный синтаксис, щелкните правой кнопкой мыши по выбранному коду, выберите "Плагин команды", нажмите "Копировать текст с подсветкой синтаксиса". Вставьте его в Word, и у вас получится очень красивый код.

Источник: Лучший способ показать фрагменты кода в слове?[закрыто]

3

Если вы настроите ваш VS так, как вы хотите, чтобы он выглядел в документе, будет работать простая вставка кода. Это сохранит цвета и другое форматирование.

Однако, если вы когда-нибудь захотите изменить стиль в документе, это будет очень сложно сделать. В этом случае, создание стиля code в слове и проверка того, что весь вставленный код установлен в него, является подходящим способом (тогда, если вы измените стиль, все, помеченное как этот стиль, изменится). Это не позволит вам иметь подсветку синтаксиса, как в VS.

-1

Это то, что я сделал.

Конечные результаты:

https://stackoverflow.com/a/25092977/1161594

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .