1) Преобразование вашего HTML в документ формата A3
2) Итерация по страницам и копирование каждой страницы в виде formXObject
3) Для каждой страницы формыXObject:
а) масштабировать его с коэффициентом 0,5;
б) добавить к итоговому документу.
Соответствующий Java-код выглядит следующим образом (для вас не должно быть проблем с переносом его на C #, поскольку API iText точно такой же):
// 1
ByteArrayOutputStream baos = new ByteArrayOutputStream();
PdfDocument pdfDocument = new PdfDocument(new PdfWriter(baos));
pdfDocument.setDefaultPageSize(PageSize.A3);
HtmlConverter.convertToPdf(new FileInputStream(sourcePath), pdfDocument);
PdfDocument resultantDocument = new PdfDocument(new PdfWriter(destPath));
pdfDocument = new PdfDocument(new PdfReader(new ByteArrayInputStream(baos.toByteArray())));
// 2
for (int i = 1; i <= pdfDocument.getNumberOfPages(); i++) {
PdfPage page = pdfDocument.getPage(i);
PdfFormXObject formXObject = page.copyAsFormXObject(resultantDocument);
PdfCanvas pdfCanvas = new PdfCanvas(resultantDocument.addNewPage());
// 3a and 3b
pdfCanvas.addXObject(formXObject, 0.5f, 0, 0, 0.5f, 0, 0);
}
pdfDocument.close();
resultantDocument.close();