我有一个工作的HTML到PDF(wkhtmltopdf)工作Laravel网站,用户可以在其中修改"模板"然后将其导出为PDF。目前,我不得不将字体编码为base64,因为撇号等错过了。这本身就是一大堆代码,我不想在数据库中保存这些代码。
所以,我将以下内容存储在blade(style.blade.php)文件中(本例简称):
<style>
@font-face {
font-family: 'Lato';
font-style: normal;
font-weight: 400;
src:url("data:font/ttf;base64,AAEAAAARAQAABAAQR1BPU792x2wAAS2AAAASSkdTVUKOOI56AAE/
zAAAAHBPUy8y2a6qaQAAyigAAABgY21hcIwYkAAAAMqIAAAAtGN2dCAG9xijAADScAAAAC5
mcGdtclpyQAAAyzwAAAblZ2FzcAASABgAAS10AAAADGdseWbADxfjAAABHAAAw2BoZWFk/
....
wABAAEAAmxpZ2EADmxpZ2EADgAAAAEAAAABAAQABAAAAAEACAABABoAAQAIAAIABgAMAN
YAAgBMANcAAgBPAAEAAQBJ")
format('truetype');
}
.page-break {
page-break-after: always;
}
</style>
我想&#34;添加&#34;文件的全部内容,到另一个HTML文件的顶部。
我将非常感谢任何有关如何做到这一点的建议。
非常感谢。
答案 0 :(得分:0)
使用 @include 指令
Blade的@include指令允许您轻松包含Blade视图 从现有的观点来看。
考虑一下这个观点。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>...</title>
</head>
<body>
<p>Anything could be here</p>
</body>
</html>
你想要include
那个字体(style.blade.php)。
所以你会有像
这样的东西<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>...</title>
@include('style')
</head>
<body>
<p>Anything could be here</p>
</body>
</html>
假设 style.blade.php 存储在 /resources/views/style.blade.php
下您可以进一步参考https://laravel.com/docs/5.2/blade 有关包含子视图
的信息
答案 1 :(得分:0)
您可以将内容设为便携式,例如:
In Views create > content.blade.php
将您的文件内容保存在content.blade.php文件中。
然后,您只需要调用这些内容,只需使用以下内容将其包含在内:
@include('content') anywhere in between the code and it will act as if its present there.
通常这是一种非常简单的方法,当重复代码时我们会使用很多。例如:Creating master blade file.
Or creating header,
footer etc.