Εισαγάγετε τον πίνακα απευθείας

Εισαγωγή

Η δημιουργία πινάκων μέσω προγραμματισμού μπορεί να είναι μια μεγάλη πρόκληση, ειδικά όταν έχουμε να κάνουμε με πολύπλοκες δομές εγγράφων. Αλλά μην ανησυχείτε, είμαστε εδώ για να σας το αναλύσουμε! Σε αυτόν τον οδηγό, θα ακολουθήσουμε τα βήματα της εισαγωγής ενός πίνακα απευθείας σε ένα έγγραφο του Word χρησιμοποιώντας το Aspose.Words για .NET. Είτε είστε έμπειρος προγραμματιστής είτε μόλις ξεκινάτε, αυτό το σεμινάριο θα σας βοηθήσει να κατακτήσετε τη διαδικασία με ευκολία.

Προαπαιτούμενα

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

  1. Aspose.Words for .NET Library: Βεβαιωθείτε ότι έχετε κατεβάσει και εγκαταστήσει τη βιβλιοθήκη Aspose.Words για .NET. Μπορείτε να το πάρετε από τοσελίδα λήψης.
  2. Περιβάλλον ανάπτυξης: Ένα περιβάλλον ανάπτυξης όπως το Visual Studio.
  3. Βασικές γνώσεις C#: Κατανόηση των βασικών αρχών του προγραμματισμού C#.
  4. Κατάλογος εγγράφων: Μια διαδρομή καταλόγου όπου θα αποθηκεύσετε τα έγγραφά σας.

Με αυτές τις προϋποθέσεις, είστε έτοιμοι να ξεκινήσετε την κωδικοποίηση!

Εισαγωγή χώρων ονομάτων

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

using System;
using System.Drawing;
using Aspose.Words;
using Aspose.Words.Tables;

Τώρα που έχουμε τους χώρους ονομάτων μας στη θέση τους, ας προχωρήσουμε στο συναρπαστικό μέρος — τη δημιουργία και την εισαγωγή πινάκων απευθείας σε ένα έγγραφο του Word.

Βήμα 1: Ρύθμιση του εγγράφου

Ας ξεκινήσουμε ρυθμίζοντας ένα νέο έγγραφο του Word. Εδώ θα μπει ο πίνακας μας.

// Διαδρομή στον κατάλογο εγγράφων σας
string dataDir = "YOUR DOCUMENT DIRECTORY";

Document doc = new Document();

Αυτός ο κώδικας προετοιμάζει ένα νέο έγγραφο του Word. Θα χρειαστεί να αντικαταστήσετε"YOUR DOCUMENT DIRECTORY" με την πραγματική διαδρομή προς τον κατάλογο εγγράφων σας.

Βήμα 2: Δημιουργία του αντικειμένου πίνακα

Στη συνέχεια, δημιουργούμε το αντικείμενο του πίνακα. Εδώ θα ορίσουμε τη δομή του πίνακα μας.

// Ξεκινάμε δημιουργώντας το αντικείμενο του πίνακα. Σημειώστε ότι πρέπει να περάσουμε το αντικείμενο εγγράφου
// στον κατασκευαστή κάθε κόμβου. Αυτό συμβαίνει γιατί κάθε κόμβος που δημιουργούμε πρέπει να ανήκει
// σε κάποιο έγγραφο.
Table table = new Table(doc);
doc.FirstSection.Body.AppendChild(table);

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

Βήμα 3: Προσθήκη σειρών και κελιών

Ένας πίνακας αποτελείται από σειρές και κελιά. Ας προσθέσουμε αυτά τα στοιχεία βήμα προς βήμα.

Προσθήκη σειράς

// Εδώ θα μπορούσαμε να καλέσουμε το EnsureMinimum για να δημιουργήσουμε τις σειρές και τα κελιά για εμάς. Αυτή η μέθοδος χρησιμοποιείται
// για να διασφαλιστεί ότι ο καθορισμένος κόμβος είναι έγκυρος. Σε αυτήν την περίπτωση, ένας έγκυρος πίνακας θα πρέπει να έχει τουλάχιστον μία γραμμή και ένα κελί.
// Αντίθετα, θα χειριστούμε μόνοι μας τη δημιουργία της σειράς και του πίνακα.
// Αυτός θα ήταν ο καλύτερος τρόπος για να γίνει αυτό εάν δημιουργούσαμε έναν πίνακα μέσα σε έναν αλγόριθμο.
Row row = new Row(doc);
row.RowFormat.AllowBreakAcrossPages = true;
table.AppendChild(row);

Αυτός ο κώδικας δημιουργεί μια νέα σειρά και την προσαρτά στον πίνακά μας.

Προσθήκη κελιών στη σειρά

Τώρα, ας προσθέσουμε μερικά κελιά στη σειρά μας.

Cell cell = new Cell(doc);
cell.CellFormat.Shading.BackgroundPatternColor = Color.LightBlue;
cell.CellFormat.Width = 80;
cell.AppendChild(new Paragraph(doc));
cell.FirstParagraph.AppendChild(new Run(doc, "Row 1, Cell 1 Text"));
row.AppendChild(cell);

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

Βήμα 4: Κλωνοποίηση κυττάρων

Για να επιταχύνουμε τη διαδικασία προσθήκης κελιών, μπορούμε να κλωνοποιήσουμε υπάρχοντα κελιά.

// Στη συνέχεια θα επαναλάβαμε τη διαδικασία για τα άλλα κελιά και σειρές του πίνακα.
//Μπορούμε επίσης να επιταχύνουμε τα πράγματα κλωνοποιώντας υπάρχοντα κελιά και σειρές.
row.AppendChild(cell.Clone(false));
row.LastCell.AppendChild(new Paragraph(doc));
row.LastCell.FirstParagraph.AppendChild(new Run(doc, "Row 1, Cell 2 Text"));

Αυτός ο κώδικας κλωνοποιεί το υπάρχον κελί και το προσθέτει στη σειρά. Στη συνέχεια προσθέτουμε μια παράγραφο και μια εκτέλεση στο νέο κελί.

Βήμα 5: Εφαρμογή ρυθμίσεων αυτόματης προσαρμογής

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

// Μπορούμε πλέον να εφαρμόσουμε οποιεσδήποτε ρυθμίσεις αυτόματης προσαρμογής.
table.AutoFit(AutoFitBehavior.FixedColumnWidths);

Βήμα 6: Αποθήκευση του εγγράφου

Με τον πίνακα μας πλήρως ρυθμισμένο, ήρθε η ώρα να αποθηκεύσετε το έγγραφο.

doc.Save(dataDir + "WorkingWithTables.InsertTableDirectly.docx");

Αυτός ο κωδικός αποθηκεύει το έγγραφο με τον πίνακα που έχει εισαχθεί.

Σύναψη

Συγχαρητήρια! Έχετε εισαγάγει με επιτυχία έναν πίνακα απευθείας σε ένα έγγραφο του Word χρησιμοποιώντας το Aspose.Words για .NET. Αυτή η διαδικασία μπορεί να χρησιμοποιηθεί για τη δημιουργία σύνθετων πινάκων μέσω προγραμματισμού, καθιστώντας τις εργασίες αυτοματισμού εγγράφων πολύ πιο εύκολες. Είτε δημιουργείτε αναφορές, τιμολόγια ή οποιονδήποτε άλλο τύπο εγγράφου, η κατανόηση του τρόπου χειρισμού πινάκων είναι μια κρίσιμη δεξιότητα.

Συχνές ερωτήσεις

Πώς μπορώ να κατεβάσω το Aspose.Words για .NET;

Μπορείτε να κάνετε λήψη του Aspose.Words για .NET από τοσελίδα λήψης.

Μπορώ να δοκιμάσω το Aspose.Words για .NET πριν το αγοράσω;

Ναι, μπορείτε να ζητήσετε έναδωρεάν δοκιμή να αξιολογήσει τη βιβλιοθήκη πριν από την αγορά.

Πώς μπορώ να αγοράσω το Aspose.Words για .NET;

Μπορείτε να αγοράσετε το Aspose.Words για .NET από τοσελίδα αγοράς.

Πού μπορώ να βρω την τεκμηρίωση για το Aspose.Words για .NET;

Η τεκμηρίωση είναι διαθέσιμηεδώ.

Τι γίνεται αν χρειάζομαι υποστήριξη κατά τη χρήση του Aspose.Words για .NET;

Για υποστήριξη, μπορείτε να επισκεφτείτε τοAspose.Words φόρουμ.