Λειτουργίες Παρουσίασης Low-Code σε .NET
Επισκόπηση
Ο χώρος ονομάτων Aspose.Slides.LowCode παρέχει στατικές βοηθητικές κλάσεις για κοινές λειτουργίες παρουσιάσεων. Αυτοί οι βοηθοί περιτυλίγουν συχνά χρησιμοποιούμενες ροές εργασίας του μοντέλου αντικειμένων σε εστιασμένες μεθόδους, ώστε να μπορείτε να μετατρέψετε ή να συγχωνεύετε αρχεία, να επεξεργάζεστε στοιχεία παρουσίασης, να συλλέγετε σχήματα και να αφαιρέσετε αχρησιμοποίητο περιεχόμενο με λιγότερο κώδικα.
Οι βοηθοί low-code είναι πιο χρήσιμοι όταν η λειτουργία εφαρμόζεται σε ολόκληρο το αρχείο ή την παρουσίαση και η προεπιλεγμένη ροή εργασίας ταιριάζει με τις απαιτήσεις σας. Χρησιμοποιήστε το πλήρες Aspose.Slides object model όταν χρειάζεστε λεπτομερή έλεγχο πάνω σε μεμονωμένες διαφάνειες, master, layouts, σχήματα, ρυθμίσεις εξαγωγής ή σχέσεις μεταξύ των στοιχείων παρουσίασης.
Ο παρακάτω πίνακας συνοψίζει τους διαθέσιμους βοηθούς:
| Βοηθός | Χρησιμοποιήστε το για |
|---|---|
| Convert | Μετατροπή μιας παρουσίασης σε άλλη μορφή με άμεση κλήση αρχείο‑σε‑αρχείο. |
| Merger | Συνδυασμός ολοκληρωμένων αρχείων παρουσίασης του ίδιου τύπου. |
| ForEach | Εκτέλεση ενέργειας για κάθε διαφάνεια, σχήμα, παράγραφο ή τμήμα κειμένου. |
| Collect | Ανάκτηση σχημάτων από ολόκληρη την παρουσίαση για επαναλαμβανόμενη επεξεργασία ή ανάλυση. |
| Compress | Αφαίρεση αχρησιμοποίητων master/layouts, μείωση ενσωματωμένων δεδομένων γραμματοσειράς και συμπίεση εικόνων. |
Μετατροπή Παρουσίασης
Χρησιμοποιήστε Convert.AutoByExtension όταν η επέκταση του αρχείου εξόδου είναι επαρκής για την επιλογή του μορφότυπου εξαγωγής. Η μέθοδος ανοίγει την πηγαία παρουσίαση, καθορίζει τον απαιτούμενο μορφότυπο από τη διαδρομή εξόδου και γράφει το αποτέλεσμα.
using Aspose.Slides.LowCode;
Convert.AutoByExtension("input.pptx", "output.pdf");
Η κλάση Convert παρέχει επίσης αφιερωμένες μεθόδους για έξοδο PDF, SVG, JPEG, PNG και TIFF. Χρησιμοποιήστε το πλήρες μοντέλο αντικειμένων όταν χρειάζεται να ελέγξετε ή να τροποποιήσετε την παρουσίαση πριν από την εξαγωγή ή να ρυθμίσετε μια επιλογή εξαγωγής που δεν εκτίθεται από τον βοηθό. Δείτε το Convert Presentation για εργασίες και επιλογές εξειδικευμένων μορφότυπων.
Συγχώνευση Παρουσιάσεων
Χρησιμοποιήστε Merger.Process για να συνδυάσετε ολοκληρωμένα αρχεία παρουσίασης με μία κλήση. Οι εισερχόμενες παρουσιάσεις πρέπει να έχουν τον ίδιο τύπο αρχείου.
using Aspose.Slides.LowCode;
var inputFiles = new[] { "part-1.pptx", "part-2.pptx" };
Merger.Process(inputFiles, "merged.pptx");
Ο βοηθός είναι κατάλληλος όταν όλες οι διαφάνειες πρέπει να προσαρτηθούν σε ένα αποτέλεσμα χωρίς την επιλογή ή την επαναχαρτογράφηση τους μεμονωμένα. Χρησιμοποιήστε το πλήρες μοντέλο αντικειμένων όταν χρειάζεται να συγχωνεύσετε επιλεγμένες διαφάνειες, να εφαρμόσετε προορισμό master ή layout, να διατηρήσετε ρητά τις ενότητες ή να εναρμονίσετε διαφορετικά μεγέθη διαφανειών. Δείτε το Merge Presentations για αυτά τα σενάρια.
Επανάληψη Στοιχείων Παρουσίασης
Η κλάση ForEach καλεί μια λειτουργία επιστροφής κλήσης (callback) για κάθε ζητούμενο τύπο στοιχείου παρουσίασης. Αποφεύγει ένθετες βρόχους συλλογών και είναι βολική για έλεγχο ή αλλαγές μορφοποίησης σε όλη την παρουσίαση.
Το παρακάτω παράδειγμα χρησιμοποιεί ForEach.Slide, ForEach.Shape, ForEach.Paragraph και ForEach.Portion για να ελέγξει τα αντίστοιχα στοιχεία:
using System;
using Aspose.Slides;
using Aspose.Slides.LowCode;
using var presentation = new Presentation("input.pptx");
ForEach.Slide(presentation, (slide, index) =>
{
Console.WriteLine($"Slide {index}: {slide.Shapes.Count} shapes");
});
ForEach.Shape(presentation, (shape, slide, index) =>
{
Console.WriteLine($"Shape {index} on {slide.GetType().Name}: {shape.Name}");
});
ForEach.Paragraph(presentation, (paragraph, slide, index) =>
{
Console.WriteLine($"Paragraph {index} on {slide.GetType().Name}: {paragraph.Text}");
});
ForEach.Portion(presentation, (portion, paragraph, slide, index) =>
{
Console.WriteLine($"Portion {index} on {slide.GetType().Name}: {portion.Text}");
});
Από προεπιλογή, η διάσχιση σχημάτων και κειμένου σε όλη την παρουσίαση περιλαμβάνει κανονικές, master και layout διαφάνειες. Οι υπερφορτώσεις με παράμετρο includeNotes μπορούν επίσης να επεξεργαστούν διαφάνειες σημειώσεων. Χρησιμοποιήστε άμεσους βρόχους συλλογής όταν η σειρά διάσχισης, η πρώιμη έξοδος, το φιλτράρισμα πριν την κλήση της λειτουργίας ή ο λεπτομερής έλεγχος γονέα‑παιδιού είναι σημαντικά.
Συλλογή Σχημάτων
Χρησιμοποιήστε Collect.Shapes όταν χρειάζεστε μια συλλογή όλων των σχημάτων σε μια παρουσίαση αντί για κλήση επιστροφής για κάθε σχήμα. Αυτό είναι χρήσιμο όταν το ίδιο σύνολο θα φιλτραριστεί, μετρηθεί ή υποβληθεί σε επεξεργασία περισσότερες από μία φορές.
using System;
using Aspose.Slides;
using Aspose.Slides.LowCode;
using var presentation = new Presentation("input.pptx");
var shapes = Collect.Shapes(presentation);
foreach (var shape in shapes)
{
Console.WriteLine($"{shape.Name}: {shape.GetType().Name}");
}
Χρησιμοποιήστε ForEach.Shape αντί αυτού όταν κάθε σχήμα μπορεί να επεξεργαστεί αμέσως και δεν χρειάζεται να διατηρηθεί το συλλεγμένο αποτέλεσμα.
Συμπίεση Περιεχομένου Παρουσίασης
Η κλάση Compress μπορεί να αφαιρέσει αχρησιμοποίητα δομικά στοιχεία και να μειώσει τα ενσωματωμένα δεδομένα γραμματοσειρών:
- Compress.RemoveUnusedLayoutSlides αφαιρεί διαφάνειες layout που δεν αναφέρονται από καμία κανονική διαφάνεια.
- Compress.RemoveUnusedMasterSlides αφαιρεί master διαφάνειες που δεν χρησιμοποιούνται πια.
- Compress.CompressEmbeddedFonts αφαιρεί αχρησιμοποίητους χαρακτήρες από ενσωματωμένες γραμματοσειρές.
using Aspose.Slides;
using Aspose.Slides.Export;
using Aspose.Slides.LowCode;
using var presentation = new Presentation("input.pptx");
Compress.RemoveUnusedLayoutSlides(presentation);
Compress.RemoveUnusedMasterSlides(presentation);
Compress.CompressEmbeddedFonts(presentation);
presentation.Save("compressed.pptx", SaveFormat.Pptx);
Αφαιρέστε πρώτα τα αχρησιμοποίητα layouts πριν τα αχρησιμοποίητα masters, ώστε ένα master που γίνεται αχρησιμοποίητο μετά τον καθαρισμό των layouts να μπορεί επίσης να αφαιρεθεί. Αποθηκεύστε την βελτιστοποιημένη παρουσίαση σε νέο αρχείο εάν μπορεί να χρειαστείτε τα αρχικά masters, layouts ή τα πλήρη ενσωματωμένα δεδομένα γραμματοσειράς αργότερα. Για περισσότερες λεπτομέρειες, δείτε το Slide Master και το Embedded Font.
Συμπίεση Ολόκληρης Παρουσίασης
Το Aspose.Slides για .NET 26.11 προσθέτει το Compress.CompressPresentation. Συνδυάζει την αφαίρεση αχρησιμοποίητων layout/master διαφανειών, την υποστροφή ενσωματωμένων γραμματοσειρών στα χρησιμοποιούμενα χαρακτήρες και τη συμπίεση εικόνων στα 150 DPI. Χρησιμοποιήστε τις ατομικές λειτουργίες παραπάνω όταν πρέπει να ελέγξετε ποιες αλλαγές εφαρμόζονται.
Εγκαταστήστε το Aspose.Slides for .NET 26.11 ή νεότερη έκδοση και παρέχετε input.pptx. Αποθηκεύστε σε ξεχωριστό αρχείο: αφαιρεμένα layouts, χαρακτήρες γραμματοσειράς και περικομμένα pixel εικόνας μπορεί να χρειαστούν για επερχόμενη επεξεργασία.
using Aspose.Slides;
using Aspose.Slides.Export;
using Aspose.Slides.LowCode;
using var presentation = new Presentation("input.pptx");
Compress.CompressPresentation(presentation);
presentation.Save("compressed.pptx", SaveFormat.Pptx);
Συμπίεση Εικόνων σε Επιλεγμένη Ανάλυση
Χρησιμοποιήστε Compress.CompressImages για να επεξεργαστείτε επιλέξιμες εικόνες χωρίς να αφαιρέσετε επίσης layouts ή να υποστέλλετε γραμματοσειρές. Αυτό το παράδειγμα χρησιμοποιεί 96 DPI· επιλέξτε άλλη τιμή PicturesCompression για τις ανάγκες εξόδου σας.
using Aspose.Slides;
using Aspose.Slides.Export;
using Aspose.Slides.LowCode;
using var presentation = new Presentation("input.pptx");
Compress.CompressImages(presentation, PicturesCompression.Dpi96);
presentation.Save("compressed-images.pptx", SaveFormat.Pptx);
Και οι δύο βοηθοί χρησιμοποιούν το παρακάτω πεδίο επεξεργασίας εικόνων:
| Περιεχόμενο | Επεξεργασία |
|---|---|
| Raster εικόνες και γεμίσματα εικόνας σχήματος σε κανονικές, master και layout διαφάνειες, συμπεριλαμβανομένων ομαδοποιημένων σχημάτων | Επιλέξιμες για συμπίεση. |
| Εικόνες που είναι ήδη στην ή κάτω από την ζητούμενη ανάλυση | Δεν αναβάλλονται. Τα περικομμένα τμήματα μπορούν ακόμη να αφαιρεθούν. |
| Περικομμένες περιοχές εικόνας | Τα κρυφά pixel αφαιρούνται μόνιμα και οι μετατοπίσεις περικοπής επαναφέρουν. |
| Υπόβαθρα διαφάνειας και γεμίσματα κελιών πίνακα | Δεν επεξεργάζονται από αυτούς τους βοηθούς. |
| Εσωτερικά Chart/SmartArt, GIF και διανυσματικές μορφές όπως SVG, EMF και WMF | Εκτός του τεκμηριωμένου πεδίου συμπίεσης εικόνων. |
Στην έκδοση 26.11, το PicturesCompression.DocumentResolution αποφεύγει την υποδειγματική μείωση ανάλυσης μιας μη περικομμένης εικόνας, αλλά δεν διατηρεί τα περικομμένα pixel. Μια περικομμένη εικόνα μπορεί ακόμη να ξαναγραφτεί με τα κρυφά τμήματα αφαιρεμένα. Κανένας από τους βοηθούς δεν προσφέρει επιλογή διατήρησης περικοπής. Για ατομικό έλεγχο, δείτε το παράδειγμα συμπίεσης ανά εικόνα.
Συγκρίνετε την εμφάνιση και το μέγεθος του αρχείου προτού αντικαταστήσετε το πρωτότυπο. Η εξοικονόμηση εξαρτάται από τις πηγές εικόνων, το εμφανιζόμενο μέγεθός τους και το αχρησιμοποίητο περιεχόμενο· η συμπίεση δεν εγγυάται μικρότερο αρχείο. Δείτε τα Embedded Fonts για τις συνέπειες της υποστροφής γραμματοσειρών.
Συχνές Ερωτήσεις
Πότε πρέπει να χρησιμοποιήσω το low-code API αντί του πλήρους μοντέλου αντικειμένων;
Χρησιμοποιήστε τους βοηθούς low-code όταν μια τυπική λειτουργία εφαρμόζεται σε πλήρες αρχείο ή παρουσίαση και δεν απαιτεί λεπτομερή έλεγχο των μεμονωμένων στοιχείων. Χρησιμοποιήστε το πλήρες μοντέλο αντικειμένων όταν χρειάζεται να επιλέξετε συγκεκριμένες διαφάνειες, να ελέγξετε σχέσεις master και layout, να ελέγξετε ενδιάμεση κατάσταση ή να ρυθμίσετε συμπεριφορά που ο βοηθός δεν εκθέτει.
Μπορεί ο Merger να συνδυάσει παρουσιάσεις σε διαφορετικούς τύπους αρχείων;
Όχι. Το Merger.Process απαιτεί εισερχόμενες παρουσιάσεις στον ίδιο τύπο αρχείου. Μετατρέψτε πρώτα τα αρχεία εισόδου σε κοινό τύπο, για παράδειγμα με το Convert.AutoByExtension, και έπειτα συγχωνεύστε τα μετατρεμμένα αρχεία.
Επεξεργάζεται το ForEach master, layout και διαφάνειες σημειώσεων;
Το ForEach.Slide διατρέχει τις κανονικές διαφάνειες της παρουσίασης. Τα ForEach.Shape, ForEach.Paragraph και ForEach.Portion περιλαμβάνουν από προεπιλογή κανονικές, master και layout διαφάνειες. Χρησιμοποιήστε τις υπερφορτώσεις τους με includeNotes ορισμένο σε true για να συμπεριλάβετε διαφάνειες σημειώσεων.
Ποια είναι η διαφορά μεταξύ ForEach.Shape και Collect.Shapes;
Χρησιμοποιήστε το ForEach.Shape για να επεξεργαστείτε κάθε σχήμα αμέσως μέσω μιας κλήσης επιστροφής. Χρησιμοποιήστε το Collect.Shapes όταν χρειάζεστε ένα συλλεκτικό αποτέλεσμα που μπορεί να διατηρηθεί, φιλτραριστεί, μετρηθεί ή διαδιαστεί πολλαπλές φορές.
Κάνει πάντα η Compress το αρχείο παρουσίασης μικρότερο;
Όχι απαραίτητα. Η εξοικονόμηση εξαρτάται από αχρησιμοποίητα layouts/masters, ενσωματωμένες γραμματοσειρές με αχρησιμοποίητους χαρακτήρες και εικόνες που ωφελούνται από συμπίεση. Οι βοηθοί Compress μπορεί να αφήσουν το μέγεθος αμετάβλητο ή ακόμη και να το αυξήσουν για ορισμένες εισόδους. Συγκρίνετε τόσο το μέγεθος όσο και την ποιότητα απόδοσης και διατηρήστε το πρωτότυπο.
Αποθηκεύονται αυτόματα οι αλλαγές που κάνουν τα ForEach ή Compress;
Όχι. Αυτοί οι βοηθοί λειτουργούν στο φορτωμένο αντικείμενο Presentation στη μνήμη. Μετά την αλλαγή στοιχείων σε κλήση επιστροφής ForEach ή την εκτέλεση Compress, καλέστε το Presentation.Save για να γράψετε το αποτέλεσμα.