Re: Algun codigo para imprimir
Alejandro Rivas Morán <[email protected]> Wed, 16 Feb 2011 17:37:33 +0000 (GMT)
| Newsgroups | gmane.comp.openoffice.general.spanish |
|---|---|
| Message-ID | <[email protected]> |
--- El vie, 11/2/11, Eduardo Moreno <[email protected]> escribió: > De: Eduardo Moreno <[email protected]> > Asunto: Re: [d_es] Algun codigo para imprimir > Para: [email protected] > Fecha: viernes, 11 de febrero, 2011 19:24 > El 11/02/11 08:19, Alejandro Rivas > Morán escribió: > > Saludos. > > > > Estoy queriendo hacer codigo OOmacro para imprimir > cuadros pero unos son con pagina carta vertical y otros con > pagina horizontal, siempre carta > > > > Ahora lo que yo quisiera que me ayudaran es a obtener > el codigo que permita comprobar si la pagina esta en > vertical y si es asi pasarla a horizontal (landscape) > o de otro modo, comprobar si esta en horizontal y si es asi > pasarla a vertical. > > > > Solo necesito imprimir la hoja1 ya que tengo el codigo > llena el cuadro y lo pasa a la posicion de hoja1 > > > > Gracias de antemano por el apoyo > > > > > > > > > > > > > > > --------------------------------------------------------------------- > > To unsubscribe, e-mail: [email protected] > > For additional commands, e-mail: [email protected] > > > > > > > Creo que el camino no es por la impresora, sino por los > estilos de página. > ¿Ya descargaste el manual que generó Mauricio Baeza? > Saludos. Si encontre el manual y sin pena e tomado de ahi el codigo: Sub CambiaEstilo() Dim oDoc As Object Dim oHojaActiva As Object Dim oEstilos As Object Dim oEstilosPagina As Object Dim sEstilo As String Dim oEP As Object sEstilo = "Videoteca" oDoc = ThisComponent oHojaActiva = oDoc.getCurrentController.getActiveSheet() oEstilos = oDoc.getStyleFamilies() oEstilosPagina = oEstilos.getByName("PageStyles") If oEstilosPagina.hasByName( sEstilo ) Then oHojaActiva.PageStyle( sEstilo ) Else 'Creamos un nuevo estilo oEP = oDoc.createInstance( "com.sun.star.style.PageStyle" ) 'Lo agregamos a la colección de estilos oEstilosPagina.insertByName( sEstilo, oEP ) 'Le damos formato With oEp .Width = 27940 'Ancho .Height = 21590 'Alto .TopMargin = 2000 'Margen superior .BottomMargin = 2000 'Margen inferior .LeftMargin = 1000 'Margen izquierdo .RightMargin = 1000 'Margen derecho .IsLandscape = True 'Orientación de la página (horizontal) End With End If End Sub La situacion es que no aplica el nuevo estilo. En OO bajo linux Si aparece en la lista de estilos (F11) pero no esta seleccionada. En OO bajo Windows si aparece en la lista (F11) y seleccionada. En ambos casos al ver la ventana de Formato Pagina, no aparece elegido el formato horizontal del papel que es mi problema. En algun momento si se eligio el horizontal en Formato pagina por medio de la macro, pero cuando imprimo siempre me sale vertical, que es la orientacino por omisión.. Porqué seria que 1) no se elige el estilo de una vez y se aplican las caracteristicas definidas en la macro y 2) porque seria que aun cuando se selecciona el nuevo estilo por medio de la macro y se confirma que en la ventana formato-pagina si esta horizontal, la pagina siempre se imprime vertical (o sea la de omision que es el estino normal) Gracias por sus comentarios.