# Generowanie raportów PDF w ASP.NET za pomocą języka C# lub VB
IronPDF umożliwia programistom .NET generowanie raportów PDF na podstawie danych HTML, Crystal Reports, XML i SQL Server poprzez renderowanie treści HTML jako dokumentów PDF. Ta biblioteka C# upraszcza tworzenie raportów w aplikacjach ASP.NET za pomocą zaledwie kilku wierszy kodu, zachowując całe formatowanie i styl.
*as-heading:2(Szybki start: Generowanie raportów PDF za pomocą IronPDF)*
Zacznij generować raporty PDF za pomocą IronPDF za pomocą zaledwie kilku wierszy kodu. Ten krótki przewodnik umożliwia programistom natychmiastowe konwertowanie treści HTML na profesjonalne dokumenty PDF, zachowując bez wysiłku całe formatowanie. Skorzystaj z poniższego przykładu, aby przekonać się, jak łatwo przekształcić dane w profesjonalny raport w formacie PDF.
```cs
:title=Generate your PDF report in one line!
// Instantiate ChromePdfRenderer for HTML to PDF conversion
new IronPdf.ChromePdfRenderer().RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf");
```
<div class="hsg-featured-snippet">
<h3>Minimalny proces (5 kroków)</h3>
<ol>
<li><a class="js-modal-open" data-modal-id="trial-license-after-download" href="https://nuget.org/packages/IronPdf/">Pobierz i zainstaluj bibliotekę IronPDF C# PDF Report Library</a></li>
<li>Generuj raporty jako dokumenty HTML i renderuj je jako pliki PDF</li>
<li>Eksportuj raporty Crystal Reports, korzystając z: Plik → Eksportuj → HTML 4.0</li>
<li>Formatowanie raportów XML poprzez parsowanie XML i generowanie HTML z danymi</li>
<li>Podpisuj cyfrowo pliki PDF, aby mieć pewność, że raporty nie zostały sfałszowane</li>
</ol>
</div>
<hr class="separator" />
#### Krok 1
## Jak zainstalować IronPDF?
[IronPDF na NuGet](https://www.nuget.org/packages/IronPdf)
```shell
:ProductInstall
```
Można również [ręcznie pobrać bibliotekę DLL IronPDF](https://www.nuget.org/packages/IronPdf). W przypadku zaawansowanych scenariuszy instalacji zapoznaj się z naszym obszernym [przewodnikiem po pakietach NuGet](https://ironpdf.com/get-started/advanced-installation-nuget/), który obejmuje konfigurację dla platform Azure, AWS, Linux, Mac i Windows. Jeśli pracujesz z aplikacjami kontenerowymi, nasz [przewodnik po integracji z Dockerem](https://ironpdf.com/get-started/ironpdf-docker/) zawiera szczegółowe instrukcje konfiguracji.
<hr class="separator" />
#### Poradnik "Jak to zrobić"
## Jaka jest metodologia tworzenia raportu w formacie PDF?
Najpierw wygeneruj raport jako dokument HTML, a następnie przekonwertuj HTML na PDF za pomocą IronPDF. Ten samouczek pokazuje kroki tworzenia raportu PDF w ASP.NET C#. [Silnik renderujący](https://ironpdf.com/how-to/ironpdf-2021-chrome-rendering-engine-eap/) IronPDF [dla przeglądarki Chrome](https://ironpdf.com/how-to/ironpdf-2021-chrome-rendering-engine-eap/) zapewnia konwersję z idealną dokładnością pikselową, obsługując jednocześnie nowoczesne standardy HTML5, CSS3 i JavaScript.
```csharp
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf");
```
W przypadku bardziej złożonych potrzeb związanych z raportowaniem zapoznaj się z naszym [obszernym samouczkiem dotyczącym tworzenia plików PDF](https://ironpdf.com/how-to/create-new-pdfs/), który obejmuje znaki wodne, kompresję, tła, nagłówki, stopki, formularze i ochronę hasłem.
## Jak przekonwertować Crystal Reports do formatu PDF za pomocą .NET?
Eksportuj raporty Crystal Reports do formatu HTML za pomocą:
Plik → Eksportuj → HTML 4.0
Gotowy raport można następnie wyeksportować do formatu PDF, korzystając z powyższego przykładowego kodu w języku C#, zamieszczonego w sekcji "Metodologia". IronPDF zapewnia doskonałą obsługę [konwersji plików HTML do formatu PDF](https://ironpdf.com/how-to/html-file-to-pdf/), zachowując całe formatowanie i style z plików wyjściowych Crystal Reports.
Oto przykład:
```csharp
using IronPdf;
using IronSoftware.Drawing;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Add a header to very page easily
renderer.RenderingOptions.FirstPageNumber = 1;
renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
renderer.RenderingOptions.TextHeader.CenterText = "{url}";
renderer.RenderingOptions.TextHeader.Font = FontTypes.Arial;
renderer.RenderingOptions.TextHeader.FontSize = 12;
// Add a footer too
renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
renderer.RenderingOptions.TextFooter.Font = FontTypes.Arial;
renderer.RenderingOptions.TextFooter.FontSize = 10;
renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
renderer.RenderHtmlFileAsPdf(@"c:\my\exported\report.html").SaveAs("report.pdf");
```
Aby uzyskać informacje na temat zaawansowanego dostosowywania nagłówków i stopek, w tym nagłówków opartych na HTML, zapoznaj się z naszym [przewodnikiem dotyczącym nagłówków i stopek](https://ironpdf.com/how-to/headers-and-footers/).
### Jak mogę programowo przekonwertować Crystal Reports do formatu PDF?
Jeśli chcesz programowo utworzyć plik PDF z pliku Crystal Reports (RPT), jest to również możliwe i zapewnia znacznie większą kontrolę. Takie podejście płynnie integruje się z [opcjami renderowania](https://ironpdf.com/how-to/rendering-options/) IronPDF, umożliwiając pełną personalizację.
```csharp
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;
using System.IO;
using IronPdf;
public static void ExportRptToPdf(string rptPath, string pdfOutputPath)
{
// Load the Crystal Report
ReportDocument rpt = new ReportDocument();
rpt.Load(rptPath);
// Configure export options for HTML output
DiskFileDestinationOptions diskOpts = new DiskFileDestinationOptions()
{
DiskFileName = @"c:\tmp\html\b.html" // Temporary HTML file
};
ExportOptions exportOpts = ExportOptions.CreateExportOptions();
exportOpts.ExportDestinationType = ExportDestinationType.DiskFile;
exportOpts.ExportFormatType = ExportFormatType.HTML40; // Export as HTML 4.0
exportOpts.ExportDestinationOptions = diskOpts;
// Export report to HTML
rpt.Export();
// Convert HTML to PDF using IronPDF
var Renderer = new ChromePdfRenderer();
// Add dynamic header with URL
Renderer.RenderingOptions.TextHeader.CenterText = "{url}";
// Add footer with timestamp and page numbers
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
// Render the HTML file to PDF and save
Renderer.RenderFileAsPdf(diskOpts.DiskFileName).SaveAs(pdfOutputPath);
Console.WriteLine("Report Written To {0}", Path.GetFullPath(pdfOutputPath));
}
```
## Jak generować raporty PDF z plików XML?
Eksportowanie danych raportów w formacie XML jest nadal powszechne, pomimo popularności formatów łatwiejszych do kodowania, takich jak JSON. IronPDF oferuje doskonałą obsługę [konwersji](https://ironpdf.com/how-to/xml-to-pdf/) [XML do PDF](https://ironpdf.com/how-to/xml-to-pdf/), zapewniając wiele metod przetwarzania danych XML.
Aby sformatować raporty XML, należy przeanalizować XML i wygenerować kod HTML z danymi.
Bardziej eleganckim rozwiązaniem jest użycie XSLT do bezpośredniego konwertowania XML do HTML za pomocą klasy `XslCompiledTransform`, jak opisano w artykule [Using the XslCompiledTransform Class](https://docs.microsoft.com/en-us/dotnet/standard/data/xml/using-the-xslcompiledtransform-class).
Powstały ciąg znaków lub plik HTML można następnie przekształcić w plik PDF za pomocą IronPDF:
```csharp
using System.IO;
using System.Xml;
using System.Xml.Xsl;
using IronPdf;
public static void ConvertXmlToPdf(string xml, string xslt, string pdfOutputPath)
{
// Initialize XSLT transformation
XslCompiledTransform transform = new XslCompiledTransform();
using (XmlReader reader = XmlReader.Create(new StringReader(xslt)))
{
transform.Load(reader); // Load XSLT stylesheet
}
// Transform XML to HTML
StringWriter results = new StringWriter();
using (XmlReader reader = XmlReader.Create(new StringReader(xml)))
{
transform.Transform(reader, null, results); // Apply transformation
}
// Convert the generated HTML to PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderHtmlAsPdf(results.ToString()).SaveAs(pdfOutputPath);
}
```
Zapraszamy do zapoznania się z [artykułem](/how-to/xml-to-pdf/) ["Konwersja XML do PDF w C# i VB.NET",](/how-to/xml-to-pdf/) aby dowiedzieć się więcej o zaawansowanych technikach transformacji XML i najlepszych praktykach.
## Jak wyeksportować raporty SQL Server do formatu PDF?
SQL Server firmy Microsoft oraz bezpłatny SQL Server Express zawierają narzędzia do tworzenia raportów. Eksportowanie raportów SSRS do formatu PDF w ASP.NET może być przydatnym zastosowaniem IronPDF. W przypadku złożonych potrzeb związanych z wizualizacją danych IronPDF obsługuje [renderowanie wykresów JavaScript](https://ironpdf.com/how-to/javascript-to-pdf/), w tym popularnych bibliotek, takich jak C3.js, D3.js i Highcharts.
[Samouczek: Jak znaleźć i uruchomić narzędzia Reporting Services (SSRS)](https://docs.microsoft.com/en-us/sql/reporting-services/tools/tutorial-how-to-locate-and-start-reporting-services-tools-ssrs?view=sql-server-2017)
Raporty te mogą być generowane w formacie HTML, a następnie dostosowywane i konwertowane do formatu PDF za pomocą IronPDF. Funkcja [konwersji ciągów HTML do formatu PDF](https://ironpdf.com/how-to/html-string-to-pdf/) w IronPDF zapewnia pełną kontrolę nad ostatecznym wynikiem.
[Renderowanie do HTML (Report Builder)](https://docs.microsoft.com/en-us/sql/reporting-services/report-builder/rendering-to-html-report-builder-and-ssrs?view=sql-server-2017)
W środowiskach Enterprise wymagających bezpiecznego dostępu do danych IronPDF obsługuje [logowanie do stron internetowych i systemów](https://ironpdf.com/how-to/logins/) za [pomocą protokołu TLS](https://ironpdf.com/how-to/logins/), umożliwiając generowanie raportów po uwierzytelnieniu.
## Jak zabezpieczyć raporty PDF?
Aby upewnić się, że raport PDF nie został zmodyfikowany ani sfałszowany, należy go podpisać cyfrowo. Najłatwiej jest to osiągnąć w przypadku pliku raportu PDF po jego wyrenderowaniu i zapisaniu na dysku. IronPDF zapewnia kompleksowe [możliwości podpisywania plików PDF,](https://ironpdf.com/how-to/signing/) w tym obsługę [modułów bezpieczeństwa sprzętowego (HSM)](https://ironpdf.com/how-to/signing-pdf-with-hsm/).
```csharp
using IronPdf.Signing;
// Sign our PDF Report using a p12 or pix digital certificate file
new PdfSignature("IronSoftware.pfx", "123456").SignPdfFile("signed.pdf");
```
Jeśli nie posiadasz podpisu cyfrowego, możesz utworzyć nowy plik podpisu cyfrowego za pomocą bezpłatnego programu Adobe Acrobat Reader na systemach macOS i Windows. Aby uzyskać dodatkowe środki bezpieczeństwa, zapoznaj się z naszym [przewodnikiem dotyczącym uprawnień i haseł do plików PDF,](https://ironpdf.com/how-to/pdf-permissions-passwords/) aby kontrolować dostęp do dokumentów i prawa do edycji.
## Jak przekonwertować plik ASPX na PDF za pomocą ASP.NET Webforms?
Najłatwiejszym sposobem na udostępnienie zawartości HTML w ASP.NET jest użycie klasy `IronPdf.AspxToPdf` na zdarzeniu `Form_Load` aplikacji ASP.NET WebForms. Ta potężna funkcja pozwala na konwersję całych stron ASPX, w tym elementów sterujących po stronie serwera i treści dynamicznej, bezpośrednio do formatu PDF.
```csharp
using IronPdf;
public static void RenderAspxToPdf()
{
// Configure PDF rendering options
var AspxToPdfOptions = new ChromePdfRenderOptions()
{
EnableJavaScript = false, // Disable JavaScript for simpler reports
PrintHtmlBackgrounds = true, // Include background colors and images
MarginTop = 20, // Set top margin in mm
MarginBottom = 20, // Set bottom margin in mm
PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait,
PaperSize = IronPdf.Rendering.PdfPaperSize.A4
// ...many more options available
};
// Render the HTML page to PDF and prompt download
<code>AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Report.pdf", AspxToPdfOptions)</code>;
}
```
Mamy nadzieję, że ten artykuł pomógł Ci w nauce generowania raportów PDF w ASP.NET C# lub VB.NET. Możesz również zapoznać się z naszym pełnym [samouczkiem dotyczącym konwersji plików ASP.NET ASPX do formatu PDF,](/how-to/aspx-to-pdf/) aby dowiedzieć się więcej o zaawansowanych scenariuszach, w tym o ustawieniach konwersji stron ASPX do formatu PDF oraz obsłudze złożonych układów.
IronPDF umożliwia programistom .NET generowanie raportów PDF na podstawie danych HTML, Crystal Reports, XML i SQL Server poprzez renderowanie treści HTML jako dokumentów PDF. Ta biblioteka C# upraszcza tworzenie raportów w aplikacjach ASP.NET za pomocą zaledwie kilku wierszy kodu, zachowując całe formatowanie i styl.
Szybki start: Generowanie raportów PDF za pomocą IronPDF
Zacznij generować raporty PDF za pomocą IronPDF za pomocą zaledwie kilku wierszy kodu. Ten krótki przewodnik umożliwia programistom natychmiastowe konwertowanie treści HTML na profesjonalne dokumenty PDF, zachowując bez wysiłku całe formatowanie. Skorzystaj z poniższego przykładu, aby przekonać się, jak łatwo przekształcić dane w profesjonalny raport w formacie PDF.
1Install IronPDF with NuGet Package Manager
PM > Install-Package IronPdf
Install-Package IronPdf
2Skopiuj i uruchom ten fragment kodu.
// Instantiate ChromePdfRenderer for HTML to PDF conversionnewIronPdf.ChromePdfRenderer().RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf");
// Instantiate ChromePdfRenderer for HTML to PDF conversion
new IronPdf.ChromePdfRenderer().RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf");
' Instantiate ChromePdfRenderer for HTML to PDF conversionCall New IronPdf.ChromePdfRenderer().RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf")
' Instantiate ChromePdfRenderer for HTML to PDF conversion
Call New IronPdf.ChromePdfRenderer().RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf")
3Wdrożenie do testowania w środowisku produkcyjnym
Jaka jest metodologia tworzenia raportu w formacie PDF?
Najpierw wygeneruj raport jako dokument HTML, a następnie przekonwertuj HTML na PDF za pomocą IronPDF. Ten samouczek pokazuje kroki tworzenia raportu PDF w ASP.NET C#. Silnik renderujący IronPDF dla przeglądarki Chrome zapewnia konwersję z idealną dokładnością pikselową, obsługując jednocześnie nowoczesne standardy HTML5, CSS3 i JavaScript.
using IronPdf;ChromePdfRenderer renderer = new ChromePdfRenderer();renderer.RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf");
using IronPdf;
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf");
ImportsIronPdfPrivate renderer As New ChromePdfRenderer()renderer.RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf")
Imports IronPdf
Private renderer As New ChromePdfRenderer()
renderer.RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf")
W przypadku bardziej złożonych potrzeb związanych z raportowaniem zapoznaj się z naszym obszernym samouczkiem dotyczącym tworzenia plików PDF, który obejmuje znaki wodne, kompresję, tła, nagłówki, stopki, formularze i ochronę hasłem.
Jak przekonwertować Crystal Reports do formatu PDF za pomocą .NET?
Eksportuj raporty Crystal Reports do formatu HTML za pomocą:
Plik → Eksportuj → HTML 4.0
Gotowy raport można następnie wyeksportować do formatu PDF, korzystając z powyższego przykładowego kodu w języku C#, zamieszczonego w sekcji "Metodologia". IronPDF zapewnia doskonałą obsługę konwersji plików HTML do formatu PDF, zachowując całe formatowanie i style z plików wyjściowych Crystal Reports.
Oto przykład:
using IronPdf;using IronSoftware.Drawing;ChromePdfRenderer renderer = new ChromePdfRenderer();// Add a header to very page easilyrenderer.RenderingOptions.FirstPageNumber = 1;renderer.RenderingOptions.TextHeader.DrawDividerLine = true;renderer.RenderingOptions.TextHeader.CenterText = "{url}";renderer.RenderingOptions.TextHeader.Font = FontTypes.Arial;renderer.RenderingOptions.TextHeader.FontSize = 12;// Add a footer toorenderer.RenderingOptions.TextFooter.DrawDividerLine = true;renderer.RenderingOptions.TextFooter.Font = FontTypes.Arial;renderer.RenderingOptions.TextFooter.FontSize = 10;renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";renderer.RenderHtmlFileAsPdf(@"c:\my\exported\report.html").SaveAs("report.pdf");
using IronPdf;
using IronSoftware.Drawing;
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Add a header to very page easily
renderer.RenderingOptions.FirstPageNumber = 1;
renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
renderer.RenderingOptions.TextHeader.CenterText = "{url}";
renderer.RenderingOptions.TextHeader.Font = FontTypes.Arial;
renderer.RenderingOptions.TextHeader.FontSize = 12;
// Add a footer too
renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
renderer.RenderingOptions.TextFooter.Font = FontTypes.Arial;
renderer.RenderingOptions.TextFooter.FontSize = 10;
renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
renderer.RenderHtmlFileAsPdf(@"c:\my\exported\report.html").SaveAs("report.pdf");
ImportsIronPdfImportsIronSoftware.DrawingPrivate renderer As New ChromePdfRenderer()' Add a header to very page easilyrenderer.RenderingOptions.FirstPageNumber = 1renderer.RenderingOptions.TextHeader.DrawDividerLine = Truerenderer.RenderingOptions.TextHeader.CenterText = "{url}"renderer.RenderingOptions.TextHeader.Font = FontTypes.Arialrenderer.RenderingOptions.TextHeader.FontSize = 12' Add a footer toorenderer.RenderingOptions.TextFooter.DrawDividerLine = Truerenderer.RenderingOptions.TextFooter.Font = FontTypes.Arialrenderer.RenderingOptions.TextFooter.FontSize = 10renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"renderer.RenderHtmlFileAsPdf("c:\my\exported\report.html").SaveAs("report.pdf")
Imports IronPdf
Imports IronSoftware.Drawing
Private renderer As New ChromePdfRenderer()
' Add a header to very page easily
renderer.RenderingOptions.FirstPageNumber = 1
renderer.RenderingOptions.TextHeader.DrawDividerLine = True
renderer.RenderingOptions.TextHeader.CenterText = "{url}"
renderer.RenderingOptions.TextHeader.Font = FontTypes.Arial
renderer.RenderingOptions.TextHeader.FontSize = 12
' Add a footer too
renderer.RenderingOptions.TextFooter.DrawDividerLine = True
renderer.RenderingOptions.TextFooter.Font = FontTypes.Arial
renderer.RenderingOptions.TextFooter.FontSize = 10
renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"
renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"
renderer.RenderHtmlFileAsPdf("c:\my\exported\report.html").SaveAs("report.pdf")
Aby uzyskać informacje na temat zaawansowanego dostosowywania nagłówków i stopek, w tym nagłówków opartych na HTML, zapoznaj się z naszym przewodnikiem dotyczącym nagłówków i stopek.
Jak mogę programowo przekonwertować Crystal Reports do formatu PDF?
Jeśli chcesz programowo utworzyć plik PDF z pliku Crystal Reports (RPT), jest to również możliwe i zapewnia znacznie większą kontrolę. Takie podejście płynnie integruje się z opcjami renderowania IronPDF, umożliwiając pełną personalizację.
using CrystalDecisions.CrystalReports.Engine;using CrystalDecisions.Shared;using System.IO;using IronPdf;public static voidExportRptToPdf(string rptPath, string pdfOutputPath){ // Load the Crystal Report ReportDocument rpt = new ReportDocument(); rpt.Load(rptPath); // Configure export options for HTML output DiskFileDestinationOptions diskOpts = new DiskFileDestinationOptions() {DiskFileName = @"c:\tmp\html\b.html" // Temporary HTML file }; ExportOptions exportOpts = ExportOptions.CreateExportOptions(); exportOpts.ExportDestinationType = ExportDestinationType.DiskFile; exportOpts.ExportFormatType = ExportFormatType.HTML40; // Export as HTML 4.0 exportOpts.ExportDestinationOptions = diskOpts; // Export report to HTML rpt.Export(); // Convert HTML to PDF using IronPDF varRenderer = new ChromePdfRenderer(); // Add dynamic header with URLRenderer.RenderingOptions.TextHeader.CenterText = "{url}"; // Add footer with timestamp and page numbersRenderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"; // Render the HTML file to PDF and saveRenderer.RenderFileAsPdf(diskOpts.DiskFileName).SaveAs(pdfOutputPath);Console.WriteLine("Report Written To {0}", Path.GetFullPath(pdfOutputPath));}
using CrystalDecisions.CrystalReports.Engine;
using CrystalDecisions.Shared;
using System.IO;
using IronPdf;
public static void ExportRptToPdf(string rptPath, string pdfOutputPath)
{
// Load the Crystal Report
ReportDocument rpt = new ReportDocument();
rpt.Load(rptPath);
// Configure export options for HTML output
DiskFileDestinationOptions diskOpts = new DiskFileDestinationOptions()
{
DiskFileName = @"c:\tmp\html\b.html" // Temporary HTML file
};
ExportOptions exportOpts = ExportOptions.CreateExportOptions();
exportOpts.ExportDestinationType = ExportDestinationType.DiskFile;
exportOpts.ExportFormatType = ExportFormatType.HTML40; // Export as HTML 4.0
exportOpts.ExportDestinationOptions = diskOpts;
// Export report to HTML
rpt.Export();
// Convert HTML to PDF using IronPDF
var Renderer = new ChromePdfRenderer();
// Add dynamic header with URL
Renderer.RenderingOptions.TextHeader.CenterText = "{url}";
// Add footer with timestamp and page numbers
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
// Render the HTML file to PDF and save
Renderer.RenderFileAsPdf(diskOpts.DiskFileName).SaveAs(pdfOutputPath);
Console.WriteLine("Report Written To {0}", Path.GetFullPath(pdfOutputPath));
}
ImportsCrystalDecisions.CrystalReports.EngineImportsCrystalDecisions.SharedImportsSystem.IOImportsIronPdfPublic Sub ExportRptToPdf(rptPath AsString, pdfOutputPath AsString) ' Load the Crystal Report Dim rpt As New ReportDocument() rpt.Load(rptPath) ' Configure export options for HTML output Dim diskOpts As New DiskFileDestinationOptions() With { .DiskFileName = "c:\tmp\html\b.html" ' Temporary HTML file } Dim exportOpts AsExportOptions = ExportOptions.CreateExportOptions() exportOpts.ExportDestinationType = ExportDestinationType.DiskFile exportOpts.ExportFormatType = ExportFormatType.HTML40' Export as HTML 4.0 exportOpts.ExportDestinationOptions = diskOpts ' Export report to HTML rpt.Export() ' Convert HTML to PDF using IronPDF DimRendererAs New ChromePdfRenderer() ' Add dynamic header with URLRenderer.RenderingOptions.TextHeader.CenterText = "{url}" ' Add footer with timestamp and page numbersRenderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}" ' Render the HTML file to PDF and saveRenderer.RenderFileAsPdf(diskOpts.DiskFileName).SaveAs(pdfOutputPath)Console.WriteLine("Report Written To {0}", Path.GetFullPath(pdfOutputPath))End Sub
Imports CrystalDecisions.CrystalReports.Engine
Imports CrystalDecisions.Shared
Imports System.IO
Imports IronPdf
Public Sub ExportRptToPdf(rptPath As String, pdfOutputPath As String)
' Load the Crystal Report
Dim rpt As New ReportDocument()
rpt.Load(rptPath)
' Configure export options for HTML output
Dim diskOpts As New DiskFileDestinationOptions() With {
.DiskFileName = "c:\tmp\html\b.html" ' Temporary HTML file
}
Dim exportOpts As ExportOptions = ExportOptions.CreateExportOptions()
exportOpts.ExportDestinationType = ExportDestinationType.DiskFile
exportOpts.ExportFormatType = ExportFormatType.HTML40 ' Export as HTML 4.0
exportOpts.ExportDestinationOptions = diskOpts
' Export report to HTML
rpt.Export()
' Convert HTML to PDF using IronPDF
Dim Renderer As New ChromePdfRenderer()
' Add dynamic header with URL
Renderer.RenderingOptions.TextHeader.CenterText = "{url}"
' Add footer with timestamp and page numbers
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"
' Render the HTML file to PDF and save
Renderer.RenderFileAsPdf(diskOpts.DiskFileName).SaveAs(pdfOutputPath)
Console.WriteLine("Report Written To {0}", Path.GetFullPath(pdfOutputPath))
End Sub
Moją ulubioną biblioteką tego typu jest IronPDF. Umożliwia ona szybkie i efektywne manipulowanie plikami PDF. Posiada także wiele cennych funkcji, takich jak eksport do formatu PDF/A i cyfrowe podpisywanie dokumentów PDF.
IronOCR pozwala nam oszczędzić 40 000 USD rocznie na ręcznym przetwarzaniu, jednocześnie zwiększając produktywność i uwalniając zasoby do zadań o wysokim wpływie. Gorąco polecam.
Eksportowanie danych raportów w formacie XML jest nadal powszechne, pomimo popularności formatów łatwiejszych do kodowania, takich jak JSON. IronPDF oferuje doskonałą obsługę konwersjiXML do PDF, zapewniając wiele metod przetwarzania danych XML.
Aby sformatować raporty XML, należy przeanalizować XML i wygenerować kod HTML z danymi.
Bardziej eleganckim rozwiązaniem jest użycie XSLT do bezpośredniego konwertowania XML do HTML za pomocą klasy XslCompiledTransform, jak opisano w artykule Using the XslCompiledTransform Class.
Powstały ciąg znaków lub plik HTML można następnie przekształcić w plik PDF za pomocą IronPDF:
using System.IO;using System.Xml;using System.Xml.Xsl;using IronPdf;public static voidConvertXmlToPdf(string xml, string xslt, string pdfOutputPath){ // Initialize XSLT transformation XslCompiledTransform transform = new XslCompiledTransform(); using (XmlReader reader = XmlReader.Create(new StringReader(xslt))) { transform.Load(reader); // Load XSLT stylesheet } // Transform XML to HTML StringWriter results = new StringWriter(); using (XmlReader reader = XmlReader.Create(new StringReader(xml))) { transform.Transform(reader, null, results); // Apply transformation } // Convert the generated HTML to PDF ChromePdfRenderer renderer = new ChromePdfRenderer(); renderer.RenderHtmlAsPdf(results.ToString()).SaveAs(pdfOutputPath);}
using System.IO;
using System.Xml;
using System.Xml.Xsl;
using IronPdf;
public static void ConvertXmlToPdf(string xml, string xslt, string pdfOutputPath)
{
// Initialize XSLT transformation
XslCompiledTransform transform = new XslCompiledTransform();
using (XmlReader reader = XmlReader.Create(new StringReader(xslt)))
{
transform.Load(reader); // Load XSLT stylesheet
}
// Transform XML to HTML
StringWriter results = new StringWriter();
using (XmlReader reader = XmlReader.Create(new StringReader(xml)))
{
transform.Transform(reader, null, results); // Apply transformation
}
// Convert the generated HTML to PDF
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderHtmlAsPdf(results.ToString()).SaveAs(pdfOutputPath);
}
ImportsSystem.IOImportsSystem.XmlImportsSystem.Xml.XslImportsIronPdfPublicShared Sub ConvertXmlToPdf(xml AsString, xslt AsString, pdfOutputPath AsString) ' Initialize XSLT transformation Dim transform As New XslCompiledTransform()Using reader AsXmlReader = XmlReader.Create(New StringReader(xslt)) transform.Load(reader) ' Load XSLT stylesheetEndUsing ' Transform XML to HTML Dim results As New StringWriter()Using reader AsXmlReader = XmlReader.Create(New StringReader(xml)) transform.Transform(reader, Nothing, results) ' Apply transformationEndUsing ' Convert the generated HTML to PDF Dim renderer As New ChromePdfRenderer() renderer.RenderHtmlAsPdf(results.ToString()).SaveAs(pdfOutputPath)End Sub
Imports System.IO
Imports System.Xml
Imports System.Xml.Xsl
Imports IronPdf
Public Shared Sub ConvertXmlToPdf(xml As String, xslt As String, pdfOutputPath As String)
' Initialize XSLT transformation
Dim transform As New XslCompiledTransform()
Using reader As XmlReader = XmlReader.Create(New StringReader(xslt))
transform.Load(reader) ' Load XSLT stylesheet
End Using
' Transform XML to HTML
Dim results As New StringWriter()
Using reader As XmlReader = XmlReader.Create(New StringReader(xml))
transform.Transform(reader, Nothing, results) ' Apply transformation
End Using
' Convert the generated HTML to PDF
Dim renderer As New ChromePdfRenderer()
renderer.RenderHtmlAsPdf(results.ToString()).SaveAs(pdfOutputPath)
End Sub
Jak wyeksportować raporty SQL Server do formatu PDF?
SQL Server firmy Microsoft oraz bezpłatny SQL Server Express zawierają narzędzia do tworzenia raportów. Eksportowanie raportów SSRS do formatu PDF w ASP.NET może być przydatnym zastosowaniem IronPDF. W przypadku złożonych potrzeb związanych z wizualizacją danych IronPDF obsługuje renderowanie wykresów JavaScript, w tym popularnych bibliotek, takich jak C3.js, D3.js i Highcharts.
Raporty te mogą być generowane w formacie HTML, a następnie dostosowywane i konwertowane do formatu PDF za pomocą IronPDF. Funkcja konwersji ciągów HTML do formatu PDF w IronPDF zapewnia pełną kontrolę nad ostatecznym wynikiem.
Aby upewnić się, że raport PDF nie został zmodyfikowany ani sfałszowany, należy go podpisać cyfrowo. Najłatwiej jest to osiągnąć w przypadku pliku raportu PDF po jego wyrenderowaniu i zapisaniu na dysku. IronPDF zapewnia kompleksowe możliwości podpisywania plików PDF, w tym obsługę modułów bezpieczeństwa sprzętowego (HSM).
using IronPdf.Signing;// Sign our PDF Report using a p12 or pix digital certificate filenewPdfSignature("IronSoftware.pfx", "123456").SignPdfFile("signed.pdf");
using IronPdf.Signing;
// Sign our PDF Report using a p12 or pix digital certificate file
new PdfSignature("IronSoftware.pfx", "123456").SignPdfFile("signed.pdf");
ImportsIronPdf.Signing' Sign our PDF Report using a p12 or pix digital certificate fileCall (New PdfSignature("IronSoftware.pfx", "123456")).SignPdfFile("signed.pdf")
Imports IronPdf.Signing
' Sign our PDF Report using a p12 or pix digital certificate file
Call (New PdfSignature("IronSoftware.pfx", "123456")).SignPdfFile("signed.pdf")
Jeśli nie posiadasz podpisu cyfrowego, możesz utworzyć nowy plik podpisu cyfrowego za pomocą bezpłatnego programu Adobe Acrobat Reader na systemach macOS i Windows. Aby uzyskać dodatkowe środki bezpieczeństwa, zapoznaj się z naszym przewodnikiem dotyczącym uprawnień i haseł do plików PDF, aby kontrolować dostęp do dokumentów i prawa do edycji.
Jak przekonwertować plik ASPX na PDF za pomocą ASP.NET Webforms?
Najłatwiejszym sposobem na udostępnienie zawartości HTML w ASP.NET jest użycie klasy IronPdf.AspxToPdf na zdarzeniu Form_Load aplikacji ASP.NET WebForms. Ta potężna funkcja pozwala na konwersję całych stron ASPX, w tym elementów sterujących po stronie serwera i treści dynamicznej, bezpośrednio do formatu PDF.
using IronPdf;public static voidRenderAspxToPdf(){ // Configure PDF rendering options varAspxToPdfOptions = new ChromePdfRenderOptions() {EnableJavaScript = false, // Disable JavaScript for simpler reportsPrintHtmlBackgrounds = true, // Include background colors and imagesMarginTop = 20, // Set top margin in mmMarginBottom = 20, // Set bottom margin in mmPaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait,PaperSize = IronPdf.Rendering.PdfPaperSize.A4 // ...many more options available }; // Render the HTML page to PDF and prompt download <code>AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Report.pdf", AspxToPdfOptions)</code>;}
using IronPdf;
public static void RenderAspxToPdf()
{
// Configure PDF rendering options
var AspxToPdfOptions = new ChromePdfRenderOptions()
{
EnableJavaScript = false, // Disable JavaScript for simpler reports
PrintHtmlBackgrounds = true, // Include background colors and images
MarginTop = 20, // Set top margin in mm
MarginBottom = 20, // Set bottom margin in mm
PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait,
PaperSize = IronPdf.Rendering.PdfPaperSize.A4
// ...many more options available
};
// Render the HTML page to PDF and prompt download
<code>AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Report.pdf", AspxToPdfOptions)</code>;
}
ImportsIronPdfPublicModulePdfRenderer Public Sub RenderAspxToPdf() ' Configure PDF rendering options DimAspxToPdfOptionsAs New ChromePdfRenderOptions() With { .EnableJavaScript = False, ' Disable JavaScript for simpler reports .PrintHtmlBackgrounds = True, ' Include background colors and images .MarginTop = 20, ' Set top margin in mm .MarginBottom = 20, ' Set bottom margin in mm .PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait, .PaperSize = IronPdf.Rendering.PdfPaperSize.A4 ' ...many more options available } ' Render the HTML page to PDF and prompt downloadAspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Report.pdf", AspxToPdfOptions) End SubEndModule
Imports IronPdf
Public Module PdfRenderer
Public Sub RenderAspxToPdf()
' Configure PDF rendering options
Dim AspxToPdfOptions As New ChromePdfRenderOptions() With {
.EnableJavaScript = False, ' Disable JavaScript for simpler reports
.PrintHtmlBackgrounds = True, ' Include background colors and images
.MarginTop = 20, ' Set top margin in mm
.MarginBottom = 20, ' Set bottom margin in mm
.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait,
.PaperSize = IronPdf.Rendering.PdfPaperSize.A4
' ...many more options available
}
' Render the HTML page to PDF and prompt download
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Report.pdf", AspxToPdfOptions)
End Sub
End Module
Mamy nadzieję, że ten artykuł pomógł Ci w nauce generowania raportów PDF w ASP.NET C# lub VB.NET. Możesz również zapoznać się z naszym pełnym samouczkiem dotyczącym konwersji plików ASP.NET ASPX do formatu PDF, aby dowiedzieć się więcej o zaawansowanych scenariuszach, w tym o ustawieniach konwersji stron ASPX do formatu PDF oraz obsłudze złożonych układów.
Często Zadawane Pytania
Jak generować raporty PDF z HTML w C#?
IronPDF umożliwia generowanie raportów PDF z HTML za pomocą jednej linii kodu: new IronPdf.ChromePdfRenderer().RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf"). To zachowuje całe formatowanie i stylizację HTML w końcowym dokumencie PDF.
Jakie typy raportów można przekształcić na PDF?
IronPDF obsługuje przekształcanie wielu typów raportów na PDF, w tym raporty HTML, Crystal Reports (eksportowane jako HTML 4.0), raporty XML (stylizowane z HTML) oraz raporty danych SQL Server. Biblioteka używa silnika renderowania Chrome, aby zapewnić konwersję zgodną z dokładnością pikselową.
Jak zainstalować bibliotekę generatora raportów PDF?
Możesz zainstalować IronPDF za pomocą Menedżera Pakietów NuGet, używając polecenia 'Install-Package IronPdf', lub pobrać plik DLL ręcznie. Biblioteka obsługuje różne platformy, w tym Azure, AWS, Linux, Mac, Windows i kontenery Docker.
Czy mogę przekształcić Crystal Reports na PDF w .NET?
Tak, możesz przekształcić Crystal Reports na PDF używając IronPDF, najpierw eksportując raport Crystal do formatu HTML 4.0 (Plik → Eksportuj → HTML 4.0), następnie używając metody RenderHtmlFileAsPdf IronPDF do przekształcenia wyjścia HTML w dokument PDF.
Jak utworzyć raporty PDF z danych SQL Server?
Aby utworzyć raporty PDF z danych SQL Server, najpierw wygeneruj raport HTML z danymi, a następnie użyj ChromePdfRenderer IronPDF, aby przekształcić HTML w PDF. Biblioteka zachowuje całe formatowanie, co czyni ją idealną dla raportów opartych na danych.
Czy mogę cyfrowo podpisywać raporty PDF?
Tak, IronPDF pozwala na cyfrowe podpisywanie raportów PDF, aby zapewnić, że nie zostały zmienione. Ta funkcja dodaje dodatkową warstwę bezpieczeństwa i autentyczności do generowanych dokumentów PDF.
Czy biblioteka obsługuje nowoczesne standardy webowe?
Silnik renderowania Chrome IronPDF w pełni obsługuje nowoczesne standardy HTML5, CSS3 oraz JavaScript, zapewniając, że raporty są renderowane dokładnie ze wszystkimi współczesnymi stylizacjami webowymi i elementami interaktywnymi zachowanymi w wyjściu PDF.
How do I convert an ASPX page to PDF using IronPDF?
IronPDF offers the `AspxToPdf` class to directly convert ASPX pages to PDF in ASP.NET WebForms. This includes server-side controls and dynamic content, allowing you to generate complete PDF versions of ASPX pages effortlessly.
Can XML be converted to PDF with IronPDF?
Yes, XML can be converted to PDF using IronPDF by first transforming XML data into HTML through XSLT, and then converting the HTML to PDF. This process ensures that the layout and data integrity are maintained.
Does IronPDF support digitally signing PDF reports?
Yes, IronPDF supports digitally signing PDF reports to ensure document integrity. You can use P12 or PIX digital certificates to sign PDF files, securing them against unauthorized modifications.
Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.