LibreOffice 25.2 Hjælp
Det delte bibliotek SFDocuments giver et antal metoder og egenskaber til at lette administration og håndtering af LibreOffice-dokumenter.
Nogle metoder et almindelige for alle dokumenttyper og er nedarvede fra modulet SF_Document, mens andre metoder, der er specifikke for Writer-dokumenter er defineret i modulet SF_Writer.
Før brug af funktionen Writer skal biblioteket ScriptForge være indlæst eller importeret:
Tjenesten Writer er tæt knyttet til tjenesten UI (brgugerflade) i biblioteket ScriptForge. Herunder er der nogle få eksempler på, hvordan tjenesten Writer kan kaldes.
Kodestumpen herunder opretter en instans af tjenesten Writer, der svarer til det aktuelt aktive aktive Writer-dokument.
    Dim oDoc As Object
    Set oDoc = CreateScriptService("SFDocuments.Writer", "Untitled 1") ' Default = ActiveWindow
  En anden måde at oprette en instans af tjenesten Writer på, er at bruge tjenesten UI (brugerflade). I de følgende eksempler, oprettes en et nyt Writer-dokument og oDoc er en instans af tjenesten Writer:
    Dim ui As Object, oDoc As Object
    Set ui = CreateScriptService("UI")
    Set oDoc = ui.CreateDocument("Writer")
  Eller ved at bruge metoden OpenDocument (åbn_dokument) fra tjenesten UI (brugerflade):
    Set oDoc = ui.OpenDocument("C:\Me\MyFile.odt")
  Det er altså mulig at instantiere tjenesten Writer med metoden CreateScriptService (opret_scripttjeneste):
    Dim oDoc As Object
    Set oDoc = CreateScriptService("SFDocuments.Writer", "MyFile.odt")
  I eksemplet herover er "MyFile.odt" navnet på et åbent dokument-vindue. Hvis er ikke opgives et argument, inddrages det aktive vindue.
Det anbefales at frigøre ressourcer efter brug:
    Set oDoc = oDoc.Dispose()
  Hvis dokumentet imidlertid ikke blev lukket med metodenCloseDocument (luk_dokument), bliver det nødvendigt at frigøre ressourcer med kommandoen, der er beskrevet ovenfor.
    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()
  Brug af forstavelsen "SFDocuments." under kald af tjenesten er frivillig.
| Liste over metoder i tjenesten Writer | ||
|---|---|---|
Afhængigt af de opgivne parametere returnerer denne metode:
En nul-baseret matrix (eller en tuple i Python) med navnene på alle formularer, der indeholdes i dokumentet (hvis argumentet form (formular) ikke findes).
Et eksemplar af tjenesten SFDocuments.Form repræsenterer formularen, specificeret som et argument.
svc.Forms(): str[0..*]
svc.Forms(form: str = ''): svc
svc.Forms(form: int): svc
form (formular): Navnet eller indekset, der svarer til en formular, der er lagret i dokumentet. Hvis dette argument mangler, returnerer metoden en liste over navnene på alle formularer, der findes i dokumentet.
I de følgende eksempler henter den første linje navnene på alle formularer i dokumentet og den anden linje henter objektet Form (formular) fra formularen ved navn "Form_A".
    Set FormNames = oDoc.Forms()
    Set FormA = oDoc.Forms("Form_A")
  
    form_names = doc.Forms()
    form_A = doc.Forms("Form_A")
  Denne metode indlæser alle de typografier, som hører til en eller flere typografifamilier, fra en lukket fil ind i det aktuelle dokument. Det aktuelle dokument skal være et Calc-dokument eller et Writer-dokument.
Importeres altid sammen:
Afsnitstypografier og tegntypografier (ParagraphStyles og CharacterStyles)
Nummereringstypografier og listetypografier (NumberingStyles og ListStyles)
Returnerer True hvis typografierne blev importeret uden fejl.
svc.ImportStylesFromFile(filename: str, families: str[1..*], overwrite = False): bool
filename (filnavn): Den fil som typografierne skal indlæses fra, i FileSystem-notation. Det bliver gået ud fra, at filen er af samme dokumenttype som det aktuelle dokument.
families (familier): En af typografifamilierne fra dokumentet, som en streng med forskel på store og små bogstaver, eller et array af sådanne strenge. Efterlad argumentet tomt for at importere alle familier.
overwrite (overskriv): Når True bliver aktuelle typografier med de samme navne overskrevet. Standard er False.
    oDoc.ImportStylesFromFile("C:\User\Documents\myFile.ods", "ParagraphStyles", True)
  
    doc.ImportStylesFromFile('C:\User\Documents\myFile.ods', ("ParagraphStyles",), False)
  Sender dokumentets indhold til printeren. Printer kan tidligere have været defineret som standard af brugeren eller af metoden SetPrinter i tjenesten Document. Returnerer True (sand), når den lykkes.
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
sider: De sider, der skal udskrives, som en streng, ligesom i brugerfladen. Eksempel: "1-4;10;15-18". Standard = alle sider
kopier: Antallet af kopier, standard er 1.
printbackground (udskriv_baggrund): Udskriver baggrundsbilledet, når True (sand - standard).
printblankpages (udskriv_tomme_sider): Når False (falsk - standard), udlades tomme sider.
printevenpages (udskriv_lige_sider): Udskriver lige sider, når True (sand - standard).
printoddpages (udskriv_ulige_sider): Udskriv ulige sider, når True (sand - standard).
printimages (udskriv_billeder): Udskriv grafikobjekter, når True (sand – standard).
      oDoc.PrintOut("1-4;10;15-18", Copies := 2, PrintImages := False)
  
    doc.PrintOut(printblankpages = True, copies = 3)