4000-520-616
欢迎来到免疫在线!(蚂蚁淘生物旗下平台)  请登录 |  免费注册 |  询价篮
主营:原厂直采,平行进口,授权代理(蚂蚁淘为您服务)
咨询热线电话
4000-520-616
当前位置: 首页 > 新闻动态 >
新闻详情
...unioffice 是一个纯 Go 的开源库,实现对 Office Word、Excel...
来自 : gitee.com/mirrors/unioff... 发布时间:2021-03-24

unioffice is a library for creation of Office Open XML documents (.docx, .xlsx and .pptx). Its goal is to be the most compatible and highest performance Go library for creation and editing of docx/xlsx/pptx files.

\"Build \"GitHub \"License: \"GoDoc\"

\"https://github.com/unidoc/unioffice/\"

Status Documents (docx) [Word] Read/Write/Edit Formatting Images Tables Spreadsheets (xlsx) [Excel] Read/Write/Edit Cell formatting including conditional formatting Cell validation (drop down combobox, rules, etc.) Retrieve cell values as formatted by Excel (e.g. retrieve a date or number as displayed in Excel) Formula Evaluation (100+ functions supported currently, more will be added as required) Embedded Images All chart types PowerPoint (pptx) [PowerPoint] Creation from templates Textboxes/shapes Performance

There has been a great deal of interest in performance numbers for spreadsheet creation/reading lately, so here are unioffice numbers for this benchmark which creates a sheet with 30k rows, each with 100 columns.

creating 30000 rows * 100 cells took 3.92506863s saving took 89ns reading took 9.522383048s

Creation is fairly fast, saving is very quick due to no reflection usage, and reading is a bit slower. The downside is that the binary is large (33MB) as it contains generated structs, serialization and deserialization code for all of DOCX/XLSX/PPTX.

Installation
go get github.com/unidoc/unioffice/
Document Examples Simple Text Formatting Text font colors, sizes, highlighting, etc. Auto Generated Table of Contents Creating document headings with an auto generated TOC based off of the headingds Floating Image Placing an image somewhere on a page, absolutely positioned with different text wrapping. Header Footer Creating headers and footers including page numbering. Multiple Headers Footers Using different headers and footers depending on document section. Inline Tables Adding an table with and without borders. Using Existing Word Document as a Template Opening a document as a template to re-use the styles created in the document. Filling out Form Fields Opening a document with embedded form fields, filling out the fields and saving the result as a new filled form. Editing an existing document Open an existing document and replace/remove text without modifying formatting. Spreadsheet Examples Simple A simple sheet with a few cells Named Cells Different ways of referencing rows and cells Cell Number/Date/Time Formats Creating cells with various number/date/time formats Line Chart/Line Chart 3D Line Charts Bar Chart Bar Charts Mutiple Charts Multiple charts on a single sheet Named Cell Ranges Naming cell ranges Merged Cells Merge and unmerge cells Conditional Formatting Conditionally formatting cells, styling, gradients, icons, data bar Complex Multiple charts, auto filtering and conditional formatting Borders Individual cell borders and rectangular borders around a range of cells. Validation Data validation including combo box dropdowns. Frozen Rows/Cols A sheet with a frozen header column and row Presentation Examples Simple Text Boxes Simple text boxes and shapes Images Simple image insertion Template Creating a presentation from a template Raw Types

The OOXML specification is large and creating a friendly API to cover the entire specification is a very time consuming endeavor. This library attempts to provide an easy to use API for common use cases in creating OOXML documents while allowing users to fall back to raw document manipulation should the library\'s API not cover a specific use case.

The raw XML based types reside in the schema/ directory. These types are accessible from the wrapper types via a X() method that returns the raw type.

For example, the library currently doesn\'t have an API for setting a document background color. However it\'s easy to do manually via editing the CT_Background element of the document.

dox := document.New() doc.X().Background = wordprocessingml.NewCT_Background() doc.X().Background.ColorAttr = wordprocessingml.ST_HexColor{} doc.X().Background.ColorAttr.ST_HexColorRGB = color.RGB(50, 50, 50).AsRGBString()
Contribution guidelines

\"CLA

All contributors are must sign a contributor license agreement before their code will be reviewed and merged.

Licensing

This software package (unioffice) is a commercial product and requires a license code to operate.

The use of this software package is governed by the end-user license agreement (EULA) available at: https://unidoc.io/eula/

To obtain a Trial license code to evaluate the software, please visit https://unidoc.io/

本文链接: http://uniexcel.immuno-online.com/view-704990.html

发布于 : 2021-03-24 阅读(0)