- 最近写了一段阴影文字的代码
- /*
- dkplus专业搜集和编写实用电脑软件教程,搜集各种软件资源和计算机周边(java网络编程、seo网站优化、web开发,lnmp,java网络编程,毕业论文设计),独立制作视频和ppt和音频微信公众号,点击进入 dkplus官方博客http://dkplus.iteye.com 微信搜索dkplus关注公众号可获取海量计算机周边资源。
- */
- import java.awt.*;
- import java.applet.*;
- import java.util.Random;
- //跳动文字
- public class ShadowTextApplet extends Applet implements Runnable{
- String message; //待显示的文本信息
- Thread thread; //实现文字运动的线程
- int fontHeight,speed,baseline; //字体高度,运动速度和基线
- Color textColor,bgColor,shadomColor; //文字颜色、背景颜色与阴影颜色
- Image newImage; //实现跳动的Image对象
- Graphics newGraphics; //实现跳动的Graphics对象
- boolean normal; //文字是否跳动的标志
- Font font; //显示字体
- FontMetrics fontMetric; //显示字体的FontMetrics对象
- public void init(){ //初始化
- Graphics graphics = getGraphics(); //得到graphics对象
- Dimension dim=getSize(); //得到尺寸
- fontHeight=dim.height-10; //根据Applet尺寸设置文字高度
- newImage=createImage(dim.width,dim.height); //创建newImage对象
- newGraphics = newImage.getGraphics(); //得到Graphics对象
- message=getParameter("text"); //得到显示文字
- if (message==null){
- message="阴影文字"; //设置默认文字
- }
- int textWidth=dim.width-(message.length() + 1)*5-10; //设置文字宽度
- do{
- graphics.setFont(new Font("TimesRoman", 1, fontHeight)); //设置显示字体
- fontMetric = graphics.getFontMetrics(); //得到FontMetric对象
- if(fontMetric.stringWidth(message)>textWidth) //根据文字宽度调整其高度
- fontHeight--;
- }
- while(fontMetric.stringWidth(message) > textWidth);{
- baseline = getSize().height - fontMetric.getMaxDescent(); //调整显示基线位置
- }
- font = new Font("TimesRoman", 1, fontHeight); //得到字体实例
- String param; //参数字符串
- if((param = getParameter("TEXTCOLOR")) == null) //得到文本颜色
- textColor = Color.black; //设置默认文本颜色
- else
- textColor = new Color(Integer.parseInt(param)); //设置文本颜色
- if((param = getParameter("BGCOLOR")) == null) //得到背景颜色
- bgColor = Color.white; //设置默认背景颜色
- else
- bgColor = new Color(Integer.parseInt(param));
- if((param = getParameter("SHADOMCOLOR")) == null) //得到阴影颜色
- shadomColor = Color.lightGray; //设置默认阴影颜色
- else
- shadomColor = new Color(Integer.parseInt(param));
- if((param = getParameter("NORMAL")) != null) //是否是静态文本
- normal = (Integer.valueOf(param).intValue()!=0); //参数值不为零,则为静态文本
- setBackground(bgColor); //设置背景颜色
- if((param = getParameter("SPEED")) != null) //得到运动速度
- speed = Integer.valueOf(param).intValue();
- if(speed == 0)
- speed = 200; //设置默认运动速度
- thread = new Thread(this); //实例化运动文字线程
- }
- public void start(){ //开始运行线程
- if(thread == null) {
- thread = new Thread(this); //实例化线程
- }
- thread.start(); //线程运行
- }
- public void run(){ //线程运行主体
- while(thread!=null) {
- try{
- Thread.sleep(speed); //线程休眠,即跳动间隔时间
- }
- catch(InterruptedException ex) {}
- repaint(); //重绘屏幕
- }
- System.exit(0); //退出程序
- }
- public void paint(Graphics g) { //绘制Applet
- if(normal) { //如果是静态文本
- g.setColor(bgColor); //设置当前颜色
- g.fillRect(0, 0, getSize().width, getSize().height); //绘制填充矩形
- g.setColor(textColor); //设置当前颜色
- g.setFont(font); //设置当前字体
- g.drawString(message, (getSize().width - fontMetric.stringWidth(message)) / 2, baseline); //绘出字符串
- }
- }
- public void update(Graphics g){ //更新Applet
- newGraphics.setColor(bgColor); //设置当前颜色
- newGraphics.fillRect(0, 0, getSize().width, getSize().height); //绘制填充矩形
- newGraphics.setColor(textColor); //设置当前颜色
- newGraphics.setFont(font); //设置字体
- if(!normal){ //如果是跳动文字
- java.util.Random r=new java.util.Random();
- int xpoint = r.nextInt(fontMetric.stringWidth(message)); //生成随机X坐标
- font = new Font("TimesRoman",Font.BOLD,30); //设置字体
- newGraphics.setFont(font); //设置当前字体
- newGraphics.setColor(shadomColor); //设置当前颜色
- newGraphics.drawString(message,xpoint+3,baseline +3); //绘制阴影
- newGraphics.setColor(textColor); //设置文本颜色
- newGraphics.drawString(message,xpoint,baseline); //绘字符串
- }
- else { //如果是静态文本
- font = new Font("TimesRoman",Font.BOLD,30); //设置字体
- newGraphics.setFont(font); //设置当前字体
- newGraphics.setColor(shadomColor); //设置当前颜色
- newGraphics.drawString(message,xpoint+3,baseline +3); //绘制阴影
- newGraphics.setColor(textColor); //设置文本颜色
- newGraphics.drawString(message,xpoint,baseline); //绘字符串
- }
- g.drawImage(newImage, 0, 0, this); //绘制Image
- }
- }
- 浏览: 17523 次
- 性别:
- 来自: 广州
最新评论
发表评论
-
飞行文字
2016-09-26 20:55 568最近写了一段飞行文字代码 /* dkplus专业搜集和编 ... -
波浪文字
2016-09-24 17:09 727最近写了一段波浪文字代码 /* dkplus专业搜集和编 ... -
java播放器
2016-09-17 10:04 677最近写了一段java播放器代码 /* dkplus专业搜 ... -
聊天室java
2016-09-16 08:37 579最近写了一段聊天室java代码 /* dkplus专业搜 ... -
3d文字
2016-09-14 18:49 478最近写了一段代码 /* dkplus专业搜集和编写实用 ... -
【微信SEO】怎样让用户搜索到你的公众号??
2016-09-10 11:32 691最近,微信团队发出 ... -
为何不试试“爽过吸大麻”的vim
2016-08-30 18:19 860对很多程序猿来说,vim和emacs都是传奇的编辑器。 ... -
再不用markdown就落后啦
2016-08-28 19:37 842也许还有不少人第一次听markdown是在这篇文章。dk ... -
抖动文字
2016-07-19 21:06 1069最近写了一段抖动文字的代码 impo ... -
html浏览器
2016-07-18 22:59 628最近写了一段ht ... -
自定义光标
2016-07-16 22:36 622最近写了一段自定义光标代码 import java.aw ... -
老司机教你怎样下载电影
2016-07-15 19:16 931摘要 老司机要开车 ... -
文件选择器
2016-07-14 14:05 1085import java.io.File; import j ... -
调色板的代码
2016-07-05 16:33 468最近写了一段调色板的代码 import java.awt. ... -
程序启动界面java代码
2016-07-04 21:37 516最近写了个程序启动界面,分享一下 import javax ... -
校园网断网实用解救方法
2016-06-26 16:21 1728校园网断网是很正常的现象,但是原因并不是完全一样,所以 ... -
必备+好用的软件
2016-06-20 16:16 928我不敢说我用的软件是非常好的,但是起码我用起来非常舒服,运行 ... -
怎么破解Windows账户密码
2016-06-19 16:26 1019怎么破解Windows账户密码 2016-06- ... -
技术人:效率至上
2016-06-16 17:27 774提高eclipse开发效率 作为一个每天要学3门语言的程 ... -
如何提高eclipse开发效率
2016-06-03 17:41 537提高eclipse开发效率 作为一个每天要学3门语言的程 ...
相关推荐
四步制作长阴影文字效果PPT教程。1.插入圆角矩形和文字,设置居中对齐。2.设置文字格式,设置较大的深度值,深度颜色依自己需要设置,这里在底色的基础上在HSL模式下亮度减少20,设置材料为亚光材料,设置照明为平面...
Java阴影文字,源代码注释:实现文字运动的线程、文字颜色、背景颜色与阴影颜色、字体高度,运动速度和基线、实
Java阴影文字、跳动文字动画实例,附完整源码,跳动文字,建立一个实现文字运动的线程,定义字体高度,运动速度和基线,设置文字颜色、背景颜色与阴影颜色,实现跳动的Image对象和Graphics对象等,具体 请参见源代码...
易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码....
基于css3 keyframes属性制作的3D立体阴影文字动画特效,也支持中文,只是字体不合适的话,效果没那么好看。
带阴影文字输出的实现.带阴影文字输出的实现.
易语言阴影文字源码,阴影文字
HTML5 SVG 制作极强3D视觉特效的阴影文字动画,文字由两层嵌套而成,有很不错的质感 ,下层的文字会产生流水动画效果,且下层文字应用于阴影效果,十分的不错的效果。
翻译过来的一款jquery插件,当鼠标悬停在图片上后,有一个很漂亮的文字显示效果,很舒服、很惬意的效果。 默认第一张图片为大图,控制样式都在js中
3D阴影文字特效 字母文字颗粒动画 可设置重力感应 3D文字特效 文字立体可旋转 3D文字特效 文字外翻效果 Loading加载进度条动画 水位充满文字特效 发光文字 可自定义文字色彩 文字投影特效 乳白阴影文字效果 颜色渐变...
易语言阴影文字源码.zip
一款非常酷的CSS3 SVG 3D立体阴影文字动画特效,文字阴影呈现出3D立体的视觉效果,将阴影线条化,并且阴影线条还可以随着鼠标的滑过而呈现流动的动画特效。
商业编程-源码-带阴影文字输出的实现.zip
项目3制作阴影文字素材.pptx
项目3制作阴影文字素材.pdf
通过CSS动画实现的网页动态阴影文字特效 特效介绍页面:https://blog.csdn.net/evanyanglibo/article/details/121482355
vb程序设计项目化教程项目 制作阴影文字PPT学习教案.pptx
鼠标移动到图片上时弹出阴影覆盖层和覆盖层中的文字
CSS3 3D阴影文字动画特效是一款基于css3 keyframes属性制作3D立体阴影文本动画特效。
之前向大家分享过一款HTML5 Canvas字母文字颗粒动画,效果非常不错,由此可见,利用HTML5和CSS3可以方便的实现很多...今天我要向大家介绍一款HTML5/CSS3文字投影特效,它的使用也很简单,HTML5文字阴影效果也比较酷。