gpt4 book ai didi

coldfusion - 使用 ColdFusion 从 HTML 生成图像

转载 作者:行者123 更新时间:2023-12-04 01:13:55 26 4
gpt4 key购买 nike

我有一个带有样式的 HTML 表格的 ColdFusion 页面。我希望能够做的是设置一个功能,允许我们的客户将表格保存为图像文件,以用于他们的幻灯片。我已经阅读了 cfcontent 的一些文档,但是我开始觉得我需要第三方库。我希望有人能对此有所了解。

最佳答案

你可以将你的 html 表格渲染到一个静态页面,然后调用 http://code.google.com/p/wkhtmltopdf/使用 cfexecute 渲染为 pdf,或者 wkhtmltoimage 可以转换为 .png .gif 等

这是一个带有测试表和一些 css table.cfm 的静态页面

<html>
<head>
<title>Table test</title>

</head>
<style>
*{
margin:0;
padding:0;
}
body{
font-family: Georgia, serif;
font-size: 20px;
font-style: italic;
font-weight: normal;
letter-spacing: normal;
}
#content{
padding:40px;
margin:0 auto;
-moz-box-shadow:0px 0px 16px #aaa;
}

/* Table 1 Style */
table.table1{
font-family: "Trebuchet MS", sans-serif;
font-size: 16px;
font-weight: bold;
line-height: 1.4em;
font-style: normal;
border-collapse:separate;
}
.table1 thead th{
padding:15px;
color:#fff;
text-shadow:1px 1px 1px #568F23;
border:1px solid #93CE37;
border-bottom:3px solid #9ED929;
background-color:#9DD929;
background:-webkit-gradient(
linear,
left bottom,
left top,
color-stop(0.02, rgb(123,192,67)),
color-stop(0.51, rgb(139,198,66)),
color-stop(0.87, rgb(158,217,41))
);
background: -moz-linear-gradient(
center bottom,
rgb(123,192,67) 2%,
rgb(139,198,66) 51%,
rgb(158,217,41) 87%
);
-webkit-border-top-left-radius:5px;
-webkit-border-top-right-radius:5px;
-moz-border-radius:5px 5px 0px 0px;
border-top-left-radius:5px;
border-top-right-radius:5px;
}
.table1 thead th:empty{
background:transparent;
border:none;
}
.table1 tbody th{
color:#fff;
text-shadow:1px 1px 1px #568F23;
background-color:#9DD929;
border:1px solid #93CE37;
border-right:3px solid #9ED929;
padding:0px 10px;
background:-webkit-gradient(
linear,
left bottom,
right top,
color-stop(0.02, rgb(158,217,41)),
color-stop(0.51, rgb(139,198,66)),
color-stop(0.87, rgb(123,192,67))
);
background: -moz-linear-gradient(
left bottom,
rgb(158,217,41) 2%,
rgb(139,198,66) 51%,
rgb(123,192,67) 87%
);
-moz-border-radius:5px 0px 0px 5px;
-webkit-border-top-left-radius:5px;
-webkit-border-bottom-left-radius:5px;
border-top-left-radius:5px;
border-bottom-left-radius:5px;
}
.table1 tfoot td{
color: #9CD009;
font-size:32px;
text-align:center;
padding:10px 0px;
text-shadow:1px 1px 1px #444;
}
.table1 tfoot th{
color:#666;
}
.table1 tbody td{
padding:10px;
text-align:center;
background-color:#DEF3CA;
border: 2px solid #E7EFE0;
-moz-border-radius:2px;
-webkit-border-radius:2px;
border-radius:2px;
color:#666;
text-shadow:1px 1px 1px #fff;
}
</style>
<body>
<div id="content">

<table class="table1">
<thead>
<tr>
<th>column 1</th>
<th>column 2</th>
<th>column 3</th>
</tr>
</thead>
<tbody>
<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>

<tr>
<td>oranges</td>
<td>lemons</td>
<td>apples</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>red</td>
<td>blue</td>
<td>green</td>
</tr>

</tfoot>
</table>

</div>

</body>
</html>

制作一个简单的批处理文件 wkhtmltoimage.bat
f:\temp\wkhtmltoimage --crop-h 250 --crop-w 200 http://localhost:8500/table.cfm f:\temp\outputfile.png 

更多命令行选项 here

使用 cfexecute 运行批处理文件
<cfexecute name="F:\temp\wkhtmltoimage.bat" timeout="20" variable="result"> 
</cfexecute>

输出相当不错

enter image description here

Windows 安装程序 libwkhtmltox-0.10.0_rc2.zip包含 topdf 和 wkhtmltoimage

关于coldfusion - 使用 ColdFusion 从 HTML 生成图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7490094/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com