Innhold
Innholdsliste 🔎︎

# 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:

• 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()

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

## Definisjoner

## Egenskaper

## Metoder

Liste over metoder i Writer Tjenesten
Forms | PrintOut | …

## Forms

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

- En nullbasert matrise (eller en tuppel i Python) med navnene på alle skjemaene i dokumentet (hvis form-argumentet er fraværende)

- En SFDocuments.Form tjenesteforekomst som representerer skjemaet angitt som argument.

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")

## 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)

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.

Lignende emner

SFDocuments.Dokument tjeneste

ScriptForge.UI tjeneste