我有以下HTML和CSS:
<div id="previewBox" style="background: #1e5799;
background: -moz-linear-gradient(top, #1e5799 0%, #7db9e8 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#1e5799), color-stop(100%,#7db9e8));
background: -webkit-linear-gradient(top, #1e5799 0%,#7db9e8 100%);
background: -o-linear-gradient(top, #1e5799 0%,#7db9e8 100%);
background: -ms-linear-gradient(top, #1e5799 0%,#7db9e8 100%);
background: linear-gradient(to bottom, #1e5799 0%,#7db9e8 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1e5799', endColorstr='#7db9e8',GradientType=0 );
height:800px;border: 1px solid black;">
<font style="font-size:100pt;family:georgia;color:#3333FF">Some blue text here...</font>
</div>
我想使用html2pdf将其转换为PDF,但似乎无法正常工作。是否可以使用html2pdf转换渐变?
最佳答案
这取决于如何将其转换为PDF。如果使用PHP,则可以通过PHP的GD库生成图像,并将其设置为div的背景。
找到了一个可以使用权限here的示例和一个实时示例权限here的示例
然后将div的style属性更改为此:
<div id="previewBox" style="background-image: url('path/to/gradiant.php?start=1e5799&end=7db9e8">
不要忘记在PHP中更改生成的背景渐变的宽度和高度。最佳做法是宽度为1个像素,高度为div的高度。