- 最近写了一段阴影文字的代码
- /*
- 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
- }
- }
- 浏览: 18619 次
- 性别:
- 来自: 广州
最新评论
发表评论
-
飞行文字
2016-09-26 20:55 614最近写了一段飞行文字代码 /* dkplus专业搜集和编 ... -
波浪文字
2016-09-24 17:09 768最近写了一段波浪文字代码 /* dkplus专业搜集和编 ... -
java播放器
2016-09-17 10:04 734最近写了一段java播放器代码 /* dkplus专业搜 ... -
聊天室java
2016-09-16 08:37 617最近写了一段聊天室java代码 /* dkplus专业搜 ... -
3d文字
2016-09-14 18:49 521最近写了一段代码 /* dkplus专业搜集和编写实用 ... -
【微信SEO】怎样让用户搜索到你的公众号??
2016-09-10 11:32 723最近,微信团队发出 ... -
为何不试试“爽过吸大麻”的vim
2016-08-30 18:19 953对很多程序猿来说,vim和emacs都是传奇的编辑器。 ... -
再不用markdown就落后啦
2016-08-28 19:37 922也许还有不少人第一次听markdown是在这篇文章。dk ... -
抖动文字
2016-07-19 21:06 1109最近写了一段抖动文字的代码 impo ... -
html浏览器
2016-07-18 22:59 675最近写了一段ht ... -
自定义光标
2016-07-16 22:36 654最近写了一段自定义光标代码 import java.aw ... -
老司机教你怎样下载电影
2016-07-15 19:16 973摘要 老司机要开车 ... -
文件选择器
2016-07-14 14:05 1119import java.io.File; import j ... -
调色板的代码
2016-07-05 16:33 511最近写了一段调色板的代码 import java.awt. ... -
程序启动界面java代码
2016-07-04 21:37 559最近写了个程序启动界面,分享一下 import javax ... -
校园网断网实用解救方法
2016-06-26 16:21 1775校园网断网是很正常的现象,但是原因并不是完全一样,所以 ... -
必备+好用的软件
2016-06-20 16:16 965我不敢说我用的软件是非常好的,但是起码我用起来非常舒服,运行 ... -
怎么破解Windows账户密码
2016-06-19 16:26 1059怎么破解Windows账户密码 2016-06- ... -
技术人:效率至上
2016-06-16 17:27 825提高eclipse开发效率 作为一个每天要学3门语言的程 ... -
如何提高eclipse开发效率
2016-06-03 17:41 585提高eclipse开发效率 作为一个每天要学3门语言的程 ...
相关推荐
**CSS3 SVG 3D立体阴影文字动画特效详解** 在现代网页设计中,动态效果和交互性已经成为提升用户体验的关键因素。CSS3与SVG(可缩放矢量图形)的结合,为实现这样的效果提供了强大的工具。本文将深入探讨如何利用...
四步制作长阴影文字效果PPT教程。1.插入圆角矩形和文字,设置居中对齐。2.设置文字格式,设置较大的深度值,深度颜色依自己需要设置,这里在底色的基础上在HSL模式下亮度减少20,设置材料为亚光材料,设置照明为平面...
综上所述,jQuery Griddler插件是一个强大而灵活的工具,它能为你的网站图片添加吸引人的悬停阴影文字效果,提升用户体验。结合适当的样式调整和功能配置,它可以在多种应用场景中发挥出色的作用。
在Java编程语言中,阴影文字是一种视觉效果,它通过在文字下方或周围添加颜色较淡的副本来增强文字的立体感。本主题将深入探讨如何使用Java实现阴影文字,包括涉及的技术、源代码注释以及如何调整文字运动、颜色、...
在CSS3的世界里,我们可以利用一系列先进的特性来创建引人注目的视觉效果,其中3D立体阴影文字动画特效就是一种非常吸引人的技术。这个特效利用了CSS3的关键帧动画(keyframes)属性,以及文本相关的3D转换和阴影...
在"易语言阴影文字源码.zip"这个压缩包中,我们可以期待找到与易语言相关的阴影文字实现的源代码。阴影文字通常是指在文本上添加一种视觉效果,使其看起来像是有深度,从而在视觉上产生立体感或突出感。 在易语言中...
本资源“商业编程-源码-带阴影文字输出的实现.zip”提供了一种实现带阴影文字的技术方案,主要适用于图形用户界面(GUI)应用或者游戏开发中的文本渲染。以下是对这个主题的详细讲解。 首先,带阴影的文字输出是一...
"纯CSS鼠标覆盖阴影文字效果"是一种通过CSS实现的技术,当鼠标悬停在图片上时,会触发一个阴影覆盖层,同时在覆盖层上显示相关的文字信息。这种方法可以增强用户与网站内容的互动性,提供更直观的反馈,提升整体的...
在本案例中,阴影文字动画是通过SVG的`<text>`元素和CSS3的阴影属性实现的。HTML5的`<canvas>`元素虽然也可以用来绘制图形,但在这个效果中,SVG提供了更直接的文本操作能力,可以轻松地对每个字符进行独立的样式...
【标题】"3d粉色阴影文字特效.rar"指的是一个压缩包文件,其中包含了实现3D粉色阴影文字特效的相关代码和资源。这种特效通常用于网页设计,以增加视觉吸引力和交互性,尤其适用于时尚、浪漫或者创意类网站。 【描述...
在“易语言阴影文字”这个主题中,我们主要探讨的是如何在易语言中实现文字阴影效果,这通常涉及到图形界面的渲染和控制。 首先,我们要了解在易语言中创建和操作图形的基本概念。易语言提供了窗口程序模块,可以...
3D阴影文字特效 字母文字颗粒动画 可设置重力感应 3D文字特效 文字立体可旋转 3D文字特效 文字外翻效果 Loading加载进度条动画 水位充满文字特效 发光文字 可自定义文字色彩 文字投影特效 乳白阴影文字效果 颜色渐变...
实现带阴影文字输出的基本步骤如下: 1. **初始化图形环境**:首先,你需要创建一个设备上下文(Device Context, DC),这是GDI进行图形绘制的基础。你可以通过`CreateCompatibleDC`函数创建一个与窗口兼容的设备上...
"很哇塞的网页特效之动态阴影文字源代码"就是一个很好的例子,它利用了CSS3中的多种特性,包括动态阴影、text-fill-color、background-clip以及animation,来创建出引人入胜的文字动画效果。下面将详细阐述这些知识...
Java阴影文字、跳动文字动画实例,附完整源码,跳动文字,建立一个实现文字运动的线程,定义字体高度,运动速度和基线,设置文字颜色、背景颜色与阴影颜色,实现跳动的Image对象和Graphics对象等,具体 请参见源代码...
【标题】"CSS3 3D阴影文字动画特效"是一个基于CSS3技术的创新应用,旨在为网页设计增添视觉吸引力。CSS3是层叠样式表(Cascading Style Sheets)的第三版,它引入了许多新的功能和特性,使得网页设计更加丰富多彩。...
易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码.rar 易语言源码易语言阴影文字源码....
【VB程序设计项目化教程:制作阴影文字PPT学习教案】 在VB编程中,制作阴影文字是一项基础且有趣的练习,旨在帮助学习者掌握VB的基本概念和技术。本项目旨在教会学生如何通过编程实现阴影文字的三种不同效果:左下...
【标题】:“桌面歌词秀源代码 (实现QQ音乐,千千静听等的桌面歌词,彩色抗锯齿带阴影文字)” 【描述】中的知识点: 1. **桌面歌词**:桌面歌词是指一种在电脑桌面上显示歌曲歌词的功能,让用户无需打开音乐播放器...
项目3制作阴影文字素材.pptx