导航:首页 > 编程语言 > java生成长方形图片

java生成长方形图片

发布时间:2023-06-10 14:10:26

『壹』 用java语言写一个二维平面图形(如长方形)的平移,旋转,缩放的程序.

importjavax.swing.*;

importjava.awt.*;

importjava.awt.event.ActionEvent;

importjava.awt.geom.*;

/**

*@

*/

{

=newDimension(300,200);

=newDimension(1024,768);

=newDimension(600,400);

publicDimensiongetMaximumSize(){returnmaxSize;}

publicDimensiongetMinimumSize(){returnminSize;}

(){returnpreferredSize;}

publicStringgetTitle(){return"FrameTitle";}

privateAffineTransformaf=newAffineTransform();

privateStrokestroke=newBasicStroke(2.0f);

privateRectanglerct=newRectangle(40,140,200,140);

privateJComponentcanvas=newJComponent(){

protectedvoidpaintComponent(Graphicsg){

super.paintComponent(g);

g.setColor(Color.BLACK);

g.fillRect(0,0,getWidth(),getHeight());

Graphics2Dg2d=(Graphics2D)g.create();

g2d.setColor(Color.YELLOW);

g2d.setTransform(af);

g2d.setStroke(stroke);

g2d.draw(rct);

g2d.dispose();

}

};

RectTransform()throwsHeadlessException{

init();

doLay();

attachListeners();

}

privatevoidinit(){

}

privatevoiddoLay(){

Containercontainer=getContentPane();

JPanelpanel=newJPanel(newFlowLayout(FlowLayout.CENTER,30,5));

panel.add(newJButton(newAfAction("move",AffineTransform.getTranslateInstance(100,100))));

panel.add(newJButton(newAfAction("rotate",AffineTransform.getRotateInstance(Math.PI/3,40,120))));

panel.add(newJButton(newAfAction("zoomIn",AffineTransform.getScaleInstance(2,2))));

panel.add(newJButton(newAfAction("ZoomOut",AffineTransform.getScaleInstance(.5d,.5d))));

panel.add(newJButton(newAfAction("Original",newAffineTransform())));

container.add(panel,BorderLayout.NORTH);

container.add(canvas,BorderLayout.CENTER);

pack();

}

privatevoidattachListeners(){

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

{

privateAffineTransformaff;

privateAfAction(Stringn,AffineTransformaf){

super(n);

this.aff=af;

}

publicvoidactionPerformed(ActionEvente){

af.setTransform(aff);

if(canvas.isVisible())canvas.paintImmediately(0,0,getWidth(),getHeight());

}

}

publicstaticvoidmain(String[]args){

newRectTransform().setVisible(true);

}

}

『贰』 java代码实现缩放图片,长方形图片变成正方形,上下保留空白区域.

那就把正方形的边长设置成长方形最长的变那么长
不就可以了吗

阅读全文

与java生成长方形图片相关的资料

热点内容
app充值请联系itunes 浏览:678
矢量app和cdr哪个好 浏览:85
系统文件坏了如何修复 浏览:20
键盘系统文件误删 浏览:738
白金英雄坛所有版本 浏览:842
ps文件转hsj 浏览:382
哪个网站电影 浏览:490
ps4游戏文件格式名称 浏览:290
caxa教程2007 浏览:832
新点是什么小说网站 浏览:753
魔兽世界冰封王座3版本转换器 浏览:418
苹果3dtouch软件 浏览:979
qq视频在哪个文件夹里面 浏览:740
请帖制作网站java源码 浏览:257
自己的网站怎么做兼职 浏览:608
医院基础数据是什么 浏览:744
为什么数据线没有typec接口 浏览:39
苹果手机文件管家 浏览:187
qq头像男生水里 浏览:633
联想电脑初始密码 浏览:517

友情链接