将HTML颜色翻译为GDI+颜色
今天在写一个控件的时候遇到个问题。
程序代码
Brush brush = new
SolidBrush(Color.fromName("#000000"));
死活不出来#000000颜
色。程序也没有报错。一步一步的调试也没发现什么异常,最后查了下MSDN才发现,原来Color结构只认识GDI+中的Color,也就是说只认识
Back而不认识#000000。那怎么将#000000转化为GDI+认识的Color呢?有两种方法。
第一种,使用
System.Drawing命名空间中的ColorTranslator类。
程序代码
Brush brush = new
SolidBrush(ColorTranslator.fromHtml("#000000"));
第二种,
要稍难些,将16进制转化成10进制,每两位一组。
程序代码
string
_FontColor = "#000000";
int r, g, b;
r = Convert.ToInt16("0x" +
_FontColor.Substring(1, 2), 16);
g = Convert.ToInt16("0x" +
_FontColor.Substring(3, 2), 16);
b = Convert.ToInt16("0x" +
_FontColor.Substring(5, 2), 16);
Brush brush = new
SolidBrush(Color.fromArgb(r, g, b));
实际使用起来肯定是第一种
比较方便啦。不过从这两种方法的实现便能看出,其实.Net
Framework已经把很多复杂的步骤给我们省略了,给我们的开发带来了许多便利,但是这对于我们技术的提升,究竟是好还是坏呢?
相关文档:
1 <html:html>标记
简单的在页面的开始和结尾处产生一个html标记。
2<html:base>
用于在网页的head部分生成一个base标记,作用不仅仅是生成本网页的URL ,更重要的是为该页面的所有其他的链接提供相对的位置。
3 <html:link>
用于生成html中的<a> ......
虽然现在SWT越来越不如Swing了,但是我是一个客观看待事物的人。任何一种GUI都有自己的优势,不能一棒子打死。现在用Swing是比较多了,但在必要的时候还是要用到SWT的,3.5版的SWT也比以前好用很多。
最后一次打包 SWT API 已经是3.4版本的事情了,这次重新用SWT和JFace的源码制作了API文档,同时制作了html版本和 ......
方案1:
/// <summary >
/// 传入URL返回网页的html代码
/// </summary >
/// <param name="Url" >URL </param >
/// <returns ......