| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 569 人关注过本帖
标题:剪切文字 怎出现很多问题
只看楼主 加入收藏
wehooooo
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-6-12
收藏
 问题点数:0 回复次数:3 
剪切文字 怎出现很多问题


//剪切文字图形
//import java.awt.event.*;
import java.awt.*;
import java.awt.geom.*;
import javax.swing.*;
import java.awt.font.*;

public class ClipShape extends JApplet{
/**
*
*/
private static final long serialVersionUID = 1L;
Shape clipshape;
public void paint(Graphics g){
Graphics2D g2=(Graphics2D)g;
clipshape=makeclipshape(g2);
g2.draw(clipshape);//
g2.clip(clipshape);//剪切文字图形
final int N=90;
Point2D p=new Point2D.Double(0,0);
for(int i=0;i<N;i++){
double x=(2*getWidth()*i)/N;
double y=(2*getHeight()*i)/N;
Point2D q=new Point2D.Double(x,y);
//设置剪切的形状,绘制一组线条
g2.draw(new Line2D.Double(p,q));
}//end for
}//end paint

Shape makeclipshape(Graphics2D g2){
FontRenderContext context=g2.getFontRenderContext();
Font f=new Font("隶书",Font.PLAIN,80);
//创建文本图形的路径对象
GeneralPath path=new GeneralPath();
//创建文本布局对象
TextLayout layout=new TextLayout("Hello",f,context);
//将用户坐标系的基点移到屏幕坐标系(0,80)处
AffineTransform transform=AffineTransform.getTranslateInstance(0,80);
// 创建图形对象 该对象是文本布局对象的图形轮廓对象
Shape outline=layout.getOutline(transform);
path.append(outline,false);
layout=new TextLayout("你好",f,context);
transform=AffineTransform.getTranslateInstance(0,170);
outline=layout.getOutline(transform);
//设置false,表示在第一个图形画完 在抬笔 画第二个图形
path.append(outline,false);
return path;
}//end makeclipeshape
}//end class


错误
Clipshape.java:18: 无法将 java.awt.Graphics2D 中的 draw(java.awt.Shape) 应用于 (
Shape)
g2.draw(clipshape);//
^
Clipshape.java:19: 无法将 java.awt.Graphics2D 中的 clip(java.awt.Shape) 应用于 (
Shape)
g2.clip(clipshape);//剪切文字图形
^
Clipshape.java:41: 不兼容的类型
找到: java.awt.Shape
需要: Shape
Shape outline=layout.getOutline(transform);
^
Clipshape.java:42: 找不到符号
符号: 方法 append(Shape,boolean)
位置: 类 java.awt.geom.GeneralPath
path.append(outline,false);
^
Clipshape.java:45: 不兼容的类型
找到: java.awt.Shape
需要: Shape
outline=layout.getOutline(transform);
^
Clipshape.java:47: 找不到符号
符号: 方法 append(Shape,boolean)
位置: 类 java.awt.geom.GeneralPath
path.append(outline,false);
^
Clipshape.java:48: 不兼容的类型
找到: java.awt.geom.GeneralPath
需要: Shape
return path;
^
7 错误

搜索更多相关主题的帖子: 文字 剪切 
2007-06-24 08:46
wehooooo
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-6-12
收藏
得分:0 
我是用的书上的代码 版主啊
2007-06-24 14:55
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
你是不是自己新定义了一个Shape哦

可惜不是你,陪我到最后
2007-06-24 15:29
wehooooo
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2007-6-12
收藏
得分:0 
高人就是能 一看就知道 我的在同一个文件夹中 有一个名为Shape的类
非常感谢板主
2007-06-24 20:53
快速回复:剪切文字 怎出现很多问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015368 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved