Atvirojo kodo Java API „Word DOCX“ dokumentams
Kurkite, skaitykite, redaguokite ir konvertuokite „Microsoft Word“ DOCX failus, pridėkite teksto ir lentelių naudodami „Java“ biblioteką.
DOCX4J yra JAXB pagrįsta atvirojo kodo (Apache v2) biblioteka, skirta manipuliuoti „Microsoft Office“ failų formatais. Tai suteikia galimybę skaityti, rašyti, redaguoti ir išsaugoti Microsoft Word 2007 DOCX failo formatą.
DOCX4J yra panašus į Microsoft OpenXML SDK, bet skirtas Java. Jis naudoja JAXB, kad sukurtų objekto atvaizdą atmintyje. Naudodami API galite generuoti Mircosoft Office dokumentus, juos redaguoti, formatuoti tekstą ir pastraipas, įterpti lenteles ir vaizdus bei tvarkyti kitus formos elementus ir dar daugiau. Iš esmės jo akcentas yra galia, jei formatas jį palaiko, galite tai padaryti naudodami API.
Darbo su DOCX4J pradžia
Visų pirma, jūsų sistemoje turi būti įdiegtas „Java Development Kit“ (JDK). DOCX4J nuoroda į „Maven“ pagrįstą „Java“ projektą yra dar paprasčiau. Viskas, ko jums reikia, yra pridėti toliau nurodytą priklausomybę į savo pom.xml ir leisti IDE gauti ir nurodyti DOCX4J Jar failus.
DOCX4J Maven priklausomybė
<dependency>
<groupId>org.docx4j</groupId>
<artifactId>docx4j-JAXB-Internal</artifactId>
<version>8.0.0</version>
</dependency>
<dependency>
<groupId>org.docx4j</groupId>
<artifactId>docx4j-JAXB-ReferenceImpl</artifactId>
<version>8.0.0</version>
</dependency>
<dependency>
<groupId>org.docx4j</groupId>
<artifactId>docx4j-JAXB-MOXy</artifactId>
<version>8.0.0</version>
</dependency>
Pridėti pastraipą, paveikslėlį ir lentelę prie Word dokumentų
DOCX4J leidžia kūrėjams pridėti pastraipų ir vaizdų prie „Word“ dokumentų. API taip pat suteikia lentelių pridėjimo prie DOCX dokumentų funkciją, leidžiančią kurti paprastas ir įdėtas lenteles su vartotojo nustatytais duomenimis.
Sukurkite DOCX Free naudodami DOCX4J – Java
// Create word package
WordprocessingMLPackage wordPackage = WordprocessingMLPackage.createPackage();
// Create main document part
MainDocumentPart mainDocumentPart = wordPackage.getMainDocumentPart();
// Add Paragraph
mainDocumentPart.addParagraphOfText("Open Source Java API for Word DOCX Documents");
// Save file
wordPackage.save(new File("FileFormat.docx"));
Ištraukite tekstą iš DOCX
DOCX4J suteikia specializuotą klasę, skirtą duomenims iš „Microsoft Word“ DOCX dokumentų išgauti naudojant tik kelias kodo eilutes. Lygiai taip pat jis gali iš „Word“ failo išgauti antraštes, išnašas, lentelės duomenis ir pan.
Ištraukite tekstą iš DOCX Free - Java
// Load document
WordprocessingMLPackage wordMLPackage = WordprocessingMLPackage.load(new File("FileFormat.docx"));
// Load main document part
MainDocumentPart mainDocumentPart = wordMLPackage.getMainDocumentPart();
// Extract nodes
String textNodesXPath = "//w:t";
List<Object> textNodes= mainDocumentPart.getJAXBNodesViaXPath(textNodesXPath, true);
// Print text
for (Object obj : textNodes) {
Text text = (Text) ((JAXBElement) obj).getValue();
String textValue = text.getValue();
System.out.println(textValue);
}
Kurkite ir redaguokite Word dokumentus naudodami Java API
DOCX4J leidžia programuotojams kurti naujus Word dokumentus DOCX failo formatu. Kūrėjai taip pat gali įkelti esamą Microsoft Word DOCX failą, kad jį redaguotų pagal savo taikomųjų programų poreikius. Tai leidžia pridėti naujų pastraipų, įterpti tekstą, pritaikyti teksto lygiavimą ir kraštines, keisti teksto stilių ir kt.
Konvertuokite Microsoft Word Docx dokumentus į PDF
Atvirojo kodo Java biblioteka docx4j suteikia visišką Microsoft Word docx dokumentų generavimo ir konvertavimo į įvairius populiarius formatus palaikymą. Ten docx4j pateikia 3 skirtingus būdus konvertuoti Microsoft Word docx dokumentus į PDF. Toliau pateiktame pavyzdyje naudojama document4j (veikia nuotoliniu būdu), kad konvertuotų docx failą į PDF.
EWord Docx dokumentų konvertavimas į PDF per Java
public class DocxFileToPDF {
public static void main(String[] args) throws IOException, Docx4JException {
File output = new File(System.getProperty("user.dir")+"/result.pdf");
FileOutputStream fos = new FileOutputStream(output);
Documents4jRemoteServices exporter = new Documents4jRemoteServices();
exporter.export(new File(System.getProperty("user.dir")+"/../docx4j-samples-docx4j/sample-docs/sample-docx.docx") , fos, DocumentType.MS_WORD);
fos.close();
}
}