Giter Club home page Giter Club logo

meja's Introduction

Meja spreadsheet library

Apache License Language build

Meja is a library for handling tabular data such as Excel-Sheets, CSV-data etc.

Name

As it's rather common to give everything Java related a name of indo/malay origin, I chose 'meja' which is the indonesian word for table (as in furniture).

Building

The required Java version is 17.

Clone the repository and run ./gradlew. This will also install meja into your local maven repository.

License

Meja is released under the Apache License 2.0.

Modules

Meja consists of different modules, each providing different functionality.

Module: com.dua3.meja

This is the base module providing functionality shared by different models.

Module: com.dua3.meja.generic

A generic Workbook implementation. Fast and memory efficient. Use this implementation when creating workbooks in memory. Also defines the CSV FileType.

com.dua3.meja.poi

An implementation backed by the Apache POI implementation of the Microsoft Office Excel file format. Defines FileTypes for xls and xlsx files. Use this implementation to read and modify Excel files.

com.dua3.meja.swing

Defines Swing controls for displaying Sheets and Workbooks.

com.dua3.meja.samples

Several small samples to demonstrate how to use this library.

com.dua3.meja.fx

Utilities for JavaFX.

Logging

Meja uses Log4J2-API for logging facade, the same as the Apache POI library used for reading and writing Excel files.

meja's People

Contributors

xzel23 avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

meja's Issues

Check POI dependencies

It seems like Apache POI has a runtime dependency on SparseBitset that does not get included in MEJA dependencies.

Read XLS(X) directly into GenericWorkbook

It should be possible to read XLS(X) files directly into a GenericWorkbook using a SAX parser. This should greatly reduce memory usage when manipulating large workbooks.

add editing support

  • retrieve text with style attributes after editing
  • fix painting issues for cell editor
  • fill content with text not result of formula
  • don't treat every input as text

vertically centered cells containing linebreaks aligned incorrectly

It looks like vertical alignment only takes into account the first line (or block) of text. So, the first line is displayed centered and the successing lines are displayed below. This only seems to happen with texts containing newline characters, not with justified text that is automatically wrapped and displayed in multiple lines.

add missing functionality

  • programmatically creating and
  • setting CellStyles (currently only the ones present in the workbook can be returned).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.