Word DOCX Sənədləri üçün Açıq Mənbəli Java API
Microsoft Word DOCX fayllarını yaradın, oxuyun, redaktə edin və çevirin, Java kitabxanası vasitəsilə mətn və cədvəllər əlavə edin.
DOCX4J, Microsoft Office fayl formatlarını manipulyasiya etmək üçün JAXB əsaslı açıq mənbə (Apache v2) kitabxanasıdır. O, Microsoft Word 2007 DOCX fayl formatını oxumaq, yazmaq, redaktə etmək və saxlamaq funksiyasını təmin edir.
DOCX4J Microsoft-un OpenXML SDK-ya bənzəyir, lakin Java üçün. Yaddaşdaxili obyekt təsvirini yaratmaq üçün JAXB-dən istifadə edir. API-dən istifadə edərək siz Mircosoft Office sənədlərini yarada, onları redaktə edə, mətn və paraqrafları formatlaya, cədvəl və şəkillər daxil edə, digər forma elementlərini idarə edə və s. edə bilərsiniz. Əsasən, onun vurğusu gücdədir, əgər format onu dəstəkləyirsə, bunu API istifadə edərək edə bilərsiniz.
DOCX4J ilə işə başlamaq
İlk növbədə sisteminizdə Java Development Kit (JDK) quraşdırılmalıdır. Maven əsaslı Java layihənizdə DOCX4J-ə istinad etmək daha sadədir. Sizə lazım olan tək şey pom.xml-ə aşağıdakı asılılığı əlavə etmək və IDE-nin DOCX4J Jar fayllarına istinad etməsinə icazə verməkdir.
DOCX4J Maven asılılığı
<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>
Word sənədlərinə paraqraf, şəkil və cədvəl əlavə edin
DOCX4J tərtibatçılara Word sənədlərinə paraqraflar və şəkillər əlavə etməyə imkan verir. API həmçinin DOCX sənədlərinə cədvəllər əlavə etmək funksiyasını təmin edir, eyni zamanda istifadəçi tərəfindən müəyyən edilmiş data ilə sadə və iç-içə cədvəllər yaratmağa imkan verir.
DOCX4J - Java istifadə edərək DOCX Pulsuz yaradın
// 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"));
DOCX-dən Mətni çıxarın
DOCX4J yalnız bir neçə sətir kodla Microsoft Word DOCX sənədlərindən məlumat çıxarmaq üçün ixtisaslaşdırılmış sinif təqdim edir. Eyni şəkildə, o, həmçinin Word faylından başlıqları, alt qeydləri, cədvəl məlumatlarını və s. çıxara bilər.
DOCX Pulsuz - Java-dan Mətni çıxarın
// 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);
}
Java API istifadə edərək Word sənədlərini yaradın və redaktə edin
DOCX4J proqram proqramçılarına DOCX fayl formatında yeni Word Sənədləri yaratmağa imkan verir. Tərtibatçılar həmçinin mövcud Microsoft Word DOCX faylını proqram ehtiyaclarına uyğun olaraq redaktə etmək üçün yükləyə bilərlər. O, sizə yeni abzaslar əlavə etməyə, mətn daxil etməyə, mətnin düzülməsini və haşiyələri tətbiq etməyə, mətn üslubunu dəyişdirməyə və s. imkan verir.
Microsoft Word Docx sənədlərini PDF-ə çevirin
Açıq mənbəli Java kitabxanası docx4j Microsoft Word docx sənədlərinin yaradılması və müxtəlif populyar formatlara çevrilməsi üçün tam dəstək verir. Orada docx4j Microsoft Word docx sənədlərini PDF-ə çevirməyin 3 müxtəlif yolunu təqdim edir. Aşağıdakı nümunə docx faylını PDF-ə çevirmək üçün sənədlər4j (uzaqdan işləyən) istifadə edir.
EWord Docx Sənədlərinin Java vasitəsilə PDF-ə çevrilməsi
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();
}
}