Διαχειριστείτε Τμήματα Κειμένου σε Παρουσιάσεις σε .NET

Επισκόπηση

Μια ενότητα κειμένου αντιπροσωπεύει ένα συγκεκριμένο τμήμα κειμένου μέσα σε μια παράγραφο και σας επιτρέπει να εργάζεστε με αυτό το τμήμα ανεξάρτητα από το περιβάλλον του. Στο Aspose.Slides, οι ενότητες μπορούν να χρησιμοποιηθούν όταν χρειάζεται να ανακτήσετε τη θέση ενός τμήματος κειμένου, να εφαρμόσετε μορφοποίηση μόνο σε μέρος μιας παραγράφου ή να ελέγξετε τη συμπεριφορά του κειμένου σε πιο λεπτομερή επίπεδο.

Αυτό το άρθρο δείχνει πώς να λάβετε τις συντεταγμένες της αρχής μιας ενότητας χρησιμοποιώντας τη μέθοδο GetCoordinates(). Επισημαίνει επίσης συνηθισμένα σενάρια που αφορούν τις ενότητες, όπως η εφαρμογή υπερσυνδέσμου σε ένα μόνο τμήμα κειμένου, η κατανόηση του πώς η μορφοποίηση λύνεται μέσω της ενότητας, της παραγράφου, του πλαισίου κειμένου και της κληρονομικότητας του θέματος, και η αντιμετώπιση περιπτώσεων όπου μια καθορισμένη γραμματοσειρά δεν είναι διαθέσιμη. Επιπλέον, σημειώνει ότι το γέμισμα κειμένου, το χρώμα και η διαφάνεια μπορούν να οριστούν διαφορετικά για μεμονωμένες ενότητες μέσα στην ίδια παράγραφο.

Λήψη Συντεταγμένων Ενότητας Κειμένου

GetCoordinates() method has been added to IPortion and Portion class which allows retrieving the coordinates of the beginning of the portion:

using (Presentation presentation = new Presentation("Shapes.pptx"))
{
    IAutoShape shape = (IAutoShape)presentation.Slides[0].Shapes[0];
    var textFrame = (ITextFrame)shape.TextFrame;

    foreach (var paragraph in textFrame.Paragraphs)
    {
        foreach (Portion portion in paragraph.Portions)
        {
            PointF point = portion.GetCoordinates();
            Console.Write(Environment.NewLine + "Corrdinates X =" + point.X + " Corrdinates Y =" + point.Y);
        }
    }
}

ΣΥΧΝΑ ΕΡΩΤΗΜΑΤΑ

Μπορώ να εφαρμόσω υπερσύνδεσμο μόνο σε μέρος του κειμένου μέσα σε μία παράγραφο;

Ναι, μπορείτε να αναθέσετε έναν υπερσύνδεσμο σε μια μεμονωμένη ενότητα· μόνο εκείνο το τμήμα θα είναι κλικαρίσσιμο, όχι ολόκληρη η παράγραφος.

Πώς λειτουργεί η κληρονομιά στυλ: τι υπερισχύει από την ενότητα και τι λαμβάνεται από την παράγραφο/πλαίσιο κειμένου;

Οι ιδιότητες επιπέδου Ενότητας έχουν την υψηλότερη προτεραιότητα. Εάν μια ιδιότητα δεν οριστεί στην Portion, η μηχανή την παίρνει από την Paragraph; εάν δεν οριστεί ούτε εκεί, από το TextFrame ή το στυλ του theme.

Τι συμβαίνει εάν η γραμματοσειρά που καθορίζεται για μια Ενότητα λείπει στο στόχο μηχάνημα/διακομιστή;

Ισχύουν οι κανόνες αντικατάστασης γραμματοσειρών. Το κείμενο μπορεί να αναδιαρθρωθεί: οι μετρικές, η συλλαβιστική διαίρεση και το πλάτος μπορούν να αλλάξουν, κάτι που έχει σημασία για την ακριβή τοποθέτηση.

Μπορώ να ορίσω διαφάνεια ή διαβάθμιση γεμίσματος κειμένου ειδικά για μια Ενότητα, ανεξάρτητα από το υπόλοιπο της παραγράφου;

Ναι, το χρώμα κειμένου, το γέμισμα και η διαφάνεια στο επίπεδο της Portion μπορούν να διαφέρουν από τα γειτονικά τμήματα.