Macro para definir el formato de página en OpenOffice Writer

Esta macro permite definir el formato de página de un documento OpenOffice Writer.

Las dimensiones alto y ancho del papel, así como de los márgenes, se expresan en centímetros.

El diseño de página se indica por las claves DI para derecha e izquierda, R para reflejado, D para derecha e I para izquierda.

Si el séptimo argumento es true la orientación será apaisada, con false será vertical

 

sub Main
' ejemplo de uso
    FormatoPagina 21.55, 27, 3, 3, 2, 2, false, "DI"
end sub

Sub FormatoPagina(cmAncho as single, cmAlto as single, _
    cmMargenIzq as single, cmMargenDer as single, _
    cmMargenSup as single, cmMargenInf as single, _
    lOrientacionApaisada as boolean, _
    cDisenyoPagina as string )
   
  ' cDisenyoPagina puede ser DI para derecha, izquierda
  ' R para reflejado, D para derecha, I para izquierda
   
  Dim oStyleFamilies, oFamilies, oPageStyles, oStyle
  Dim oVCurs, oPageStyleName
  Dim oDoc
 
  oDoc = ThisComponent
  oVCurs = oDoc.CurrentController.getViewCursor()
  oPageStyleName = oVCurs.PageStyleName
  oPageStyles = oDoc.StyleFamilies.getByName("PageStyles")
  oStyle  = oPageStyles.getByName(oPageStyleName)

  With oStyle
    .Width = cmAncho*1000
    .Height = cmAlto*1000
    .LeftMargin = cmMargenIzq*1000
    .TopMargin = cmMargenSup *1000
    .RightMargin = cmMargenDer*1000
    .BottomMargin = cmMargenInf*1000
    .IsLandscape = lOrientacionApaisada
   
    select case uCase(cDisenyoPagina)
    case "DI"
        .PageStyleLayout = com.sun.star.style.PageStyleLayout.ALL
    case "R"
        .PageStyleLayout = com.sun.star.style.PageStyleLayout.MIRRORED
    case "I"
        .PageStyleLayout = com.sun.star.style.PageStyleLayout.LEFT
    case "D"
        .PageStyleLayout = com.sun.star.style.PageStyleLayout.RIGHT
    end select     
  End With

End Sub

No hay reacciones, todavía


Form is loading...

Otros usuarios vieron...

  •  

    En el foro se ha preguntado la posibilidad de realizar una búsqueda de palabras que contengan o no vocales acentuadas, con el fin de facilitar el aprendizaje del e…

  • MAcro que inserta otra macro en un libro de OpenOffice Calc

     

    Esta macro inserta en un libro de OpenOffice Calc una macro, una imagen y un texto en la primera hoja, y asigna la macro a la imagen, de …

  • Proteger macros en OpenOffice

     

    OpenOffice es una aplicación de software libre.

    Pero las macros que tú mismo programas no tienen por qué serlo.

    Quizás quieras proteger tus macros de miradas indiscretas, o senc…

Patrocinado por SBS  Contacto • ©2020 by SalvaDCH