埃德蒙顿华人社区-Edmonton China

 找回密码
 注册
查看: 997|回复: 0

基于 HTML5 的 Windows 画图程序

[复制链接]
鲜花(0) 鸡蛋(0)
发表于 2010-4-5 20:15 | 显示全部楼层 |阅读模式
Windows 画图程序一直伴随着 Windows 各个版本,这个很简单,几乎没有什么用处的程序拥有最基本的绘图功能,很适合用来涂鸦。HTML5 的 Canvas 对象使在线绘图成为可能,虽然 HTML5 还远未成熟,但很多人已经迫不及待地用它设计一些让人惊叹的应用。- ?8 I6 q7 s4 A4 }8 A
$ V. M2 l; h7 S0 R
$ r' ^0 a1 e6 W/ l

3 a2 g3 S! d4 O3 I2 R: Q, {# uCanvasPaint 是一个基于 HTML5 的标准 Windows 画图程序,它拥有和 Windows 画图程序一模一样的界面和操作,功能也几乎完全一样,在特定浏览器的支持下,你甚至可以将最后的作品保存到本机。这并不是最近的项目,2006年就有了,因此,目前绝大多数支持标准的浏览器(Firefox,Safari,Chrome,Opera)都可以正常使用这个程序。以下是作者对这个项目的一些解释。
1 u$ L3 s* a# k" e1 ]2 z- D" g
1 H3 r6 E, u+ p( H5 I为什么要开发这个程序?
0 P+ U) @7 j4 ]6 u) {目的不是为了开发一个 Windows 画图程序,而是体验 HTML5 的 silkroad game gold 功能。8 `# `( Z  q0 ^8 |. S7 {

, z2 u" U' o+ U如何使用
  f% w$ S  \  \0 G# o( R# C' t和标准 Windows 绘图程序一样。: \) q" _% P9 m8 R
! j8 Z( |% V/ e; h) K
能保存吗?
, {6 S2 I! _. s1 y( X4 ^& e0 g是的,但只支持 Firefox 2 和 Opera 9 (译者注:这是作者2006年就实现的一个程序)。在本机保存,选择 File 菜单中的 Download,在线保存,选择 Save online,会自动生成一个 URL 在线显示你的作品。: {- p& a- t1 ^5 R- _. c. X% p$ `
9 ]* h( b- j  ?) q# H5 m$ s
浏览器本身的右键菜单影响使用
( @6 y  p1 ]9 h4 P; T5 X$ A可以在浏览器的设置中禁用右键菜单。
, Q. ]* p$ z& r& L3 x3 c: E& p  D2 \; \7 y' e) e
为什么有些功能不能用?
" P# Z9 }. B4 p3 {  p& ]一些功能支持特定版本的浏览器(译者注:这是就2006年而言):
, v, e2 G6 t; O" w; ~& }/ _; K- X8 Q% k  [  V( W
Color pickerFirefox 2.0Opera 9 Flood fillOpera 9 Save imageFirefox 2.0Opera 9 Open URLFirefox 1.5Opera 9Latest WebKit Canvas 对象好用吗? 3 {' n0 h* |9 ]2 T. i
对那些不需要跨浏览器支持的应用很好用。但在绘画中,最大的问题是,受限于 mousemove 事件的刷新率,你不太容易发现光标的位置,使用喷笔的时候尤其明显。另外,当尺寸变得很大时,速度变得很慢,没有 getPixel() 功能。; T& |0 K/ u; E% K1 N7 P$ Q
/ k9 h! Z4 x  o0 w) c: R* m! E( L
技术细节
# c4 U$ x4 i; Q8 K% D2 x/ V; c程序中使用了 5 个 Canvas 对象。2 m4 W9 m+ Q$ U6 j2 ]5 m4 D8 X& u4 ]) E/ S

) F3 O% }" R& U8 r' Q& _一个主画板,一个是透明画板层浮动在上方显示预览绘画内容,一个隐藏的 Canvas 用来缓存选择的内容,另一个用来缓存反悔状态,一个用在程序标题栏,用来显示渐变色。" H7 {2 h. o4 ~2 C$ X: K1 I! j
其他人的 HTML5 Canvas 实验 $ |' W  g' \! H
Canvascape 3D (用 HTML5 实现简单的第一人称射击游戏)% ?8 l: l. d$ b% z) N
CanvasGraph (一个 HTML5 Canvas 绘图 JavaScript 类库 )
. ]+ v0 x" ]% ^4 f8 t  G/ \Image reflections (用 HTML5 Canvas 实现图像倒影)
; e) _4 d8 y  O$ R3 N8 G$ uCanvas Painter (一个更为简单的 Canvas 画图程序)
+ r3 w+ \. c& a  U* g  V( O
# J: e  w3 a+ j  _5 R真正令人赞叹的 HTML 画图程序
6 C4 l; [0 s* O! y3 X* y如果上面的程序已经让你对 HTML5 的 Canvas 功能感到鼓舞,下面这个画图程序会让你赞叹。拥有不输桌面的界面体验和流畅感,在多屏幕电脑上,我甚至有将那些浮动工具面板拖到第二个屏幕的冲动。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系我们|小黑屋|手机版|Archiver|埃德蒙顿中文网

GMT-7, 2026-10-29 15:54 , Processed in 0.128871 second(s), 10 queries , Gzip On, APC On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表