Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Cách tạo filigran (watermark) trên hình ảnh bằng Java OpenCV


Ví dụ Java sau vẽ filigran ("Hello") lên hình ảnh cho trước và lưu lại.

Ví dụ

import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;

public class WaterMarkExample {
public static void main(String[] args) throws IOException {
// Đọc nội dung hình ảnh
File file = new File("D:\\Images\\test1.jpg");
BufferedImage img = ImageIO.read(file);
// Tạo hình ảnh rỗng cho đầu ra
int height = img.getHeight();
int width = img.getWidth();
BufferedImage res = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
// Tạo đối tượng Graphics
Graphics graphics = res.getGraphics();
graphics.drawImage(img, 0, 0, null);
// Tạo font cho filigran
Font font = new Font("Arial", Font.PLAIN, 45);
graphics.setFont(font);
graphics.setColor(new Color(255, 150, 200, 30));
// Vẽ chuỗi filigran lên hình ảnh
graphics.drawString("Hello", width / 7, height / 5);
// Giải phóng tài nguyên
graphics.dispose();
// Ghi hình ảnh kết quả
file = new File("D:\\Images\\watermark.jpg");
ImageIO.write(res, "jpg", file);
}
}

Ảnh đầu vào

Cách tạo filigran (watermark) trên hình ảnh bằng Java OpenCV

Ảnh đầu ra

Cách tạo filigran (watermark) trên hình ảnh bằng Java OpenCV