ASP.NET Core MVCで、HTMLからPDFに変換したいです。
以下を参考にして確認したところ、HTMLとPDFのフォントが違ってしまいます。
PDFに埋め込まれるフォントがスタイル(font-family)で指定したフォントと違うようです。
How to export HTML to PDF in ASP.NET Core
尚、ダウンロードできるソースコードから、変更した部分は以下のとおりです。
report.html(font-familyを追加したのみ)
lang
1<!DOCTYPE html> 2<html> 3<head> 4 <style> 5 body { 6 font-family: "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "メイリオ", "Meiryo", sans-serif; 7 } 8 9 table, th, td { 10 border: 1px solid black; 11 } 12 </style> 13</head> 14<body> 15 <h1>Report</h1> 16 <table> 17 <tr> 18 <th>Month</th> 19 <th>Savings</th> 20 </tr> 21 <tr> 22 <td>January</td> 23 <td>$100</td> 24 </tr> 25 <tr> 26 <td>February</td> 27 <td>$80</td> 28 </tr> 29 </table> 30</body> 31</html>
HomeController
lang
1public class HomeController : Controller 2{ 3 [HttpGet] 4 public async Task<IActionResult> Index([FromServices] INodeServices nodeServices) 5 { 6 HttpClient hc = new HttpClient(); 7 var htmlContent = await hc.GetStringAsync($"http://{Request.Host}/report.html"); 8 9 var result = await nodeServices.InvokeAsync<byte[]>("./pdf", htmlContent); 10 11 return File(result, "application/pdf", "report.pdf"); 12 } 13}
他のライブラリ等を使用しても構いませんので、実現する方法はありますでしょうか?
ASP.NET MVC(Coreではない)では、TuesPechkinというライブラリを使用している例がありましたが、動作させられませんでした。
(ASP.NET Core MVC には対応していない?)
#追記
shimiteiさんのアドバイスを参考に、Webフォントで確認してみました。
日本語を使用したい為、'Noto Sans Japanese'を指定してみましたが、うまくいきませんでした。
report.html
lang
1<!DOCTYPE html> 2<html> 3<head> 4 <style> 5 @import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css); 6 body { 7 font-family: 'Noto Sans Japanese', sans-serif; 8 font-size: 100%; 9 } 10 11 table, th, td { 12 border: 1px solid black; 13 } 14 </style> 15</head> 16<body> 17 <h1>Report</h1> 18 <table> 19 <tr> 20 <th>Month</th> 21 <th>Savings</th> 22 </tr> 23 <tr> 24 <td>January</td> 25 <td>$100</td> 26 </tr> 27 <tr> 28 <td>2月</td> 29 <td>80円</td> 30 </tr> 31 </table> 32</body> 33</html>

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/10/12 11:47
2017/10/13 03:22
2017/10/13 05:18
2017/10/13 05:33
2017/10/13 05:46