科普文章,欢迎阅读:)
计算机的显示系统实际就是点阵,每个点称作像素(pixel)。所以在表现非水平竖直的直线必然会出现锯齿现象aliasing(又或者称混淆、走样)。
抗锯齿(反混淆)只能缓解这种效果,并以绘制速度为代价。方法是:
1、提高分辨率--基本属于P话...
2、使用抗锯齿算法(anti-aliasing,AA),一般是通过颜色缓慢渐变来欺骗你的眼睛。有点、直线、多边形的抗锯齿,也有全屏抗锯齿(FSAA)。
这是全屏抗锯齿的对比效果(下面为开启FSAA):

这是我写的一个直线抗锯齿的算法模拟,可以下载看看(39KB)。
http://nonleaf.net/wp-content/uploads/AA_Line.rar
那两条短线解决了么?
to bl: 解决了,你下载看看不就知道了.
看了一下。。。疑问还是有的。。不过不知道在哪里。。
你知道photoshop里用的是哪种抗锯齿方式,,,为啥我在里头画一条线(1Pix)放大到最大的时候跟你的这个看起来很不一样。。。
而且你说的{点/直线/多边形/全屏(面?)}抗锯齿,指的是针对不同类对象的不同的抗锯齿算法(?),还是指针对不同对象的同一种抗锯齿算法呢?啊,,我希望我表达清楚了我的意思。。>_
to narkau: 我在ps里面画直线放大效果差不多啊,要不你在blog里面贴图...
确实有针对简单形状的抗锯齿算法,而且显然算法不太一样。但是原理都是平滑的渐变颜色。比如直线是通过把像素分割成子像素的方法,全屏是通过微移整个图像,然后叠加颜色实现的。全屏显然速度慢,对硬件要求高。
见这个图:
http://static.flickr.com/78/211598872_5aec2e09af_o.png
主要是画笔工具比较奇怪。他所谓的1个像素或者n个像素宽度,实际上放大以后不止一个或者n个的啊。。为什么把这个叫做1像素宽或者n像素宽呢。。。。。啊,我自己都觉得这个奇怪的问题过于钻牛角尖了>_
to narkau: gg你太细致了,具体算法层次了。一般讲,如果抗锯齿宽度指的就是中心高亮区域。而且为了计算简便,斜率在-1到1之间的按照竖直宽度算,其余按照水平线宽(水平线和有宽度直线相交的长度)。
你那个图画笔抗锯齿,铅笔没有。和我的意思差不多的啊?不过ps的效果更好一些。
你好时髦呵,都用flickr.com了,我还没用过555。。。
okkk,,这个问题大约到头了。。因为我已经看不太懂你在说什么了。。>_
http://www.flickr.com/photos/narkau/
俺在flick的帐号。。:-)
我发现基于worldpress的blog,,不允许留言中出现 > 的 镜像字符。。会把 > 后的内容直接过滤掉。>_-
因为他以为那是html的容器的开始符号...这算是个bug
omg,你是羽毛...他是长得挺招人的...
哈,明明就是很大的bug..咋叫“算是个bug”。。*_^..你去提交一下吧,。。嘎嘎
我只是觉得他比较可嘛。。不过某人说了,没有他可。。hoh...
啧啧,怪不得叫那可~