IRONSOFTWAREHOME
开发者更新

WebGrease .NET Core(对开发人员的工作原理)

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

WebGrease与IronPDF和.NET Core的集成提供了一种强大的方法来生产高质量的PDF文档并简化Web应用程序的性能。 通过使用JavaScript压缩、图像优化和CSS压缩,WebGrease是一个功能丰富的软件包,使开发者的网站运行更快更顺畅。 开发者可以使用IronPDF轻松从多个来源(包括HTML和MVC视图)创建动态PDF,这是一个强大的.NET工具包,用于制作和操作PDF文档。

通过这种集成,Web应用程序保持流畅和灵活,支持高效的资源管理和动态PDF生成。 WebGrease和IronPDF完全兼容.NET Core,允许开发者创建无缝运行于Linux、macOS和Windows上的跨平台应用程序。 这得益于优化的性能和卓越的文档处理,从而提升了用户体验。

什么是WebGrease?

最初作为ASP.NET堆栈的组成部分创建,WebGrease是一个自动化工具,优化JavaScript、压缩、图片优化和CSS缩小等静态文件,以提高Web性能。 这些优化有助于减小Web资源的大小,从而提高Web应用程序性能并加快加载时间。

WebGrease .NET Core(开发人员指南):图1

在.NET Core的环境下,当我们讨论WebGrease时,指的是这些优化方法在.NET Core应用程序中的应用。 微软创建了跨平台、开源的.NET Core框架,允许开发者创建先进、可拓展和高性能的应用。通过集成WebGrease,开发者可以将ASP.NET传统应用中的性能优化技术应用于.NET Core项目。 这样,开发者可以确保他们的Web应用在各种平台上运行高效且性能良好,比如Windows、Linux和macOS。

WebGrease的功能

在.NET Core框架内,WebGrease提供了多种功能,旨在提升Web应用程序的效率和速度。 显著的特点如下:

CSS压缩:

  • 从CSS文件中移除多余的格式、注释和空白。
  • 通过将大量的CSS文件合并成一个文件来减少HTTP请求。
  • 提升性能并加快CSS加载时间。

JavaScript压缩:

  • 通过移除多余字符来最小化JavaScript文件。
  • 将多个JavaScript文件合并为一个。
  • 减小JavaScript文件大小以加快下载和执行时间。

图像优化:

  • 在不显著损失质量的情况下压缩图片。
  • 在合适情况下,将图片转换为更高效的格式。
  • 优化图像资源以增加加载速度。

HTML压缩:

  • 从HTML文件中移除空白和注释。
  • 简化HTML文件以加快浏览器解析和渲染速度。

资源绑定:

  • 将多个JavaScript和CSS文件合并成一个文件。
  • 减少加载页面所需的HTTP请求数量,从而改善加载时间。

配置灵活性:

  • 提供配置优化过程的选项。
  • 允许开发者选择优化或排除哪个目录和文件。

跨平台兼容性:

  • 完全兼容.NET Core,允许在Windows、Linux和macOS上使用。
  • 确保性能改进在不同环境下的良好效果。

与构建过程的集成:

  • 可以集成到构建程序中,以在部署和开发期间自动优化资源。
  • 支持自动化过程,以确保开发阶段的一致优化。

性能提升:

  • 最小化必须加载的资源,从而提高整体Web应用程序性能。
  • 增强用户体验并加速页面加载。

创建和配置WebGrease

要在.NET Core应用程序中使用WebGrease,需安装必要的软件包,配置构建过程,并设置优化任务。 以下步骤将帮助您在.NET Core应用程序中建立和设置WebGrease:

创建.NET Core项目

首先,创建一个新的.NET Core Web应用程序。 您可以使用.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

为您的Web资源设置性能优化,并在.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。
  • 支持媒体查询和响应式设计,符合现代Web标准。
  • 适用于使用HTML和CSS动态装饰PDF文档、报告和发票。

PDF编辑

  • 允许在现有PDF中添加文本、图片和其他内容。
  • 从PDF文件中提取文本和图片。
  • 将多个PDF合并为一个。
  • 将PDF文件分割成单独的文档。
  • 包含水印、注释、页眉和页脚。

PDF转换

  • 将多种文件格式转换为PDF,包括Word、Excel和图片文件。
  • 允许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

使用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代码中我们首先做的是导入所需的命名空间,即为ASP.NET Core MVC功能的Microsoft.AspNetCore.Mvc和用于生成PDF的IronPDF。 因为PdfController类是从Controller派生的,所以它是一个MVC控制器。 这个类中的GeneratePdf方法被定义用于管理PDF的创建。

WebGrease .NET Core(开发人员指南):图3

为了将HTML材料转换为PDF,此函数创建了IronPDF的ChromePdfRenderer的实例。 可以使用RenderHtmlAsPdf功能将基本的HTML字符串转换为PDF文档。 然后使用BinaryData属性将此PDF保存到字节数组中。 最后,使用application/pdf)。 得益于该集成,程序现在可以基于HTML内容动态创建和提供PDF文档。

生成PDF的路由

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

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的优化,提供了一个强大的组合来改善在线性能并在.NET Core应用程序中生成高质量的PDF文档。 开发者可以通过使用IronPDF这样的工具来创建PDF,以及使用BundlerMinifier来优化资源,确保他们的应用高效且具备灵活性。 除了图片压缩,资源优化策略(如CSS和JavaScript缩小)也有助于加速页面加载和提升用户体验。 同时,IronPDF具备从HTML文本动态创建PDF的强大功能,简化了创建具备良好准备文档(如发票、报告等)的过程。

该集成在.NET Core框架内为现代Web开发需求提供了完整的解决方案,不仅提升了在线应用程序性能,还添加了处理PDF的实用功能。

借助IronPDF和Iron Software,您可以利用OCR、条形码扫描、PDF创建、Excel连接等优势来增强您的.NET开发工具箱。 IronPDF以具有竞争力的价格起步,通过结合其核心概念与非常灵活的Iron Software工具箱,向开发者提供更多的Web应用和功能访问,同时提升开发效率。

项目的定义明确的许可证选项使开发者能够轻松选择最佳的模型,帮助迅速、有序和高效地执行解决方案,以解决多种问题。

Jacob Mellor,Team Iron 的首席技术官
首席技术官

Jacob Mellor 是 Iron Software 的首席技术官,也是一位开创 C# PDF 技术的有远见的工程师。作为 Iron Software 核心代码库的原始开发者,他从公司成立之初就开始塑造公司的产品架构,与首席执行官 Cameron Rimington 一起将公司转变为一家拥有 50 多名员工的公司,为 NASA、特斯拉和全球政府机构提供服务。

相关文章

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 起