Wie füge ich einem Microsoft Word-Dokument formatierten Code hinzu?


29

Ich muss ein Dokument in MS-Word 2007 schreiben, das viele Beispiele für VB.NET- und C # -Code enthält.

Wie lässt sich der Code am besten in das Dokument integrieren?

Welche Stile benutzen die Leute?

(Ich habe keine Zeit, den Code von Hand zu bearbeiten / formatieren, und würde mich sehr freuen, wenn er genauso aussehen würde wie im Entwicklerstudio.)

In anderen Arbeiten, die Leute machen, die Programmierbücher schreiben, muss es eine gute automatisierte Lösung dafür geben ...


Ich würde gerne Word Stylesheets verwenden, um zu steuern, wie der Code aussieht, aber ich möchte nicht jedes Keyword usw. "auswählen" müssen, um den Stil festzulegen.


Siehe auch https://stackoverflow.com/questions/387453/how-do-you-display-code-snippets-in-ms-word-preserving-format-and-syntax-highlig/2653406#2653406


Möglicherweise finden Sie stackoverflow.com/questions/760121/… nützlich.
Reisende

Von @ user1068538: Dieser Link könnte nützlich sein stackoverflow.com/a/2653406/1068538 . Ich denke, @ gargamels Antwort (im obigen Link zu SO) ist der einfachste Weg, Programmcode in einem Word-Dokument zu verwenden, insbesondere wenn Sie ein Buch schreiben, da es keine Rechtschreibfehler enthält.
Fixer1234

Antworten:


14

Sie können Quellmarkierungsdienste verwenden und in ein Word-Dokument kopieren / einfügen. Ich denke es wird der schnellste Weg sein ( upd. Einfache Copypaste von VS wird auch funktionieren).

Die zweite Möglichkeit besteht darin, einen Stil für Codeblöcke zu erstellen, ihn zu speichern und dann auf alle Codeblöcke anzuwenden.


1
Wie verwende ich "Quellenhervorhebungsdienste"?
Ian Ringrose

4
Gehen Sie beispielsweise zu source.virtser.net , fügen Sie C # -Code ein, markieren Sie die Ausgabe, kopieren Sie sie und fügen Sie sie in Word ein.

source.virtser.net link give "Seite nicht gefunden" error, "Die Seite, auf die Sie zugreifen
wollten,

11

Word unterstützt Syntaxhervorhebungen oder andere Codeformatierungen nicht von Haus aus. Daher ist es am besten, die Hervorhebung usw. in einem anderen Programm zu erstellen (Visual Studio, Eclipse, Notepad ++ oder diese Website, die 14 Sprachen beherrscht und keine Installation erfordert).

Wenn Sie den Text jedoch direkt in das Word-Dokument einfügen, kann dies zu Kopfschmerzen wie Rechtschreibung und Unterstreichung der Grammatik führen.

Um dies zu beheben, anstatt direkt zu kopieren und einzufügen, verwenden Sie Einfügen -> Objekt -> OpenDocument-Text . Dadurch wird ein neues Dokument geöffnet. Fügen Sie den Text hier ein und schließen Sie das Fenster. Ihr Code wird nun als Objekt angezeigt, mit allen im vorherigen Fenster angezeigten Formatierungen, jedoch ohne Rechtschreib- oder Grammatikprüfung.

Obwohl es möglich ist, Code mit Stilen zu formatieren, gibt es keine eingebauten Stile, um dies zu tun, und es ist nicht wirklich das, was Stile tun sollen. Wenn Sie Formatvorlagen zum Formatieren Ihres Codes verwenden möchten, verwenden Sie diese Formatvorlage in allen von Ihnen erstellten Objekten.

Update: Wenn Sie dies mit Codestilen tun möchten, finden Sie hier einige Ideen.

  • Verwenden Sie einen Absatzstil mit einer monospaced Schriftart
  • Heller Hintergrund (grau funktioniert gut)
  • Rechtschreibung deaktiviert
  • Stellen Sie sicher, dass der Zeilenabstand Ihren Wünschen entspricht

Wenn Sie etwas mehr Komplexität hinzufügen möchten, können Sie Zeichenstile über den Absatzstil legen, um eine ähnliche Darstellung wie in der Codevorschau beim Stapelüberlauf mit unterschiedlicher Formatierung und / oder Farbe für Klassennamen, Instanznamen usw. zu erhalten.

Das Einrichten des Stils wie folgt ist aufwendig, aber Sie können ein anpassbareres Ergebnis erzielen als mit der Syntax-Hervorhebung von Notepad ++ oder Visual Studio.

Zur Beschleunigung der Formatierung von Code mit einem Stil kann es hilfreich sein, zuerst die Syntaxhervorhebung in einem dieser Programme vorzunehmen und dann mit dem Dienstprogramm "Suchen" von Word nach Text zu suchen, der einer Farbe oder einem anderen Schriftstil entspricht, ohne dass dies erforderlich ist Identifizieren Sie manuell, was ein Klassenname ist, zum Beispiel im Code manuell (es befindet sich unter more-> format in der Suchabfrage).


@ianRingrose gibt es eine andere Funktion, die Sie suchen?
Soandos

Ich wünsche mir, dass die Syntax-Hervorhebung mit Word-Stilen durchgeführt wird, damit ich die Schriftgröße usw. problemlos ändern kann.
Ian Ringrose

@IanRingrose, aktualisiert. Lassen Sie mich wissen, wenn etwas fehlt.
Soandos

Ich denke, dies ist eine der besten Möglichkeiten, Code in Word zu formatieren. Ich hatte immer Probleme beim Formatieren und als Objekt habe ich keine Probleme mehr. Vielen Dank ; )
xtarsy

In MS Word 2007 und höher besteht eine Alternative zu "Einfügen -> Objekt -> OpenDocument-Text" darin, den Code nach dem Einfügen auszuwählen und "Überprüfen |" zu verwenden Prüfen | Stellen Sie die Sprache ein und stellen Sie sicher, dass "Rechtschreibung oder Grammatik nicht prüfen" ausgewählt ist. Möglicherweise müssen Sie diese Einstellung mehrmals anwenden, damit sie haftet.
JohnC


3

Wenn Sie Ihren VS so einrichten, dass er so aussieht, wie er im Dokument aussehen soll, funktioniert das einfache Kopieren und Einfügen des Codes. Farben und andere Formatierungen bleiben erhalten.

Wenn Sie jedoch jemals den Stil im Dokument ändern möchten, ist dies sehr schwierig zu verwalten. In diesem Fall müssen Sie einen codeStil in Word erstellen und sicherstellen, dass der gesamte eingefügte Code darauf eingestellt ist. Wenn Sie dann den Stil ändern, ändert sich alles, was als dieser Stil markiert ist. Auf diese Weise können Sie keine Syntaxhervorhebung wie in VS durchführen.


Es gibt einige Bedenken: Wie sieht eine Linie aus, die länger als die Breite des Dokuments ist?
Reisende

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.