Open Source Java API untuk Word DOCX Dokumen

Buat, Baca, Edit dan Tukar fail Microsoft Word DOCX, tambah teks & jadual melalui pustaka Java.

DOCX4J ialah perpustakaan sumber terbuka (Apache v2) berasaskan JAXB untuk memanipulasi format fail Microsoft Office. Ia menyediakan kefungsian untuk membaca, menulis, mengedit & dan menyimpan format fail Microsoft Word 2007 DOCX.

DOCX4J serupa dengan OpenXML SDK Microsoft, tetapi untuk Java. Ia menggunakan JAXB untuk mencipta perwakilan objek dalam memori. Menggunakan API anda boleh menjana dokumen Mircosoft Office, mengeditnya, memformat teks & perenggan, memasukkan jadual & imej dan mengurus elemen borang lain, dan banyak lagi. Pada asasnya, penekanannya adalah pada kuasa, jika format menyokongnya, anda boleh melakukannya menggunakan API.

Previous Next

Bermula dengan DOCX4J

Pertama sekali, anda perlu memasang Java Development Kit (JDK) pada sistem anda. Merujuk DOCX4J dalam projek Java berasaskan Maven anda adalah lebih mudah. Apa yang anda perlukan ialah menambah kebergantungan berikut dalam pom.xml anda dan biarkan IDE anda mengambil dan merujuk fail DOCX4J Jar.

Ketergantungan Maven DOCX4J

<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>
  

Tambahkan Perenggan, Imej & Jadual pada Dokumen Word

DOCX4J membolehkan pembangun menambahkan perenggan & imej pada dokumen Word. API juga menyediakan ciri untuk menambahkan jadual pada dokumen DOCX sambil membolehkan anda membuat jadual mudah dan bersarang dengan data yang ditentukan pengguna.

Cipta DOCX Percuma menggunakan 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"));

Ekstrak Teks daripada DOCX

DOCX4J menyediakan kelas khusus untuk mengekstrak data daripada dokumen DOCX Microsoft Word dengan hanya beberapa baris kod. Dengan cara yang sama, ia juga boleh mengekstrak tajuk, nota kaki, data jadual dan sebagainya daripada fail Word.

Ekstrak Teks daripada 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);
}                 

Jana & Edit Dokumen Word menggunakan API Java

DOCX4J membolehkan pengaturcara perisian mencipta Dokumen Word baharu dalam format fail DOCX. Pembangun juga boleh memuatkan fail Microsoft Word DOCX sedia ada untuk mengeditnya mengikut keperluan aplikasi mereka. Ia membolehkan anda menambah perenggan baharu, memasukkan teks, menggunakan penjajaran & jidar teks, menukar penggayaan teks dan banyak lagi.

Tukar Dokumen Microsoft Word Docx kepada PDF

Pustaka Java sumber terbuka docx4j menyediakan sokongan lengkap untuk penjanaan & penukaran dokumen docx Microsoft Word kepada pelbagai format popular. Terdapat docx4j menyediakan 3 cara berbeza untuk menukar dokumen docx Microsoft Word kepada PDF. Contoh berikut menggunakan documents4j (berjalan dari jauh) untuk menukar fail docx kepada PDF.

Penukaran Dokumen EWord Docx kepada PDF melalui 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();
}
}
 Melayu