Rumah > pembangunan bahagian belakang > C++ > Bagaimana untuk Menggabungkan Berbilang PDF dengan Cekap Semasa Mengalih Keluar Ruang Putih Berlebihan?

Bagaimana untuk Menggabungkan Berbilang PDF dengan Cekap Semasa Mengalih Keluar Ruang Putih Berlebihan?

Barbara Streisand
Lepaskan: 2024-12-28 19:52:11
asal
441 orang telah melayarinya

How to Efficiently Merge Multiple PDFs While Removing Excess Whitespace?

Cara Mengalih Keluar Ruang Putih pada Gabungan

Apabila menggabungkan dokumen PDF, selalunya terdapat keperluan untuk mengalih keluar ruang putih menegak atau mendatar antara halaman untuk buat dokumen yang lancar. Soalan ini membincangkan senario di mana tiga dokumen PDF yang berasingan digabungkan, tetapi setiap dokumen dianggap sebagai halaman penuh walaupun ia hanya mengandungi sejumlah kecil kandungan, mengakibatkan sejumlah besar ruang kosong. Matlamatnya adalah untuk menghapuskan ruang kosong ini sambil mengekalkan kandungan setiap dokumen.

Penyelesaian: PdfVeryDenseMergeTool

Untuk mencapai hasil yang diingini, alat tersuai bernama PdfVeryDenseMergeTool diperkenalkan. Alat ini bertujuan untuk menggabungkan kandungan berbilang halaman secara padat ke dalam satu halaman, walaupun ia tidak sesuai sepenuhnya. Alat ini beroperasi seperti berikut:

  1. Analisis Menegak: Alat menganalisis setiap halaman secara menegak untuk mengenal pasti bahagian yang mengandungi kandungan dan mana-mana ruang kosong di atas atau di bawahnya.
  2. Halaman Pemisahan: Jika halaman tidak boleh dimuatkan sepenuhnya pada halaman sasaran, alat itu membahagi halaman dengan bijak pada garisan mendatar yang tidak bersilang dengan mana-mana kandungan.
  3. Mengumpul Semula Halaman: Bahagian berpecah daripada berbilang halaman kemudiannya dipasang semula pada satu halaman sasaran, meminimumkan jumlah ruang kosong sambil mengoptimumkan peletakan kandungan .

Perbandingan dengan PdfDenseMergeTool

PdfVeryDenseMergeTool berkongsi persamaan dengan PdfDenseMergeTool yang disebut dalam soalan asal. Kedua-dua alat cuba menggabungkan halaman PDF secara padat. Walau bagaimanapun, PdfVeryDenseMergeTool menawarkan penambahbaikan dengan:

  • Memisahkan halaman secara mendatar untuk membolehkan penggabungan yang lebih padat.
  • Mengutamakan peletakan kandungan daripada cuba memerah semuanya pada satu halaman, menghasilkan gabungan yang lebih mudah dibaca dan boleh digunakan dokumen.
  • Mengendalikan kes di mana halaman diputar atau mempunyai kandungan yang kompleks.

Contoh Kod

Berikut ialah contoh ringkas cara menggunakan PdfVeryDenseMergeTool dalam Java:

PdfVeryDenseMergeTool tool = new PdfVeryDenseMergeTool(PageSize.A4, 18, 18, 10);
List<byte[]> files = ... // Load the three PDF byte arrays here

try (MemoryStream ms = new MemoryStream()) {
  List<PdfReader> readers = new List<PdfReader>();
  foreach (byte[] ba in files) {
    readers.Add(new PdfReader(ba));
  }

  tool.Merge(ms, readers);

  // Save the final merged document using ms.GetBuffer()
}
Salin selepas log masuk

Nota: Menterjemah alat ini kepada C# dan menyepadukannya dengan iTextSharp hendaklah mudah.

Dengan menggunakan PdfVeryDenseMergeTool,

Atas ialah kandungan terperinci Bagaimana untuk Menggabungkan Berbilang PDF dengan Cekap Semasa Mengalih Keluar Ruang Putih Berlebihan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan