Operasi I/O

Pola I/O

Aspose.PDF FOSS for Java consistently accepts both file paths and Java streams as input dan output di semua API utama, termasuk: Document, PdfFileEditor, dan semua kelas fasad.

Dokumen I/O

Pengelolaan Document kelas menerima string jalur file atau sebuah InputStream di dalam konstruksi. Pengelolaan save() metode menerima string jalur file atau sebuah OutputStream.

// File path input
try (Document doc = new Document("input.pdf")) {
    doc.save("output.pdf");
}

// Stream input/output
try (Document doc = new Document(inputStream)) {
    doc.save(outputStream);
}

Kedua konstruktor memuat seluruh dokumen ke dalam memori. Untuk dokumen besar, pastikan bahwa cukup ruang tumpukan atau mempertimbangkan menggunakan PdfFileEditor.setUseDiskBuffer(true).

Dukungan PdfFileEditor Stream

PdfFileEditor operasi menerima baik string jalur file dan Java InputStream/OutputStream objek:

PdfFileEditor editor = new PdfFileEditor();
// All operations support both file paths and streams
editor.concatenate(new InputStream[]{s1, s2}, outputStream);
editor.extract(inputStream, 1, 3, outputStream);

In-Memory Pipelines (saluran pipa dalam memori)

Untuk pipa in-memori yang menghindari file sementara, gunakan ByteArrayOutputStream ke menangkap dokumen output, kemudian membungkus dengan ByteArrayInputStream untuk pengolahan di masa depan:

ByteArrayOutputStream buffer = new ByteArrayOutputStream();
try (Document doc = new Document()) {
    doc.getPages().add();
    doc.save(buffer);
}
byte[] pdfBytes = buffer.toByteArray();
// Pass pdfBytes downstream — no temp file needed
ByteArrayInputStream next = new ByteArrayInputStream(pdfBytes);

I/O fasad

Semua kelas fasad (misalnya:. PdfAnnotationEditor, PdfContentEditor, PdfFileSecurity) mengikuti pola mengikat-operasi-menyimpan yang sama dan menerima jalur file, aliran, atau a Document objek melalui mereka bindPdf() metode.

See Also

 Bahasa Indonesia