Tjenesten SFDocuments.Writer

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.

Kald af tjeneste

Før brug af funktionen Writer skal biblioteket ScriptForge være indlæst eller importeret:

note

• Basic-makroer kræver, at biblioteket ScriptForge indlæses med følgende udtryk:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

• Python-scripts kræver import af scriptforge-modulet:
from scriptforge import CreateScriptService


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.

I Basic

Kodestumpen herunder opretter en forekomst 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 forekomst 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 forekomst 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.

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

Brug af forstavelsen "SFDocuments." under kald af tjenesten er frivillig.


Definitioner

Egenskaber

Metoder

Liste over metoder i tjenesten Writer

Forms

PrintOut



Forms

Afhængigt af de opgivne parametere returnerer denne metode:

note

Denne metode gælder kun Writer-dokumenter. Calc- og Base-dokumenter har deres egne Forms (formalar)-metode i tjenesten henholdsvis Calc og Base.


Syntaks:

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

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

svc.Forms(form: int): svc

Parametre:

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.

Eksempel:

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

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

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.

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: 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 grafiske objekter, når True (sand - 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 Basic-rutiner eller identifikatorer, der er indledet med et understreget tegn "_" er reserveret til internt brug. Det er ikke meningen, at de skal bruges i Basic-makroer eller Python-scripts.


Støt os venligst!