跳至頁尾內容
使用IRONPDF

如何使用IronPDF構建ASP.NET Core PDF檢視器

僅存於資料庫中的表單資料問題

IronPDF首頁 當客戶完成一個多步驟的網頁表單:如抵押貸款申請、保險報價或員工入職文件,資料會落在資料庫的某列或是JSON載荷中。 就是這樣。 沒有PDF文件。 客戶沒有可列印的紀錄或PDF檔案來記錄他們提交的內容。 剛花了四十分鐘輸入收入明細與上傳文件的借款人,離開時只收到一封確認電子郵件,說"我們已收到您的申請。" 他們沒有PDF格式的檔案可以存檔,也沒有任何可以在文件完整性發生爭議時作為參考的東西。

合規問題更嚴重。 審計團隊通常要求在申請者點擊提交的瞬間,能夠拍下他們所提交的整個文件的快照。 內部審核員透過截圖或複製貼上到Word文件來填補這個空隙。 這些方法都無法產生可重複的正式紀錄,也無法保存文件結構。 當審計員要求原始貸款申請書時,答案不應該是"讓我從資料庫導出並格式化它。" 今天,我們將看看IronPDF如何解決您的問題。

解決方案:在提交瞬間用C#生成PDF

使用Iron Software的IronPDF程式庫,.NET應用程式和.NET Core系統可以立即將HTML和提交的表單資料轉換成品牌化的PDF文件。 這個.NET PDF程式庫確保了您的團隊已經為確認頁面使用的相同HTML內容和網頁技術成為PDF生成的模板。 沒有需要支付的第三方文件生成API; PDF的建立是在現有應用程式內部完成的。

生成的PDF會發送到申請者的電子郵件中,同時儲存在PDF查看器或文件管理系統中,以便後臺文件工作流程使用。 自動化文件工作流程意味著審核員會得到一個標準化的最終文件。 每次提交都會產生相同高品質的PDF生成,無論使用者瀏覽了哪些網頁。

運作原理:從表單資料建立PDF文件

1. 提交處理程式接收表單模型

當使用者點擊提交時,伺服器端的處理程式會接收到表單模型和電子簽章中繼資料。 此時,資料已經完整。 處理程式不僅僅是保存資料,還將模型傳遞給PDF生成任務。 使用IronPDF,各種PDF生成任務,包括數位簽名,都可以在幾行程式碼中完成。

對於這個簡單的IronPDF範例,我們將使用這段範例資料程式碼:

範例資料

2. HTML文件或字串模板透過提交資料填充

Razor視圖、HTML文件、HTML結構、或者HTML字串模板作為佈局。 這個簡單的HTML字串包含公司標誌,其中可能包含Iron Software的客戶標誌或一個文字標誌Iron Suite相關圖像。 您可以使用外部CSS文件或內聯CSS設定字體系列和字體大小,以確保格式的保存。

3. ChromePdfRenderer將HTML轉換為PDF文件

使用IronPDF,該過程相當簡單。 首先,透過NuGet套件管理器、Visual Studio套件管理器或套件管理器控制台安裝IronPDF。

以下程式碼摘錄顯示了用於HTML轉PDF轉換的相同程式碼:

using IronPdf;

var renderer = new ChromePdfRenderer();

renderer.RenderingOptions.MarginTop = 20;

renderer.RenderingOptions.MarginBottom = 20;

renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;

string html = $@"
    <h1>Loan Application Summary</h1>
    <p><strong>Applicant:</strong> {submission.FullName}</p>
    <p><strong>Submitted:</strong> {submission.SubmittedAt:f}</p>
    <p><strong>Loan Amount:</strong> {submission.LoanAmount:C}</p>
    <p><strong>Reference:</strong> {submission.ReferenceNumber}</p>
    <hr/>
    <h2>Employment Details</h2>
    <p>{submission.EmployerName} — {submission.AnnualIncome:C} per year</p>";

PdfDocument summary = renderer.RenderHtmlAsPdf(html);
using IronPdf;

var renderer = new ChromePdfRenderer();

renderer.RenderingOptions.MarginTop = 20;

renderer.RenderingOptions.MarginBottom = 20;

renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;

string html = $@"
    <h1>Loan Application Summary</h1>
    <p><strong>Applicant:</strong> {submission.FullName}</p>
    <p><strong>Submitted:</strong> {submission.SubmittedAt:f}</p>
    <p><strong>Loan Amount:</strong> {submission.LoanAmount:C}</p>
    <p><strong>Reference:</strong> {submission.ReferenceNumber}</p>
    <hr/>
    <h2>Employment Details</h2>
    <p>{submission.EmployerName} — {submission.AnnualIncome:C} per year</p>";

PdfDocument summary = renderer.RenderHtmlAsPdf(html);
Imports IronPdf

Dim renderer As New ChromePdfRenderer()

renderer.RenderingOptions.MarginTop = 20

renderer.RenderingOptions.MarginBottom = 20

renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4

Dim html As String = $"
    <h1>Loan Application Summary</h1>
    <p><strong>Applicant:</strong> {submission.FullName}</p>
    <p><strong>Submitted:</strong> {submission.SubmittedAt:f}</p>
    <p><strong>Loan Amount:</strong> {submission.LoanAmount:C}</p>
    <p><strong>Reference:</strong> {submission.ReferenceNumber}</p>
    <hr/>
    <h2>Employment Details</h2>
    <p>{submission.EmployerName} — {submission.AnnualIncome:C} per year</p>"

Dim summary As PdfDocument = renderer.RenderHtmlAsPdf(html)
$vbLabelText   $csharpLabel

範例C#PDF輸出

範例輸出PDF 易於使用的API允許您生成PDF文件並從本地檔案或一個簡單的HTML字串建立PDF。 對於動態報告,ChromePdfRenderer可以完美執行JavaScript。 請注意,在UI中,您可能會看到一個藍色圓圈的鑰匙或一個灰色圓圈的鑰匙代表關鍵特徵或授權狀態。

提示將您的公司標誌作為base64資料URI直接嵌入到HTML模板中,以確保無論應用程式部署在何處都能正確呈現,不依賴於渲染時的文件路徑或CDN可用性。

4. 生成的PDF發送至申請者並儲存以供審核

新的PDF文件允許將BinaryData暴露於電子郵件附件中。 您也可以修改PDF文件,編輯PDF,加密PDF或嵌入圖像。 如果您需要分割PDF、分開PDF或將PDF分割成多份PDF,程式庫可以處理。 您甚至可以將其與現有PDF合併或管理PDF表單。

using System.Net.Mail;
using System.IO;

var stream = new MemoryStream(summary.BinaryData);

var attachment = new Attachment(
    stream,
    $"Application-{submission.ReferenceNumber}.pdf",
    "application/pdf"
);

var message = new MailMessage
{
    From = new MailAddress("applications@yourcompany.com"),
    Subject = $"Your Application Confirmation – Ref {submission.ReferenceNumber}",
    Body = $"Dear {submission.FullName},\n\nThank you for submitting your application. Your submission summary is attached.",
};

message.To.Add(submission.Email);

message.Attachments.Add(attachment);

using var client = new SmtpClient("smtp.yourprovider.com");

await client.SendMailAsync(message);
using System.Net.Mail;
using System.IO;

var stream = new MemoryStream(summary.BinaryData);

var attachment = new Attachment(
    stream,
    $"Application-{submission.ReferenceNumber}.pdf",
    "application/pdf"
);

var message = new MailMessage
{
    From = new MailAddress("applications@yourcompany.com"),
    Subject = $"Your Application Confirmation – Ref {submission.ReferenceNumber}",
    Body = $"Dear {submission.FullName},\n\nThank you for submitting your application. Your submission summary is attached.",
};

message.To.Add(submission.Email);

message.Attachments.Add(attachment);

using var client = new SmtpClient("smtp.yourprovider.com");

await client.SendMailAsync(message);
Imports System.Net.Mail
Imports System.IO

Dim stream As New MemoryStream(summary.BinaryData)

Dim attachment As New Attachment(
    stream,
    $"Application-{submission.ReferenceNumber}.pdf",
    "application/pdf"
)

Dim message As New MailMessage With {
    .From = New MailAddress("applications@yourcompany.com"),
    .Subject = $"Your Application Confirmation – Ref {submission.ReferenceNumber}",
    .Body = $"Dear {submission.FullName}," & vbCrLf & vbCrLf & "Thank you for submitting your application. Your submission summary is attached."
}

message.To.Add(submission.Email)

message.Attachments.Add(attachment)

Using client As New SmtpClient("smtp.yourprovider.com")
    Await client.SendMailAsync(message)
End Using
$vbLabelText   $csharpLabel

附PDF的發送電子郵件範例

Ironpdf Form To Pdf 4 related to 附PDF的發送電子郵件範例 相同的BinaryData字節陣列被寫入blob儲存—Azure Blob、AWS S3或者您的文件管理系統—並與提交紀錄一起保存。 審核員從隊列中取出,並每次開啟一致且格式化的文件。

現實世界的好處

合規性和審計記錄。 PDF是從申請者提交的準確資料生成的,在提交時蓋上時間戳。 這是不可變的,合規性團隊可以根據需求生產,而不需要重建可能已經改變的資料庫。

客戶信心。 申請者收到一份專業且品牌化的文件,確認他們的提交。 對於抵押貸款申請者或保險申請者,這種確認有實際的分量,它們可以和其他政策或貸款文件一起存檔。

內部效率。 審核員工作於一個標準化的PDF,呈現每一次提交的相同結構和格式。 不再需要截屏、不再需要將欄位值複製貼到Word中、不同團隊成員處理的提交不會有格式不一致的問題。

模板重用。 HTML模板是唯一控制文件佈局的東西。 當表單新增一個新部分、一個共同申請者欄位、一個修訂的披露區塊時,團隊只需更新一個文件,未來所有的提交將自動反映這一變動。

無需外部服務。 IronPDF作為一個NuGet套件在程式中運行。 沒有每份文件的API費用,沒有需要監控的外部渲染服務,提交流程中不依賴網路。

結語

提交的網頁表單會生成結構化資料。 沒有刻意的努力,它不會生成一個文件。 這個空隙造成現實中的摩擦:對於沒有可保存確認的申請者、對於從不一致導出中工作的審核員以及對於需要能夠交給審計員的合規團隊。

在提交瞬間生成一個PDF閉合了這個空隙,這是一個位於處理程式中的附加步驟。 IronPDF為.NET帶來完整的PDF能力,生成、閱讀、編輯和從文件中提取,皆位於同一程式庫中。 如果您希望以自己的表單工作流程進行測試,開始您的免費30天試用,在承諾任何事之前先驗證輸出。

常見問題

什麼是IronPDF,它如何幫助處理線上表單資料?

IronPDF是一種軟體工具,可以將線上申請表單轉換為PDF摘要,提供表單提交的可追溯記錄,這對於合規和存檔目的特別有用。

為什麼將線上表單資料轉換為PDF很重要?

將線上表單資料轉換為PDF確保資訊以穩定且普遍可存取的格式保存,有助於法律合規、記錄管理和輕鬆共享。

IronPDF如何幫助遵守政府規定?

IronPDF透過將網頁表單提交轉換為安全且可追溯的PDF文件來幫助滿足政府合規要求,這些文件可以作為正式記錄存檔。

IronPDF能處理動態網頁表單嗎?

是的,IronPDF能夠處理動態網頁表單,捕捉所有使用者輸入並生成反映提交資料的精確PDF摘要。

是否可以使用IronPDF自訂PDF輸出?

IronPDF提供廣泛的PDF輸出自訂選項,包括佈局、樣式以及標題或頁腳的加入,允許量身定制的文件演示。

使用PDF摘要的網頁表單有什麼好處?

網頁表單的PDF摘要提供了一個永久的、防篡改的提交記錄,在審核、合規檢查和確保資料完整性方面至關重要。

IronPDF如何整合到現有的網頁應用程式中?

IronPDF可以無縫整合到現有的網頁應用程式中,實現表單資料到PDF的自動轉換,對當前工作流程影響最小。

IronPDF是否包含任何處理表單資料的安全功能?

IronPDF包括加密和密碼保護等安全功能,以保護包含在PDF文件中的敏感資訊。

IronPDF建立的PDF摘要中可以包括哪些型別的資料?

IronPDF可以在PDF摘要中包含各種資料型別,例如文字輸入、複選框、單選按鈕和其他表單元素,確保提交的全面文件化。

IronPDF是否支持多個表單提交的批量處理?

是的,IronPDF支持批量處理,允許使用者高效地將多個表單提交轉換為PDF摘要,這對於高容量資料處理非常理想。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

除了開發,Curtis對物聯網(IoT)有濃厚的興趣,探索創新的方法來整合硬體和軟體。在空閒時間,他喜歡玩遊戲和建立Discord機器人,結合他對技術的熱愛與創造力。

Iron 支援團隊

我們線上24小時,每週5天。
聊天
電子郵件
給我打電話