随笔 - 18  文章 - 96  trackbacks - 0
<2007年10月>
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910


常用链接

留言簿(4)

随笔档案

相册

我的兄弟们

搜索

  •  

最新评论

阅读排行榜

评论排行榜

“千里冰封” 兄弟的截屏程序酷毙了,但是好像9月4日之后就没有继续更新了,我们来继续为他的程序改进,顺便也把我们这几天都在讲的2D绘制用进来,我们的目标是让冰封的截屏程序成为截屏程序里的王!
今天先改进一下截图时候的选框,还是先放上截图的截图(*o*):

这是原来的图片,下面是改进后的

和改进的代码部分:
这部分代码插入 Temp类的paintComponent方法中的    if (showTip) 这句的前面
    Graphics2D g2d = (Graphics2D) g.create();
            g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
                    RenderingHints.VALUE_ANTIALIAS_ON);
            g2d.setComposite(AlphaComposite.getInstance(
                    AlphaComposite.SRC_OVER, 
0.3F));
            g2d.setColor(Color.RED.brighter().brighter());
            
int sX = Math.min(startX, endX);
            
int sY = Math.min(endY, startY);
            g2d.fillRect(sX, sY, Math.abs(endX 
- startX), Math.abs(endY
                    
- startY));
            g2d.setComposite(AlphaComposite.getInstance(
                    AlphaComposite.SRC_OVER, 1F));
            
boolean drawCTip = endX - startX != 0 && endY - startY != 0;
            
if (drawCTip) {
                String cTip 
= String.format("%dX%d", Math.abs(endX - startX),
                        Math.abs(endY 
- startY));
                
int cTipH = 20;
                Font cTipFont 
= new Font("system", Font.BOLD, 16);
                g2d.setFont(cTipFont);
                
int cTipW = SwingUtilities.computeStringWidth(
                        getFontMetrics(cTipFont), cTip);
                g2d.setPaint(Color.BLACK);
                
int cStartY = sY - cTipH > 0 ? sY - cTipH : sY;
                g2d.fillRect(sX, cStartY, cTipW, cTipH);
                g2d.setPaint(Color.WHITE);
                g2d.drawString(cTip, sX, cStartY 
== sY ? sY + cTipH - 3
                        : sY 
- 3);
            }
            g2d.dispose();

怎么样,比起QQ的截图程序,我们又近一步了,嗯。

posted on 2007-09-13 13:28 ruislan 阅读(1483) 评论(10)  编辑  收藏

FeedBack:
# re: 改进“千里冰封”的截屏程序 2007-09-13 15:19 BeanSoft
呵呵, 支持!  回复  更多评论
  
# re: 改进“千里冰封”的截屏程序 2007-09-13 15:32 千里冰封
呵呵,谢谢,加上信息提示再强大了.支持:)  回复  更多评论
  
# re: 改进“千里冰封”的截屏程序 2007-09-13 16:09 老象
日白  回复  更多评论
  
# re: 改进“千里冰封”的截屏程序 2007-09-13 17:10 faen
不错,加油干,兄弟们  回复  更多评论
  
# re: 改进“千里冰封”的截屏程序[未登录] 2007-09-14 09:29 Samuel
顶一个。强悍!  回复  更多评论
  
# re: 改进“千里冰封”的截屏程序 2007-09-14 09:44 刘甘泉
呵呵,偶对图像处理不熟,搞web方向的  回复  更多评论
  
# re: 改进“千里冰封”的截屏程序 2007-10-20 17:26 RaviLi
很不错。  回复  更多评论
  
# re: 改进“千里冰封”的截屏程序 2008-07-23 15:59 zyhxl66
好 非常不错 支持!这个程序慢慢的功能会非常强大  回复  更多评论
  
# re: 改进“千里冰封”的截屏程序[未登录] 2009-06-10 15:17 rose
我觉得还差一个最关键的功能
快捷键

既然程序可以最小化到系统托盘

需要一个截屏快捷键来直接使用它,否则最小化到托盘没什么意义,只是花哨的存在

  回复  更多评论
  
# re: 改进“千里冰封”的截屏程序 2010-12-27 15:30 replica watch
nice post  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问