0
я пытаюсь сделать что-то вроде этого: Alpha Gradient Mask с помощью JavaFXКак сделать альфа-градиентную маску?
Любые идеи о том, как это сделать?
я пытаюсь сделать что-то вроде этого: Alpha Gradient Mask с помощью JavaFXКак сделать альфа-градиентную маску?
Любые идеи о том, как это сделать?
Я нашел способ сделать это с помощью функции «AlphaComposite».
Вот мой код:
private Image mask;
private Image dest;
private float alpha = 1f;
private void loadImages() {
mask = new ImageIcon("resources/source.png").getImage();
dest = new ImageIcon("resources/destination.png").getImage();
}
private void doDrawing(Graphics g) {
Graphics2D g2d = (Graphics2D) g.create();
BufferedImage buffImg = new BufferedImage(500, 400,
BufferedImage.TYPE_INT_ARGB);
Graphics2D gbi = buffImg.createGraphics();
AlphaComposite ac = AlphaComposite.getInstance(
AlphaComposite.SRC_IN, alpha);
gbi.drawImage(mask, 0, 0, null);
gbi.setComposite(ac);
gbi.drawImage(dest, 0, 0, null);
g2d.drawImage(buffImg, 20, 20, null);
gbi.dispose();
g2d.dispose();
}
Вот что я получаю:
Я хотел бы сделать то же самое в JavaFX, потому что я работа с изображениями Javafx (или изображениями Mat из библиотеки OPENCV).
Добро пожаловать в Переполнение стека. Вы заметите довольно быстро, что этот тип вопросов не даст очень хороших ответов. Сначала вы должны попытаться сделать это самостоятельно. И тогда, когда вы застрянете, вы можете вернуться с более конкретными вопросами. –
Спасибо за ваш ответ. Я не ищу полного решения, juste несколько идей, как какие функции я должен использовать для достижения этого. – Antoine
Похоже на: [Создать маску наложения изображений в javafx] (http://stackoverflow.com/questions/28170383/create-an-image-overlay-mask-in-javafx) – jewelsea