導航:首頁 > 編程語言 > 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生成長方形圖片相關的資料

熱點內容
word2003修改批註人 瀏覽:445
網路的規模是如何擴大的 瀏覽:381
資料文件夾單價多少 瀏覽:813
newfilejava 瀏覽:681
怎麼卸載天貓精靈里的app 瀏覽:544
蘋果電腦win7修復漏洞後內存 瀏覽:850
怎麼壓縮幾個文件夾 瀏覽:30
usb痕跡深度清理工具 瀏覽:614
有信賬號密碼分鍾享用 瀏覽:176
選定的外部參照參照了早期的圖形文件格式 瀏覽:323
蘋果官方網站是什麼 瀏覽:727
linux共享文件夾看不到文件 瀏覽:56
wos的數據分析在哪裡 瀏覽:338
pq從文件夾 瀏覽:545
蘋果13原裝數據線支持多少w 瀏覽:403
織夢cms資料庫說明 瀏覽:484
男人好難說唱版本 瀏覽:725
小姐的qq 瀏覽:900
java100萬100最大選出 瀏覽:595
js中包含數字 瀏覽:476

友情鏈接