public void ErzeugeDiebBogenTest() { var dieb = new Dieb(1, 1, 1, Gesinnung.Rechtschaffen); using var diebPdf = PdfCreator.ErzeugeDiebBogen(dieb); using var f = File.Create("dieb_test.pdf"); diebPdf.CopyTo(f); f.Flush(); }
public static MemoryStream ErzeugeDiebBogen(Dieb dieb) { var assembly = typeof(PdfCreator).Assembly; using var diebBogen = assembly.GetManifestResourceStream("DccCharCreator.pdf.Resources.DCC_Dieb_ausfüllbar.pdf"); using var pdf = PdfReader.Open(diebBogen); SetNeedAppearances(pdf); FillDieb(dieb, pdf.AcroForm); var stream = new MemoryStream(); pdf.Save(stream, false); pdf.Dispose(); return(stream); }
public IActionResult Pdf(int seed, int character, Klasse klasse, int stufe, Gesinnung gesinnung) { MemoryStream ms = null; switch (klasse) { case Klasse.Dieb: var dieb = new Dieb(seed, character, stufe, gesinnung); ms = PdfCreator.ErzeugeDiebBogen(dieb); break; case Klasse.Elf: var elf = new Elf(seed, character, stufe, gesinnung); ms = PdfCreator.ErzeugeElfBogen(elf); break; case Klasse.Halbling: var halbling = new Halbling(seed, character, stufe, gesinnung); ms = PdfCreator.ErzeugeHalblingBogen(halbling); break; case Klasse.Kleriker: var kleriker = new Kleriker(seed, character, stufe, gesinnung); ms = PdfCreator.ErzeugeKlerikerBogen(kleriker); break; case Klasse.Krieger: var krieger = new Krieger(seed, character, stufe, gesinnung); ms = PdfCreator.ErzeugeKriegerBogen(krieger); break; case Klasse.Zauberkundiger: var zauberkundiger = new Zauberkundiger(seed, character, stufe, gesinnung); ms = PdfCreator.ErzeugeZauberkundigerBogen(zauberkundiger); break; case Klasse.Zwerg: var zwerg = new Zwerg(seed, character, stufe, gesinnung); ms = PdfCreator.ErzeugeZwergBogen(zwerg); break; } ; return(File(ms, "application/pdf", $"Charakterbogen_{klasse}_{seed}_{character}.pdf")); }
private static void FillDieb(Dieb dieb, PdfAcroForm form) { var fields = form.Fields; FillBase(fields, dieb); fields["Klasse"].Value = new PdfString("Dieb"); fields["DiebGlück"].Value = new PdfString(dieb.Glückswürfel); fields["DiebHinterhalt"].Value = new PdfString(dieb.HinterhältigerAngriff.ToString()); fields["DiebSchleichen"].Value = new PdfString(dieb.LautlosSchleichen.ToString()); fields["DiebSchatten"].Value = new PdfString(dieb.ImSchattenVerstecken.ToString()); fields["DiebKnacken"].Value = new PdfString(dieb.SchlösserKnacken.ToString()); fields["DiebKlettern"].Value = new PdfString(dieb.Fassadenklettern.ToString()); fields["DiebDiebstahl"].Value = new PdfString(dieb.Taschendiebstahl.ToString()); fields["DiebEntdecken"].Value = new PdfString(dieb.FallenEntdecken.ToString()); fields["DiebEntschärfen"].Value = new PdfString(dieb.FallenEntschärfen.ToString()); fields["DiebFälschen"].Value = new PdfString(dieb.UrkundeFälschen.ToString()); fields["DiebVerkleiden"].Value = new PdfString(dieb.Verkleiden.ToString()); fields["DiebSprachen"].Value = new PdfString(dieb.SprachenLesen.ToString()); fields["DiebGift"].Value = new PdfString(dieb.GiftMischen.ToString()); fields["DiebZaubern"].Value = new PdfString(dieb.ZauberVonEinerSchriftrolleWirken.ToString()); }