C#MVC Rotativa ViewAsPdf系统。异常:QFont::setPixelSize:像素大小<;=0 (0)

C#MVC Rotativa ViewAsPdf系统。异常:QFont::setPixelSize:像素大小<;=0 (0),c#,pdf,model-view-controller,rotativa,C#,Pdf,Model View Controller,Rotativa,我目前正在尝试使用Rotativa(安装了NuGet包C#MVC)为视图实现一个PDF生成器。但是,当我触发PDF生成时,会收到以下错误消息: System.Exception: QFont::setPixelSize: Pixel size <= 0 (0) QFont::setPixelSize: Pixel size <= 0 (0) QFont::setPixelSize: Pixel size <= 0 (0) QFont::setPixelSize: Pixel s

我目前正在尝试使用Rotativa(安装了NuGet包C#MVC)为视图实现一个PDF生成器。但是,当我触发PDF生成时,会收到以下错误消息:

System.Exception: QFont::setPixelSize: Pixel size <= 0 (0)
QFont::setPixelSize: Pixel size <= 0 (0)
QFont::setPixelSize: Pixel size <= 0 (0)
QFont::setPixelSize: Pixel size <= 0 (0)
QFont::setPixelSize: Pixel size <= 0 (0)
QFont::setPixelSize: Pixel size <= 0 (0)
QFont::setPixelSize: Pixel size <= 0 (0)
QFont::setPixelSize: Pixel size <= 0 (0)
QFont::setPixelSize: Pixel size <= 0 (0)
QFont::setPixelSize: Pixel size <= 0 (0)
QFont::setPixelSize: Pixel size <= 0 (0)
QFont::setPixelSize: Pixel size <= 0 (0)
QFont::setPixelSize: Pixel size <= 0 (0)
QFont::setPixelSize: Pixel size <= 0 (0)
QFont::setPixelSize: Pixel size <= 0 (0)
观点:

    model Plattform.Models.Registration

@{
    ViewBag.Title = "Teilnahmebestätigung";
}

<h2>GeneratePDF</h2>
Hiermit bestätigen wir, dass @Html.DisplayFor(Model => Model.Nutzer.Vorname) @Html.DisplayFor(Model => Model.Nutzer.Nachname) erfolgreich an folgendem Kurs erfolgreich teilgenommen hat
<p>
    Kurs : @Html.DisplayFor(Model => Model.Kurs.Titel)
</p>
<div>
    <h3> Informationen zum Teilnehmer:</h3>
    <dl class="dl-horizontal">
        <dt>
            @Html.DisplayNameFor(Model => Model.Nutzer.Vorname)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Nutzer.Vorname)
        </dd>
        <dt>
            @Html.DisplayNameFor(Model => Model.Nutzer.Nachname)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Nutzer.Nachname)
        </dd>
        <dt>
            @Html.DisplayNameFor(Model => Model.Nutzer.Heimatuni)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Nutzer.Heimatuni)
        </dd>
        <dt>
            @Html.DisplayNameFor(Model => Model.Nutzer.Email)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Nutzer.Email)
        </dd>
        <dt>
            @Html.DisplayNameFor(Model => Model.Registrationsdatum)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Registrationsdatum)
        </dd>
    </dl>
</div>
<div>
    <h3>Informationen zum Kurs</h3>
    <dl class="dl-horizontal">
        <dt>
            @Html.DisplayNameFor(Model => Model.Kurs.Titel)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Kurs.Titel)
        </dd>
        <dt>
            @Html.DisplayNameFor(Model => Model.Kurs.Termin)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Kurs.Termin)
        </dd>
        <dt>
            @Html.DisplayNameFor(Model => Model.Kurs.Ortsangabe)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Kurs.Ortsangabe)
        </dd>

        <h4> Informationen zum Organisator des Kurses</h4>
        <dt>
            @Html.DisplayNameFor(Model => Model.Kurs.Organisator.Nachname)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Kurs.Organisator.Nachname)
        </dd>
        <dt>
            @Html.DisplayNameFor(Model => Model.Kurs.Organisator.Vorname)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Kurs.Organisator.Vorname)
        </dd>
    </dl>
</div>
模型平台.Models.Registration
@{
ViewBag.Title=“Teilnahmebestätigung”;
}
GeneratePDF
Hiermit bestätigen wir,dass@Html.DisplayFor(Model=>Model.Nutzer.Vorname)@Html.DisplayFor(Model=>Model.Nutzer.Nachname)是一个很好的例子

Kurs:@Html.DisplayFor(Model=>Model.Kurs.Titel)

Informationen zum Teilnehmer: @DisplayNameFor(Model=>Model.Nutzer.Vorname) @DisplayFor(Model=>Model.Nutzer.Vorname) @DisplayNameFor(Model=>Model.Nutzer.Nachname) @DisplayFor(Model=>Model.Nutzer.Nachname) @DisplayNameFor(Model=>Model.Nutzer.Heimatuni) @DisplayFor(Model=>Model.Nutzer.Heimatuni) @DisplayNameFor(Model=>Model.Nutzer.Email) @DisplayFor(Model=>Model.Nutzer.Email) @DisplayNameFor(Model=>Model.Registrationsdatum) @DisplayFor(Model=>Model.registrationsdatam) 苏姆库尔斯信息 @DisplayNameFor(Model=>Model.Kurs.Titel) @DisplayFor(Model=>Model.Kurs.Titel) @DisplayNameFor(Model=>Model.Kurs.term) @DisplayFor(Model=>Model.Kurs.term) @DisplayNameFor(Model=>Model.Kurs.Ortsangabe) @DisplayFor(Model=>Model.Kurs.Ortsangabe) 库塞斯信息组织人 @DisplayNameFor(Model=>Model.Kurs.organistor.Nachname) @DisplayFor(Model=>Model.Kurs.organistor.Nachname) @DisplayNameFor(Model=>Model.Kurs.organistor.Vorname) @DisplayFor(Model=>Model.Kurs.organistor.Vorname)

那么是什么导致了这个Qfont错误呢?什么是Qfont?我可以把它设置在某个地方,这样就不会发生此错误吗?

我就是这样解决的

  • 从下载0.12.4
  • 在您的本地计算机上安装从C:\Program复制
    wkhtmltopdf.exe
    文件\wkhtmltopdf\bin到Solutiono\Rotativa
  • 构建并运行应用程序

可能与您的CSS有关?尝试使用任何CSS生成,看看是否有效。
    model Plattform.Models.Registration

@{
    ViewBag.Title = "Teilnahmebestätigung";
}

<h2>GeneratePDF</h2>
Hiermit bestätigen wir, dass @Html.DisplayFor(Model => Model.Nutzer.Vorname) @Html.DisplayFor(Model => Model.Nutzer.Nachname) erfolgreich an folgendem Kurs erfolgreich teilgenommen hat
<p>
    Kurs : @Html.DisplayFor(Model => Model.Kurs.Titel)
</p>
<div>
    <h3> Informationen zum Teilnehmer:</h3>
    <dl class="dl-horizontal">
        <dt>
            @Html.DisplayNameFor(Model => Model.Nutzer.Vorname)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Nutzer.Vorname)
        </dd>
        <dt>
            @Html.DisplayNameFor(Model => Model.Nutzer.Nachname)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Nutzer.Nachname)
        </dd>
        <dt>
            @Html.DisplayNameFor(Model => Model.Nutzer.Heimatuni)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Nutzer.Heimatuni)
        </dd>
        <dt>
            @Html.DisplayNameFor(Model => Model.Nutzer.Email)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Nutzer.Email)
        </dd>
        <dt>
            @Html.DisplayNameFor(Model => Model.Registrationsdatum)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Registrationsdatum)
        </dd>
    </dl>
</div>
<div>
    <h3>Informationen zum Kurs</h3>
    <dl class="dl-horizontal">
        <dt>
            @Html.DisplayNameFor(Model => Model.Kurs.Titel)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Kurs.Titel)
        </dd>
        <dt>
            @Html.DisplayNameFor(Model => Model.Kurs.Termin)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Kurs.Termin)
        </dd>
        <dt>
            @Html.DisplayNameFor(Model => Model.Kurs.Ortsangabe)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Kurs.Ortsangabe)
        </dd>

        <h4> Informationen zum Organisator des Kurses</h4>
        <dt>
            @Html.DisplayNameFor(Model => Model.Kurs.Organisator.Nachname)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Kurs.Organisator.Nachname)
        </dd>
        <dt>
            @Html.DisplayNameFor(Model => Model.Kurs.Organisator.Vorname)
        </dt>
        <dd>
            @Html.DisplayFor(Model => Model.Kurs.Organisator.Vorname)
        </dd>
    </dl>
</div>