Skip to content
This repository has been archived by the owner on Jun 27, 2022. It is now read-only.
/ goxlsxwriter Public archive

Golang bindings for libxlsxwriter for writing XLSX files

License

Notifications You must be signed in to change notification settings

fterrag/goxlsxwriter

Repository files navigation

goxlsxwriter

Build Status Go Report Card Coverage Status

goxlsxwriter provides Go bindings for the libxlsxwriter C library.

Install

goxlsxwriter requires the libxslxwriter library to be installed. To build from source via Git:

$ git clone https://github.com/jmcnamara/libxlsxwriter.git
$ cd libxlsxwriter
$ make
$ make install

Visit http://libxlsxwriter.github.io/getting_started.html for more information on installing libxlsxwriter.

Sample Use

package main

import (
    "github.com/fterrag/goxlsxwriter"
)

func main() {
    workbook := goxlsxwriter.NewWorkbook("example.xlsx", nil)
    worksheet := goxlsxwriter.NewWorksheet(workbook, "Sheet 1")

    format := goxlsxwriter.NewFormat(workbook)

    format.SetFontName("Verdana")
    format.SetFontSize(8)
    format.SetFontColor(0x008000)

    worksheet.WriteString(0, 0, "Hello from A1!", format)
    worksheet.WriteString(4, 1, "This cell is B5", nil)

    options := &goxlsxwriter.ImageOptions{
        XScale: 0.5,
        YScale: 0.5,
    }
    worksheet.InsertImage(1, 3, "resources/gopher.png", options)

    workbook.Close()
}

Todo

  • Increase test coverage
  • Documentation
  • Expand libxlsxwriter API coverage

Contributing

  • Submit a PR (tests and documentation included)
  • Add or improve documentation
  • Report issues
  • Suggest new features or enhancements