SFDocuments.Writer-tjeneste

Det delte biblioteket SFDocuments gir en rekke metoder og egenskaper for å forenkle administrasjon og håndtering av LibreOffice-dokumenter.

Noen metoder er generiske for alle typer dokumenter og er arvet fra SF_Document-modulen, mens andre metoder som er spesifikke for Writer-dokumenter er definert i SF_Writer-modulen.

Tjenestepåkallelse

Før du bruker Writer-tjenesten, må ScriptForge-biblioteket lastes eller importeres:

note

• Grunnleggende makroer krever å laste ScriptForge-biblioteket ved hjelp av følgende setning:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

• Python-skript krever import fra scriptforge-modulen:
fra scriptforge import CreateScriptService


Writer-tjenesten er nært knyttet til UI-tjenesten til ScriptForge-biblioteket. Nedenfor er noen eksempler på hvordan Writer-tjenesten kan anropes.

I Basic

Kodebiten nedenfor oppretter en Writer tjenesteforekomst som tilsvarer det aktive Writer-dokumentet.


    Dim oDoc As Object
    Set oDoc = CreateScriptService("SFDocuments.Writer", "Untitled 1") ' Default = ActiveWindow
  

En annen måte å lage en forekomst av Writer-tjenesten på er å bruke UI-tjenesten. I det følgende eksempelet opprettes et nytt Writer-dokument og oDoc er en Writer tjenesteforekomst:


    Dim ui As Object, oDoc As Object
    Set ui = CreateScriptService("UI")
    Set oDoc = ui.CreateDocument("Writer")
  

Eller ved å bruke OpenDocument-metoden fra UI-tjenesten:


    Set oDoc = ui.OpenDocument("C:\Me\MyFile.odt")
  

Det er også mulig å instansiere Writer-tjenesten ved å bruke CreateScriptService-metoden:


    Dim oDoc As Object
    Set oDoc = CreateScriptService("SFDocuments.Writer", "MyFile.odt")
  

I eksemplet ovenfor er "MyFile.odt" navnet på et åpent dokumentvindu. Hvis dette argumentet ikke er oppgitt, vurderes det aktive vinduet.

Det anbefales å frigjøre ressurser etter bruk:


    Set oDoc = oDoc.Dispose()
  

Men hvis dokumentet ble lukket med CloseDocument-metoden, blir det unødvendig å frigjøre ressurser ved å bruke kommandoen beskrevet ovenfor.

I Python

    myDoc = CreateScriptService("Writer") ' Default = ActiveWindow
  

    ui = CreateScriptService("UI")
    myDoc = ui.CreateDocument("Writer")
  

    myDoc = ui.OpenDocument(r"C:\Documents\MyFile.odt")
  

    myDoc = CreateScriptService("SFDocuments.Writer", "MyFile.odt")
    myDoc.Dispose()
  
tip

Bruken av prefikset "SFDocuments." mens du anroper tjenesten er valgfritt.


Definisjoner

Egenskaper

Metoder

Liste over metoder i Writer Tjenesten

Forms

ImportStylesFromFile

PrintOut


Forms

Avhengig av parametrene som er gitt, vil denne metoden returnere:

note

Denne metoden gjelder bare for Writer-dokumenter. Calc- og Base-dokumenter har sine egne Skjema-metoder i Calc og Base-tjenester, henholdsvis.


Syntaks:

svc.Forms(): str[0..*]

svc.Forms(form: str = ''): svc

svc.Forms(form: int): svc

Parametre:

skjema: Navnet eller indeksen som tilsvarer et skjema som er lagret i dokumentet. Hvis dette argumentet er fraværende, vil metoden returnere en liste med navnene på alle tilgjengelige skjemaer i dokumentet.

Eksempel:

I de følgende eksemplene får den første linjen navnene på alle skjemaene i dokumentet, og den andre linjen henter Skjema-objektet til skjemaet kalt "Skjema_A".

I Basic

    Set FormNames = oDoc.Forms()
    Set FormA = oDoc.Forms("Form_A")
  
I Python

    form_names = doc.Forms()
    form_A = doc.Forms("Form_A")
  

ImportStylesFromFile

Denne metoden laster alle stilene som tilhører en eller flere stilfamilier fra en lukket fil til det faktiske dokumentet. Selve dokumentet må være et Calc eller et Writer dokument.

Importeres alltid sammen:

Returnerer Sann hvis stiler ble importert.

Syntaks:

svc.ImportStylesFromFile(filename: str, families: str[1..*], overwrite = False): bool

Parametre:

filnavn: Filen som stilene skal lastes fra i Filsystem-notasjonen. Filen antas å være av samme dokumenttype som selve dokumentet.

familier: En av stilfamiliene som finnes i selve dokumentet, som en streng som skiller mellom store og små bokstaver, eller som en rekke slike strenger. La dette argumentet stå tomt for å importere alle familier.

overskriv: Når Sann, kan de faktiske stilene bli overskrevet. Standard er Usann.

Eksempel:

I Basic

    oDoc.ImportStylesFromFile("C:\User\Documents\myFile.ods", "ParagraphStyles", True)
  
I Python

    doc.ImportStylesFromFile('C:\User\Documents\myFile.ods', ("ParagraphStyles",), False)
  

PrintOut

Send innholdet i dokumentet til skriveren. Skriveren kan være tidligere definert som standard, av brukeren eller av SetPrinter metoden for Dokument-tjenesten. Returnerer Sann når det lykkes.

Syntaks:

svc.PrintOut(opt pages: str = "", opt copies: num = 1, opt printbackground: bool = True, opt printblankpages: bool = False, opt printevenpages: bool = True, opt printoddpages: bool = True, opt printimages: bool = True): bool

Parametre:

sider: Sidene som skal skrives ut som en streng, som i brukergrensesnittet. Eksempel: "1-4;10;15-18". Standard = alle sider

kopier: Antall kopier, standard er 1.

printbackground: Skriver ut bakgrunnsbildet når Sann (standard).

printblankpages: Når Usann (standard), utelater tomme sider.

printevenpages: Skriver ut partallssider når Sann (standard).

printoddpages: Skriv ut oddetallssider når Sann (standard).

printimages: Skriv ut grafiske objekter når Sann (standard).

Eksempel:

I Basic

      oDoc.PrintOut("1-4;10;15-18", Copies := 2, PrintImages := False)
  
I Python

    doc.PrintOut(printblankpages = True, copies = 3)
  
warning

Alle ScriptForge Grunnleggende rutiner eller identifikatorer som er prefikset med et understrekingstegn "_" er reservert for intern bruk. De er ikke ment å brukes i grunnleggende makroer eller Python-skript.


Supporter oss!