HTML'de JavaScript'ten PDF'ye
IronPDF, kullanıcıların HTML içeriğinden PDF dosyaları oluşturmasına olanak tanır, ancak sadece saf HTML içeriği PDF'ye dönüştürülemez; aynı zamanda özelleştirilmiş CSS ve JavaScript içeren HTML'yi de dönüştürebilir. Örneğin, HTML içeriği içinde JavaScript kullanarak, resimler gibi varlıklar bir HTML dizgesi içinde doğrudan gömülebilir ve böylece harici varlık olarak yüklenmeleri gerekmez. Bunu başarmak için ihtiyacınız olan tek şey ChromePdfRenderer sınıfı ve onun RenderingOptions özelliğidir.
C#'ta JavaScript ile HTML'yi PDF'ye Render Etmenin 5 Adımı
const string htmlWithJavaScript = "....";var renderer = new ChromePdfRenderer();renderer.RenderingOptions.EnableJavaScript = true;renderer.RenderingOptions.WaitForJavaScript();var pdfJavaScript = renderer.RenderHtmlAsPdf(htmlWithJavaScript);
String değişkeni içinde, JavaScript kodunu içerecek olan ve PDF'mizi oluşturmak için kullanılacak JavaScript <script> etiketini içeren bir HTML stringi oluşturduk. Script etiketini kullanmak, stringin hangi bölümünün JavaScript olduğunu belirttiğimiz anlamına gelir, bu da daha sonra RenderingOptions özelliği kullanılarak etkinleştirilecektir. Bununla, resimleri gömebilir, oluşturulmuş PDF'de interaktiviteyi koruyabilir ve daha fazlasını yapabilirsiniz.
new ChromePdfRenderer(); ile, HTML içeriğinin PDF'ye dönüştürülmesini kontrol eden yeni bir ChromePdfRenderer sınıf örneğini başlatıyoruz. Bu sınıf ile, render edilen PDF dosyalarınızın, nihai sonuçta korunan herhangi bir özel JavaScript veya CSS içeriği ile birlikte piksel mükemmelliğinde olacağından emin olabilirsiniz.
Sonra, yeni PDF işlenmeden önce JavaScript'in yürütülmesini sağlamak için ChromePdfRenderer sınıfı içindeki RenderingOptions özelliğinden yararlanın. RenderingOptions.WaitForJavaScript() yöntemi, programın gerçekleştirme sürecine devam etmeden önce JavaScript'in yürütülmesini tamamlamasını beklemesini sağlar. JavaScript kodu window.ironpdf.notifyRender() metodunu yürüttüğünde işleme başlayacaktır. RenderingOptions özelliği, oluşturduğumuz ChromePdfRenderer örneğine atanır, bu sayede seçenekler bu işleyiciyle oluşturulan herhangi bir PDF için kullanılacaktır.
renderer.RenderHtmlAsPdf(...) yöntemi, PDF belgesinin gerçek işlenmesini ele alır. Bu metoda JavaScript içeren HTML dizgesini geçirerek, tüm HTML ve JavaScript öğelerini içeren yüksek kaliteli bir PDF olarak render edebiliriz. Bu, bu durumda pdfJavaScript olarak adlandırılan, yeni oluşturulan PDF'yi depolayacak olan yeni bir PdfDocument nesnesine kaydedilir. Son olarak, yeni oluşturulan bu PDF'yi SaveAs yöntemi kullanarak kaydedebiliriz.

