SFDocuments.Dokument tjeneste

SFDocuments-biblioteket gir metoder og egenskaper for å forenkle administrasjon og manipulering av LibreOffice-dokumenter.

Metoder som kan brukes for alle typer dokumenter (tekstdokumenter, ark, presentasjoner osv.) leveres av SFDocuments.Document-tjenesten. Noen eksempler er:

warning

Egenskapene, metodene eller argumentene merket med (*) er IKKE gjeldende for basisdokumenter.


Metoder og egenskaper som er spesifikke for visse LibreOffice-komponenter, lagres i separate tjenester, for eksempel SFDocuments.SF_Calc og SFDocuments.SF_Base.

Selv om Basic-språket ikke tilbyr arv mellom objektklasser, kan sistnevnte tjenester betraktes som underklasser av SFDocuments.Document-tjenesten. Slike underklasser kan påkalle egenskapene og metodene beskrevet nedenfor.

Tjenestepåkallelse

Før du bruker Dokument-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


Nedenfor er tre varianter av hvordan Dokument-tjenesten kan påkalles.

I Basic

Ved å bruke getDocument-metoden fra ScriptForge.UI-tjenesten:


    Dim ui As Object, oDoc As Object
    Set ui = CreateScriptService("UI")
    Set oDoc = ui.GetDocument("Untitled 1")
  

Alternativt kan du bruke metodene CreateDocument og OpenDocument fra UI-tjenesten.


    Set oDocA = ui.CreateDocument("Calc")
    Set oDocB = ui.OpenDocument("C:\Documents\MyFile.odt")
  

Bruke et vindunavn hvis dokumentet allerede er åpent.


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

Bruke dokumentet det refereres til av ThisComponent. Dette er spesielt nyttig når du kjører en makro fra Basic IDE.


    Dim oDoc As Object
    Set oDoc = CreateScriptService("Document", ThisComponent)
  

Fra en makro utløst av en dokumenthendelse.


    Sub RunEvent(ByRef poEvent As Object)
        Dim oDoc As Object
        Set oDoc = CreateScriptService("SFDocuments.DocumentEvent", poEvent)
        ' (...)
    End Sub
  
note

Dokument-tjenesten er nært knyttet til UI og FileSystem-tjenestene.


Bortsett fra når dokumentet ble lukket av program med CloseDocument-metoden (det er da overflødig), anbefales det å frigjøre ressurser etter bruk:


    Set oDoc = oDoc.Dispose()
  
I Python

    from scriptforge import CreateScriptService
    ui = CreateScriptService("UI")
    doc = ui.GetDocument("Untitled 1")
    # (...)
    doc.Dispose()
  

    docA = ui.CreateDocument("Calc")
    docB = ui.OpenDocument("C:\Documents\MyFile.odt")
  

    doc = CreateScriptService("SFDocuments.Document", "Untitled 1")
  

    bas = CreateScriptService("Basic")
    doc = CreateScriptService("Document", bas.ThisComponent)
  

    def RunEvent(event)
        doc = CreateScriptService("SFDocuments.DocumentEvent", Event)
        # (...)
  
tip

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


Egenskaper

Navn

Skrivebeskyttet

Type

Beskrivelse

CustomProperties (*)

Nei

Dictionary service

Returnerer en ScriptForge.Dictionary objektforekomst. Etter oppdatering kan den sendes igjen til eiendommen for oppdatering av dokumentet.
Individuelle elementer i ordboken kan enten være strenger, tall, (grunnleggende) datoer eller com.sun.star.util.Duration elementer.

Description (*)

Nei

String

Gir tilgang til beskrivelsesegenskapen til dokumentet (også kjent som "Kommentarer")

DocumentProperties (*)

Ja

Dictionary service

Returnerer et ScriptForge.Dictionary-objekt som inneholder alle oppføringene. Dokumentstatistikk er inkludert. Merk at de er spesifikke for dokumenttypen. Som et eksempel inkluderer et Calc-dokument en "CellCount"-oppføring. Andre dokumenter gjør det ikke.

DocumentType

Ja

String

Strengverdi med dokumenttypen ("Base", "Calc", "Writer", osv.)

ExportFilters (*)

Ja

String array

Returnerer en liste med eksportfilternavnene som gjelder for gjeldende dokument, som en nullbasert matrise med strenger. Filtre brukt for både import/eksport returneres også.

FileSystem (*)

Ja

String

Returnerer en streng med URL-banen til roten til det virtuelle filsystemet til dokumentet. Bruk FileSystem-tjenesten for å se innholdet, samt opprette, åpne og lese filer som er lagret i den.

Se denne hjelpesiden for å lære mer om hvordan du får tilgang til og manipulerer mapper og filer i det virtuelle filsystemet til en LibreOffice fil.

ImportFilters (*)

Ja

String array

Returnerer en liste med importfilternavnene som gjelder for gjeldende dokument, som en nullbasert rekke strenger. Filtre brukt for både import/eksport returneres også.

IsBase
IsCalc
IsDraw
IsFormDocument
IsImpress
IsMath
IsWriter

Ja

Boolean

Nøyaktig én av disse egenskapene er Sann for et gitt dokument.

Keywords (*)

Nei

String

Gir tilgang til nøkkelord-egenskapen til dokumentet. Representert som en kommadseparert liste over søkeord

Readonly (*)

Ja

Boolean

True hvis dokumentet faktisk er i skrivebeskyttet modus

StyleFamilies (*)

Ja

String array

Liste over tilgjengelige stilfamilier. Gjelder alle dokumenttyper unntatt Base.

Subject (*)

Nei

String

Gir tilgang til emneegenskapen til dokumentet.

Title (*)

Nei

String

Gir tilgang til Tittel-egenskapen til dokumentet.

XComponent

Ja

UNO Objekt

UNO-objektet com.sun.star.lang.XComponent eller com.sun.star.comp.dba.ODatabaseDocument som representerer dokument.

XDocumentSettings (*)

Ja

UNO Objekt

Et com.sun.star.XXX.DocumentSettings UNO-objekt - der XXX er ark, tekst, tegning eller presentasjon - som gir tilgang til UNO interne egenskaper, som er spesifikke for dokumenttypen.


Eksempel:

I Basic

Eksemplet nedenfor skriver ut alle egenskapene til et dokument. Merk at oDoc-objektet returnert av UI.OpenDocument-metoden er et SFDocuments.Document-objekt.


    Dim ui as Variant : Set ui = CreateScriptService("UI")
    Dim oDoc as Object
    Set oDoc = ui.OpenDocument("C:\Documents\MyFile.ods")
    Dim propDict as Object
    Set propDict = oDoc.DocumentProperties
    Dim keys as Variant : propKeys = propDict.Keys
    Dim k as String, strProp as String
    For Each k In propKeys
        strProp = strProp & k & ": " & propDict.Item(k) & CHR$(10)
    Next k
    MsgBox strProp
    oDoc.CloseDocument()
  
I Python

For å få tilgang til dokumentegenskaper i et Python-skript må brukeren ha direkte tilgang til dem ved å bruke navnene deres, som vist nedenfor:


    doc = ui.GetDocument(r"C:\Documents\MyFile.ods")
    msg = doc.Title + '\n' + doc.Description + '\n' + doc.Keywords
    bas = CreateScriptService("Basic")
    bas.MsgBox(msg)
    doc.CloseDocument()
  

Liste over metoder i dokumenttjenesten

Activate
CloseDocument
CreateMenu
DeleteStyles
Echo
ExportAsPDF

ImportStylesFromFile
PrintOut
RemoveMenu
RunCommand
Save
SaveAs

SaveCopyAs
SetPrinter
Style
Toolbars
XStyle


Activate

Returnerer True hvis dokumentet kunne aktiveres. Ellers er det ingen endring i det faktiske brukergrensesnittet. Det tilsvarer Aktiver-metoden for UI-tjenesten.

Denne metoden er nyttig når man trenger å gi fokus for et dokument som er minimert eller skjult.

Syntaks:

svc.Activate(): bool

Eksempel:

Eksemplet nedenfor anser at filen "My_File.ods" allerede er åpen, men ikke aktiv.

I Basic

    Dim oDoc As Object
    Set oDoc = CreateScriptService("Document", "MyFile.ods")
    oDoc.Activate()
  
I Python

    doc = CreateScriptService("Document", "MyFile.ods")
    doc.Activate()
  
tip

Husk at du kan påkalle Dokument-tjenesten ved å sende til CreateScriptService enten "Document" eller "SFDocuments.Document"


CloseDocument

Lukker dokumentet. Hvis dokumentet allerede er lukket, uavhengig av hvordan dokumentet ble lukket, har denne metoden ingen effekt og returnerer Usann.

Metoden vil også returnere Usann hvis brukeren nekter å lukke den.

Returnerer Sann hvis dokumentet ble lukket.

Syntaks:

svc.CloseDocument(saveask: bool = True): bool

Parametre:

saveask : Hvis Sann (standard), inviteres brukeren til å bekrefte om endringene skal skrives på disk. Dette argumentet ignoreres hvis dokumentet ikke ble endret.

Eksempel:

I Basic

    If oDoc.CloseDocument(True) Then
        ' ...
    End If
  
I Python

    if doc.CloseDocument(True):
        # ...
  

CreateMenu

Oppretter en ny menyoppføring i menylinjen i et gitt dokumentvindu.

Denne metoden returnerer en forekomst av SFWidgets.Menu-tjenesten.

note

Menyen som er opprettet er kun tilgjengelig under den gjeldende LibreOffice-økten og lagres verken i dokumentet eller i de globale applikasjonsinnstillingene. Derfor forsvinner menyen ved å lukke dokumentvinduet. Den vises først når makroen som oppretter menyen kjøres igjen.


Syntaks:

svc.CreateMenu(menuheader: str, [before: any], submenuchar: str = ">"): svc

Parametre:

menyhode: Toppnivånavnet på den nye menyen.

før: Navnet (som en streng) eller posisjonen (som et heltall som starter på 1) på en eksisterende meny som den nye menyen skal plasseres foran. Hvis ingen verdi er definert for dette argumentet, vil menyen bli opprettet på den siste posisjonen i menylinjen.

submenuchar: Skilletegnet som brukes til å lage menytrær når man kaller metoder som AddItem fra Meny-tjenesten. Standardverdien er ">".

Eksempel:

I Basic

    Dim oDoc as Object, oMenu as Object
    Set oDoc = CreateScriptService("Document")
    Sett oMenu = oDoc.CreateMenu("Min meny")
    With oMenu
        ' Legg til elementer i menyen
        .AddItem("Item A")
        .AddItem("Item B")
        ' ...
        ' Etter å ha opprettet menyen, kan tjenesteforekomsten kasseres
        .Dispose()
    End With
  
I Python

    doc = CreateScriptService("Document")
    menu = doc.CreateMenu("Min meny")
    menu.AddItem("Item A")
    menu.AddItem("Item B")
    # ...
    menu.Dispose()
  
tip

Se SFWidgets.Menu hjelpesiden for å lære mer om hvordan du oppretter/ fjerne menyer i LibreOffice dokumentvinduer.


DeleteStyles

Undertrykker en enkelt stil eller en rekke stiler gitt av navnene deres innenfor en bestemt stilfamilie. Bare brukerdefinerte stiler kan slettes, innebygde stiler ignoreres. Det gjelder alle dokumenttyper unntatt Base og FormDocument.

Syntaks:

svc.DeleteStyles(family: str, stylelist: str[1..*])

Parametre:

familie: En av stilfamiliene som finnes i selve dokumentet, som en streng som skiller mellom store og små bokstaver. Gyldige familienavn kan hentes ved å bruke StyleFamilies-egenskapen.

stilliste: Et enkelt stilnavn som en streng eller en rekke stilnavn. Stilnavnene kan være lokaliserte eller ikke. StylesList er typisk utdata fra utførelsen av en Styles() metode.

Eksempel:

I Basic

    ' Fjerner ubrukte avsnittsstiler
    Const family = "ParagraphStyles"
    aList = oDoc.Styles(family, used := False, userDefined := True)
    oDoc.DeleteStyles(family, aList)
  
I Python

    # Fjerner stiler i henhold til et prefiks
    a_list = doc.Styles('ParagraphStyles', namepattern = "Py*")
    doc.Styles('ParagraphStyles', a_list)
  

Echo

Suspenderer oppdateringer av brukergrensesnitt (UI) under kjøring av en makro. Valgfritt kan musepekeren endres til et timeglass mens UI-oppdateringer er suspendert.

tip

Denne metoden kan gi noen ytelsesfordeler for makroer som utfører en rekke operasjoner som krever UI-oppdateringer.


Syntaks:

svc.Echo(echoon: bool = True, hourglass: bool = False)

Parametre:

echoon: Spesifiser False for å suspendere UI-oppdateringer. Standardverdien er True, som muliggjør sanntids UI-oppdateringer.

timeglass: Spesifiser Sann for å endre musepekeren til et timeglass (Standard = Usann).

note

Hvis du flytter musepekeren etter at den er endret til et timeglass, kan det føre til at den bytter til en annen peker avhengig av den nye bakgrunnen.


Eksempel:

I Basic

    ' Suspenderer UI-oppdateringer og endrer musepekeren til et timeglass
    oDoc.Echo(EchoOn := False, HourGlass := True)
    ' Andre makrokommandoer
    ' ...
    ' Gjenoppretter UI-oppdateringer og musepeker
    oDoc.Echo()
  
I Python

    doc.Echo(echoon = False, hourglass = True)
    ...
    doc.Echo()
  

ExportAsPDF

Eksporterer dokumentet direkte som en PDF-fil til det angitte stedet. Returnerer Sann hvis PDF-filen ble opprettet.

Eksportalternativene kan settes enten manuelt ved å bruke Fil - Eksporter som - Eksporter som PDF-dialogboksen eller ved å kalle metodene GetPDFExportOptions og SetPDFExportOptions fra Session-tjeneste.

Syntaks:

svc.ExportAsPDF(filename: str, overwrite: bool = False, opt pages: str, opt password: str, opt watermark: str): bool

Parametre:

filnavn: Den fullstendige banen og filnavnet til PDF-en som skal opprettes. Den må følge SF_FileSystem.FileNaming-notasjonen.

overskriv: Angir om målfilen kan overskrives (Standard = Usann). En feil vil oppstå hvis overskriv er satt til Usann og målfilen allerede eksisterer.

sider: Streng som spesifiserer hvilke sider som skal eksporteres. Dette argumentet bruker samme notasjon som i dialogen Fil - Eksporter som - Eksporter som PDF.

passord: Angir et passord for å åpne PDF-filen.

vannmerke: Tekst som skal brukes som vannmerke i PDF-filen, som vil bli tegnet på hver side av den resulterende PDF-filen.

Eksempel:

I Basic

Følgende eksempel eksporterer gjeldende dokument som en PDF-fil, definerer et passord og overskriver målfilen hvis den allerede eksisterer.


    oDoc.ExportAsPDF("C:\User\Documents\myFile.pdf", Password := "1234", Overwrite := True)
  

Kodebiten nedenfor får de gjeldende PDF-eksportalternativene og bruker dem til å lage PDF-filen.


    Dim exportSettings as Object, oSession as Object
    oSession = CreateScriptService("Session")
    exportSettings = oSession.GetPDFExportOptions()
    ' Setter til Sann alternativet for å eksportere kommentarer som PDF-notater
    exportSettings.ReplaceItem("ExportNotes", True)
    oSession.SetPDFExportOptions(exportSettings)
    oDoc.ExportAsPDF("C:\User\Documents\myFile.pdf")
  
I Python

    doc.ExportAsPDF(r"C:\User\Documents\myFile.pdf", password = "1234", overwrite = True)
  

    session = CreateScriptService("Session")
    exportSettings = oSession.GetPDFExportOptions()
    exportSettings.ReplaceItem("ExportNotes", True)
    session.SetPDFExportOptions(exportSettings)
    doc.ExportAsPDF(r"C:\User\Documents\myFile.pdf")
  

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 det ble importert stiler.

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. Standard = 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

Denne metoden sender innholdet i dokumentet til standardskriveren eller til skriveren definert av SetPrinter-metoden.

Returnerer Sann hvis dokumentet ble skrevet ut.

Syntaks:

svc.PrintOut(pages: str = "", copies: num = 1): bool

Parametre:

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

kopier: Antall kopier. Standard er 1.

Eksempel:

I Basic

    If oDoc.PrintOut("1-4;10;15-18", Copies := 2) Then
        ' ...
    End If
  
I Python

    if doc.PrintOut(copies=3, pages='45-88'):
        # ...
  

RemoveMenu

Fjerner en toppnivåmeny fra menylinjen i et gitt dokumentvindu.

Returnerer True hvis den angitte menyen kunne fjernes. Hvis den angitte menyen ikke eksisterer, returnerer metoden Usann.

note

Denne metoden kan brukes til å fjerne alle menyoppføringer fra dokumentvinduet, inkludert standardmenyer. Ingen av disse endringene i menylinjen lagres imidlertid i dokumentet eller i applikasjonsinnstillingene. For å gjenopprette menylinjen til standardinnstillingene, lukk og åpne dokumentvinduet på nytt.


Syntaks:

svc.RemoveMenu(menuheader: str): bool

Parametre:

menyhode: Toppnivånavnet på menyen som skal fjernes.

Eksempel:

I Basic

    Dim oDoc as Object
    Set oDoc = CreateScriptService("Document")
    oDoc.RemoveMenu ("Min meny")
  
I Python

    doc = CreateScriptService("Document")
    doc.RemoveMenu("Min meny")
  
tip

Se SFWidgets.Menu hjelpesiden for å lære mer om hvordan du oppretter/ fjerne menyer i LibreOffice dokumentvinduer.


RunCommand

Kjører en UNO-kommando på dokumentvinduet som er knyttet til tjenesteforekomsten. Noen typiske kommandoer er: Lagre, Lagre Som, ExportToPDF, Angre, Kopier, Lim inn, etc.

Selve dokumentet trenger ikke være aktivt for å kunne kjøre kommandoer.

Kommandoer kan kjøres med eller uten argumenter. Argumenter blir ikke validert før kommandoen kjøres. Hvis kommandoen eller dens argumenter er ugyldige, vil ingenting skje.

tip

For en fullstendig liste over UNO-kommandoer som kan kjøres i LibreOffice, se Wiki-siden Development/DispatchCommands.


Syntaks:

svc.RunCommand(command: str, [args: any])

Parametre:

kommando: Skrevet av store og små bokstaver som inneholder UNO-kommandonavnet. Inkludering av prefikset ".uno:" i kommandoen er valgfritt. Selve kommandoen kontrolleres ikke for korrekthet. Hvis ingenting skjer etter kommandoanropet, er kommandoen sannsynligvis feil.

args: For hvert argument som skal sendes til kommandoen, spesifiser et par som inneholder argumentnavnet og verdien.

Eksempel:

I Basic

Følgende eksempel kjører kommandoen SelectData i en Calc-fil kalt "MyFile.ods", som vil resultere i valg av dataområdet basert på den valgte cellen. Merk at denne kommandoen ikke krever noen argumenter.


    Set oDoc = CreateScriptService("Document", "MyFile.ods")
    oDoc.RunCommand("SelectData")
  

Nedenfor er et eksempel som kjører UNO-kommandoen ReplaceAll og sender verdier for argumentene SearchString og ReplaceString. Å kjøre denne kommandoen vil erstatte all forekomst av strengen "abc" med "ABC" i gjeldende ark.


    ' Argumenter sendt til kommandoen:
    ' SearchString  = "abc"
    ' ReplaceString = "ABC"
    oDoc.RunCommand(".uno:ReplaceAll", "SearchString", "abc", "ReplaceString", "ABC")
  

Merk at å kalle kommandoen ReplaceAll uten argumenter vil åpne Finn og erstatt-dialogen.

I Python

    doc = CreateScriptService("Document", "MyFile.ods")
    doc.RunCommand("SelectData")
  

    doc.RunCommand(".uno:ReplaceAll", "SearchString", "abc", "ReplaceString", "ABC")
  

I Python er det også mulig å kalle RunCommand ved å bruke søkeordargumenter:


    doc.RunCommand(".uno:ReplaceAll", SearchString = "abc", ReplaceString = "ABC")
  
tip

Hver LibreOffice-komponent har sitt eget sett med kommandoer tilgjengelig. En enkel måte å lære kommandoer på er å gå til Verktøy - Tilpass - Tastatur. Når du plasserer musen over en funksjon i Funksjon-listen, vises et verktøytips med den tilsvarende UNO-kommandoen.


Save

Lagrer dokumentet på filplasseringen det ble lastet fra. Metoden ignoreres hvis dokumentet ikke ble endret.

Returnerer False hvis dokumentet ikke kunne lagres. En feil oppstår hvis filen er åpen som skrivebeskyttet, eller hvis det er en ny fil som ikke er lagret ennå.

Selve dokumentet trenger ikke være aktivt for å kjøre denne metoden.

Syntaks:

svc.Save(): bool

Eksempel:

I Basic

    If Not oDoc.Save() Then
        ' ...
    End If
  
I Python

    if not doc.Save():
        # ...
  

SaveAs

Lagrer dokumentet til den gitte filplasseringen. Den nye plasseringen blir det nye filnavnet som enkle Lagre-metodekall vil bli brukt på.

Returnerer False hvis dokumentet ikke kunne lagres. En feil oppstår når overskriving av destinasjonen avvises eller når destinasjonen har sitt skrivebeskyttede attributt satt.

Selve dokumentet trenger ikke være aktivt for å kjøre denne metoden.

Syntaks:

svc.SaveAs(filename: str, overwrite: bool = False, password: str = '', filtername: str = '', filteroptions: str = ''): bool

Parametre:

filnavn: En streng som inneholder filnavnet som skal brukes. Den må følge SF_FileSystem.FileNaming-notasjonen.

overskriv: Hvis Sann, kan målfilen bli overskrevet (standard = Usann).

passord (*): En streng uten mellomrom for å beskytte dokumentet.

filternavn (*): Navnet på et filter som skal brukes for å lagre dokumentet. Hvis dette argumentet passeres, må filteret eksistere.

filteralternativer (*): En valgfri streng med alternativer knyttet til filteret.

Eksempel:

I Basic

    oDoc.SaveAs("C:\Documents\NewCopy.odt", overwrite := True)
  
I Python

    doc.SaveAs(r"C:\Documents\NewCopy.odt", overwrite = True)
  

SaveCopyAs

Lagrer en kopi av eller eksporter dokumentet til den gitte filplasseringen. Den faktiske plasseringen er uendret.

Returnerer Usann hvis dokumentet ikke kunne lagres. En feil oppstår når overskriving av destinasjonen avvises eller når destinasjonen har sitt skrivebeskyttede attributt satt.

Selve dokumentet trenger ikke være aktivt for å kjøre denne metoden.

Syntaks:

svc.SaveCopyAs(filename: str, overwrite: bool = False, password: str = '', filtername: str = '', filteroptions: str = ''): bool

Parametre:

filnavn: En streng som inneholder filnavnet som skal brukes. Den må følge SF_FileSystem.FileNaming-notasjonen.

overskriv: Hvis Sann, kan målfilen bli overskrevet (standard = Usann).

passord (*): En streng uten mellomrom for å beskytte dokumentet.

filternavn (*): Navnet på et filter som skal brukes for å lagre dokumentet. Hvis dette argumentet passeres, må filteret eksistere.

filteralternativer (*): En valgfri streng med alternativer knyttet til filteret.

Eksempel:

I Basic

    oDoc.SaveCopyAs("C:\Documents\Copy2.odt", Overwrite := True)
  
I Python

    doc.SaveCopyAs(r"C:\Documents\Copy2.odt", overwrite = True)
  

SetPrinter

Definerer skriveralternativene for dokumentet.

Returnerer Sann når det lykkes.

Syntaks:

svc.SetPrinter(opt printer: str, opt orientation: str, paperformat: str): bool

Parametre:

skriver: Navnet på skriverkøen der den skal skrives ut. Når den er fraværende, angis standardskriveren.

orientering: Enten PORTRETT eller LANDSKAP. Når fraværende, forblir uendret med hensyn til skriverinnstillingene.

papirformat: Spesifiserer papirformatet som en strengverdi som kan være enten A3, A4, A5, LETTER, LEGAL eller TABLOID. Blir uendret hvis ikke spesifisert.

Eksempel:

I Basic

    oDoc.SetPrinter(Orientation := "PORTRAIT")
  
I Python

    doc.SetPrinter(paperformat='TABLOID')
  

Styles

Henter en liste over stiler som samsvarer med et valgfritt sammensatt kriterium, den returnerte matrisen kan være tom. Det gjelder alle dokumenttyper unntatt Base.

Syntaks:

svc.Styles(family, opt namepattern: str, opt used: bool, opt userdefined: bool, opt parentstyle: str, opt category: str): str[0..*])

familie: En av stilfamiliene som finnes i selve dokumentet, som en streng som skiller mellom store og små bokstaver. Gyldige familienavn kan hentes ved å bruke StyleFamilies-egenskapen.

kategori: En streng som ikke skiller mellom store og små bokstaver: TEXT, CHAPTER, LIST, INDEX, EXTRA, HTML. For deres respektive betydninger, se avsnittsstilkategori API-dokumentasjon.

Dette argumentet ignoreres når familien skiller seg fra "ParagraphStyles".

navnemønster: Et filter på stilnavnene, som et strengmønster som skiller mellom store og små bokstaver. Navnene inkluderer interne og lokaliserte navn.

Tillatte jokertegn er:

foreldrestil: Når det er tilstede, beholdes bare underordnede av det gitte, lokaliserte eller ikke, overordnede stilnavnet.

brukt: Når Sann, må stilen brukes i dokumentet, når fraværende blir argumentet ignorert.

brukerdefinert: Når Sann, må stilen ha blitt lagt til av brukeren, enten i dokumentet eller dets mal, når fraværende, blir argumentet ignorert.

Eksempel:

I Basic

    Dim vStyles As Variant
    vStyles = oDoc.Styles("ParagraphStyles") 'Alle stiler i familien
    vStyles = oDoc.Styles("ParagraphStyles", "H*") 'Overskrift, Overskrift 1, ...
    vStyles = oDoc.Styles("ParagraphStyles", Brukt := False, UserDefined := True) ' Alle brukerdefinerte stiler som ikke brukes
    vStyles = oDoc.Styles("ParagraphStyles", ParentStyle := "Standard") ' Alle stiler avledet fra 'Standard avsnittsstil'
  
I Python

    vStyles = doc.Styles('ParagraphStyles') #Alle stiler i familien
    vStyles = doc.Styles('ParagraphStyles', 'H*') #Overskrift, Overskrift 1, ...
    vStyles = doc.Styles('ParagraphStyles', Used = False, UserDefined = True) # Alle brukerdefinerte stiler som ikke brukes
    vStyles = doc.Styles('ParagraphStyles', ParentStyle = 'Standard") # Alle stiler avledet fra "Standard avsnittsstil"
  

Toolbars

Denne metoden returnerer enten en liste over de tilgjengelige verktøylinjenavnene i det faktiske dokumentet eller en forekomst SFWidgets.Toolbar tjenesten.

Syntaks:

svc.Toolbars(opt ToolbarName: str): uno
svc.Toolbars(): str[0..]

Parametre:

ToolbarName: Det vanlige navnet på en av de tilgjengelige verktøylinjene.

Eksempel:

I Basic

    Dim oToolbar As Object
    Set oToolbar = oDoc.Toolbars("myToolbar")
  
I Python

    a_list = doc.Toolbars()
  

XStyles

Denne metoden returnerer UNO-representasjonen av en gitt stil for alle dokumenttyper unntatt Base. Ingenting returneres når stilnavnet ikke eksisterer i den gitte familien.

Syntaks:

svc.XStyles(family: str, stylename: str): uno

Parametre:

familie: En av stilfamiliene som finnes i selve dokumentet, som en streng som skiller mellom store og små bokstaver. Gyldige familienavn kan hentes ved å bruke StyleFamilies-egenskapen.

stilnavn: En av stilene som finnes i den gitte familien, som en streng som skiller mellom store og små bokstaver. StyleName kan være lokalisert eller ikke.

Eksempel:

I Basic

    Dim oStyle As Object
    Set oStyle = oDoc.XStyle("ParagraphStyle", "Heading 2")
  
I Python

    oStyle = doc.XStyle('ParagraphStyle', 'Heading 2')
  
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!