So verarbeiten Sie große PDF-Dateien in Java

Dieses Tutorial konzentriert sich auf die Verarbeitung großer PDF-Dateien in Java mit erweiterten Streams, um Probleme mit hohem Arbeitsspeicher und Einschränkungen bei der Verarbeitung großer PDF-Dateien mit der MemoryStream-Klasse zu vermeiden. Sie können riesige PDF-Dokumente in Java-basierten Umgebungen laden und verarbeiten, die in Windows, Linux oder macOS eingerichtet wurden, indem Sie einfache API-Aufrufe verwenden.

Schritte zum Verarbeiten großer PDF-Dateien in Java

  1. Richten Sie die Umgebung ein, um Aspose.PDF for Java aus dem Repository hinzuzufügen, um große PDF-Dateien zu verarbeiten
  2. Greifen Sie mithilfe der Files.readAllBytes-Methode auf die Bytes der großen PDF-Datei von der Festplatte zu
  3. Instanziieren Sie das Objekt der Klasse OptimizedMemoryStream und kopieren Sie das darin enthaltene Byte-Array
  4. Initialisieren Sie das Document-Klassenobjekt mit dem InputStream-basierten Konstruktor, um die PDF-Datei zu laden
  5. Verarbeiten oder ändern Sie PDF-Dokumente gemäß Ihren Anforderungen
  6. Speichern Sie das geänderte und verarbeitete PDF-Dokument auf der Festplatte

Mit den obigen Schritten können Sie erweiterte Streams verwenden, um riesige PDF-Dateien in Java zu laden. Die OptimizedMemoryStream-Klasse ermöglicht die Verarbeitung riesiger PDF-Dokumente mit Speicherstrom in Java, indem ein MemoryStream definiert wird, der über eine Kapazität verfügt, die über dem Standard liegt, sodass Sie riesige PDF-Dateien mit einer Größe von mehr als 2,5 GB verarbeiten können.

Code zum Verarbeiten großer PDF-Dateien in Java

import com.aspose.pdf.Document;
import com.aspose.pdf.License;
import com.aspose.pdf.OptimizedMemoryStream;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class LargePDF {
static void main(String[] args) throws Exception { // Handle exception while processing large PDF files
String path= "C:/TestData/";
// Instantiate the license to process the large PDF files
License PdfLicense = new License();
PdfLicense.setLicense(path+"Conholdate.Total.Product.Family.lic");
// Initialize the OptimizedMemoryStream object in which large size PDF will be stored for loading
OptimizedMemoryStream ms = new OptimizedMemoryStream();
try{
// Access the large PDF in Byte array
Path paths = Paths.get(path + "LargePDF.pdf");
byte[] data = Files.readAllBytes(paths);
// Write large PDF byte array to OptimizedMemoryStream
ms.write(data, 0, (int)data.length);
// Use the optimized stream to process large PDF and load it into a Document object
Document doc = new Document(ms);
// Perform the desired operations and save the output PDF document
doc.save(path + "LargeSizePDFProcessed.pdf");
}
finally{
ms.close();
}
}
}

Bei der Arbeit mit MemoryStream zur Verwaltung großer PDF-Dokumente gibt es Einschränkungen, die bei der Verarbeitung von PDF-Dateien aufgrund fehlender Suchfunktion zu hohen Speicherproblemen führen. Sie können die Lösung der Verwendung erweiterter Streams in Betracht ziehen, um * riesige PDF-Dokumente mit Java in den Speicherstream zu laden * und sie nach Abschluss der Verarbeitung auf der Festplatte zu speichern.

In diesem Beispiel haben wir gelernt, wie man große PDF-Dateien in Java lädt, indem man einfache API-Aufrufe verwendet. Wenn Sie mehr über das Komprimieren einer PDF-Datei erfahren möchten, lesen Sie das Thema zum PDF in Java komprimieren.

 Deutsch