資源簡介
實現(xiàn)Java2D之字體編程:
1、java.awt.Font的使用。
2、用TextLayout和LineBreakMeasurer類設計一個有趣的藝術(shù)字演示程序;
3、模仿Word軟件的某一個功能(如藝術(shù)字的)

代碼片段和文件信息
import?java.awt.*;
import?java.awt.event.*;
import?java.awt.geom.*;
import?java.awt.font.*;
import?javax.swing.Japplet;
public?class?Clipping?extends?Japplet?{
????public?void?init()?{
setBackground(Color.white);
????}
????@Override
????public?void?paint(Graphics?g)?{
????????Graphics2D?g2;
????????g2?=?(Graphics2D)?g;
????????g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING
????????????????????????????RenderingHints.VALUE_ANTIALIAS_ON);
????????g2.setRenderingHint(RenderingHints.KEY_RENDERING
????????????????????????????RenderingHints.VALUE_RENDER_QUALITY);
????????int?w?=?getSize().width;
????????int?h?=?getSize().height;
????????FontRenderContext?frc?=?g2.getFontRenderContext();
????????Font?f?=?new?Font(“Helvetica“Font.BOLD+Font.ITALICw/8);
????????String?s?=?new?String(“中南民族大學“);
????????TextLayout?tl?=?new?TextLayout(s?f?frc);
????????float?sw?=?(float)?tl.getBounds().getWidth();
AffineTransform?transform?=?new?AffineTransform();
transform.setToTranslation(w/2-sw/2h/2);
????????Shape?shape?=?tl.getOutline(transform);
????????g2.setClip(shape);
????????g2.setColor(Color.blue);
????????g2.fill(shape.getBounds());
????????g2.setColor(Color.yellow);
????????for?(int?j?=?shape.getBounds().y;?j?????????????Line2D?line?=?new?Line2D.Float(?0.0f?(float)?j
????????????????????????????????????????(float)?w?(float)?j);
????????????g2.draw(line);
????????}
????}
????public?static?void?main(String[]?args)?{
?????????WindowListener?l?=?new?WindowAdapter()?{
????????????@Override
????????????public?void?windowClosing(WindowEvent?e)?{System.exit(0);}
????????????@Override
????????????public?void?windowClosed(WindowEvent?e)?{System.exit(0);}
????????};
????????frame?f?=?new?frame(“多媒體之2D文本展示“);
????????f.addWindowListener(l);
????????f.add(“Center“?new?Clipping());
????????f.pack();
????????f.setSize(new?Dimension(400?300));
????????f.show();
????}
}
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件????????514??2010-04-28?13:02??源代碼\Clipping$1.class
?????文件???????2819??2010-04-28?13:02??源代碼\Clipping.class
?????文件????????206??2010-04-28?12:44??源代碼\Clipping.html
?????文件???????2038??2010-04-28?13:02??源代碼\Clipping.java
?????文件???????5116??2007-11-26?12:52??源代碼\clouds.jpg
?????文件???????1929??2007-11-26?12:52??源代碼\duke.gif
?????文件????????271??2010-04-28?12:50??源代碼\left.html
?????文件????????406??2010-04-28?12:52??源代碼\right.html
?????文件????????253??2010-04-28?12:56??源代碼\Show.html
?????文件????????456??2010-04-28?13:11??源代碼\ShowFont$1.class
?????文件???????3903??2010-04-28?13:11??源代碼\ShowFont.class
?????文件????????207??2010-04-28?12:49??源代碼\ShowFont.html
?????文件???????4574??2010-04-28?12:32??源代碼\ShowFont.java
?????文件????????508??2010-04-28?13:06??源代碼\Starry$1.class
?????文件???????2522??2010-04-28?13:06??源代碼\Starry.class
?????文件????????204??2010-04-28?13:07??源代碼\Starry.html
?????文件???????2161??2010-04-28?13:06??源代碼\Starry.java
?????文件???????7643??2010-04-27?21:30??源代碼\Text.java
?????文件????????526??2010-04-28?12:36??源代碼\TextClipping$1.class
?????文件???????2890??2010-04-28?12:36??源代碼\TextClipping.class
?????文件????????213??2010-04-28?12:49??源代碼\TextClipping.html
?????文件???????2262??2010-04-28?11:51??源代碼\TextClipping.java
?????文件???????1404??2010-04-28?14:23??源代碼\WriteFont$1.class
?????文件???????1404??2010-04-28?14:23??源代碼\WriteFont$2.class
?????文件???????1404??2010-04-28?14:23??源代碼\WriteFont$3.class
?????文件???????1404??2010-04-28?14:23??源代碼\WriteFont$4.class
?????文件????????426??2010-04-29?17:11??源代碼\WriteFont.bat
?????文件???????4158??2010-04-28?14:23??源代碼\WriteFont.class
?????文件???????8062??2010-04-28?14:23??源代碼\WriteFont.java
?????文件?????615690??2010-04-28?14:24??源代碼\多媒體實驗報告.wps
............此處省略4個文件信息
評論
共有 條評論