JAVA填充圆形相交区域,java如何将一个图像画到一个指定的圆形区域呢

java怎么将一个图像画到一个指定的圆形区域呢?

图一

134237104.png

图二

134237105.jpg

上图中图一为原图,现给定素材,需要将图像画城图二然后输出。现在问题是,

给定的图像都是矩形,怎么将矩形的图片画到中间的那两个圆里面呢?

------解决方案--------------------

重写

paintComponent(Graphics g)

g.setColor(Color.BLACK);

g.fillOval(x + 10, y - 10, 10, 10);

这花出来的应该是一个黑色球,至于具体的,当然,这感觉比较复杂。。

或者你可以定义为矩形的JPanel,但是里面放的图片是带有透明色的圆形,这样是不会遮盖其它的组件的。

------解决方案--------------------

还没整过这么复杂的

------解决方案--------------------

锯齿应该都会存在的,毕竟不死矢量图,比较折中的办法死把圈圈旁边的内容虚化

------解决方案--------------------

提高分辨率可以抗锯齿的

------解决方案--------------------

说下思路:先画某个图片(矩形);再画圆;然后将圆外的部分画成别的(覆盖已有的部分图片)

------解决方案--------------------

引用:锯齿应该都会存在的,毕竟不死矢量图,比较折中的办法死把圈圈旁边的内容虚化

+1

------解决方案--------------------

试了一下,做了个小DEMO

134237106.png

链接: http://download.csdn.net/detail/raistlic/5054386

------解决方案--------------------

代码很简陋,还是贴出来吧,模糊用了第三方库 jhlabs 的高斯模糊

import com.jhlabs.image.GaussianFilter;

import java.awt.Color;

import java.awt.Dimension;

import java.awt.Graphics;

import java.awt.Graphics2D;

import java.awt.Image;

import java.awt.Point;

import java.awt.event.MouseEvent;

import java.awt.event.MouseMotionAdapter;

import java.awt.geom.RoundRectangle2D;

import java.awt.image.BufferedImage;

import javax.imageio.ImageIO;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.SwingUtilities;

/**

*

* @date   05/02/2013

*/

public class Demo extends JPanel {

public static void main(String[] args) {

SwingUtilities.invokeLater(new Runnable() {

@Override

public void run() {

JFrame f = new JFrame("Test");

f.setContentPane(new Demo());

f.pack();

f.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

f.setLocationRelativeTo(null);

f.setVisible(true);

}

});

}

private BufferedImage image;

private Image small;

private Point loc;

private int halfScaledSize;

Demo() {

try {

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值