final static String sourceFilePath = “/Users/sunshinezhang/Desktop/1/2.png”;
//设置字体
final static String fontName = “宋体”;
public static void main(String[] args) {
write();
}
public static void write() {
BufferedImage image = new BufferedImage(640 * 4, 640 + 2 * 640 * 7, BufferedImage.TYPE_INT_RGB);
Graphics g = image.createGraphics();
g.drawImage(writeH(“辞旧迎新”), 0, 0, 640 * 4, 640, null);
g.drawImage(writeV(“旧岁又添几个喜”), 0, 640, 640 * 2, 2 * 640 * 7, null);
g.drawImage(writeV(“新年更上一层楼”), 2 * 640, 640, 640 * 2, 2 * 640 * 7, null);
//输出文件
try {
ImageIO.write(image, “png”, new File(imageFolderPath + “春联.png”));
} catch (IOException e) {
e.printStackTrace();
}
}
//横批
public static BufferedImage writeH(String text) {
char[] ch = text.toCharArray();
BufferedImage image = new BufferedImage(640 * ch.length, 640, BufferedImage.TYPE_INT_RGB);
Graphics g = image.createGraphics();
for (int i = 0; i < ch.length; i++) {
char c = ch[i];
g.drawImage(fontMark(String.valueOf©), 640 * i, 0, 640, 640, null);
}
g.dispose();
return image;
}
//上下联
public static BufferedImage writeV(String text) {
char[] ch = text.toCharArray();
BufferedImage image = new BufferedImage(2 * 640, 2 * 640 * ch.length, BufferedImage.TYPE_INT_RGB);
Graphics g = image.createGraphics();
for (int i = 0; i < ch.length; i++) {
char c = ch[i];
g.drawImage(fontMark(String.valueOf©), 0, 2 * 640 * i, 2 * 640, 2 * 640, null);
}
g.dispose();
return image;
}
public static BufferedImage fontMark(String content) {
try {
BufferedImage image = ImageIO.read(new File(sourceFilePath));
小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频**
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
[外链图片转存中…(img-N2rdDL8g-1710823370216)]