Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menghapuskan Ruang Putih Berlebihan Apabila Menggabungkan PDF dalam C#?
Masalah:
Apabila menggabungkan berbilang dokumen PDF, setiap halaman dianggap sebagai halaman penuh walaupun jika hanya terdapat sedikit kandungan, mengakibatkan ruang putih menegak dalam gabungan dokumen.
Penyelesaian:
public class PdfVeryDenseMergeTool { // ... (rest of the class) protected Rectangle PageSize; protected float TopMargin; protected float BottomMargin; protected float Gap; protected Document Document; protected PdfWriter Writer; protected float YPosition = 0; public PdfVeryDenseMergeTool(Rectangle size, float top, float bottom, float gap) { // ... (rest of the constructor) } public void Merge(MemoryStream outputStream, List<PdfReader> inputs) { // ... (rest of the method) } }
public class PageVerticalAnalyzer : IRenderListener { // ... (rest of the class) public List<float> VerticalFlips = new List<float>(); // ... (rest of the methods) }
public void TestMergeDocuments() { PdfVeryDenseMergeTool tool = new PdfVeryDenseMergeTool(iTextSharp.text.PageSize.A4, 18, 18, 10); List<byte[]> Files = new List<byte[]>(); // ... (code to load files) using (MemoryStream ms = new MemoryStream()) { List<PdfReader> files = new List<PdfReader>(); foreach (byte[] ba in Files) { files.Add(new PdfReader(ba)); } tool.Merge(ms, files); // ... (save the file using ms.GetBuffer()) } }
Atas ialah kandungan terperinci Bagaimana untuk Menghapuskan Ruang Putih Berlebihan Apabila Menggabungkan PDF dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!