ignora ou sobrescreve a formatação atual da página do documento com configurações predefinidas automaticamente libreoffice

1

Ao abrir um documento feito por outra pessoa, eu gostaria que as margens fossem ajustadas automaticamente para 0,4 cm, a orientação da página para paisagem e o tamanho da página para A3.

Meu pai recebe uma planilha por e-mail semanalmente e ele as imprime. Para encaixá-los em uma página, ele aplica essas configurações, o que é bastante trabalhoso. Eu pensei que deveria haver uma maneira mais rápida de fazer isso!

Eu tentei criar um novo modelo padrão com essas configurações, mas isso só funciona para um novo documento em branco. Tentei criar um estilo para aplicar rapidamente essas configurações, mas percebi que esses estilos são específicos do documento / modelo (?) E, portanto, não aparecem ao abrir o documento de outra pessoa.

Alguém tem alguma ideia de como posso fazer isso? Obrigado =]

    
por alex 16.04.2012 / 12:21

1 resposta

1

Uma maneira seria usar uma macro para definir os parâmetros da página e salvar a macro em uma biblioteca acessível por todas as planilhas. A macro pode ser atribuída ao menu libreoffice. Não seria automático, mas poderia ser executado clicando na entrada do menu na planilha que você deseja alterar.

Esta macro em um fórum do OpenOffice é tão próxima como eu pude encontrar. Parece funcionar no LibreOffice.

sub formatpage()
rem from http://user.services.openoffice.org/en/forum/viewtopic.php?f=20&t=42863
rem original by GWS with addition by Villory
rem modified for A3 and 0.4 cm margin
Dim sS      as String     '$     'Style name
Dim oStyle    as Object   'The current page style

pageStyles = thisComponent.StyleFamilies.getByName("PageStyles")
page = pageStyles.getByName("Default")

REM A3
page.width=29700
page.height=42000

REM SET MARGINS LEFT, RIGHT, TOP, BOTTOM = .4 cm"
page.LeftMargin = 400
page.RightMargin = 400
page.TopMargin = 400
page.BottomMargin = 400

REM Set Page Orientation TO LANDSCAPE
Dim printerOption(0) As New com.sun.star.beans.PropertyValue
printerOption(0).Name = "PaperOrientation"
printerOption(0).Value = com.sun.star.view.PaperOrientation.LANDSCAPE
thisComponent.Printer = printerOption()

sh=ThisComponent.Sheets.getByIndex(0)
sh.PageStyle=("Default")

end sub
    
por 16.04.2012 / 17:55