Mga SFDocuments . Dokumento serbisyo

Ang Mga SFDocuments ang library ay nagbibigay ng mga pamamaraan at katangian upang mapadali ang pamamahala at pagmamanipula ng mga dokumento ng LibreOffice.

Ang mga pamamaraan na naaangkop para sa lahat ng uri ng mga dokumento (Mga Tekstong Dokumento, Sheet, Presentasyon, atbp) ay ibinibigay ng SFDocuments.Document serbisyo. Ang ilang mga halimbawa ay:

warning

Ang mga katangian, pamamaraan o argumento na minarkahan ng (*) ay HINDI naaangkop sa mga Base na dokumento .


Ang mga pamamaraan at katangian na partikular sa ilang partikular na bahagi ng LibreOffice ay iniimbak sa magkakahiwalay na serbisyo, gaya ng SFDocuments.SF_Calc at SFDocuments.SF_Base .

Bagama't ang Basic na wika ay hindi nag-aalok ng mana sa pagitan ng mga object class, ang mga huling serbisyo ay maaaring ituring bilang mga subclass ng SFDocuments.Document serbisyo. Maaaring gamitin ng mga naturang subclass ang mga katangian at pamamaraang inilarawan sa ibaba.

Panawagan sa serbisyo

Bago gamitin ang Dokumento serbisyo ang ScriptForge kailangang i-load o i-import ang library:

note

• Ang mga pangunahing macro ay kailangang mag-load ScriptForge aklatan gamit ang sumusunod na pahayag:
GlobalScope.BasicLibraries.loadLibrary("ScriptForge")

• Ang mga script ng Python ay nangangailangan ng pag-import mula sa scriptforge module:
mula sa scriptforge import CreateScriptService


Nasa ibaba ang tatlong variant kung paano ang Dokumento maaaring gamitin ang serbisyo.

Sa Basic

Gamit ang getDocument pamamaraan mula sa ScriptForge . UI serbisyo:


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

Bilang kahalili maaari mong gamitin ang mga pamamaraan Lumikha ng Dokumento at OpenDocument mula sa UI serbisyo.


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

Paggamit ng pangalan ng window kung nakabukas na ang dokumento.


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

Gamit ang dokumentong tinukoy ni ThisComponent . Ito ay partikular na kapaki-pakinabang kapag nagpapatakbo ng isang macro mula sa loob ng Basic IDE.


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

Mula sa isang macro na na-trigger ng isang kaganapan ng dokumento.


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

Ang Dokumento ang serbisyo ay malapit na nauugnay sa UI at FileSystem serbisyo.


Maliban kung ang dokumento ay isinara ng programa gamit ang CloseDocument na pamamaraan (ito ay kalabisan), inirerekomenda na magbakante ng mga mapagkukunan pagkatapos gamitin:


    Set oDoc = oDoc.Dispose()
  
Sa 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

Ang paggamit ng prefix na " Mga SFDocuments. " habang ang pagtawag sa serbisyo ay opsyonal.


Mga Katangian

Pangalan

Readonly

Type

Mga nilalaman

CustomProperties (*)

Hindi

Dictionary service

Nagbabalik a ScriptForge.Diksyunaryo bagay na halimbawa. Pagkatapos ng pag-update, maaaring ipasa muli sa property para sa pag-update ng dokumento.
Ang mga indibidwal na item ng diksyunaryo ay maaaring alinman sa mga string, numero, (Basic) na petsa o com.sun.star.util.Duration mga bagay.

Description (*)

Hindi

String

Nagbibigay ng access sa katangian ng Paglalarawan ng dokumento (kilala rin bilang "Mga Komento")

DocumentProperties (*)

Mayroon

Dictionary service

Nagbabalik a ScriptForge.Diksyunaryo bagay na naglalaman ng lahat ng mga entry. Kasama ang mga istatistika ng dokumento. Tandaan na ang mga ito ay tiyak sa uri ng dokumento. Bilang halimbawa, ang isang dokumento ng Calc ay may kasamang entry na "CellCount". Ang ibang mga dokumento ay hindi.

DocumentType

Mayroon

String

String value na may uri ng dokumento ("Base", "Calc", "Writer", atbp)

ExportFilters (*)

Mayroon

String array

Nagbabalik ng listahan na may mga pangalan ng filter sa pag-export na naaangkop sa kasalukuyang dokumento bilang zero-based na hanay ng mga string. Ibinabalik din ang mga filter na ginamit para sa parehong pag-import/pag-export.

FileSystem

Mayroon

String

Nagbabalik ng string na may URL path sa ugat ng virtual file system ng dokumento. Gamitin ang FileSystem serbisyo upang tingnan ang mga nilalaman nito, gayundin ang gumawa, magbukas at magbasa ng mga file na nakaimbak dito.

Sumangguni sa itong pahina ng tulong upang matuto nang higit pa sa kung paano i-access at manipulahin ang mga folder at file sa virtual file system ng isang LibreOffice file.

ImportFilters (*)

Mayroon

String array

Nagbabalik ng listahan na may mga pangalan ng filter sa pag-import na naaangkop sa kasalukuyang dokumento bilang zero-based na hanay ng mga string. Ibinabalik din ang mga filter na ginamit para sa parehong pag-import/pag-export.

IsBase
IsCalc
IsDraw
IsFormDocument
IsImpress
IsMath
IsWriter

Mayroon

Boolean

Eksaktong isa sa mga katangiang ito ay totoo para sa isang ibinigay na dokumento.

Keywords (*)

Hindi

String

Nagbibigay ng access sa property ng Mga Keyword ng dokumento. Kinakatawan bilang isang listahan ng mga keyword na pinaghihiwalay ng kuwit

Readonly (*)

Mayroon

Boolean

totoo kung ang dokumento ay talagang nasa read-only mode

StyleFamilies (*)

Mayroon

String array

Listahan ng mga available na pamilya ng istilo. Naaangkop sa lahat ng uri ng dokumento maliban sa Base.

Subject (*)

Hindi

String

Nagbibigay ng access sa Subject property ng dokumento.

Title (*)

Hindi

String

Nagbibigay ng access sa Title property ng dokumento.

XComponent

Mayroon

UNO Object

Ang object ng UNO com.sun.star.lang.XComponent o com.sun.star.comp.dba.ODatabaseDocument kumakatawan sa dokumento.

XDocumentSettings (*)

Mayroon

UNO Object

A com.sun.star.XXX.DocumentSettings UNO object, kung saan ang XXX ay alinman sheet , text , pagguhit o pagtatanghal . Ang bagay na ito ay nagbibigay ng access sa mga panloob na katangian ng UNO na partikular sa uri ng dokumento.


Halimbawa:

Sa Basic

Ang halimbawa sa ibaba ay nagpi-print ng lahat ng mga katangian ng isang dokumento. Tandaan na ang oDoc bagay na ibinalik ng UI.OpenDocument ang pamamaraan ay a SFDocuments.Document bagay.


    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()
  
Sa Python

Upang ma-access ang mga katangian ng dokumento sa isang script ng Python kailangan ng user na direktang ma-access ang mga ito gamit ang kanilang mga pangalan, tulad ng ipinapakita sa ibaba:


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

Listahan ng Mga Paraan sa Serbisyo ng Dokumento

Activate
CloseDocument
CreateMenu
DeleteStyles
Echo
ExportAsPDF

PrintOut
RemoveMenu
RunCommand
Save
SaveAs

SaveCopyAs
SetPrinter
Style
Toolbars
XStyle


Activate

Nagbabalik totoo kung maa-activate ang dokumento. Kung hindi, walang pagbabago sa aktwal na user interface. Ito ay katumbas ng I-activate paraan ng UI serbisyo.

Ang pamamaraang ito ay kapaki-pakinabang kapag ang isa ay kailangang magbigay ng pokus para sa isang dokumento na pinaliit o nakatago.

Syntax:

svc.Activate(): bool

Halimbawa:

Isinasaalang-alang ng halimbawa sa ibaba na ang file na "My_File.ods" ay bukas na ngunit hindi aktibo.

Sa Basic

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

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

Tandaan na maaari mong i-invoke ang Dokumento serbisyo sa pamamagitan ng pagpasa sa CreateScriptService alinman sa "Document" o "SFDocuments.Document"


CloseDocument

Isinasara ang dokumento. Kung sarado na ang dokumento, hindi alintana kung paano isinara ang dokumento, walang epekto at babalik ang pamamaraang ito Mali .

Babalik din ang pamamaraan Mali kung tumanggi ang user na isara ito.

Nagbabalik totoo kung matagumpay na naisara ang dokumento.

Syntax:

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

Mga Parameter:

saveask : Kung totoo (default), ang gumagamit ay iniimbitahan na kumpirmahin kung ang mga pagbabago ay dapat isulat sa disk. Binabalewala ang argumentong ito kung hindi binago ang dokumento.

Halimbawa:

Sa Basic

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

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

CreateMenu

Lumilikha ng bagong entry sa menu sa menubar ng isang binigay na window ng dokumento.

Ang pamamaraang ito ay nagbabalik ng isang halimbawa ng SFWidgets.Menu serbisyo.

note

Ang menu na ginawa ay magagamit lamang sa kasalukuyang LibreOffice session at hindi nase-save alinman sa dokumento o sa mga pangkalahatang setting ng application. Kaya ang pagsasara ng window ng dokumento ay magpapawala sa menu. Ito ay lilitaw lamang muli kapag ang macro na lumilikha ng menu ay naisakatuparan muli.


Syntax:

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

Mga Parameter:

menuheader : Ang pinakamataas na pangalan ng bagong menu.

dati : Ang pangalan (bilang isang string) o posisyon (bilang isang integer na nagsisimula sa 1) ng isang umiiral na menu bago ilalagay ang bagong menu. Kung walang tinukoy na halaga para sa argumentong ito, malilikha ang menu sa huling posisyon sa menubar.

submenuchar : Ang delimiter na ginagamit upang lumikha ng mga puno ng menu kapag tinatawag ang mga pamamaraan bilang AddItem mula sa Menu serbisyo. Ang default na halaga ay ">".

Halimbawa:

Sa Basic

    Dim oDoc as Object, oMenu as Object
    Set oDoc = CreateScriptService("Document")
    Itakda ang oMenu = oDoc.CreateMenu("Aking Menu")
    With oMenu
        ' Magdagdag ng mga item sa menu
        .AddItem("Item A")
        .AddItem("Item B")
        ' ...
        ' Pagkatapos gawin ang menu, maaaring itapon ang instance ng serbisyo
        .Dispose()
    End With
  
Sa Python

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

Sumangguni sa SFWidgets.Menu pahina ng tulong upang matuto nang higit pa tungkol sa kung paano gumawa/mag-alis ng mga menu sa LibreOffice na mga window ng dokumento.


DeleteStyles

Pinipigilan ang isang istilo o isang hanay ng mga istilo na ibinigay ng kanilang mga pangalan sa loob ng isang partikular na pamilya ng mga istilo. Ang mga istilong tinukoy ng gumagamit lamang ang maaaring tanggalin, ang mga built-in na istilo ay hindi papansinin. Nalalapat ito sa lahat ng uri ng dokumento maliban sa Base at FormDocument .

Syntax:

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

Mga Parameter:

pamilya : Isa sa mga istilong pamilya na nasa aktwal na dokumento, bilang isang case-sensitive na string. Maaaring makuha ang mga wastong pangalan ng pamilya gamit ang StyleFamilies ari-arian.

styleslist : Isang solong pangalan ng istilo bilang isang string o isang hanay ng mga pangalan ng istilo. Ang mga pangalan ng estilo ay maaaring naisalokal o hindi. Ang StylesList ay karaniwang ang output ng pagpapatupad ng a Mga Estilo() paraan.

Halimbawa:

Sa Basic

    ' Pag-alis ng mga hindi nagamit na istilo ng talata
    Const family = "ParagraphStyles"
    aList = oDoc.Styles(family, used := False, userDefined := True)
    oDoc.DeleteStyles(family, aList)
  
Sa Python

    # Pag-alis ng mga istilo ayon sa isang prefix
    a_list = doc.Styles('ParagraphStyles', namepattern = "Py*")
    doc.Styles('ParagraphStyles', a_list)
  

Echo

Sinususpinde ang mga update sa user interface (UI) sa panahon ng pagpapatupad ng isang macro. Opsyonal, ang mouse pointer ay maaaring gawing isang orasa habang sinuspinde ang mga update sa UI.

tip

Maaaring magbigay ang paraang ito ng ilang benepisyo sa pagganap para sa mga macro na nagsasagawa ng maraming operasyon na nangangailangan ng mga update sa UI.


Syntax:

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

Mga Parameter:

echoon : Tukuyin Mali upang suspindihin ang mga update sa UI. Ang default na halaga ay totoo , na nagbibigay-daan sa mga real time na pag-update ng UI.

orasa : Tukuyin totoo upang baguhin ang pointer ng mouse sa isang orasa (Default = Mali ).

note

Ang paglipat ng mouse pointer pagkatapos itong maging isang hourglass ay maaaring maging sanhi ng paglipat nito sa ibang pointer depende sa bago nitong background.


Halimbawa:

Sa Basic

    ' Sinususpinde ang mga update sa UI at binago ang pointer ng mouse sa isang orasa
    oDoc.Echo(EchoOn := False, HourGlass := True)
    ' Iba pang mga macro command
    ' ...
    ' Ibinabalik ang mga update sa UI at mouse pointer
    oDoc.Echo()
  
Sa Python

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

ExportAsPDF

Direktang ine-export ang dokumento bilang isang PDF file sa tinukoy na lokasyon. Nagbabalik totoo kung matagumpay na nalikha ang PDF file.

Ang mga opsyon sa pag-export ay maaaring itakda nang manu-mano gamit ang File - I-export Bilang - I-export bilang PDF dialog o sa pamamagitan ng pagtawag sa mga pamamaraan GetPDFExportOptions at SetPDFExportOptions mula sa Sesyon serbisyo.

Syntax:

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

Mga Parameter:

filename : Ang buong path at pangalan ng file ng PDF na gagawin. Dapat itong sundin ang SF_FileSystem.FileNaming notasyon.

overwrite : Tinutukoy kung ang patutunguhang file ay maaaring ma-overwrite (Default = Mali ). Ang isang error ay magaganap kung overwrite ay nakatakda sa Mali at umiiral na ang patutunguhang file.

mga pahina : String na tumutukoy kung aling mga pahina ang ie-export. Ang argumentong ito ay gumagamit ng parehong notasyon tulad ng sa dialog File - I-export Bilang - I-export bilang PDF .

password : Tumutukoy ng password para buksan ang PDF file.

watermark : Tekstong gagamitin bilang watermark sa PDF file, na iguguhit sa bawat pahina ng magreresultang PDF.

Halimbawa:

Sa Basic

Ang sumusunod na halimbawa ay nag-e-export ng kasalukuyang dokumento bilang isang PDF file, tumutukoy sa isang password at nag-o-overwrite sa patutunguhang file kung mayroon na ito.


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

Nakukuha ng snippet ng code sa ibaba ang kasalukuyang mga opsyon sa pag-export ng PDF at ginagamit ang mga ito upang gawin ang PDF file.


    Dim exportSettings as Object, oSession as Object
    oSession = CreateScriptService("Session")
    exportSettings = oSession.GetPDFExportOptions()
    ' Itinatakda sa True ang opsyong i-export ang mga komento bilang mga tala sa PDF
    exportSettings.ReplaceItem("ExportNotes", True)
    oSession.SetPDFExportOptions(exportSettings)
    oDoc.ExportAsPDF("C:\User\Documents\myFile.pdf")
  
Sa 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")
  

PrintOut

Ang pamamaraang ito ay nagpapadala ng mga nilalaman ng dokumento sa default na printer o sa printer na tinukoy ng SetPrinter paraan.

Nagbabalik totoo kung matagumpay na nai-print ang dokumento.

Syntax:

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

Mga Parameter:

mga pahina : Ang mga pahinang ipi-print bilang isang string, tulad ng sa user interface. Halimbawa: "1-4;10;15-18". Default ay lahat ng mga pahina.

mga kopya : Ang bilang ng mga kopya. Ang default ay 1.

Halimbawa:

Sa Basic

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

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

RemoveMenu

Tinatanggal ang isang toplevel na menu mula sa menubar ng isang binigay na window ng dokumento.

Nagbabalik totoo kung maaaring alisin ang tinukoy na menu. Kung wala ang tinukoy na menu, babalik ang pamamaraan Mali .

note

Maaaring gamitin ang paraang ito upang alisin ang anumang entry sa menu mula sa window ng dokumento, kabilang ang mga default na menu. Gayunpaman, wala sa mga pagbabagong ito sa menubar ang nai-save sa dokumento o sa mga setting ng application. Upang ibalik ang menubar sa mga default na setting, isara lang at buksang muli ang window ng dokumento.


Syntax:

svc.RemoveMenu(menuheader: str): bool

Mga Parameter:

menuheader : Ang toplevel na pangalan ng menu na aalisin.

Halimbawa:

Sa Basic

    Dim oDoc as Object
    Set oDoc = CreateScriptService("Document")
    oDoc.RemoveMenu("Aking Menu")
  
Sa Python

    doc = CreateScriptService("Document")
    doc.RemoveMenu("Aking Menu")
  
tip

Sumangguni sa SFWidgets.Menu pahina ng tulong upang matuto nang higit pa tungkol sa kung paano gumawa/mag-alis ng mga menu sa LibreOffice na mga window ng dokumento.


RunCommand

Nagpapatakbo ng UNO command sa window ng dokumento na nauugnay sa instance ng serbisyo. Ang ilang karaniwang mga utos ay: Save, SaveAs, ExportToPDF, Undo, Copy, Paste, atbp.

Ang mismong dokumento ay hindi kailangang maging aktibo upang makapagpatakbo ng mga utos.

Ang mga utos ay maaaring patakbuhin nang may mga argumento o walang. Ang mga argumento ay hindi napatunayan bago patakbuhin ang utos. Kung ang utos o ang mga argumento nito ay hindi wasto, kung gayon walang mangyayari.

tip

Para sa kumpletong listahan ng mga utos ng UNO na maaaring patakbuhin sa LibreOffice, sumangguni sa pahina ng Wiki Development/DispatchCommands .


Syntax:

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

Mga Parameter:

utos : Case-sensitive na string na naglalaman ng UNO command name. Opsyonal ang pagsasama ng prefix na ".uno:" sa command. Ang utos mismo ay hindi sinusuri para sa kawastuhan. Kung walang nangyari pagkatapos ng command call, malamang na mali ang command.

args : Para sa bawat argument na ipapasa sa command, tukuyin ang isang pares na naglalaman ng pangalan ng argumento at halaga.

Halimbawa:

Sa Basic

Ang sumusunod na halimbawa ay nagpapatakbo ng SelectData command sa isang Calc file na pinangalanang "MyFile.ods", na magreresulta sa pagpili ng lugar ng data batay sa kasalukuyang napiling cell. Tandaan na ang utos na ito ay hindi nangangailangan ng anumang mga argumento.


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

Nasa ibaba ang isang halimbawa na nagpapatakbo ng UNO command PalitanLahat at nagpapasa ng mga halaga para sa mga argumento nito SearchString at ReplaceString . Papalitan ng pagpapatakbo ng command na ito ang lahat ng paglitaw ng string na "abc" ng "ABC" sa kasalukuyang sheet.


    ' Ang mga argumento ay ipinasa sa utos:
    ' SearchString  = "abc"
    ' ReplaceString = "ABC"
    oDoc.RunCommand(".uno:ReplaceAll", "SearchString", "abc", "ReplaceString", "ABC")
  

Tandaan na ang pagtawag sa command PalitanLahat walang argumento ay magbubukas ng Hanapin at Palitan diyalogo.

Sa Python

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

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

Sa Python posible ring tumawag RunCommand gamit ang mga argumento ng keyword:


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

Ang bawat bahagi ng LibreOffice ay may sariling hanay ng mga command na magagamit. Ang isang madaling paraan upang matutunan ang mga utos ay pupunta Mga Tool - I-customize - Keyboard . Kapag ipinwesto mo ang iyong mouse sa ibabaw ng isang function sa Function list, lalabas ang isang tooltip kasama ang kaukulang utos ng UNO.


Save

Iniimbak ang dokumento sa lokasyon ng file kung saan ito na-load. Ang pamamaraan ay hindi papansinin kung ang dokumento ay hindi binago.

Nagbabalik Mali kung hindi ma-save ang dokumento. Ang isang error ay itinaas kung ang file ay bukas bilang read-only, o kung ito ay isang bagong file na hindi pa nai-save.

Ang mismong dokumento ay hindi kailangang maging aktibo upang patakbuhin ang pamamaraang ito.

Syntax:

svc.Save(): bool

Halimbawa:

Sa Basic

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

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

SaveAs

Iniimbak ang dokumento sa ibinigay na lokasyon ng file. Ang bagong lokasyon ay nagiging bagong pangalan ng file kung saan ilalapat ang mga simpleng tawag sa paraan ng Pag-save.

Nagbabalik Mali kung hindi ma-save ang dokumento. Ang isang error ay itinaas kapag ang pag-overwrite sa patutunguhan ay tinanggihan o kapag ang patutunguhan ay may nakatakdang read-only na attribute.

Ang mismong dokumento ay hindi kailangang maging aktibo upang patakbuhin ang pamamaraang ito.

Syntax:

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

Mga Parameter:

filename : Isang string na naglalaman ng pangalan ng file na gagamitin. Dapat itong sundin ang SF_FileSystem.FileNaming notasyon.

overwrite : Kung totoo , ang patutunguhang file ay maaaring ma-overwrite (default = Mali ).

password (*): Isang string na hindi espasyo para protektahan ang dokumento.

filtername (*): Ang pangalan ng isang filter na dapat gamitin para sa pag-save ng dokumento. Kung naipasa ang argumentong ito, dapat na umiiral ang filter.

mga pagpipilian sa filter (*): Isang opsyonal na string ng mga opsyon na nauugnay sa filter.

Halimbawa:

Sa Basic

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

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

SaveCopyAs

Nag-iimbak ng kopya ng o i-export ang dokumento sa ibinigay na lokasyon ng file. Ang aktwal na lokasyon ay hindi nagbabago.

Nagbabalik Mali kung hindi ma-save ang dokumento. Ang isang error ay itinaas kapag ang pag-overwrite sa patutunguhan ay tinanggihan o kapag ang patutunguhan ay may nakatakdang read-only na attribute.

Ang mismong dokumento ay hindi kailangang maging aktibo upang patakbuhin ang pamamaraang ito.

Syntax:

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

Mga Parameter:

filename : Isang string na naglalaman ng pangalan ng file na gagamitin. Dapat itong sundin ang SF_FileSystem.FileNaming notasyon.

overwrite : Kung totoo , ang patutunguhang file ay maaaring ma-overwrite (default = Mali ).

password (*): Isang string na hindi espasyo para protektahan ang dokumento.

filtername (*): Ang pangalan ng isang filter na dapat gamitin para sa pag-save ng dokumento. Kung naipasa ang argumentong ito, dapat na umiiral ang filter.

mga pagpipilian sa filter (*): Isang opsyonal na string ng mga opsyon na nauugnay sa filter.

Halimbawa:

Sa Basic

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

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

SetPrinter

Tinutukoy ang mga opsyon sa printer para sa dokumento.

Nagbabalik totoo kapag matagumpay.

Syntax:

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

Mga Parameter:

printer : Ang pangalan ng queue ng printer kung saan magpi-print. Kapag wala, nakatakda ang default na printer.

oryentasyon : Alinman LARAWAN o LANDSCAPE . Kapag wala, iniwang hindi nagbabago kaugnay ng mga setting ng printer.

pormat ng papel : Tinutukoy ang format ng papel bilang isang string value na maaaring alinman A3 , A4 , A5 , LIHAM , LEGAL o TABLOID . Hindi nababago kapag wala.

Halimbawa:

Sa Basic

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

    doc.SetPrinter(paperformat='TABLOID')
  

Styles

Kinukuha ang isang listahan ng mga istilo na tumutugma sa isang opsyonal na pamantayan ng tambalan, ang ibinalik na array ay maaaring walang laman. Nalalapat ito sa lahat ng uri ng dokumento maliban sa Base .

Syntax:

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

pamilya : Isa sa mga istilong pamilya na nasa aktwal na dokumento, bilang isang case-sensitive na string. Maaaring makuha ang mga wastong pangalan ng pamilya gamit ang StyleFamilies ari-arian.

kategorya : Isang case-insensitive na string: TEXT, CHAPTER, LIST, INDEX, EXTRA, HTML. Para sa kani-kanilang kahulugan, sumangguni sa kategorya ng istilo ng talata Dokumentasyon ng API.

Ang argumentong ito ay binabalewala kapag ang Pamilya ay naiiba sa "ParagraphStyles".

namepattern : Isang filter sa mga pangalan ng istilo, bilang pattern ng string na sensitibo sa case. Kasama sa mga pangalan ang panloob at lokal na pangalan.

Ang mga tinatanggap na wildcard ay:

parentstyle : Kapag naroroon, tanging ang mga anak ng ibinigay, naisalokal o hindi, pangalan ng istilo ng magulang ang pananatilihin.

ginamit : Kailan totoo , ang estilo ay dapat gamitin sa dokumento, kapag wala ang argumento ay binabalewala.

userdefined : Kailan totoo , ang estilo ay dapat na idinagdag ng gumagamit, alinman sa dokumento o template nito, kapag wala, ang argumento ay hindi papansinin.

Halimbawa:

Sa Basic

    Dim vStyles As Variant
    vStyles = oDoc.Styles("ParagraphStyles") 'Lahat ng estilo sa pamilya
    vStyles = oDoc.Styles("ParagraphStyles", "H*") 'Heading, Heading 1, ...
    vStyles = oDoc.Styles("ParagraphStyles", Used := False, UserDefined := True) ' Lahat ng user-defined style na hindi ginagamit
    vStyles = oDoc.Styles("ParagraphStyles", ParentStyle := "Standard") ' Lahat ng mga istilo ay nagmula sa 'Default na Estilo ng Talata'
  
Sa Python

    vStyles = doc.Styles('ParagraphStyles') #Lahat ng istilo sa pamilya
    vStyles = doc.Styles('ParagraphStyles', 'H*') #Heading, Heading 1, ...
    vStyles = doc.Styles('ParagraphStyles', Used = False, UserDefined = True) # Lahat ng user-defined style na hindi ginagamit
    vStyles = doc.Styles('ParagraphStyles', ParentStyle = 'Standard") # Lahat ng mga istilo ay nagmula sa "Default na Estilo ng Talata"
  

Toolbars

Ibinabalik ng pamamaraang ito ang alinman sa isang listahan ng magagamit na mga pangalan ng toolbar sa aktwal na dokumento o isang instance SFWidgets.Toolbar serbisyo.

Syntax:

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

Mga Parameter:

ToolbarName : Ang karaniwang pangalan ng isa sa mga magagamit na toolbar.

Halimbawa:

Sa Basic

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

    a_list = doc.Toolbars()
  

XStyles

Ibinabalik ng pamamaraang ito ang representasyon ng UNO ng isang ibinigay na istilo para sa lahat ng uri ng dokumento maliban sa Base . wala ay ibinabalik kapag ang StyleName ay wala sa ibinigay na pamilya.

Syntax:

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

Mga Parameter:

pamilya : Isa sa mga istilong pamilya na nasa aktwal na dokumento, bilang isang case-sensitive na string. Maaaring makuha ang mga wastong pangalan ng pamilya gamit ang StyleFamilies ari-arian.

stylename : Isa sa mga istilong naroroon sa ibinigay na pamilya, bilang isang case-sensitive na string. Ang StyleName maaaring localized o hindi.

Halimbawa:

Sa Basic

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

    oStyle = doc.XStyle('ParagraphStyle', 'Heading 2')
  
warning

Lahat ScriptForge Ang mga pangunahing gawain o identifier na may prefix na may underscore na character na "_" ay nakalaan para sa panloob na paggamit. Ang mga ito ay hindi nilalayong gamitin sa Basic macros o Python script.


Mangyaring suportahan kami!