狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

.NET 實(shí)現(xiàn)Html 生成圖片或PDF

admin
2024年2月27日 18:36 本文熱度 737

前言


本文將使用PuppeteerSharp組件、實(shí)現(xiàn)Html代碼片段生成Jpg照片

PuppeteerSharp地址

https://github.com/hardkoded/puppeteer-sharp

1、安裝引用PuppeteerSharp

使用Nuget界面管理器

搜索 "PuppeteerSharp",找到對(duì)應(yīng)的包點(diǎn)安裝即可。

2、實(shí)現(xiàn)一段Html頁(yè)面

<body>
  <div class="box">
    <h1>考場(chǎng)號(hào):&nbsp;&nbsp;&nbsp;01</h1>
    <h1>座位號(hào):&nbsp;&nbsp;&nbsp;01</h1>
    <div class="center-box">
      <h4>&nbsp; &nbsp;&nbsp;名:&nbsp; &nbsp;花卷</h4>
      <h4>身份證號(hào):&nbsp; &nbsp;545645456456465</h4>
      <h4>準(zhǔn)考證號(hào):&nbsp; &nbsp;54564545454</h4>
    </div>
    <div class="botom-box">
      <h2>溫馨提示:</h2>
      <h3>請(qǐng)核對(duì)信息無(wú)誤后,張貼在準(zhǔn)考證指定位置!</h3>
    </div>
  </div>
</body>
<style>
  .box{
    box-sizing: border-box;
    padding-top10px;  
    text-align: center;
    font-family: fangsong;
  }
  .box>h1 {
    font-size46px;
  }
  .center-box {
    text-align: left;
    width:290px;
    margin:60px auto;
}
   .center-box > h4{
    font-size18px;
   }
  .botom-box {
    text-align: center;
    margin-left20px;
}
</style>

Html預(yù)覽效果

C#實(shí)現(xiàn)代碼

await new BrowserFetcher().DownloadAsync(BrowserFetcher.DefaultChromiumRevision);
var browser = await Puppeteer.LaunchAsync(new LaunchOptions
{
    Headless = true
});
string destFilePath = AppDomain.CurrentDomain.BaseDirectory + "TestImgCreate\\";
if (!Directory.Exists(destFilePath))
{
    Directory.CreateDirectory(destFilePath);
}
string outputFile = destFilePath + DateTime.Now.ToString("yyyyMMddHHmmss") + ".jpg";
using (var page = await browser.NewPageAsync())
{
    await page.SetViewportAsync(new ViewPortOptions
    {
        Width = 425,//圖片寬度
        Height = 635//圖片高度
    });
    await page.SetContentAsync(@"
    <html>
    <body>
    <div class=\""box\"">
        <h1>考場(chǎng)號(hào):&nbsp;&nbsp;&nbsp;01</h1>
        <h1>座位號(hào):&nbsp;&nbsp;&nbsp;01</h1>
        <div class=\""center-box\"">
        <h4>姓&nbsp; &nbsp;&nbsp;名:&nbsp; &nbsp;花卷</h4>
        <h4>身份證號(hào):&nbsp; &nbsp;545645456456465</h4>
        <h4>準(zhǔn)考證號(hào):&nbsp; &nbsp;54564545454</h4>
        </div>
        <div class=\""botom-box\"">
        <h2>溫馨提示:</h2>
        <h3>請(qǐng)核對(duì)信息無(wú)誤后,張貼在準(zhǔn)考證指定位置!</h3>
        </div>
    </div>
    </body>
    </html>
    <style>
    .box{
        box-sizing: border-box;
        padding-top: 10px;  
        text-align: center;
        font-family: fangsong;
    }
    .box>h1 {
        font-size: 46px;
    }
    .center-box {
        text-align: left;
        width:290px;
        margin:60px auto;
    }
    .center-box > h4{
        font-size: 18px;
    }
    .botom-box {
        text-align: center;
        margin-left: 20px;
    }
    </style>"
);
    ScreenshotOptions screenshotOptions = new ScreenshotOptions();
    screenshotOptions.FullPage = true//是否截取整個(gè)頁(yè)面
    screenshotOptions.OmitBackground = false;//是否使用透明背景,而不是默認(rèn)白色背景
    screenshotOptions.Quality = 100//截圖質(zhì)量 0-100(png不可用)
    screenshotOptions.Type = ScreenshotType.Jpeg; //截圖格式
    await page.ScreenshotAsync(outputFile, screenshotOptions);
}

生成之后發(fā)現(xiàn)樣式?jīng)]有進(jìn)行渲染,效果如下

發(fā)現(xiàn)html中的樣式丟失了,后將Html中的雙引號(hào)替換成單引號(hào)后,樣式可以正常展示,效果如下

如果需要生成PDF文件,只需要進(jìn)行以下修改

await page.ScreenshotAsync(outputFile, screenshotOptions);
->
await page.PdfAsync(outputFile);
文件名稱修改成PDF后綴

轉(zhuǎn)自:小吳的成長(zhǎng)之路

鏈接:cnblogs.com/wuyongfu/p/17243490.html


該文章在 2024/2/27 18:36:15 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved