[RESUELTO] Ver las características del texto seleccionado

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...

[RESUELTO] Ver las características del texto seleccionado

Notapor Ambrosio » Lun Abr 23, 2018 7:28 pm

Hola,
Soy nuevo en este foro.
Había programado macros en VBasic para MS Word. Estoy intentando trasladarlas a Libre Office Writer.
En VBasic al seleccionar un texto podía conocer sus características modificarlas.
En OOoBasic no encuentro cómo hacerlo.
Pongo un ejemplo en VBasic:

Código: Seleccionar todo   Expandir vistaContraer vista
REM  *****  BASIC  *****

Option Explicit

Sub CreceText()
    Selection.WholeStory   'selecciona todo el texto
'puedo modificar las características de la tipografía,
'actuando sobre todo el texto; si hay distintas tipografías el atributo a modificar tiene
'que ser el mismo en todas ellas (si no, aparece mensaje de error)
' en este ejemplo el tamaño de la letra, que se incrementará cada vez que se ejecute la macro
   With Selection.Font      
        .Name = ""
        .Size = Selection.Font.Size + 2
        .Scaling = 100
'puedo ofrecer mensajes al usuario ante determinados valores
        If Selection.Font.Size = 48 Then
            MsgBox "La letra parece ya demasiado grande"
        ElseIf Selection.Font.Size = 8 Then
            MsgBox "La letra parece ya demasiado "
        End If
    End With
End Sub


Agradecería si alguien pudiera indicarme cómo conseguirlo en OOoBasic
Gracias por adelantado,
Ambrosio
Última edición por Ambrosio el Jue Abr 26, 2018 6:16 pm, editado 1 vez en total
windows 7 // LibreOffice_5.4.5_Win_x86
Ambrosio
 
Mensajes: 19
Registrado: Lun Abr 23, 2018 6:33 pm

Re: Ver las características del texto seleccionado -OOoBasic

Notapor fornelasa » Lun Abr 23, 2018 9:42 pm

Tal vez algo similara a esto:
Código: Seleccionar todo   Expandir vistaContraer vista
Option Explicit
Sub CreceText()
   Dim tc, ctrl, doc, disp, Selection

       tc = ThisComponent
     ctrl = tc.currentController
      doc = ctrl.Frame     
     disp = createUnoService("com.sun.star.frame.DispatchHelper")
      disp.executeDispatch(doc, ".uno:GoToStartOfDoc", "", 0, Array())
      disp.executeDispatch(doc, ".uno:EndOfDocumentSel", "", 0, Array())
     
Selection = tc.getCurrentSelection().getByIndex(0)

      With Selection
        .CharFontName = ""
        .CharHeight = .CharHeight + 2
        .CharScaleWidth = 100   
       If .CharHeight = 48 Then
           MsgBox "La letra parece ya demasiado grande"
   ElseIf .CharHeight = 8 Then
           MsgBox "La letra parece ya demasiado chica"
   End If 
      End With
     
End Sub

lo 6.0.6 | aoo 4.1.5 | win 7/10
¡Un aplauso para todos los que luchan por proteger y promover la Web abierta!
Avatar de Usuario
fornelasa
 
Mensajes: 3095
Registrado: Jue Feb 17, 2011 8:30 pm
Ubicación: Estado de México, México.

Re: Ver las características del texto seleccionado -OOoBasic

Notapor mauricio » Mar Abr 24, 2018 12:13 am

Si al trabajar de forma manual en Writer, es mucho más eficiente el usar estilos, por código se convierte en la mejor opción, cambian el estilo de los párrafos, cambia todos los párrafos que tengan dicho estilo:
Código: Seleccionar todo   Expandir vistaContraer vista

doc = ThisComponent
style = doc.getStyleFamilies().getByName("ParagraphStyles").getByName("Standard")
style.CharHeight = style.CharHeight + 2
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
AOO 4.1 | LibO 5.4 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Avatar de Usuario
mauricio
 
Mensajes: 5645
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: México, D.F.

Re: Ver las características del texto seleccionado -OOoBasic

Notapor Ambrosio » Mié Abr 25, 2018 7:24 am

Hola,

Muchas gracias, funciona perfectamente. Además me has enseñado aspectos de programación distintos a VBasic que investigaré.
Entiendo las posibilidades de los estilos, pero intento facilitar el acceso fácil a parámetros de formato que no aparecen en las barras de herramientas para usuarios con dificultades ante la lectura (separación entre letras, palabras y líneas), de forma que autónomamente puedan adaptarlos a sus preferencias.

Gracias de nuevo,
Ambrosio
windows 7 // LibreOffice_5.4.5_Win_x86
Ambrosio
 
Mensajes: 19
Registrado: Lun Abr 23, 2018 6:33 pm

Re: Ver las características del texto seleccionado -OOoBasic

Notapor mauricio » Mié Abr 25, 2018 3:43 pm

Todo lo que dices, se logra más fácilmente con estilos.

Por favor, si consideras que el tema ha sido resuelto, marcalo como tal, mira en: ¿Cómo marcar como RESUELTO un tema?, de esta forma, conseguiremos un Foro más ordenado.
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
AOO 4.1 | LibO 5.4 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Avatar de Usuario
mauricio
 
Mensajes: 5645
Registrado: Sab Nov 22, 2008 5:36 am
Ubicación: México, D.F.

Re: Ver las características del texto seleccionado -OOoBasic

Notapor Ambrosio » Jue Abr 26, 2018 6:14 pm

Gracias por tus consejos
Ambrosio
windows 7 // LibreOffice_5.4.5_Win_x86
Ambrosio
 
Mensajes: 19
Registrado: Lun Abr 23, 2018 6:33 pm


Volver a Macros y API UNO

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados