Ανοιχτού κώδικα Go Library για τη δημιουργία αρχείων Excel XLSX

Ανάγνωση, εγγραφή, επεξεργασία εγγράφων Microsoft Excel XLSX μέσω του Open Source Go API. Προσθέστε πολλά γραφήματα, εικόνες και πίνακες στα υπολογιστικά φύλλα σας. 

Το Unioffice είναι μια καθαρή βιβλιοθήκη ανοιχτού κώδικα που δίνει στους προγραμματιστές λογισμικού τη δυνατότητα να δημιουργούν, να τροποποιούν και να χειρίζονται έγγραφα του Office Excel XLSX μέσα στις δικές τους εφαρμογές Go. Η βιβλιοθήκη είναι πολύ σταθερή και παρέχει τον υψηλότερο βαθμό παραγωγικότητας με πολύ μικρό κόπο και κόστος.

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

Previous Next

Ξεκινώντας με το unioffice

Ο συνιστώμενος τρόπος για να ενσωματωθείτε στο έργο σας είναι χρησιμοποιώντας το Github. Χρησιμοποιήστε την ακόλουθη εντολή για ομαλή εγκατάσταση.

Εγκαταστήστε το unioffice μέσω GitHub

go get github.com/unidoc/unioffice/
go build -i github.com/unidoc/unioffice/... 

Δημιουργία Excel XLSX μέσω Go API

Το unioffice βιβλιοθήκης ανοιχτού κώδικα επιτρέπει στους προγραμματιστές υπολογιστών να δημιουργήσουν ένα υπολογιστικό φύλλο Excel XLSX μέσα στις δικές τους εφαρμογές Go. Σας δίνει τη δυνατότητα να προσθέσετε ένα νέο φύλλο στα υπάρχοντα έγγραφα Excel και να εκχωρήσετε ένα όνομα σε ένα φύλλο και να αποθηκεύσετε το αρχείο στη διαδρομή της επιλογής σας. Παρέχει επίσης υποστήριξη για πολλά σημαντικά χαρακτηριστικά, όπως η προσθήκη νέων γραμμών και στηλών σε ένα φύλλο, ο καθορισμός του αριθμού των γραμμών και των στηλών, ο ορισμός της προεπιλεγμένης τιμής ενός κελιού και πολλά άλλα. Μπορείτε επίσης να ανοίξετε και να τροποποιήσετε το υπάρχον υπολογιστικό φύλλο με ευκολία.

Δημιουργία αρχείου Excel μέσω της βιβλιοθήκης Go

func main() {
	ss := spreadsheet.New()
	defer ss.Close()
	// add a single sheet
	sheet := ss.AddSheet()
	// rows
	for r := 0; r < 5; r++ {
		row := sheet.AddRow()
		// and cells
		for c := 0; c < 5; c++ {
			cell := row.AddCell()
			cell.SetString(fmt.Sprintf("row %d cell %d", r, c))
		}
	}
	if err := ss.Validate(); err != nil {
		log.Fatalf("error validating sheet: %s", err)
	}
	ss.SaveToFile("simple.xlsx")
} 

Προσθέστε πολλά γραφήματα σε ένα αρχείο Excel XLSX

Η βιβλιοθήκη unioffice έχει παράσχει υποστήριξη για την προσθήκη γραφημάτων σε ένα υπολογιστικό φύλλο Excel με μερικές μόνο γραμμές κώδικα. Μπορείτε να δημιουργήσετε γραφήματα με βάση τα διαθέσιμα δεδομένα στο φύλλο εργασίας σας καθώς και χωρίς να υπάρχουν καθόλου διαθέσιμα δεδομένα. Τα γραφήματα σάς δίνουν τη δυνατότητα να εμφανίζετε οπτικά δεδομένα σε διαφορετικές μορφές, όπως Γραμμή, Στήλη, Πίτα, Γραμμή, Περιοχή ή Ραντάρ κ.λπ. Οι προγραμματιστές μπορούν εύκολα να επιλέξουν από τις διαθέσιμες επιλογές γραφήματος και να ελέγξουν τις τιμές τους.

Εισάγετε πολλαπλούς χάρτες στο αρχείο Excel μέσω του Go API

func main() {
	ss := spreadsheet.New()
	defer ss.Close()
	sheet := ss.AddSheet()
	// Create all of our data
	row := sheet.AddRow()
	row.AddCell().SetString("Item")
	row.AddCell().SetString("Price")
	row.AddCell().SetString("# Sold")
	row.AddCell().SetString("Total")
	for r := 0; r < 5; r++ {
		row := sheet.AddRow()
		row.AddCell().SetString(fmt.Sprintf("Product %d", r+1))
		row.AddCell().SetNumber(1.23 * float64(r+1))
		row.AddCell().SetNumber(float64(r%3 + 1))
		row.AddCell().SetFormulaRaw(fmt.Sprintf("C%d*B%d", r+2, r+2))
	}
	// Charts need to reside in a drawing
	dwng := ss.AddDrawing()
	chrt1, anc1 := dwng.AddChart(spreadsheet.AnchorTypeTwoCell)
	chrt2, anc2 := dwng.AddChart(spreadsheet.AnchorTypeTwoCell)
	addBarChart(chrt1)
	addLineChart(chrt2)
	anc1.SetWidth(9)
	anc1.MoveTo(5, 1)
	anc2.MoveTo(1, 23)
	// and finally add the chart to the sheet
	sheet.SetDrawing(dwng)
	if err := ss.Validate(); err != nil {
		log.Fatalf("error validating sheet: %s", err)
	}
	ss.SaveToFile("multiple-chart.xlsx")
}
func addBarChart(chrt chart.Chart) {
	chrt.AddTitle().SetText("Bar Chart")
	lc := chrt.AddBarChart()
	priceSeries := lc.AddSeries()
	priceSeries.SetText("Price")
	// Set a category axis reference on the first series to pull the product names
	priceSeries.CategoryAxis().SetLabelReference(`'Sheet 1'!A2:A6`)
	priceSeries.Values().SetReference(`'Sheet 1'!B2:B6`)
	soldSeries := lc.AddSeries()
	soldSeries.SetText("Sold")
	soldSeries.Values().SetReference(`'Sheet 1'!C2:C6`)
	totalSeries := lc.AddSeries()
	totalSeries.SetText("Total")
	totalSeries.Values().SetReference(`'Sheet 1'!D2:D6`)
	// the line chart accepts up to two axes
	ca := chrt.AddCategoryAxis()
	va := chrt.AddValueAxis()
	lc.AddAxis(ca)
	lc.AddAxis(va)
	ca.SetCrosses(va)
	va.SetCrosses(ca)
}

Εισαγωγή εικόνων σε υπολογιστικά φύλλα XLSX

Η βιβλιοθήκη unioffice υποστηρίζει πλήρως τη συμπερίληψη εικόνων σε υπολογιστικά φύλλα XLSX με μερικές μόνο γραμμές κώδικα Go. Υποστηρίζει την τροποποίηση εικόνων καθώς και τη διαγραφή υπαρχουσών εικόνων μέσα σε ένα φύλλο εργασίας XLSX. Παρέχει επίσης επιλογές για την εισαγωγή μιας εικόνας και τον καθορισμό των ιδιοτήτων της όπως το μέγεθος, τη θέση κ.λπ. καθώς και την υποστήριξη εκτύπωσης.

Εισαγωγή εικόνων στο αρχείο Excel μέσω Go API

func main() {
	ss := spreadsheet.New()
	defer ss.Close()
	// add a single sheet
	sheet := ss.AddSheet()
	img, err := common.ImageFromFile("gophercolor.png")
	if err != nil {
		log.Fatalf("unable to create image: %s", err)
	}
	iref, err := ss.AddImage(img)
	if err != nil {
		log.Fatalf("unable to add image to workbook: %s", err)
	}
	dwng := ss.AddDrawing()
	sheet.SetDrawing(dwng)
	for i := float64(0); i < 360; i += 30 {
		anc := dwng.AddImage(iref, spreadsheet.AnchorTypeAbsolute)
		ang := i * math.Pi / 180
		x := 2 + 2*math.Cos(ang)
		y := 2 + +2*math.Sin(ang)
		anc.SetColOffset(measurement.Distance(x) * measurement.Inch)
		anc.SetRowOffset(measurement.Distance(y) * measurement.Inch)
		// set the image to 1x1 inches
		var w measurement.Distance = 1 * measurement.Inch
		anc.SetWidth(w)
		anc.SetHeight(iref.RelativeHeight(w))
	}
	if err := ss.Validate(); err != nil {
		log.Fatalf("error validating sheet: %s", err)
	}
	ss.SaveToFile("image.xlsx")
}

Εφαρμογή μορφοποίησης υπό όρους σε κελιά υπολογιστικού φύλλου

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

 Ελληνικά