Ответ 1
Это скорее всего версия С# кода Бруно здесь.
Это самый простой, безопасный и рекомендуемый способ слияния PDF файлов. Объект PdfSmartCopy
способен обнаруживать избыточность в нескольких файлах, которые могут несколько раз уменьшить размер файла. Одна из перегрузок на нем принимает полный объект PdfReader
, который может быть создан, но вы хотите.
public static byte[] concatAndAddContent(List<byte[]> pdfByteContent) {
using (var ms = new MemoryStream()) {
using (var doc = new Document()) {
using (var copy = new PdfSmartCopy(doc, ms)) {
doc.Open();
//Loop through each byte array
foreach (var p in pdfByteContent) {
//Create a PdfReader bound to that byte array
using (var reader = new PdfReader(p)) {
//Add the entire document instead of page-by-page
copy.AddDocument(reader);
}
}
doc.Close();
}
}
//Return just before disposing
return ms.ToArray();
}
}