2

我正在研究 ASP.NET MVC。我在使用 Rotativa 通过 ViewAsPdf 函数渲染 Pdf 页面时遇到问题。它在 Visual Studio 调试中工作正常,但是当发布到 localhost 时,IIS 字体大小发生了变化,它在 IIS 上更大。我比较了没有 ViewAsPdf 功能的 HTML 页面,没有问题,字体大小没有改变,当我使用 Rotativa 时它改变了。

这是控制器代码:

return new ViewAsPdf(TempData["gridData"])
        {
            PageSize = Rotativa.Options.Size.A4,
            PageOrientation = Rotativa.Options.Orientation.Landscape,
            CustomSwitches = string.Format("--footer-left \"Note:.....\" "
                                + "--footer-font-size \"8\" "
                                + "--footer-right \"Page [page] of [toPage]\" ")
        };

这是我用于呈现 pdf 页面的视图代码:

@model IEnumerable<PM_Calibration.ViewModels.CalibrationDataList>

@{
    ViewBag.Title = "Monthly List of Calibration Task";
    Layout = null;
}
<head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>@ViewBag.Title</title>

    @Styles.Render("~/Content/css")
    @Scripts.Render("~/bundles/modernizr")
    @Scripts.Render("~/bundles/jquery")
    @Scripts.Render("~/bundles/bootstrap")

    <link href="~/Content/Site.css" rel="stylesheet" type="text/css" />
    <link href="~/Content/PrintStyle.css" rel="stylesheet" type="text/css" />
    <link href="~/Content/themes/base/jquery.ui.all.css" rel="stylesheet" type="text/css" />
</head>
<body>
@{
    IList<PM_Calibration.ViewModels.CalibrationDataList> ModelList = Model.ToList();
    List<PM_Calibration.ViewModels.CalibrationDataList> TableList = new List<PM_Calibration.ViewModels.CalibrationDataList>();
    var i=1;
    for (int x = 0; x < ModelList.Count; x++ )
    {
        var item = ModelList[x];
        TableList.Add(ModelList[x]);
        if(i==24)
        {
            @Html.Partial("PartialMonthlyCalibration_Table", TableList)
            i = 0;
            TableList.Clear();
        }
        i++;
    }
}
</body>

我不确定这些代码是否足以解决这个问题。

我的问题是为什么在 localhost IIS 上更改了我的字体大小?

4

0 回答 0