2009-12-14 23:24 | Posted by Sunshow | Filed Under Software, WebDev
推荐一个CSS Sprites样式生成工具
作者主页:http://www.cssforest.org/blog/index.php?id=129
这是一个基于Adobe AIR的工具,需要下载AIR运行时
使用效果图:

操作说明:
载入图片后,双击新增一个区域,设置每个区域的类名等属性,最后可以导出css列表
更多说明可以参考主页内容
标签:
adobe,
AIR,
css,
sprite,
下载,
列表,
图片,
样式
相关日志
2009-12-10 18:38 | Posted by Sunshow | Filed Under Life
2009-12-06 20:43 | Posted by Sunshow | Filed Under Software
挥泪告别了Win7,不是因为不好用,只是在我的X200上最近出现了灵异现象
这个问题我不太好用文字描述清,但是严重影响了我的使用心情
于是又得折腾一堆东西
不过换回XP后一大好处是我的蓝牙鼠标明显变得好使了
但是我还是痛恨装系统
标签:
windows,
xp
相关日志
2009-11-25 21:52 | Posted by Sunshow | Filed Under Life
标题只是标题
我已经荒废了这里很久了,以至于我发现服务器访问不了的时候已经过了一阵了
写部落格不是我擅长的,我更擅长一句话扯淡,于是我更多的在开心和Twitter
最近开心出了个超级大亨的游戏,让我想起了大一还是大二的暑假在宿舍玩北京浮生记的日子,每天在那卖盗版光盘和上海小宝贝
这样的日子就这么一去不复返了
以前总是感叹岁月如梭,这两年却觉得时间过得好慢
可能是因为总在折腾,比如换了两次工作,搬了三次家之类的
现在我又可耻的厌倦了工作了,想想也挺扯淡的,就在前一阵还每天跟玩命似的
估计是大姨妈又来了,厌倦工作又不得不工作,是我等俗人的痛苦
好的事情也是有的,昨天我终于考完了驾照,在09年结束之前搞定了这个破事
今天又跟同事扯淡,买车这个事情比起买房来说靠谱多了,至少是靠自己努力能达到的目标
最后让我可耻的YY一下年终奖吧,我已经三年没见过丫了
今年会有例外吗?
2009-11-14 16:34 | Posted by Sunshow | Filed Under C
相关RFC:http://curl.haxx.se/rfc/rfc2396.txt
- char *urlencode(const char *url)
- {
- #define COPY_TO_ENCODE_URL(c) \
- if (outlen < pos) { \
- outlen += 10; \
- out = realloc(out, outlen + 1); \
- } \
- out[pos ++] = c; \
-
- size_t i, len = strlen(url), outlen;
- outlen = len;
- char *out = malloc(outlen + 1);
- int pos;
-
- for (i = 0, pos = 0; i < len; i ++) {
- if ((url[i] >= 48 && url[i] <= 57) // 0-9
- || (url[i] >= 65 && url[i] <= 90) //a-z
- || (url[i] >= 97 && url[i] <= 122) //A-Z
- || url[i] == ';' || url[i] == '/' || url[i] == '?'
- || url[i] == ':' || url[i] == '@' || url[i] == '&'
- || url[i] == '=' || url[i] == '+' || url[i] == '$'
- || url[i] == ',' || url[i] == '-' || url[i] == '_'
- || url[i] == '.' || url[i] == '!' || url[i] == '~'
- || url[i] == '*' || url[i] == '\'' || url[i] == '('
- || url[i] == ')') {
-
- COPY_TO_ENCODE_URL(url[i]);
- }
- else {
- #undef HEX_TO_DIGIT
- char dig1 = (url[i] & 0xF0) >> 4;
- char dig2 = (url[i] & 0x0F);
- if (dig1 >= 0 && dig1 <= 9) dig1 += 48; //0,48inascii
- if (dig1 >= 10 && dig1 <= 15) dig1 += 65 - 10; //A,65inascii
- if (dig2 >= 0 && dig2 <= 9) dig2 += 48;
- if (dig2 >= 10 && dig2 <= 15) dig2 += 65 - 10;
-
- COPY_TO_ENCODE_URL('%');
- COPY_TO_ENCODE_URL(dig1);
- COPY_TO_ENCODE_URL(dig2);
- }
- }
- out[pos] = '\0';
- return (out);
- }
-
- char *urldecode(const char *url)
- {
- size_t i, len = strlen(url);
- char *out = malloc(len + 1);
- int pos;
-
- for (i = 0, pos = 0; i < len; i ++) {
- if (url[i] == '%' && i+2 < len &&
- isxdigit(url[i + 1]) && isxdigit(url[i + 2])) {
-
- #define HEX_TO_DIGIT(hex) ( \
- ((hex) >= 'A' && (hex) <= 'F') ? ((hex) - 'A' + 10): \
- ((hex) >= 'a' && (hex) <= 'f') ? ((hex) - 'a' + 10): \
- ((hex) - '0') )
-
- out[pos ++] = HEX_TO_DIGIT(url[i + 1]) * 16 +
- HEX_TO_DIGIT(url[i + 2]);
- i += 2;
-
- #undef HEX_TO_DIGIT
- }
- else {
-
- out[pos ++] = url[i];
- }
- }
- out[pos] = '\0';
- return (out);
- }
标签:
decode,
encode,
url
相关日志
Recent Comments