2-2验证码绘制
1 2 3 4 5 6 7 8 9 10 11 12 13 | 老师,学习这节视屏后我有些疑问,请老师帮忙解答: 1 : double x=(width - bounds.getWidth())/ 2 ; double y=(height - bounds.getHeight())/ 2 ; 这两段代码是用来取文件的x和y轴坐标的么,(width - bounds.getWidth())/ 2 和(height - bounds.getHeight())/ 2 是文字宽和高一半的坐标么。 2 : double ascent=bounds.getY(); double baseY =y-ascent(); 这两段代码又是用来干什么的呢,为什么要y-ascent呢。 3 :绘制文字时 g.drawString(code,( int )x,( int )baseY);为什么直接使用坐标而y坐标却是要用baseY。 希望老师能为我解惑,万分感谢。说实话这一章我听的很吃力。 |
31
收起
正在回答
1回答
bounds.getWidth是获得窗体矩形的宽度,bounds.getHeight是获得窗体矩形的高度,通过(width - bounds.getWidth())/2和(height - bounds.getHeight())/2计算出矩形在xy轴上的坐标。ascent是窗体矩形左上角的 Y 坐标,通过y-ascent就能算出窗体的准确y坐标,然后通过drawString方法进行绘制。建议你理解每个方法都是获得什么数据的,然后根据自己的测试去加强理解,如果我的建议解决了你的问题,请采纳,祝学习愉快~
从网页搭建入门Java Web2018版
- 参与学习 人
- 提交作业 1088 份
- 解答问题 10204 个
如果你有Java语言基础,又想以后从事Java Web开发,那么本路径是你的不二选择!本路径从网页搭建开始入手,通过大量案例来学习Java Web基础。定能助你完成Java Web小白的蜕变!
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧