c# - sencillo - espacio y medio en word
Establecer el espaciado de lĂnea para Word 2007, de manera culturalmente neutral (2)
¿Qué tal usar
Selection.ParagraphFormat.LineSpacingRule = WdLineSpacing.wdLineSpaceSingle;
Su código no establece el espaciado de línea, sino que establece un estilo que tiene cierto espaciado de línea aplicado.
Citando de la persona preguntó cómo lo resolvieron, ya que esta es la respuesta aceptada:
Como sugirió Joey, la solución es usar los estilos integrados de Word. Resolví esto aplicando lo siguiente a mi objeto Word._Application:
oWord.ActiveWindow.Selection.ParagraphFormat.LineSpacingRule = Word.WdLineSpacing.wdLineSpaceSingle; oWord.ActiveWindow.Selection.ParagraphFormat.SpaceAfter = 0.0F;
Tengo problemas para establecer el espaciado entre líneas en Word 2007. Word 2007 está predeterminado en doble espacio o en tener espacio extra entre líneas. Anteriormente, siempre he usado algo similar a esto con éxito (en C #):
//No spacing when using Word version > 2003
//Word 2003 = "11.0"
//Word 2007 = "12.0"
Word.Application appVersion = new Word.Application();
string sVersion = appVersion.Version.ToString();
if (sVersion != "11.0")
{
object noSpacingStyle = "No Spacing";
oWord.ActiveWindow.Selection.set_Style(ref noSpacingStyle);
}
Pero esto se está rompiendo al tratar de aplicarlo en algunos entornos regionales / culturales, como el italiano y el alemán. Creo que esto se debe a que "No Spacing" debe estar en el idioma de destino, en lugar de hardcoded como inglés. Por lo tanto, estoy tratando de encontrar la forma de aplicar este mismo cambio de una manera más portátil.
He intentado examinar las diversas enumeraciones, como "WdBuiltinStyle", pero no puedo encontrar una que logre lo mismo que "Sin espacios".
¿Alguien aquí sabe cómo lograr esto?
Como sugirió Joey, la solución es usar los estilos integrados de Word. Resolví esto aplicando lo siguiente a mi objeto Word._Application:
oWord.ActiveWindow.Selection.ParagraphFormat.LineSpacingRule = Word.WdLineSpacing.wdLineSpaceSingle;
oWord.ActiveWindow.Selection.ParagraphFormat.SpaceAfter = 0.0F;