{"id":13832075,"url":"https://github.com/plutext/docx4j","last_synced_at":"2025-05-14T12:02:49.990Z","repository":{"id":3263435,"uuid":"4302287","full_name":"plutext/docx4j","owner":"plutext","description":"JAXB-based Java library for Word docx, Powerpoint pptx, and Excel xlsx files","archived":false,"fork":false,"pushed_at":"2025-05-07T07:26:32.000Z","size":155364,"stargazers_count":2206,"open_issues_count":218,"forks_count":1215,"subscribers_count":108,"default_branch":"VERSION_11_5_4","last_synced_at":"2025-05-07T11:41:42.781Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://www.docx4java.org/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"BrightcoveOS/amphtml","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/plutext.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2012-05-11T22:13:30.000Z","updated_at":"2025-05-07T02:49:58.000Z","dependencies_parsed_at":"2023-11-08T06:12:01.273Z","dependency_job_id":"6a22b87a-b9da-4437-ac9d-cbfb48a35bbd","html_url":"https://github.com/plutext/docx4j","commit_stats":{"total_commits":3860,"total_committers":51,"mean_commits":75.68627450980392,"dds":0.0365284974093264,"last_synced_commit":"7dce19588cc3af8fe03900b1fd66774f8b0b2185"},"previous_names":[],"tags_count":68,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plutext%2Fdocx4j","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plutext%2Fdocx4j/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plutext%2Fdocx4j/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/plutext%2Fdocx4j/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/plutext","download_url":"https://codeload.github.com/plutext/docx4j/tar.gz/refs/heads/VERSION_11_5_4","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254140738,"owners_count":22021218,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-04T10:01:50.065Z","updated_at":"2025-05-14T12:02:49.915Z","avatar_url":"https://github.com/plutext.png","language":"Java","funding_links":[],"categories":["Java","Projects"],"sub_categories":[],"readme":"README\n======\n\n\nWhat is docx4j?\n---------------\n\ndocx4j is an open source (Apache v2) library for creating, editing, and saving OpenXML \"packages\", including docx, pptx, and xslx. \n\nIt uses JAXB to create the Java representation.\n\n- Open existing docx/pptx/xlsx \n- Create new docx/pptx/xlsx \n- Programmatically manipulate docx/pptx/xlsx (anything the file format allows)\n- Document generation via variable, content control data binding, or MERGEFIELD\n- CustomXML binding (with support for pictures, rich text, checkboxes, and OpenDoPE extensions for repeats \u0026 conditionals, and importing XHTML) \n- Export as HTML\n- Export as PDF, choice of 3 strategies, see https://www.docx4java.org/blog/2020/09/office-pptxxlsxdocx-to-pdf-to-in-docx4j-8-2-3/ \n- Produce/consume Word 2007's xmlPackage (pkg) format\n- Apply transforms, including common filters\n- Font support (font substitution, and use of any fonts embedded in the document) \n\n\ndocx4j for JAXB 3.0 and Java 11+\n--------------------------------\n\ndocx4j v11.4.5 uses Jakarta XML Binding API 3.0, as opposed to JAXB 2.x used in earlier versions (which import javax.xml.bind.*).  Since this release uses jakarta.xml.bind, rather than javax.xml.bind, if you have existing code which imports javax.xml.bind, you'll need to search/replace across your code base, replacing javax.xml.bind with jakarta.xml.bind. You'll also need to replace your JAXB jars (which Maven will do for you automatically; otherwise get them from the relevant zip file).\n\nBeing a JPMS modularised release, the jars also contain module-info.class entries.\n\nTo use it, add the dep corresponding to the JAXB implementation you wish to use\n\n* [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.docx4j/docx4j-JAXB-ReferenceImpl/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.docx4j/docx4j-JAXB-ReferenceImpl)\n docx4j-JAXB-ReferenceImpl\n* [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.docx4j/docx4j-JAXB-MOXy/badge.svg)](https://maven-badges.herokuapp.com/maven-central/org.docx4j/docx4j-JAXB-MOXy)\n docx4j-JAXB-MOXy\n \n\ndocx4j-8\n--------\n\nThis is docx4j for Java 8. Although in principle it would compile and run under Java 6, some of its\ndependencies are Java 8 only.  So to run it under Java 6, you'd need to use the same version of the deps\nwhich docx4j 6.x uses.\n\ndocx4j v8 is a multi-module Maven project.\n\nTo use docx4j v8, add the dep corresponding to the JAXB implementation you wish to use\n\n* [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.docx4j/docx4j-JAXB-Internal/badge.svg?gav=true)](https://maven-badges.herokuapp.com/maven-central/org.docx4j/docx4j-JAXB-Internal?gav=true)\n docx4j-JAXB-Internal (shipped in Oracle and OpenJDK v8)\n* [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.docx4j/docx4j-JAXB-ReferenceImpl/badge.svg?gav=true)](https://maven-badges.herokuapp.com/maven-central/org.docx4j/docx4j-JAXB-ReferenceImpl?gav=true)\n docx4j-JAXB-ReferenceImpl (you may need to respect the endorsed dir mechanism for the RI jars)\n* [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.docx4j/docx4j-JAXB-MOXy/badge.svg?gav=true)](https://maven-badges.herokuapp.com/maven-central/org.docx4j/docx4j-JAXB-MOXy?gav=true)\n docx4j-JAXB-MOXy\n\nYou should use one and only one of docx4j-JAXB-* \n\n \nHow do I build docx4j?\n----------------------\n\nGet it from GitHub, at https://github.com/plutext/docx4j\n\n```\nmvn clean\nmvn install\n```\n\nSome of the tests might fail on Windows.  For now, you could skip them: `mvn install -DskipTests`  \n\nFor more details, see http://www.docx4java.org/blog/2015/06/docx4j-from-github-in-eclipse-5-years-on/\n\nIf you are working with the source code, please join the developer\nmailing list:\n\n        docx4j-dev-subscribe@docx4java.org\n\n\nWhere do I get a binary?\n------------------------\n\nhttp://www.docx4java.org/downloads.html\n\nHow do I get started?\n------------------\n\nSee the Getting Started guide:  https://github.com/plutext/docx4j/tree/master/docs\n\nand the Cheat Sheet:  http://www.docx4java.org/blog/2013/05/docx4j-in-a-single-page/\n\nAnd see the sample code:  https://github.com/plutext/docx4j/tree/master/src/samples\n\nYou'll probably want the Helper AddIn to generate code:  http://www.docx4java.org/blog/2016/05/docx4j-helper-word-addin-new-version-v3-3-0/\n\n\n\nWhere to get help?\n------------------\n\nhttp://www.docx4java.org/forums or StackOverflow (use tag 'docx4j')\n\nPlease post to one or the other, not both\n\n\nLegal Information\n-----------------\n\ndocx4j is published under the Apache License version 2.0. For the license\ntext, please see the following files in the legals directory:\n- LICENSE\n- NOTICE\nLegal information on libraries used by docx4j can be found in the \n\"legals/NOTICE\" file.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplutext%2Fdocx4j","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fplutext%2Fdocx4j","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplutext%2Fdocx4j/lists"}