IRONSOFTWAREHOME
開發者更新

WebGrease .NET Core(對開發者如何理解的工作)

Jacob Mellor,首席技術官 @ Team Iron
Jacob Mellor
Updated: 2026年6月20日

WebGrease 與 IronPDF 及 .NET Core 的整合提供了一種強大的方法來生成高品質的 PDF 文件並精簡網路應用程式效能。 透過使用 JavaScript 壓縮、影像優化和 CSS 壓縮,WebGrease 是一個功能豐富的軟體包,可以讓開發人員的網站運行得更快更流暢。 開發者可以使用 IronPDF 這個用於生成和處理 PDF 文件的強大 .NET 工具包,從包括 HTML 和 MVC 檢視的多個來源輕鬆地建立動態 PDF。

透過這種整合,網路應用程式得以保持流暢且適應性強,能夠進行有效的資源管理和動態 PDF 生成。 WebGrease 和 IronPDF 完全相容 .NET Core,允許開發人員建立跨平台應用程式,這些應用程式能夠無縫運行於Linux、macOS 和 Windows。 這歸功於效能優化和卓越的文件處理,最終提升了使用者體驗。

什麼是 WebGrease?

最初作為 ASP.NET 堆疊的一部分而建立的 WebGrease 是一種工具,用於自動化處理如 JavaScript 優化、壓縮、圖片優化和 CSS 壓縮等靜態文件的流程,以提高網路效能。 這些優化有助於減少網路資源的大小,從而提高網路應用程式的效能並加速載入時間。

WebGrease .NET Core (對開發者的運作方式): 圖1

在 .NET Core 的背景下,當我們討論 WebGrease 時,我們指的是將這些優化方法應用於 .NET Core 應用程式。 Microsoft 建立了這個跨平台的開源 .NET Core 框架,讓開發者可以建立先進、可擴展且高效的程式。開發者可以透過整合 WebGrease,將傳統 ASP.NET 應用程式中的效能優化技術應用於他們的 .NET Core 專案。 通過這種方式,開發者可以確保其網路應用程式在各種平台上如 Windows、Linux 和 macOS 上保持高效和性能。

WebGrease 的功能

在 .NET Core 框架中,WebGrease 提供了多種功能,專注於提升網路應用程式的效率和速度。 顯著的特徵如下:

CSS 壓縮:

  • 刪除 CSS 文件中不必要的格式、註釋和空白。
  • 透過將多個 CSS 文件合併為單一文件來減少 HTTP 請求。
  • 改善性能並加快 CSS 的載入時間。

JavaScript 壓縮:

  • 通過刪除不必要的字元來最小化 JavaScript 文件。
  • 將多個 JavaScript 文件合併為一個。
  • 減小 JavaScript 文件大小,以加快下載和執行時間。

影像優化:

  • 在不顯著降低質量的情況下壓縮影像。
  • 在合適的情況下,將影像轉換為更有效的格式。
  • 優化影像資源以提高載入速度。

HTML 壓縮:

  • 刪除 HTML 文件中的空白和註釋。
  • 簡化 HTML 文件以便於瀏覽器更快速解析和渲染。

資源捆綁:

  • 將多個 JavaScript 和 CSS 文件合併為一個單獨的文件。
  • 減少載入頁面所需的 HTTP 請求數量,從而提升載入時間。

配置靈活性:

  • 提供配置優化過程的選項。
  • 允許開發人員選擇要優化或排除的目錄和文件。

跨平台相容性:

  • 完全相容 .NET Core,允許在 Windows、Linux 和 macOS 上使用。
  • 確保在各種環境中性能提升運行良好。

與構建過程的整合:

  • 可以整合到構建過程中,從而在部署和開發期間自動優化資源。
  • 支援自動流程,以確保在開發階段的一致性優化。

提升的性能:

  • 最大程度減少需載入的資源,從而提升整體網路應用程式效能。
  • 提升使用者體驗並加速頁面載入。

建立和配置 WebGrease

要在 .NET Core 應用程式中使用 WebGrease,請安裝必要的套件,配置構建過程,並設置優化任務。 以下步驟將幫助您在 .NET Core 應用程式中建立和設置 WebGrease:

建立 .NET Core 專案

首先,建立一個新的 .NET Core 網頁應用程式。 您可以使用 .NET CLI 來達成這個目的。

dotnet new web -n WebGreaseApp
cd WebGreaseApp
SHELL

新增必要的套件

儘管 WebGrease 沒有直接針對 .NET Core 的套件,您可以使用其他如 BundlerMinifier 的程式來實現類似的功能。 將此套件新增到您的專案。

dotnet add package BundlerMinifier.Core
SHELL

配置捆綁和壓縮

在專案根目錄中建立一個 bundleconfig.json 文件以提供 CSS 和 JavaScript 文件的捆綁和壓縮設置。 這是一個配置範例。

[
  {
    "outputFileName": "wwwroot/css/site.min.css",
    "inputFiles": [
      "wwwroot/css/site.css"
    ],
    "minify": {
      "enabled": true,
      "renameLocals": true
    }
  },
  {
    "outputFileName": "wwwroot/js/site.min.js",
    "inputFiles": [
      "wwwroot/js/site.js"
    ],
    "minify": {
      "enabled": true
    }
  }
]
JSON

與構建過程整合

在專案文件 (.csproj) 中新增指令,以在構建過程中執行捆綁和壓縮操作。

在 .csproj 文件中的 <Project> 元素內新增以下元素:

<Target Name="PrepublishScript" BeforeTargets="PrepareForPublish">
  <Exec Command="dotnet bundle" />
</Target>
XML

安裝和運行 BundlerMinifier

要使用 BundlerMinifier 工具,您必須安裝 .NET 實用工具。 執行以下命令:

dotnet tool install -g BundlerMinifier.Core
SHELL

要捆綁和最小化您的文件,請執行:

dotnet bundle
SHELL

優化影像

您可以使用 ImageSharp 或其他符合 .NET Core 的影像優化工具進行影像優化。

安裝 ImageSharp

安裝 SixLabors.ImageSharp 套件:

dotnet add package SixLabors.ImageSharp
SHELL

這是一個用於影像優化的程式碼片段例子:

using SixLabors.ImageSharp;
using SixLabors.ImageSharp.Processing;
using System.IO;

public void OptimizeImage(string inputPath, string outputPath)
{
    // Load the image
    using (var image = Image.Load(inputPath))
    {
        // Resize and optimize the image
        image.Mutate(x => x.Resize(new ResizeOptions
        {
            Mode = ResizeMode.Max,
            Size = new Size(800, 600)
        }));
        // Save the image in an optimized format
        image.Save(outputPath); // Automatic encoder selected based on file extension.
    }
}

運行您的應用程式以確保捆綁和壓縮按預期運行。 在瀏覽器中打開您的應用程式,然後驗證 JavaScript 和 CSS 文件是否已壓縮。

通過遵循這些步驟,您可以使用與現有 .NET 環境相容的工具,在 .NET Core 應用程式中設置和配置類似 WebGrease 的優化。

開始使用IronPDF

在 .NET Core 應用程式中,設定網頁資源的效能優化和使用 IronPDF 來生成和操作 PDF 是整合 WebGrease 類似優化與 IronPDF 的必要步驟。 以下是分步開始的方法:

什麼是IronPDF?

功能豐富的 .NET 程式庫IronPDF允許 C# 程式生成、閱讀和編輯 PDF 文件。 透過這個程式,開發人員可以輕鬆將 HTML、CSS 和 JavaScript 資料轉換為高品質、可列印的 PDF。 最重要的任務之一包括新增頁眉和頁腳、拆分和合併 PDF、為文件新增水印、將 HTML 轉換為 PDF。

IronPDF因為支援.NET Framework和.NET Core,對多種應用來說是有用的。 由於 PDF 易於使用且包含豐富的內容,開發者可以輕鬆地將它們整合到產品中。 因為 IronPDF 可以處理複雜的数据佈局和格式化,它生成的 PDF 輸出與客戶端最初提供的 HTML 文字非常接近。

WebGrease .NET Core (對開發者的運作方式): 圖2

IronPDF 的功能

從HTML生成PDF

  • 將 JavaScript、HTML 和 CSS 轉換為 PDF。
  • 支援媒體查詢和響應式設計,符合現代網頁標準。
  • 有助於使用 HTML 和 CSS 動態裝飾 PDF 文件、報告和發票。

PDF編輯

  • 允許向現有的 PDF 中新增文字、影像和其他內容。
  • 從 PDF 文件中提取文字和影像。
  • 將多個 PDF 合併為一個。
  • 將 PDF 文件拆分為單獨的文件。
  • 包含水印、註釋、頁眉和頁腳。

PDF轉換

  • 將多種文件格式如 Word、Excel 和影像文件轉換為 PDF。
  • 允許 PDF 轉換為影像(PNG、JPEG 等)。

性能和可靠性

  • 高效能和可靠性,適合工業應用。
  • 輕鬆處理大型文件集。

安裝 IronPDF

要獲得需要的工具以在.NET專案中與PDF一起使用,請安裝IronPDF包。

> dotnet add package IronPdf

配置捆綁和壓縮

確保 bundleconfig.json 配置文件已就位,以便根據需要再次提供捆綁和壓縮設置:

[
  {
    "outputFileName": "wwwroot/css/site.min.css",
    "inputFiles": [
      "wwwroot/css/site.css"
    ],
    "minify": {
      "enabled": true,
      "renameLocals": true
    }
  },
  {
    "outputFileName": "wwwroot/js/site.min.js",
    "inputFiles": [
      "wwwroot/js/site.js"
    ],
    "minify": {
      "enabled": true
    }
  }
]
JSON

連接到構建過程

確保您的 .csproj 文件包含在構建過程中執行壓縮和捆綁操作的說明。 在 <Project> 元素中新增以下 Target:

<Target Name="PrepublishScript" BeforeTargets="PrepareForPublish">
  <Exec Command="dotnet bundle" />
</Target>
XML

整合 IronPDF

using IronPDF 建立一個控制器來生成 PDF。 建立一個新的 PdfController 控制器。

using Microsoft.AspNetCore.Mvc;
using IronPdf;

namespace WebGreaseIronPdfApp.Controllers
{
    public class PdfController : Controller
    {
        public IActionResult GeneratePdf()
        {
            // Create a PDF from a simple HTML string
            var renderer = new ChromePdfRenderer();
            var pdf = renderer.RenderHtmlAsPdf("<h1>Hello, IronPDF!</h1><p>This is a generated PDF document.</p>");
            
            // Save the PDF to a byte array
            var pdfBytes = pdf.BinaryData;
            
            // Return the PDF file as a download
            return File(pdfBytes, "application/pdf", "example.pdf");
        }
    }
}

在 PdfController 程式碼中,我們首先導入所需的命名空間,這些命名空間是 Microsoft.AspNetCore.Mvc,用於 ASP.NET Core MVC 功能和 IronPDF 用於 PDF 生成。 由於 PdfController 類源於 Controller,它是 MVC 控制器。 在該類中的 GeneratePdf 方法被定義為管理 PDF 的建立。

WebGrease .NET Core (對開發者的運作方式): 圖3

為了將 HTML 資料轉換為 PDF,此功能建立了 IronPDF 的 ChromePdfRenderer 的實例。 基本的 HTML 字串可以使用 RenderHtmlAsPdf 函式轉換為 PDF 文件。 然後使用 BinaryData 屬性將此 PDF 保存為位元組陣列。 最後,使用 File 方法返回 PDF 文件作為可下載的響應,並附上要求的文件名 (example.pdf) 和正確的 MIME 型別 (application/pdf)。 感謝這種整合,該程式現在可以根據 HTML 內容動態建立和提供 PDF 文件。

生成 PDF 的路由

確保您的 Startup.cs 文件中包含 PDF 生成路由。

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
    if (env.IsDevelopment())
    {
        app.UseDeveloperExceptionPage();
    }
    else
    {
        app.UseExceptionHandler("/Home/Error");
        app.UseHsts();
    }
    app.UseHttpsRedirection();
    app.UseStaticFiles();
    app.UseRouting();
    app.UseAuthorization();
    app.UseEndpoints(endpoints =>
    {
        endpoints.MapControllerRoute(
            name: "default",
            pattern: "{controller=Home}/{action=Index}/{id?}");
        endpoints.MapControllerRoute(
            name: "pdf",
            pattern: "pdf",
            defaults: new { controller = "Pdf", action = "GeneratePdf" });
    });
}

運行和驗證

運行您的應用程式,以確保您可以建立 PDF,並且捆綁和壓縮運作正常。

dotnet run
SHELL

打開瀏覽器並導航至您的應用程式。 您應該能夠導航到 /pdf 並下載 PDF 文件。

結論

IronPDF 和 WebGrease 類似的優化相結合,為提升線上性能並生成高品質 PDF 文件提供了一個強大的組合,在 .NET Core 應用程式中。 開發者可以使用如 IronPDF 之類的工具來建立 PDF 及 BundlerMinifier 來優化資源,以確保它們的應用程式既高效又靈活。 除了圖片壓縮,資源優化策略如 CSS 和 JavaScript 壓縮也有助於加快頁面載入並增強使用者體驗。 同時,IronPDF 具有從 HTML 文字動態建立 PDF 的強大功能,簡化了製作預備完善的文件如發票、報告等的過程。

這種整合提供了一個完整的解決方案,滿足 .NET Core 框架內的現代網頁開發需求,不僅提升線上應用程式性能,還新增了處理 PDF 的實用功能。

憑藉 IronPDF 和 Iron Software,您可以利用 OCR、條碼掃描、PDF 建立、Excel 連接等功能,增強您的 .NET 開發工具包,還有更多內容。 IronPDF 以具有競爭力的價格起售,為開發人員提供更多的網頁應用程式和功能存取,並透過將其核心概念與高度靈活的 Iron Software 工具箱結合,提升開發效率。

項目清晰定義的授權選項,使開發者易於選擇最佳模型,幫助快速、有條理且有效地執行廣泛問題的解決方案。

Jacob Mellor,首席技術官 @ Team Iron
首席技術官

Jacob Mellor是Iron Software的首席技術官,一位在C# PDF技術上開創先河的遠見工程師。作為Iron Software核心程式碼庫的原開發者,他從創立以來就一直在塑造公司的產品架構,與首席執行官Cameron Rimington一起將公司轉變為服務於NASA、特斯拉和全球政府公司的50多名人員的公司。

...
閱讀更多

相關文章

Key in blue circle

立即免費取得 30 天試用金鑰。

Your trial license will be sent to your email address

無任何限制。100% 解鎖。無需信用卡。

OR
bullet_checked無需信用卡或建立帳號無任何限制。100% 解鎖。無需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
預訂您的免費現場演示
Booking Badge

受到全球數百萬工程師的信任

Iron Software的客戶標誌
獲取您的無義務諮詢
填寫以下表格或電子郵件sales@ironsoftware.com
您的詳細資訊將始終保密。
受到全球數百萬工程師的信任
Iron Software的客戶標誌
立即獲取您的30天試用金鑰。
無需信用卡或帳戶建立
C# 用於PDF的NuGet程式庫
使用NuGet安裝

版本: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. 在解決方案資源管理器,右鍵點選參考,管理NuGet包
  2. 選擇瀏覽並搜尋"IronPdf"
  3. 選擇套件並安裝
C# PDF DLL
下載DLL

版本: 2026.9

或者點擊此處下載Windows安裝程式。

  1. 下載並解壓IronPDF到類似~/Libs的位置,位於您的解決方案目錄中
  2. 在Visual Studio解決方案資源管理器,右鍵點選參考。選擇瀏覽,"IronPdf.dll"

授權從$999起