Cədvəl Sənədləri üçün Açıq Mənbəli Java Kitabxanası

Open Source API vasitəsilə Java proqramlarında Excel fayllarını çevirin.

Documents4J, Microsoft Excel-i digər fayl formatlarına çevirmək üçün açıq mənbəli Java API-dir. Bu, verilmiş faylın istənilən hədəf formatına çevrilməsini anlayan hər hansı yerli proqrama çevrilmənin verilməsi ilə əldə edilir. API yerli və uzaqdan iki növ tətbiqetmə təklif edir. Yerli versiya sənədindən istifadə edərək, tələb olunan fayl formatını çevirmək üçün kabel olan eyni maşında çevrilə bilər. Uzaqdan API istifadə edərək, siz REST-API istifadə edərək serverə sənəd göndərirsiniz və server tələb olunan çevrilməni həyata keçirir.

Documents4J şəffaf və istifadəsi sadədir. Tərtibatçılar inkişaf etdirmə zamanı API-nin yerli versiyası ilə işləyə bilər və proqramçılar proqramı istehsalda dərc etdikdə uzaq versiyadan istifadə edilə bilər.

Previous Next

Documents4J ilə işə başlamaq

İlk növbədə, yerli maşınınızda sənədlərin 4j surətini yaratmalısınız. Sadəcə olaraq, git istifadə edərək və ya onu birbaşa GitHub-da klonlayaraq, sənədlərin4j repozitoriyasını klonlayın. Repozitoriya klonlaşdırıldıqdan sonra Mave istifadə edərək layihə qura bilərsiniz

Documents4J-ni GitHub vasitəsilə quraşdırın


git clone https://github.com/documents4j/documents4j.git
cd documents4j
mvn package
            

Java istifadə edərək Microsoft Excel-i çevirin

Documents4J sənəd konvertasiyasını həyata keçirmək üçün mükəmməl API-dir. API dəstək çeviricisinin tətbiqinin heç bir təfərrüatını ifşa etmir. Sənədin çevrilməsini həyata keçirmək üçün API IConverter interfeysini təklif edir. Bu interfeysdən istifadə edərək siz Microsoft Excel fayl formatını istədiyiniz fayl formatına çevirə bilərsiniz. Dəstəklənən çevirmə fayl formatlarını öyrənmək üçün mənbə və hədəf fayl formatlarını qaytaracaq getSupportedConversion() metoduna müraciət edə bilərsiniz.

Java vasitəsilə Excel faylını digər fayl formatına çevirin


Const WdExportFormatPDF = 17
Const MagicFormatPDF = 999
Dim arguments
Set arguments = WScript.Arguments
' Transforms a file using MS Excel into the given format.
Function ConvertFile( inputFile, outputFile, formatEnumeration )
  Dim fileSystemObject
  Dim excelApplication
  Dim excelDocument
  ' Get the running instance of MS Excel. If Excel is not running, exit the conversion.
  On Error Resume Next
  Set excelApplication = GetObject(, "Excel.Application")
  If Err <> 0 Then
    WScript.Quit -6
  End If
  On Error GoTo 0
  ' Find the source file on the file system.
  Set fileSystemObject = CreateObject("Scripting.FileSystemObject")
  inputFile = fileSystemObject.GetAbsolutePathName(inputFile)
  ' Convert the source file only if it exists.
  If fileSystemObject.FileExists(inputFile) Then
    ' Attempt to open the source document.
    On Error Resume Next
    Set excelDocument = excelApplication.Workbooks.Open(inputFile, , True)
    If Err <> 0 Then
      WScript.Quit -2
    End If
    On Error GoTo 0
    On Error Resume Next
    If formatEnumeration = MagicFormatPDF Then
      excelDocument.ExportAsFixedFormat xlTypePDF, outputFile
    Else
      excelDocument.SaveAs outputFile, formatEnumeration
    End If
    ' Close the source document.
    excelDocument.Close False
    If Err <> 0 Then
      WScript.Quit -3
    End If
    On Error GoTo 0
    ' Signal that the conversion was successful.
    WScript.Quit 2
  Else
    ' Files does not exist, could not convert
    WScript.Quit -4
  End If
End Function
' Execute the script.
Call ConvertFile( WScript.Arguments.Unnamed.Item(0), WScript.Arguments.Unnamed.Item(1), CInt(WScript.Arguments.Unnamed.Item(2)) )

Office sənədlərini Java vasitəsilə PDF-ə çevirin

Açıq mənbəli Documents4J kitabxanasına Word, Excel və PowerPoint faylları kimi Microsoft ofis sənədlərini PDF və ya şəkil və s. kimi digər dəstək faylları formatlarına çevirmək üçün bir neçə vacib funksiya daxildir. Aşağıdakı nümunə proqram proqramçılarının Microsoft Word Docx faylını necə asanlıqla yükləyə və çevirə bildiyini nümayiş etdirir. yalnız bir neçə sətir kodu ilə PDF faylına.

Office Docx faylını Java Kitabxanası vasitəsilə PDF-ə çevirin


public class NewMain {
    /**
     * @param args the command line arguments
     * @throws java.io.FileNotFoundException
     */
    public static void main(String[] args) throws FileNotFoundException, IOException, InterruptedException, ExecutionException {
    ByteArrayOutputStream bo = new ByteArrayOutputStream();
    InputStream in = new BufferedInputStream(new FileInputStream(System.getProperty("user.dir") + File.separator +"out.rtf"));
    IConverter converter = LocalConverter.builder()
            .baseFolder(new File(System.getProperty("user.dir") + File.separator +"test"))
            .workerPool(20, 25, 2, TimeUnit.SECONDS)
            .processTimeout(5, TimeUnit.SECONDS)
            .build();
    Future conversion = converter
            .convert(in).as(DocumentType.RTF)
            .to(bo).as(DocumentType.PDF)
            .prioritizeWith(1000) // optional
            .schedule();
    conversion.get();
    try (OutputStream outputStream = new FileOutputStream("out.pdf")) {
        bo.writeTo(outputStream);
    }
    in.close();
    bo.close();
}
}
 Azəri