使用 ColdFusion 从 HTML 生成图像

2024-03-19

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


您可以将 html 表渲染到静态页面,然后调用http://code.google.com/p/wkhtmltopdf/ 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 http://madalgo.au.dk/~jakobt/wkhtmltoxdoc/wkhtmltoimage_0.10.0_rc2-doc.html

使用cfexecute运行批处理文件

<cfexecute name="F:\temp\wkhtmltoimage.bat" timeout="20" variable="result"> 
</cfexecute> 

输出相当不错

Windows 安装程序包含 topdf 和 wkhtmltoimage

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 ColdFusion 从 HTML 生成图像 的相关文章

  • ColdFusion Twitter API 错误请求

    我正在开展一个项目 涉及抓取 Twitter 数据信息 解析它并将其显示在我们的网站上以用于管理目的 我们还在考虑通过与 Twitter REST API 联锁的 Web 界面发布推文或更新 但首先 我想做简单的 GET 我正在尝试通过 d
  • Coldfusion onCFCRequest 将 XML 的返回类型更改为 WDDX

    我的客户群终于不再使用 Coldfusion 8 所以现在我可以利用 Coldfusion 9Application cfc gt onCFCRequest事件 我有一个测试场景设置 但结果不是我所期望的 我有一个我调用的方法 它会产生一个
  • JPEG 标头丢失/损坏

    我有一个 130kb jpeg 图像 无法在任何程序中打开 我需要修复它 从我使用的各种图像恢复软件中 我得到的只是 图像头损坏 丢失 当我查找文件的属性时 我什至没有得到任何信息 没有尺寸等 只有文件大小 一旦图像的标头丢失 是否可以恢复
  • Coldfusion SQL 插入循环

    遇到一个问题 我想我可以看看是否有人对如何解决它有任何想法 基本上 我在单个变量下传递多个值 并且我想使用循环来提取每个单独的值并同时插入它 例如 ischecked 是我用来传入设备值的变量 如果我要选择两个设备 按提交并将变量 form
  • 使用 Objective C 在 ios 中将 jpeg 转换为位图? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我没有找到任何示例或库将 Jpeg 图像转换为 24 位 BITMAP 图像 我已经在 android 和 java 中创建了示例 但
  • 渐进式 JPEG 的完整缩略图需要多少字节?

    我正在尝试构建一个上传器 它分两步上传渐进式文件 上传创建缩略图所需的最小字节数 0 10 上传缩略图的其余字节 11 100 我希望这样做可以更早地提供缩略图 而无需上传单独的缩略图 拍摄使用以下命令创建的图像 3426398 字节 jp
  • ColdFusion:无效的 XML 控制字符(十六进制)

    我正在尝试使用创建一个 xml 对象
  • 空白/冷融合

    停止 ColdFusion 输出空白的正确方法是什么 我知道有cfcontent and cfsetting enableCFoutputOnly 这样做的正确方法是什么 此外
  • DICOM 和 DICOM 叠加问题

    我有一个 DICOM 图像 我正在使用 C 读取该图像并将其转换为 16 位位图 位图已创建 但图像具有 DICOM 覆盖 我想在创建最终的 dicom 位图时将叠加层刻录到位图中 我无法做到这一点 有什么帮助吗 一种方法是创建覆盖数据的位
  • 使用 cfchart 标签在单个饼图中显示多个查询的数据

    请考虑以下代码 现在我的代码中有以下代码 cfm页面内的 tag DataSource xx xx x xx Name of the database sgemail Name of the relevant column event vc
  • 使用 Apache HttpComponents 进行带有 NTLM 身份验证的 http 请求

    快速背景 CFHTTP 不支持 Windows NTLM Authenticate 身份验证 仅支持基本身份验证 我需要发出必须针对 NTLM 进行身份验证的 http 请求 因此我最终推出了自己的 CFHTTP 版本 I found 特里
  • 使用 PHP 将 SVG 图像转换为 PNG

    我正在开发一个网络项目 该项目涉及动态生成的美国地图 根据一组数据为不同的州着色 这个 SVG 文件为我提供了一张很好的美国空白地图 并且很容易更改每个州的颜色 困难在于 IE 浏览器不支持 SVG 因此为了让我使用 svg 提供的便捷语法
  • 使用 cfdocument 时仅将页脚添加到最后一页

    我正在使用创建多页文档cfdocument 使用动态文本创建 因此可以有任意数量的页面 甚至一页 我可以用
  • 我可以在 JavaScript 中使用 ColdFusion 标签吗?

    我可以在 JavaScript 中使用 ColdFusion 标签吗 例如
  • 将 Topaz 签名字符串(十六进制)转换为图像

    我正在尝试将黄玉签名板集成到我的 ColdFusion 应用程序中 我想从 pad 捕获签名 将其转换为 ColdFusion 可以在浏览器中显示的格式并保存到磁盘 使用他们的文档 我能够以十六进制格式检索捕获的签名 我认为 我正在关注他们
  • 将自定义元数据添加到 jpeg 文件

    我正在开发一个图像处理项目 C 我需要在处理完成后将自定义元数据写入 jpeg 文件 我怎样才能做到这一点 有没有可用的图书馆可以做到这一点 如果您正在谈论 EXIF 元数据 您可能需要查看exiv2 http www exiv2 org
  • 如何将文件透明地传输到浏览器?

    受控环境 IE8 IIS 7 ColdFusion 当从 IE 发出指向媒体文件 例如 mp3 mpeg 等 的 GET 请求时 浏览器将启动关联的应用程序 Window Media Player 我猜测 IIS 提供文件的方式允许应用程序
  • 如何执行 ImageMagick 仅将多页 PDF 的第一页转换为 JPEG?

    我如何执行 ImageMagick 的convert如果我想要 JPEG仅从第一页开始多页 PDF 如果您使用的是convert命令行您可以使用以下参数执行它 convert source pdf 0 output jpeg 请注意 Ima
  • 使用 Coldfusion 11 的 CFdirectory,文件名中存在非 ASCII 字符问题

    我有一个类似的问题 ColdFusion CFDirectory 和法语 https stackoverflow com questions 1715632 coldfusion cfdirectory and the french从而没有
  • 在 ColdFusion 中调用 String 上的底层 java 方法是否安全?

    Adobe ColdFusion 基于 Java 构建 CFML CFSCRIPT 中几乎所有简单变量都是java lang String直到操作需要它是某种类型 我一直想用startsWith in String而不是体积更大的 CFML

随机推荐