`
dkplus
  • 浏览: 18619 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

阴影文字

阅读更多
  1. 最近写了一段阴影文字的代码
  2. /* 
  3. dkplus专业搜集和编写实用电脑软件教程,搜集各种软件资源和计算机周边(java网络编程、seo网站优化、web开发,lnmp,java网络编程,毕业论文设计),独立制作视频和ppt和音频微信公众号,点击进入 dkplus官方博客http://dkplus.iteye.com 微信搜索dkplus关注公众号可获取海量计算机周边资源。 
  4. */  
  5. import java.awt.*;  
  6. import java.applet.*;  
  7. import java.util.Random;  
  8.   
  9. //跳动文字  
  10.   
  11. public class ShadowTextApplet extends Applet implements Runnable{     
  12.    String message;  //待显示的文本信息  
  13.    Thread thread;  //实现文字运动的线程  
  14.    int fontHeight,speed,baseline; //字体高度,运动速度和基线  
  15.    Color textColor,bgColor,shadomColor; //文字颜色、背景颜色与阴影颜色  
  16.    Image newImage;  //实现跳动的Image对象  
  17.    Graphics newGraphics;  //实现跳动的Graphics对象  
  18.    boolean normal; //文字是否跳动的标志  
  19.    Font font; //显示字体  
  20.    FontMetrics fontMetric; //显示字体的FontMetrics对象  
  21.   
  22.    public void init(){ //初始化  
  23.         Graphics graphics = getGraphics(); //得到graphics对象  
  24.        Dimension dim=getSize(); //得到尺寸  
  25.        fontHeight=dim.height-10//根据Applet尺寸设置文字高度  
  26.        newImage=createImage(dim.width,dim.height); //创建newImage对象  
  27.        newGraphics = newImage.getGraphics(); //得到Graphics对象  
  28.        message=getParameter("text"); //得到显示文字  
  29.        if (message==null){          
  30.             message="阴影文字"//设置默认文字  
  31.        }  
  32.          
  33.        int textWidth=dim.width-(message.length() + 1)*5-10//设置文字宽度  
  34.        do{  
  35.         graphics.setFont(new Font("TimesRoman"1, fontHeight)); //设置显示字体  
  36.           fontMetric = graphics.getFontMetrics(); //得到FontMetric对象  
  37.           if(fontMetric.stringWidth(message)>textWidth) //根据文字宽度调整其高度  
  38.              fontHeight--;  
  39.        }  
  40.        while(fontMetric.stringWidth(message) > textWidth);{  
  41.         baseline = getSize().height - fontMetric.getMaxDescent(); //调整显示基线位置  
  42.        }  
  43.        font = new Font("TimesRoman"1, fontHeight); //得到字体实例  
  44.          
  45.        String param; //参数字符串  
  46.        if((param = getParameter("TEXTCOLOR")) == null//得到文本颜色  
  47.         textColor = Color.black; //设置默认文本颜色  
  48.        else  
  49.           textColor = new Color(Integer.parseInt(param));  //设置文本颜色  
  50.        if((param = getParameter("BGCOLOR")) == null)  //得到背景颜色  
  51.            bgColor = Color.white;  //设置默认背景颜色  
  52.        else  
  53.            bgColor = new Color(Integer.parseInt(param));   
  54.        if((param = getParameter("SHADOMCOLOR")) == null)  //得到阴影颜色  
  55.            shadomColor = Color.lightGray;  //设置默认阴影颜色  
  56.        else  
  57.            shadomColor = new Color(Integer.parseInt(param));   
  58.        if((param = getParameter("NORMAL")) != null//是否是静态文本  
  59.            normal = (Integer.valueOf(param).intValue()!=0); //参数值不为零,则为静态文本  
  60.        setBackground(bgColor); //设置背景颜色  
  61.        if((param = getParameter("SPEED")) != null//得到运动速度  
  62.            speed = Integer.valueOf(param).intValue();  
  63.        if(speed == 0)  
  64.            speed = 200;  //设置默认运动速度     
  65.         thread = new Thread(this); //实例化运动文字线程  
  66.     }  
  67.   
  68.     public void start(){ //开始运行线程  
  69.         if(thread == null) {  
  70.                 thread = new Thread(this); //实例化线程  
  71.         }  
  72.         thread.start(); //线程运行  
  73.     }  
  74.   
  75.     public void run(){  //线程运行主体  
  76.         while(thread!=null) {   
  77.             try{  
  78.                 Thread.sleep(speed); //线程休眠,即跳动间隔时间  
  79.             }  
  80.             catch(InterruptedException ex) {}  
  81.             repaint();  //重绘屏幕  
  82.         }  
  83.         System.exit(0);  //退出程序  
  84.     }  
  85.   
  86.   
  87.     public void paint(Graphics g) {  //绘制Applet  
  88.         if(normal) {  //如果是静态文本  
  89.             g.setColor(bgColor);  //设置当前颜色  
  90.             g.fillRect(00, getSize().width, getSize().height);  //绘制填充矩形  
  91.             g.setColor(textColor); //设置当前颜色  
  92.             g.setFont(font); //设置当前字体  
  93.             g.drawString(message, (getSize().width - fontMetric.stringWidth(message)) / 2, baseline); //绘出字符串  
  94.         }  
  95.     }  
  96.   
  97.     public void update(Graphics g){  //更新Applet  
  98.         newGraphics.setColor(bgColor); //设置当前颜色  
  99.         newGraphics.fillRect(00, getSize().width, getSize().height); //绘制填充矩形  
  100.         newGraphics.setColor(textColor); //设置当前颜色  
  101.         newGraphics.setFont(font); //设置字体  
  102.         if(!normal){ //如果是跳动文字  
  103.                 java.util.Random r=new java.util.Random();    
  104.             int xpoint = r.nextInt(fontMetric.stringWidth(message));  //生成随机X坐标  
  105.               
  106.             font = new Font("TimesRoman",Font.BOLD,30); //设置字体  
  107.             newGraphics.setFont(font);  //设置当前字体  
  108.                   
  109.             newGraphics.setColor(shadomColor); //设置当前颜色  
  110.             newGraphics.drawString(message,xpoint+3,baseline +3); //绘制阴影  
  111.               
  112.             newGraphics.setColor(textColor); //设置文本颜色  
  113.             newGraphics.drawString(message,xpoint,baseline); //绘字符串  
  114.                   
  115.         }   
  116.         else {  //如果是静态文本  
  117.             font = new Font("TimesRoman",Font.BOLD,30); //设置字体  
  118.             newGraphics.setFont(font);  //设置当前字体  
  119.                   
  120.             newGraphics.setColor(shadomColor); //设置当前颜色  
  121.             newGraphics.drawString(message,xpoint+3,baseline +3); //绘制阴影  
  122.               
  123.             newGraphics.setColor(textColor); //设置文本颜色  
  124.             newGraphics.drawString(message,xpoint,baseline); //绘字符串  
  125.           }  
  126.         g.drawImage(newImage, 00this); //绘制Image  
  127.     }  
  128. }  
1
0
分享到:
评论

相关推荐

    CSS3 SVG 3D立体阴影文字动画特效

    **CSS3 SVG 3D立体阴影文字动画特效详解** 在现代网页设计中,动态效果和交互性已经成为提升用户体验的关键因素。CSS3与SVG(可缩放矢量图形)的结合,为实现这样的效果提供了强大的工具。本文将深入探讨如何利用...

    四步制作长阴影文字效果教程.rar

    四步制作长阴影文字效果PPT教程。1.插入圆角矩形和文字,设置居中对齐。2.设置文字格式,设置较大的深度值,深度颜色依自己需要设置,这里在底色的基础上在HSL模式下亮度减少20,设置材料为亚光材料,设置照明为平面...

    jQuery Griddler 插件控制图片悬停阴影文字说明效果

    综上所述,jQuery Griddler插件是一个强大而灵活的工具,它能为你的网站图片添加吸引人的悬停阴影文字效果,提升用户体验。结合适当的样式调整和功能配置,它可以在多种应用场景中发挥出色的作用。

    Java阴影文字源代码

    在Java编程语言中,阴影文字是一种视觉效果,它通过在文字下方或周围添加颜色较淡的副本来增强文字的立体感。本主题将深入探讨如何使用Java实现阴影文字,包括涉及的技术、源代码注释以及如何调整文字运动、颜色、...

    css3 3D立体阴影文字动画特效

    在CSS3的世界里,我们可以利用一系列先进的特性来创建引人注目的视觉效果,其中3D立体阴影文字动画特效就是一种非常吸引人的技术。这个特效利用了CSS3的关键帧动画(keyframes)属性,以及文本相关的3D转换和阴影...

    易语言阴影文字源码.zip

    在"易语言阴影文字源码.zip"这个压缩包中,我们可以期待找到与易语言相关的阴影文字实现的源代码。阴影文字通常是指在文本上添加一种视觉效果,使其看起来像是有深度,从而在视觉上产生立体感或突出感。 在易语言中...

    商业编程-源码-带阴影文字输出的实现.zip

    本资源“商业编程-源码-带阴影文字输出的实现.zip”提供了一种实现带阴影文字的技术方案,主要适用于图形用户界面(GUI)应用或者游戏开发中的文本渲染。以下是对这个主题的详细讲解。 首先,带阴影的文字输出是一...

    纯css鼠标覆盖阴影文字效果

    "纯CSS鼠标覆盖阴影文字效果"是一种通过CSS实现的技术,当鼠标悬停在图片上时,会触发一个阴影覆盖层,同时在覆盖层上显示相关的文字信息。这种方法可以增强用户与网站内容的互动性,提供更直观的反馈,提升整体的...

    HTML5 SVG 制作极强3D视觉特效的阴影文字动画.rar

    在本案例中,阴影文字动画是通过SVG的`<text>`元素和CSS3的阴影属性实现的。HTML5的`<canvas>`元素虽然也可以用来绘制图形,但在这个效果中,SVG提供了更直接的文本操作能力,可以轻松地对每个字符进行独立的样式...

    3d粉色阴影文字特效.rar

    【标题】"3d粉色阴影文字特效.rar"指的是一个压缩包文件,其中包含了实现3D粉色阴影文字特效的相关代码和资源。这种特效通常用于网页设计,以增加视觉吸引力和交互性,尤其适用于时尚、浪漫或者创意类网站。 【描述...

    易语言阴影文字

    在“易语言阴影文字”这个主题中,我们主要探讨的是如何在易语言中实现文字阴影效果,这通常涉及到图形界面的渲染和控制。 首先,我们要了解在易语言中创建和操作图形的基本概念。易语言提供了窗口程序模块,可以...

    十几个酷炫的HTML5 CSS3文字特效 源代码.zip

    3D阴影文字特效 字母文字颗粒动画 可设置重力感应 3D文字特效 文字立体可旋转 3D文字特效 文字外翻效果 Loading加载进度条动画 水位充满文字特效 发光文字 可自定义文字色彩 文字投影特效 乳白阴影文字效果 颜色渐变...

    带阴影文字输出的实现(VC源码).

    实现带阴影文字输出的基本步骤如下: 1. **初始化图形环境**:首先,你需要创建一个设备上下文(Device Context, DC),这是GDI进行图形绘制的基础。你可以通过`CreateCompatibleDC`函数创建一个与窗口兼容的设备上...

    很哇塞的网页特效之动态阴影文字源代码

    "很哇塞的网页特效之动态阴影文字源代码"就是一个很好的例子,它利用了CSS3中的多种特性,包括动态阴影、text-fill-color、background-clip以及animation,来创建出引人入胜的文字动画效果。下面将详细阐述这些知识...

    Java制作跳动动画的阴影文字.rar

    Java阴影文字、跳动文字动画实例,附完整源码,跳动文字,建立一个实现文字运动的线程,定义字体高度,运动速度和基线,设置文字颜色、背景颜色与阴影颜色,实现跳动的Image对象和Graphics对象等,具体 请参见源代码...

    CSS3 3D阴影文字动画特效.zip

    【标题】"CSS3 3D阴影文字动画特效"是一个基于CSS3技术的创新应用,旨在为网页设计增添视觉吸引力。CSS3是层叠样式表(Cascading Style Sheets)的第三版,它引入了许多新的功能和特性,使得网页设计更加丰富多彩。...

    易语言源码易语言阴影文字源码.rar

    易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码....

    vb程序设计项目化教程项目 制作阴影文字PPT学习教案.pptx

    【VB程序设计项目化教程:制作阴影文字PPT学习教案】 在VB编程中,制作阴影文字是一项基础且有趣的练习,旨在帮助学习者掌握VB的基本概念和技术。本项目旨在教会学生如何通过编程实现阴影文字的三种不同效果:左下...

    桌面歌词秀源代码 (实现QQ音乐,千千静听等的桌面歌词,彩色抗锯齿带阴影文字)

    【标题】:“桌面歌词秀源代码 (实现QQ音乐,千千静听等的桌面歌词,彩色抗锯齿带阴影文字)” 【描述】中的知识点: 1. **桌面歌词**:桌面歌词是指一种在电脑桌面上显示歌曲歌词的功能,让用户无需打开音乐播放器...

    项目3制作阴影文字素材.pptx

    项目3制作阴影文字素材.pptx

Global site tag (gtag.js) - Google Analytics