使用IRONPDF 如何在C#開發人員中使用ChatGPT與IronPDF Curtis Chau 更新:2025年6月22日 下載 IronPDF NuGet 下載 DLL 下載 Windows Installer 開始免費試用 LLM副本 LLM副本 將頁面複製為 Markdown 格式,用於 LLMs 在 ChatGPT 中打開 請向 ChatGPT 諮詢此頁面 在雙子座打開 請向 Gemini 詢問此頁面 在 Grok 中打開 向 Grok 詢問此頁面 打開困惑 向 Perplexity 詢問有關此頁面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 複製連結 電子郵件文章 1.0 什麼是 ChatGPT? ChatGPT是由OpenAI開發的人工智慧(AI)聊天機器人。 "ChatGPT"一詞由"Chat"(指系統的聊天機器人功能)和"GPT"(代表生成式預訓練轉換器,是一種大型語言模型)組合而成。 OpenAI 的基本 GPT 模型,即 GPT-3.5 和 GPT-4,是 ChatGPT 的基礎,ChatGPT 經過改進(一種遷移學習方法),利用監督學習和強化學習技術的組合,用於對話應用,其中包括機器學習、自然語言處理和人工智慧。 ChatGPT能夠理解並產生類似人類的文本。 本文將示範如何開發一個 MAUI 應用程序,該應用程式利用 OpenAI ChatGPT API 接收訊息,根據使用者查詢提供結果,然後使用IronPDF將這些結果匯出為 PDF 文件以供後續使用。 1.1 設定 OpenAI 帳戶 若要註冊 OpenAI 帳戶,請執行以下操作: 造訪 OpenAI 官方網站。 在網站首頁上,找到並點選"註冊"按鈕。 這將帶您進入帳戶建立表單。 請填寫報名表中的所有必填欄位。 點擊發送到您註冊郵箱的驗證鏈接,以確認您的郵箱地址。 如果您的註冊成功,您應該能夠透過輸入註冊時提供的登入資訊來存取您的 OpenAI 帳戶。 1.2 取得 OpenAI API 金鑰 若要存取 OpenAI,請造訪其網站並使用您的帳戶資訊登入。 造訪 OpenAI 網站 導覽至 OpenAI 平台的 API 區域。 然後依序點擊"帳戶設定">"查看 API 金鑰",即可找到此資訊。 現在您可以建立一個新的金鑰 API。 建立 API 金鑰 2.0 .NET MAUI應用程式入門 要建立用 C# 編寫的.NET MAUI應用程序,您需要安裝 Visual Studio 2022 和.NET 7 Framework。 然後,請按照以下步驟建立並編寫.NET MAUI應用程式。 2.1 開啟 Visual Studio 開啟 Visual Studio,然後從選單中選擇"建立新專案",並在搜尋欄位中輸入".NET MAUI"。 2.2 選擇.NET MAUI應用程式 在 Visual Studio 中,從搜尋結果清單中選擇.NET MAUI應用程式範本。 選定項目後,給它一個好名字,然後選擇項目地點。 配置完成後,點選"下一步"。 在 Visual Studio 中建立一個新的.NET MAUI應用程式 2.3 選擇框架 選擇必要的框架; 然而,例如,建議選擇最新的.NET Framework。 在 Visual Studio 中選擇框架版本後,按下"建立"按鈕。 配置新項目 在 Visual Studio 2022 中,將會建立一個新的.NET MAUI專案。 預設情況下, .NET MAUI會開發一個簡單的計數器應用程式。 .NET Framework選擇 透過修改.NET MAUI應用程序,可以將 ChatGPT OpenAI 整合到此平台版本中,並使用IronPDF C# PDF 庫將結果匯出為 PDF 文件。 2.4 安裝 OpenAI 軟體包 在NuGet套件管理器控制台中輸入以下命令。 Install-Package OpenAI 此命令將安裝 OpenAI 軟體包,該軟體包提供使用 C# 與 ChatGPT 互動所需的 API 存取權限。 2.5 安裝IronPDF 輸入以下指令安裝IronPDF軟體包: Install-Package IronPdf 上述指令將IronPDF安裝到 MAUI 專案中。 IronPDF用於將 HTML 內容渲染成 PDF 文件,是應用程式資料匯出到 PDF 文件的關鍵部分。 3.0 IronPDF是什麼? 借助IronPDF(一個強大的 PDF SDK 基礎,用於 PDF 處理),開發人員可以快速建立、讀取和編輯 PDF 文件。 IronPDF庫使用 Chrome 引擎將 HTML 轉換為 PDF。 此程式庫支援的幾種 Web 元件包括 MAUI、Xamarin、 Blazor、Unity、HoloLens 應用程式、Windows Forms、HTML、ASPX、 Razor HTML、 .NET Core、 ASP.NET和 WPF。 Microsoft .NET和.NET Core程式設計既可用於傳統的 Windows 應用程序,也可用於ASP.NET Web 應用程式。 IronPDF使用 HTML5、 JavaScript 、CSS 和圖像,使您能夠創建具有標題和頁腳的精美 PDF。 API 庫包含一個強大的 HTML 到 PDF 轉換器,可以處理 PDF 文件,以及一個獨立於任何外部來源的 PDF 轉換工具和引擎。 使用者可以使用IronPDF從各種來源產生 PDF ,包括影像檔案、HTML、HTML5、ASPX 和Razor/MVC 視圖。 該庫提供文字搜尋、從 PDF 頁面提取文字和圖像以及將PDF 頁面轉換為圖像的程式。 它還提供了一個互動式表格填寫和提交程序。 本程式庫還提供連結作為 PDF 出版品的基礎,以及使用使用者代理程式、代理伺服器、cookie、HTTP 標頭和表單變數來對 HTML 登入表單進行驗證。 IronPDF接受使用者名稱和密碼,以換取對受密碼保護的 PDF 檔案的存取權限。 要了解有關IronPDF的更多信息,請參閱HTML 轉 PDF 轉換教學頁面。 4.0 使用IronPDF匯出 ChatGPT API 結果 在"MauiProgram.cs"檔案中加入以下程式碼: builder.Services.AddChatGpt(options => { options.UseOpenAI("API key here"); // Replace with your actual OpenAI API key options.DefaultModel = OpenAIChatGptModels.Gpt35Turbo; // Set the default model options.MessageLimit = 10; // Limit number of messages per session options.MessageExpiration = TimeSpan.FromMinutes(5); // Set message expiration time }); builder.Services.AddChatGpt(options => { options.UseOpenAI("API key here"); // Replace with your actual OpenAI API key options.DefaultModel = OpenAIChatGptModels.Gpt35Turbo; // Set the default model options.MessageLimit = 10; // Limit number of messages per session options.MessageExpiration = TimeSpan.FromMinutes(5); // Set message expiration time }); $vbLabelText $csharpLabel 這段程式碼片段註冊了一個 ChatGPT API 服務,然後應用程式中的其他類別或頁面就可以使用該服務。 在應用程式主頁的頁面載入方法中新增以下程式碼。 這有助於取得 ChatGPT 服務實例並將其儲存到本機物件中。 _chatGptClient = Handler.MauiContext.Services.GetService<IChatGptClient>(); _chatGptClient = Handler.MauiContext.Services.GetService<IChatGptClient>(); $vbLabelText $csharpLabel 此程式碼從服務提供者檢索 ChatGPT 用戶端實例,允許主頁與 ChatGPT API 進行互動。 接下來,建立一個類似於以下 XAML 程式碼中所示的使用者介面: <?xml version="1.0" encoding="utf-8" ?> <ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="ChatGPT_MauiApp.MainPage" BackgroundColor="black"> <StackLayout> <StackLayout Orientation="Horizontal" Spacing="25" Padding="30,0"> <ScrollView WidthRequest="700" HeightRequest="200" x:Name="scrollView"> <TableView Intent="Data" WidthRequest="700" x:Name="Table_View" BackgroundColor="DarkSlateGrey"> <TableRoot> </TableRoot> </TableView> </ScrollView> </StackLayout> <StackLayout Padding="30,0"> <Editor x:Name="Userquest" Text="" HorizontalOptions="Start" FontSize="12" Placeholder=" Enter your Queries" HeightRequest="25" WidthRequest="700" /> </StackLayout> <StackLayout Padding="30,10,10,0"> <FlexLayout> <Button x:Name="Sendquery" Text="Send Query" SemanticProperties.Hint="Click to send query to BOT" Clicked="SendqueryClicked" HorizontalOptions="Center" BackgroundColor="Green" TextColor="WhiteSmoke" /> <Button x:Name="Export" Text="Export" SemanticProperties.Hint="Click to export data" Clicked="OnExportClicked" HorizontalOptions="Center" BackgroundColor="DodgerBlue" TextColor="WhiteSmoke" /> </FlexLayout> </StackLayout> </StackLayout> </ContentPage> <?xml version="1.0" encoding="utf-8" ?> <ContentPage xmlns="http://schemas.microsoft.com/dotnet/2021/maui" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" x:Class="ChatGPT_MauiApp.MainPage" BackgroundColor="black"> <StackLayout> <StackLayout Orientation="Horizontal" Spacing="25" Padding="30,0"> <ScrollView WidthRequest="700" HeightRequest="200" x:Name="scrollView"> <TableView Intent="Data" WidthRequest="700" x:Name="Table_View" BackgroundColor="DarkSlateGrey"> <TableRoot> </TableRoot> </TableView> </ScrollView> </StackLayout> <StackLayout Padding="30,0"> <Editor x:Name="Userquest" Text="" HorizontalOptions="Start" FontSize="12" Placeholder=" Enter your Queries" HeightRequest="25" WidthRequest="700" /> </StackLayout> <StackLayout Padding="30,10,10,0"> <FlexLayout> <Button x:Name="Sendquery" Text="Send Query" SemanticProperties.Hint="Click to send query to BOT" Clicked="SendqueryClicked" HorizontalOptions="Center" BackgroundColor="Green" TextColor="WhiteSmoke" /> <Button x:Name="Export" Text="Export" SemanticProperties.Hint="Click to export data" Clicked="OnExportClicked" HorizontalOptions="Center" BackgroundColor="DodgerBlue" TextColor="WhiteSmoke" /> </FlexLayout> </StackLayout> </StackLayout> </ContentPage> XML 上面的 ContentPage 定義了應用程式的 UI 佈局。 使用者可以輸入查詢,透過"發送查詢"按鈕與 ChatGPT API 進行交互,並使用"匯出"按鈕將結果匯出為 PDF。 結果顯示在 TableView。 接下來是處理按鈕點擊事件和匯出資料的程式碼邏輯: private void OnExportClicked(object sender, EventArgs e) { StringBuilder db = new(); foreach (var tableSection in Table_View.Root.ToList()) { foreach (var cell in tableSection) { if (cell is TextCell textCell) { db.Append("<p style='color:red;text-align:left;'>" + textCell.Text + "</p>"); db.Append("<p style='color:black;text-align:justify;'>" + textCell.Detail + "</p>"); } } } // Create and save the PDF var renderer = new IronPdf.ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf(db.ToString()); pdf.SaveAs("F:\\Download\\Demo.pdf"); } private async void SendqueryClicked(object sender, EventArgs e) { if (!string.IsNullOrEmpty(Userquest.Text)) { var query = Userquest.Text; Userquest.Text = ""; var tableSection = AddQueryToTable(query); ChatGptResponse response = await _chatGptClient.AskAsync(_sessionGuid, query); var resp = response.GetMessage(); AddResponseToTable(tableSection, resp); } } private TableSection AddQueryToTable(string query) { var textCell = new TextCell { Text = query, TextColor = Colors.Red, DetailColor = Colors.WhiteSmoke, Detail = "" }; var tableSection = new TableSection { textCell }; Table_View.Root.Add(tableSection); return tableSection; } private void AddResponseToTable(TableSection section, string response) { if (section.FirstOrDefault() is TextCell textCell) { textCell.Detail = response; } } private void OnExportClicked(object sender, EventArgs e) { StringBuilder db = new(); foreach (var tableSection in Table_View.Root.ToList()) { foreach (var cell in tableSection) { if (cell is TextCell textCell) { db.Append("<p style='color:red;text-align:left;'>" + textCell.Text + "</p>"); db.Append("<p style='color:black;text-align:justify;'>" + textCell.Detail + "</p>"); } } } // Create and save the PDF var renderer = new IronPdf.ChromePdfRenderer(); var pdf = renderer.RenderHtmlAsPdf(db.ToString()); pdf.SaveAs("F:\\Download\\Demo.pdf"); } private async void SendqueryClicked(object sender, EventArgs e) { if (!string.IsNullOrEmpty(Userquest.Text)) { var query = Userquest.Text; Userquest.Text = ""; var tableSection = AddQueryToTable(query); ChatGptResponse response = await _chatGptClient.AskAsync(_sessionGuid, query); var resp = response.GetMessage(); AddResponseToTable(tableSection, resp); } } private TableSection AddQueryToTable(string query) { var textCell = new TextCell { Text = query, TextColor = Colors.Red, DetailColor = Colors.WhiteSmoke, Detail = "" }; var tableSection = new TableSection { textCell }; Table_View.Root.Add(tableSection); return tableSection; } private void AddResponseToTable(TableSection section, string response) { if (section.FirstOrDefault() is TextCell textCell) { textCell.Detail = response; } } $vbLabelText $csharpLabel 解釋: OnExportClicked 方法使用IronPDF從 UI 收集的 HTML 內容建立 PDF。 產生的PDF檔案將儲存到指定位置。 SendqueryClicked 方法接收使用者的查詢,使用 _chatGptClient 將其傳送至 OpenAI API,並顯示回應。 它還將查詢和回應添加到 TableView。 輔助方法 AddQueryToTable 和 AddResponseToTable 有助於使用使用者查詢和聊天機器人回應更新 UI 元件。 添加上述程式碼後,請嘗試運行您的解決方案。 輸入查詢語句,然後點選"傳送查詢"按鈕以取得結果。 它會將使用者的查詢傳送到 ChatGPT API,檢索結果,並將訊息顯示在螢幕上。 在應用程式中新增文字查詢 點擊"匯出"按鈕,將結果匯出為PDF文件。 匯出的PDF文件 現在,我們已經能夠使用 ChatGPT 建立聊天機器人,並使用 MAUI 應用程式上的IronPDF匯出聊天記錄。利用上述方法,我們可以從 ChatGPT API 中提取圖像、音頻和視頻,從而獲得更精確的結果。 5.0 結論 本文旨在開發一個基於 MAUI 的應用程序,該應用程式利用 OpenAI ChatGPT API 接收訊息、根據使用者查詢提供結果,並將結果匯出為 PDF 檔案。為了提高建議的質量,您可以嘗試修改問題。 為了查看各種模型是否能產生更好的結果,您也可以嘗試修改"MauiProgram.cs"中 AddChatGpt 方法內的 ChatGptModels 枚舉值。 ChatGPT API 是一款功能強大的 AI 程序,它可以根據用戶查詢提供結果。 ChatGPT API 的費用是根據發送的請求數量計算的。 IronPDF用於發出 API 請求並將結果匯出為 PDF 以供將來使用,避免重複查詢相同的 API 請求。 使用IronPDF,我們只需幾行程式碼即可建立 PDF 檔案。 本應用程式適合初學者使用,只需掌握基本知識即可。 其他任何軟體包均不以任何方式依賴IronPDF 。 例如,它是一個打包在單一軟體包中的庫。 IronPDF開發人員可以根據自身需求選擇各種許可證。 此外,還提供免費試用。 有關IronPDF 的完整定價和許可信息,請參閱IronPDF許可頁面。 常見問題解答 如何將ChatGPT集成到.NET MAUI應用中? 要將ChatGPT集成到.NET MAUI應用中,首先設置OpenAI帳戶並獲得API密鑰。然後,通過NuGet在您的項目中安裝OpenAI包並在您的應用中配置API以處理用戶查詢。 如何在MAUI應用中將API結果轉換為PDF? 您可以使用IronPDF在MAUI應用中將API結果轉換為PDF。從ChatGPT API檢索響應後,使用IronPDF的方法將HTML內容渲染為PDF。 設置ChatGPT驅動的MAUI應用需要哪些步驟? 要設置ChatGPT驅動的MAUI應用,在Visual Studio中新建.NET MAUI項目,安裝OpenAI和IronPDF包,配置代碼中的API設置,並編寫邏輯以處理查詢和輸出到PDF。 IronPDF在創建PDF時能處理HTML、JavaScript和CSS內容嗎? 是的,IronPDF能處理HTML、JavaScript和CSS內容並創建PDF。它使用Chrome渲染引擎將HTML內容轉換為PDF文件。 是否可以在我的應用中自定義ChatGPT API設置? 是的,您可以在應用中通過調整MauiProgram.cs文件中的各種參數如模型類型、消息限制和到期時間來自定義ChatGPT API設置。 在MAUI應用中使用IronPDF有什麼好處? IronPDF提供了一個強大的SDK來創建、閱讀和編輯PDF。它支持將HTML內容轉換為PDF,支持文本提取,並提供多種功能來增強MAUI應用中的PDF處理。 IronPDF 有免費試用版嗎? 是的,IronPDF提供免費試用,允許開發者在承諾購買許可計劃之前探索其功能。 如何安裝MAUI中的ChatGPT PDF項目所需的包? 在Visual Studio中使用NuGet包管理器控制台安裝OpenAI和IronPDF包。執行Install-Package OpenAI和Install-Package IronPDF將其添加到您的項目中。 IronPDF在處理PDF文檔中起什麼作用? IronPDF用於創建、編輯和轉換PDF文檔。它允許開發者將網頁內容轉換為PDF,執行文本搜索並提取圖像,非常適合需要PDF功能的應用。 IronPDF 是否與 .NET 10 完全相容? 是的,IronPDF完全支持.NET 10。它支持所有主流.NET版本,包括.NET 10、9、8、7、6、Core及.NET Framework,並且可在.NET 10專案中開箱即用,無需特殊配置。 Curtis Chau 立即與工程團隊聊天 技術作家 Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。 相關文章 更新2026年3月1日 如何在.NET中使用IronPDF創建PDF檔案(C#教程) 發現用於創建C# PDF文件的有效方法,提升您的編碼技能並簡化您的項目。立即閱讀文章! 閱讀更多 更新2026年2月27日 如何在C#中合併PDF文件 使用 IronPDF 合併 PDF 文件。學習如何使用簡單的 VB.NET 程式碼將多個 PDF 文件合併成一個文檔。包含逐步範例。 閱讀更多 更新2026年3月1日 C# PDFWriter教程,適用於.NET 10開發者 通過這個面向開發人員的逐步指南,學習如何使用C# PDFWriter高效創建PDF。閱讀本文以提高您的技能! 閱讀更多 如何使用IronPDF在C#中使用Fluent Validation如何在.NET中創建PDF簽名