Come posso aggiungere un codice formattato a un documento di Microsoft Word?


29

Devo scrivere un documento in MS-Word 2007 che contiene molti esempi di codice VB.NET e C #.

Qual è il modo migliore per far apparire ragionevole il codice nel documento?

Quali stili ecc. Usano le persone?

(Non ho tempo di modificare / formattare manualmente il codice e sarei molto felice se avesse lo stesso aspetto di Developer Studio)

In altri lavori cosa fanno le persone che scrivono libri di programmazione, ci deve essere una buona soluzione automatizzata per questo ...


Vorrei un modo per usare i fogli di stile delle parole per controllare l'aspetto del codice, ma non vorrei "selezionare" ogni parola chiave ecc. Per impostarne lo stile.


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



Da @ user1068538: questo link potrebbe essere utile stackoverflow.com/a/2653406/1068538 . Penso che la risposta di @ gargamel (nel link sopra a SO) sia il modo più semplice per usare il codice di programmazione in un documento Word, specialmente se stai scrivendo un libro, dal momento che non mostra errori di ortografia.
fixer1234

Risposte:


14

È possibile utilizzare i servizi di evidenziazione della fonte e copiare / incollare nel documento di Word. Penso che sarà il più veloce modo ( upd. Semplice copypaste da VS sarà anche funziona).

Il secondo modo è creare uno stile per il blocco di codice, salvarlo e quindi applicarlo a tutti i blocchi di codice.


1
come posso usare i "servizi di evidenziazione della fonte"?
Ian Ringrose,

4
Ad esempio, vai su source.virtser.net , incolla il codice C #, evidenzia, copia l'output e incolla su Word.

Il link source.virtser.net dà l'errore "Pagina non trovata", "La pagina a cui hai tentato di accedere non esiste su questo server ..."
JohnC,

11

Word non supporta in modo nativo l'evidenziazione della sintassi o altra formattazione del codice. Pertanto, è meglio creare l'evidenziazione ecc. In un programma diverso (visual studio, eclipse, notepad ++ o questo sito Web che può eseguire 14 lingue e non richiede installazione).

Quando si incolla il testo, tuttavia, farlo direttamente nel documento di parole stesso può portare a mal di testa come l'ortografia e le sottolineature grammaticali.

Per risolvere questo problema, invece di copiare e incollare direttamente, usa Inserisci -> Oggetto -> Testo OpenDocument . Questo aprirà un nuovo documento. Incolla qui il testo e chiudi la finestra. Il codice verrà ora mostrato come un oggetto, completo di tutta la formattazione mostrata nella finestra precedente, ma senza controllo ortografico o grammaticale.

Sebbene sia possibile formattare il codice con stili, non esistono stili incorporati per farlo, e non è proprio ciò che gli stili sono destinati a fare. Se vuoi usare gli stili per formattare il codice, usa questo stile in tutti gli oggetti che crei.

Aggiornamento: se vuoi farlo con stili di codice, ecco alcune idee.

  • Usa uno stile di paragrafo con un carattere a spaziatura fissa
  • Sfondo chiaro (il grigio funziona bene)
  • Ortografia disattivata
  • Assicurati che lo spazio tra le linee sia come desideri

Se vuoi aggiungere un po 'più di complessità, puoi sovrapporre gli stili di carattere sopra lo stile di paragrafo per creare qualcosa di simile all'anteprima del codice su stackoverflow con formattazione e / o colore diversi per nomi di classe, nomi di istanza, ecc.

Configurare lo stile in questo modo funziona, ma puoi ottenere un risultato più personalizzabile rispetto a quello che puoi ottenere usando l'evidenziazione della sintassi da Notepad ++ o Visual Studio.

Come accelerazione durante la formattazione del codice con uno stile, può essere utile innanzitutto evidenziare la sintassi in uno di quei programmi, quindi utilizzare l'utilità Trova di Word per cercare testo che corrisponda a uno stile di colore o di altro tipo in modo da non dover identificare manualmente qual è il nome di una classe, ad esempio nel codice manualmente (è nel formato more-> nel prompt find).


@ianRingrose c'è qualche altra caratteristica che stai cercando?
soandos

Vorrei che l'hilighting della sintassi fosse fatto con stili di parole in modo da poter cambiare facilmente le dimensioni del tipo ecc.
Ian Ringrose,

@IanRingrose, aggiornato. Fammi sapere se manca qualcosa.
soandos,

penso che questo sia uno dei modi migliori per formattare il codice in parole. Ho sempre avuto problemi con la formulazione e come oggetto non ho più problemi. Molte grazie ; )
xtarsy il

In MS Word 2007 e versioni successive un'alternativa a "Inserisci -> Oggetto -> Testo OpenDocument" è selezionare il codice dopo averlo incollato e utilizzare Revisiona | Prova | Imposta lingua e assicurati che sia selezionato "Non controllare l'ortografia o la grammatica". Potrebbe essere necessario applicare tale impostazione più di una volta per farlo aderire.
Giovanni


3

Se imposti il ​​tuo VS in modo che assomigli a quello che vuoi che appaia nel documento, funzionerà una semplice copia-incolla del codice. Conserverà i colori e altre formattazioni.

Tuttavia, se mai vuoi cambiare lo stile nel documento, questo sarà molto difficile da gestire. In questo caso, creare uno codestile in parola e assicurarsi che tutto il codice incollato sia impostato su di esso è il modo di fare (quindi, se si modifica lo stile, tutto ciò contrassegnato come quello stile cambierà). Ciò non consente di evidenziare la sintassi come in VS.


Ci sono alcune preoccupazioni, come apparirà una linea più lunga della larghezza del documento?
Voyager

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.