zoukankan      html  css  js  c++  java
  • 用html5+flash两种方案实现前端长文转图

    文转图是比较常见的web应用。特别在微博里,由于限制了字数,所以网上出现了不少把一段文字转为图片的方法,主要有以下几种:

     

    实现难度

    文本格式

    数据量

    服务器压力

    兼容性

    Flash方法

    丰富

    一般

    HTML5方法

    简单

    一般

    后台方法

    一般

    丰富

    优缺点从上图可见一斑。

    • flash和后台实现的文转图的方案比较常见,而且配合html富文本编辑器还可以实现丰富的文本格式。
    • 由于是图片数据是前端生成,所以flash和html5的方法发送的数据量会大点,但是服务器的压力相应会减少。
    • html5 canvas由于只适合高端浏览器,所以不支持canvas的还得降级用flash支持。

    下面讨论用html5+flash实现常见的文转图功能,这种组合能比较好适应各种平台。

    1、html5 canvas方法:适用于pc高端浏览器和移动端

    ①用drawImage画上背景(图片,图片数据可以从<img>标签里拿或new Image()),或用其他api画上纯色

    ②用fillText画文本。可设置字体、大小、颜色等等属性。由于这个接口不支持文本自动(手动)换行,我们可以先把文本转为数组,按照一定的字数为一项,转为一个数组,再多次调用fillText画文本。

    ③最后用toDataURL生成图片数据。这里要注意一下,如果上面用的背景图片是和document不同域的话会报安全错误。可以把图片放在和document一个域下或把图片转为base64。

    ④ajax post上面的图片数据

    2、flash方法:适用于ie8及以下浏览器

    ①Sprite填充背景

    ②用TextField的text或htmlText填充,设置文本样式,然后addChild到上面的Sprite里

    ③用bitmapData draw图片

    ④转码为jpeg数据

    ⑤URLLoader发送数据

    ==================================================

    作者:绿色花园

    出处: http://www.cnblogs.com/cos2004/archive/2012/12/18/2823982.html

    ==================================================

  • 相关阅读:
    python 类的自定义属性
    好的設計模式
    sql server 过滤重复数据
    sql server 2000 sp3
    css
    SQL server 与Oracle开发比较(同事帮忙整理的,放这里方便查询)
    深圳 帮部门招聘人才
    BCP等三個sql server 過程
    CTE and CONNECT BY 樹的查詢(轉)
    继承System.Web.UI.Page的页面基类
  • 原文地址:https://www.cnblogs.com/cos2004/p/2823982.html
Copyright © 2011-2022 走看看