30 votos

¿Cómo agrego código formateado a un documento de Microsoft Word?

Necesito escribir un documento en MS-Word 2007 que contenga muchos ejemplos de código VB.NET y C#.

¿Cuál es la mejor manera de hacer que el código se vea razonable en el documento?

¿Qué estilos, etc. utilizan las personas?

(No tengo tiempo para editar/formatear manualmente el código, y estaría muy contento si simplemente se ve como en el estudio de desarrollo)

En otras palabras, ¿qué hacen las personas que están escribiendo libros de programación, debe haber una buena solución automatizada para esto...?


Me gustaría encontrar una forma de utilizar hojas de estilos de Word para controlar cómo se ve el código, pero no quiero tener que "seleccionar" cada palabra clave, etc. para establecer su estilo.


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

0 votos

Es posible que encuentres útil stackoverflow.com/questions/760121/….

0 votos

Desde @user1068538: Este enlace podría ser útil stackoverflow.com/a/2653406/1068538. Creo que la respuesta de @gargamel (en el enlace anterior a SO) es la forma más fácil de usar código de programación en un documento de Word, especialmente si estás escribiendo un libro, ya que no muestra errores de ortografía.

15voto

sashaeve Puntos 261

Puedes usar servicios de resaltado de código fuente y copiar / pegar en un documento de Word. Creo que será la forma más rápida (act. también funciona un simple copiar y pegar desde VS).

La segunda opción es crear un estilo para bloque de código, guardarlo y luego aplicarlo a todos los bloques de código.

1 votos

¿Cómo uso los "servicios de resaltado de código fuente"?

4 votos

Por ejemplo, ve a source.virtser.net, pega el código C#, resáltalo, copia la salida y pégala en Word.

0 votos

source.virtser.net el enlace proporciona el error "Página no encontrada", "La página que intentaste acceder no existe en este servidor..."

12voto

soandos Puntos 17602

Word no admite nativamente el resaltado de sintaxis u otro formato de código. Por lo tanto, es mejor crear el resaltado, etc. en un programa diferente (Visual Studio, Eclipse, Notepad ++, o este sitio web que puede manejar 14 idiomas y no requiere instalación).

Sin embargo, al pegar el texto directamente en el documento de Word, puede provocar problemas como subrayados de ortografía y gramática.

Para solucionar esto, en lugar de copiar y pegar directamente, utiliza Insertar -> Objeto -> Documento de texto de OpenOffice. Esto abrirá un nuevo documento. Pega el texto aquí y cierra la ventana. Ahora tu código se mostrará como un objeto, completo con todo el formato que se mostraba en la ventana anterior, pero sin mostrar corrección de ortografía o gramática.

Aunque es posible formatear código con estilos, no hay estilos integrados para hacer esto y no es realmente para lo que están destinados los estilos. Si deseas usar estilos para formatear tu código, simplemente utiliza este estilo en todos los objetos que crees.

Actualización: Si deseas hacer esto con estilos de código, aquí tienes algunas ideas.

  • Usa un estilo de párrafo con una fuente de espaciado fijo
  • Fondo claro (el gris funciona bien)
  • Desactiva la ortografía
  • Asegúrate de que el espaciado entre líneas sea el que deseas

Si deseas añadir un poco más de complejidad, puedes superponer estilos de caracteres en el estilo de párrafo para crear algo similar a la vista previa de código en Stackoverflow con formato y/o color diferente para nombres de clases, nombres de instancias, etc.

Configurar el estilo de esta manera requiere trabajo, pero puedes obtener un resultado más personalizado en comparación con lo que puedes obtener utilizando el resaltado de sintaxis de Notepad++ o Visual Studio.

Como acelerador al formatear código con un estilo, puede ayudar hacer primero el resaltado de sintaxis en alguno de esos programas, y luego utilizar la utilidad de Búsqueda de Word para buscar texto que coincida con un color u otro estilo de fuente para no tener que identificar manualmente qué es un nombre de clase, por ejemplo en el código, manualmente (está en más -> formato en el cuadro de diálogo de buscar).

0 votos

@ianRingrose ¿Hay alguna otra característica que estás buscando?

0 votos

Me gustaría que el resaltado de sintaxis se realice con estilos de palabras para poder cambiar tamaños de tipo, etc. fácilmente.

0 votos

@IanRingrose, actualizado. Avísame si falta algo.

5voto

Robert Puntos 706

Me gusta usar Notepad++. En NP++, elige la sintaxis correcta, haz clic derecho en el código seleccionado, elige "comandos de plugin", haz clic en "copiar texto con resaltado de sintaxis". Pégalo en Word y tendrás un código muy bien presentado.

Fuente: ¿Cuál es la mejor forma de mostrar fragmentos de código en Word? [cerrado]

4voto

aaronstacy Puntos 1704

Si configuras tu VS para que se vea como quieres que se vea en el documento, un simple copiar-pegar del código funcionará. Se conservarán los colores y otros formatos.

Sin embargo, si alguna vez deseas cambiar el estilo en el documento, esto será muy difícil de gestionar. En este caso, crear un estilo code en Word y asegurarte de que todo el código pegado esté configurado en ese estilo es la forma de hacerlo (entonces, si cambias el estilo, todo marcado como ese estilo cambiará). Esto no te permitirá tener resaltado de sintaxis como en VS.

0 votos

Hay algunas preocupaciones, como ¿cómo se verá una línea más larga que el ancho del documento?

-1voto

USer22999299 Puntos 113

Esto es lo que hice.

Resultados finales: introduce aquí la descripción de la imagen

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

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X