Если удастся правильно перенести оформление из OpenXML в PdfSharp.Pdf.PdfDocument, то задача будет решена. Но я не понимаю, что куда нужно переносить.
Как вариант модификация исходного PDF-файла с помощью того же PdfSharp, тоже облегчила бы жизнь, но как?
NUGET: PDFsharp-MigraDoc-GDI
/// <summary>
/// Генерация нового PDF
/// </summary>
private void CreateDPF()
{
string fileResult = HostingEnvironment.MapPath("/Files/result.pdf");
var d = new Document();
var s = d.AddSection();
s.PageSetup.PageFormat = PageFormat.A4;
s.PageSetup.Orientation = Orientation.Portrait;
s.PageSetup.TopMargin = 10;
s.PageSetup.LeftMargin = 10;
s.PageSetup.BottomMargin = 10;
s.PageSetup.RightMargin = 10;
var p = s.AddParagraph();
p.AddText("Превед медвед!");
var r = new PdfDocumentRenderer(true, PdfFontEmbedding.Always);
r.Document = d;
r.RenderDocument();
r.PdfDocument.Save(fileResult);
}
/// <summary>
/// Генерация PDF на основе другого PDF
/// </summary>
private void ConvertDPF()
{
string fileSource = HostingEnvironment.MapPath("/Files/source.pdf");
string fileResult = HostingEnvironment.MapPath("/Files/result.pdf");
using (var src = PdfReader.Open(fileSource, PdfDocumentOpenMode.Import))
using (var res = new PdfDocument())
{
foreach (PdfPage page in src.Pages)
{
// что-то нужно сделать с этой page
res.AddPage(page);
}
res.Save(fileResult);
}
}