2-2验证码绘制

2-2验证码绘制

老师,学习这节视屏后我有些疑问,请老师帮忙解答:
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。
希望老师能为我解惑,万分感谢。说实话这一章我听的很吃力。


正在回答

登陆购买课程后可参与讨论,去登陆

1回答

bounds.getWidth是获得窗体矩形的宽度,bounds.getHeight是获得窗体矩形的高度,通过(width - bounds.getWidth())/2和(height - bounds.getHeight())/2计算出矩形在xy轴上的坐标。ascent是窗体矩形左上角的 Y 坐标,通过y-ascent就能算出窗体的准确y坐标,然后通过drawString方法进行绘制。建议你理解每个方法都是获得什么数据的,然后根据自己的测试去加强理解,如果我的建议解决了你的问题,请采纳,祝学习愉快~



  • 清秋子 提问者 #1
    很有用,谢谢你的回答。
    2018-06-04 16:26:43
  • 矩形在xy轴 这个xy轴是以什么为原点的?
    2018-06-21 08:41:17
  • 是矩形的左上角吗,请问getwidth是获得矩形宽度,可是也没设置宽度啊?还是一创建就有默认宽度?
    2018-06-21 09:04:20
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
从网页搭建入门Java Web2018版
  • 参与学习           人
  • 提交作业       1088    份
  • 解答问题       10205    个

如果你有Java语言基础,又想以后从事Java Web开发,那么本路径是你的不二选择!本路径从网页搭建开始入手,通过大量案例来学习Java Web基础。定能助你完成Java Web小白的蜕变!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师