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

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

Ao abrir um documento feito por outra pessoa, gostaria que as margens fossem definidas 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. Achei que deveria haver uma maneira mais rápida de fazer isso!

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 idéia de como posso fazer isso? Obrigado =]

Responder1

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

Esta macroem um fórum do OpenOffice é o mais próximo que consegui 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

informação relacionada