LibreOffice 25.2 Βοήθεια
Η κοινόχρηστη βιβλιοθήκη SFDocuments παρέχει έναν αριθμό μεθόδων και ιδιοτήτων για τη διευκόλυνση της διαχείρισης και του χειρισμού των εγγράφων του LibreOffice.
Ορισμένες μέθοδοι είναι γενικές για όλους τους τύπους εγγράφων και κληρονομούνται από την ενότητα SF_Document, ενώ άλλες μέθοδοι που είναι ειδικές για έγγραφα Writer ορίζονται στην ενότητα SF_Writer.
Πριν χρησιμοποιήσετε την υπηρεσία Writer πρέπει να φορτωθεί ή να εισαχθεί η βιβλιοθήκη ScriptForge:
Η υπηρεσία Writer σχετίζεται στενά με την υπηρεσία UI της βιβλιοθήκης ScriptForge. Παρακάτω είναι μερικά παραδείγματα για το πώς μπορεί να κληθεί η υπηρεσία Writer.
Το παρακάτω απόσπασμα κώδικα δημιουργεί μια παρουσία υπηρεσίας Writer που αντιστοιχεί στο τρέχον ενεργό έγγραφο Writer.
    Dim oDoc As Object
    Set oDoc = CreateScriptService("SFDocuments.Writer", "Untitled 1") ' Default = ActiveWindow
  Ένας άλλος τρόπος για να δημιουργήσετε μια παρουσία της υπηρεσίας Writer είναι η χρήση της υπηρεσίας UI. Στο παρακάτω παράδειγμα, δημιουργείται ένα νέο έγγραφο Writer και το oDoc είναι μια παρουσία υπηρεσίας Writer:
    Dim ui As Object, oDoc As Object
    Set ui = CreateScriptService("UI")
    Set oDoc = ui.CreateDocument("Writer")
  Ή χρησιμοποιώντας τη μέθοδο OpenDocument από την υπηρεσία UI:
    Set oDoc = ui.OpenDocument("C:\Me\MyFile.odt")
  Είναι επίσης δυνατό να δημιουργήσετε την υπηρεσία Writer χρησιμοποιώντας τη μέθοδο CreateScriptService:
    Dim oDoc As Object
    Set oDoc = CreateScriptService("SFDocuments.Writer", "MyFile.odt")
  Στο παραπάνω παράδειγμα, το "MyFile.odt" είναι το όνομα ενός ανοιχτού παραθύρου εγγράφου. Εάν αυτό το όρισμα δεν παρέχεται, λαμβάνεται υπόψη το ενεργό παράθυρο.
Συνιστάται η απελευθέρωση πόρων μετά τη χρήση:
    Set oDoc = oDoc.Dispose()
  Ωστόσο, εάν το έγγραφο έκλεισε χρησιμοποιώντας τη μέθοδο CloseDocument, δεν είναι απαραίτητο να απελευθερωθούν πόροι χρησιμοποιώντας την εντολή που περιγράφεται παραπάνω.
    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()
  Η χρήση του προθέματος "SFDocuments." κατά την κλήση της υπηρεσίας είναι προαιρετική.
| Κατάλογος μεθόδων στην υπηρεσία Writer | ||
|---|---|---|
Ανάλογα με τις παραμέτρους που παρέχονται, αυτή η μέθοδος θα επιστρέψει:
Ένας πίνακας μηδενικής βάσης (ή μια πλειάδα στην Python) με τα ονόματα όλων των μορφών που περιέχονται στο έγγραφο (εάν το όρισμα form απουσιάζει)
Ένα στιγμιότυπο υπηρεσίας SFDocuments.Form που αντιπροσωπεύει τη φόρμα που έχει καθοριστεί ως όρισμα.
svc.Forms(): str[0..*]
svc.Forms(form: str = ''): svc
svc.Forms(form: int): svc
form (φόρμα): Το όνομα ή το ευρετήριο που αντιστοιχεί σε μια φόρμα που είναι αποθηκευμένη στο έγγραφο. Εάν αυτό το όρισμα απουσιάζει, η μέθοδος θα επιστρέψει έναν κατάλογο με τα ονόματα όλων των μορφών που είναι διαθέσιμες στο έγγραφο.
Στα ακόλουθα παραδείγματα, η πρώτη γραμμή λαμβάνει τα ονόματα όλων των μορφών στο έγγραφο και η δεύτερη γραμμή ανακτά το αντικείμενο Form της φόρμας με το όνομα "Form_A".
    Set FormNames = oDoc.Forms()
    Set FormA = oDoc.Forms("Form_A")
  
    form_names = doc.Forms()
    form_A = doc.Forms("Form_A")
  Αυτή η μέθοδος φορτώνει όλες τις τεχνοτροπίες που ανήκουν σε μία ή περισσότερες οικογένειες τεχνοτροπιών από ένα κλειστό αρχείο στο πραγματικό έγγραφο. Το πραγματικό έγγραφο πρέπει να είναι ένα έγγραφο Calc, ή Writer.
Εισάγονται πάντα μαζί:
ParagraphStyles και CharacterStyles
NumberingStyles και ListStyles
Επιστρέφει True εάν οι τεχνοτροπίες εισήχθησαν με επιτυχία.
svc.ImportStylesFromFile(filename: str, families: str[1..*], overwrite = False): bool
filename: Το αρχείο από το οποίο θα φορτωθούν οι τεχνοτροπίες στη σημειογραφία FileSystem. Το αρχείο θεωρείται ότι είναι του ίδιου τύπου εγγράφου με το πραγματικό έγγραφο.
families: Μία από τις οικογένειες τεχνοτροπιών που υπάρχουν στο πραγματικό έγγραφο, ως συμβολοσειρά με διάκριση πεζών-κεφαλαίων ή ως πίνακας τέτοιων συμβολοσειρών. Αφήστε αυτό το όρισμα κενό για εισαγωγή όλων των οικογενειών.
overwrite: Όταν είναι True, οι πραγματικές τεχνοτροπίες ενδέχεται να αντικατασταθούν. Η προεπιλογή είναι False.
    oDoc.ImportStylesFromFile("C:\User\Documents\myFile.ods", "ParagraphStyles", True)
  
    doc.ImportStylesFromFile('C:\User\Documents\myFile.ods', ("ParagraphStyles",), False)
  Στείλτε τα περιεχόμενα του εγγράφου στον εκτυπωτή. Ο εκτυπωτής μπορεί να έχει καθοριστεί προηγουμένως από προεπιλογή, από τον χρήστη ή από τη μέθοδο SetPrinter της υπηρεσίας Document. Επιστρέφει True όταν είναι επιτυχής.
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
pages (σελίδες): Οι σελίδες που θα εκτυπωθούν ως συμβολοσειρά, όπως στη διεπαφή χρήστη. Παράδειγμα: "1-4;10;15-18". Προεπιλογή = όλες οι σελίδες
copies (αντίγραφα): Ο αριθμός των αντιγράφων, η προεπιλογή είναι 1.
printbackground (εκτύπωση παρασκηνίου): Εκτυπώνει την εικόνα παρασκηνίου όταν είναι True (προεπιλογή).
printblankpages (εκτύπωση κενών σελίδων): Όταν είναι False (προεπιλογή), παραλείπει τις κενές σελίδες.
printevenpages (εκτύπωση ζυγών σελίδων): Εκτυπώνει τις ζυγές σελίδες όταν είναι True (προεπιλογή).
printoddpages (εκτύπωση μονών σελίδων): Εκτύπωση των μονών σελίδων όταν είναι True (προεπιλογή).
printimages (εκτύπωση εικόνων): Εκτυπώνει αντικείμενα γραφικών όταν είναι True (προεπιλογή).
      oDoc.PrintOut("1-4;10;15-18", Copies := 2, PrintImages := False)
  
    doc.PrintOut(printblankpages = True, copies = 3)