Storitev SFDocuments.Writer

Knjižnica SFDocuments v skupni rabi vsebuje metode in lastnosti, ki pomagajo pri upravljanju in ravnanju z dokumenti LibreOffice.

Nekatere metode so generične za vse vrste dokumentov in se dedujejo iz storitve SF_Document, medtem ko so druge metode, specifične za dokumente programa Writer, definirane v modulu SF_Writer.

Priklic storitve

Pred uporabo storitve Writer je potrebno naložiti ali uvoziti knjižnico ScriptForge:

note

• Za makre Basic mora biti naložena knjižnica ScriptForge z naslednjim ukazom:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

• Za skripte Python mora biti opravljen uvoz iz modula scriptforge:
from scriptforge import CreateScriptService


Storitev Writer je tesno povezana s storitvijo UI knjižnice ScriptForge. Sledi nekaj primerov, kako lahko prikličete storitev Writer.

V Basicu

Spodnji odlomek kode ustvari instanco storitve Writer, ki se nanaša na trenutno dejavni dokument Writer.


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

Drugi način ustvarjanja instance storitve Writer je z uporabo storitve UI. Naslednji primer ustvari nov dokument programa Writer in oDoc je instanca storitve Writer:


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

Ali z uporabo metode OpenDocument iz storitve UI:


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

Instanco storitve Writer lahko tvorite tudi z metodo CreateScriptService:


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

V zgornjem primeru je »MyFile.odt« ime okna odprtega dokumenta. Če ta argument ni podan, je upoštevano dejavno okno.

Priporočamo, da po uporabi sprostite vire:


    Set oDoc = oDoc.Dispose()
  

Če je dokument zaprt z metodo CloseDocument, ni potrebno sproščati virov z zgoraj opisanim ukazom.

V Pythonu

    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

Uporaba predpone »SFDocuments.« pri klicu storitve je neobvezna.


Definicije

Lastnosti

Metode

Seznam metod v storitvi Writer

Forms

PrintOut



Forms

Glede na podane parametre ta metoda vrne:

note

Ta metoda velja le za dokumente programa Writer. Dokumenti programov Calc in Base imajo lastno metodo Forms v svojih storitvah Calc in Base.


Skladnja:

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

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

svc.Forms(form: int): svc

Parametri:

form: ime ali številka indeksa obrazca, shranjenega v dokumentu. Če ta argument ni podan, metoda vrne seznam z imeni vseh obrazcev, ki so na voljo v dokumentu.

Primer:

V naslednjih primerih prva vrstica pridobi imena vseh obrazcev v dokumentu, druga pa predmet Form obrazca z imenom »Form_A«.

V Basicu

    Set FormNames = oDoc.Forms()
    Set FormA = oDoc.Forms("Form_A")
  
V Pythonu

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

PrintOut

Pošlje vsebino dokumenta tiskalniku. Tiskalnik je lahko poprej privzeto definiran, ga definira uporabnik ali pa metoda SetPrinter() storitve Document. Vrne True, če uspe.

Skladnja:

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

Parametri:

pages: strani, ki jih želite natisniti, kot niz, tako kot v uporabniškem vmesniku. Primer: »1-4;10;15-18«. Privzeta vrednost je tiskanje vseh strani.

copies: število kopij. Privzeto ima vrednost 1.

printbackground: natisne sliko ozadja, če ima vrednost True (privzeto).

printblankpages: če je True (privzeta vrednost), izpusti prazne strani.

printevenpages: natisne sode strani, če ima vrednost True (privzeto).

printoddpages: natisne lihe strani, če ima vrednost True (privzeto).

printimages: natisne grafične predmete, če ima vrednost True (privzeto).

Primer:

V Basicu

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

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

Vsi podprogrami ali identifikatorji ScriptForge Basic s predpono podčrtaja (»_«) so rezervirani za interno uporabo. Uporabi v makrih Basic ali skriptih Python niso namenjeni.


Podprite nas!