CSDN实训之模拟人生

Posted 韶光不负

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CSDN实训之模拟人生相关的知识,希望对你有一定的参考价值。

小编很荣幸参加了CSDN的第十期Java实训训练营,认识来漂亮的小姐姐,还有大牛老师(翦老师),采用的就是职场化的模式训练大家进行Java的学习与理解,好了就跟小编一起来看看这次的内容模拟人生吧!

目录

模拟人生(启动起来,运行试一试)

打开文件夹

 代码进行修改(解压路径选择在jdkd的安装文件夹下哦!)

路径修改

 通过提供代码修改自己想改的程序(在图片添加文子水印)

扩展图片水印 (缺点在背景图片上操作,需要备份)

遇到的报错(无效的源发行版: 11错误)

收获:


前提 (小编以前总结文章,欢迎大家浏览与指点):

Java的起源与历史https://blog.csdn.net/weixin_47514459/article/details/115532199https://blog.csdn.net/weixin_47514459/article/details/115532199

jdk安装--(安装8.0及其以上都可以哦)https://blog.csdn.net/weixin_47514459/article/details/115552283https://blog.csdn.net/weixin_47514459/article/details/115552283IDEA的介绍与安装(Java集成开发工具,,建议在官网下载,支持正版)https://blog.csdn.net/weixin_47514459/article/details/118420939https://blog.csdn.net/weixin_47514459/article/details/118420939

模拟人生(启动起来,运行试一试)

打开文件夹

1,打开CSDN训练营发给小编的文件夹(因为小编用过Idea所以就打开CSDN文件夹就可以了,如果第一次使用,点击“加号”就可以了)。 

2,选择文件夹(下面有黑色才有Java文件哦!不要忘记自己解压的路径哦!

 现象:(当关闭,下次打开还是这个文件夹哦!)

 代码进行修改(解压路径选择在jdkd的安装文件夹下哦!)

路径修改

一般情况下别人的路径可能你没有,所以就防止找不到你需要的文件,修改路径十必须的.

 通过提供代码修改自己想改的程序(在图片添加文子水印)

public class RunMain 
    public static void main(String[] args) 
        System.out.println("_____ 小罗的体验课, 模拟人生 ______ \\n");
        // 字体库
        File fontFile = new File("文字库的绝对路径");
        File backgroundImage = new File("背景图片绝对路径");  // 背景图片
        String title = "张三因字写得好被霸道总裁看上";   // 文字标题
        String outputImage =  "绝对路径\\\\名称.jpg";   // 合成的图片位置及名称
        mylifeOne(backgroundImage, title, outputImage, fontFile); // 执行人生第一站图片合成

        
    
private static void mylifeOne (File backgroundImage, String title, String outputImage, File fontFile)
            try 
                Font font = Font.createFont(Font.TRUETYPE_FONT, fontFile); //使用字体文件
                Font f = font.deriveFont(Font.PLAIN, 41); //41字体大小
                //font.
                ImgUtil.pressText(//
                        backgroundImage,
                        FileUtil.file(outputImage),
                        title,
                        Color.WHITE,
                        f, //字体
                        75, //x坐标修正值。 默认在中间,偏移量相对于中间偏移
                        245, //y坐标修正值。 默认在中间,偏移量相对于中间偏移
                        0.8f//透明度:alpha 必须是范围 [0.0, 1.0] 之内(包含边界值)的一个浮点数字
                );

                System.out.println("测试成功");

             catch (Exception e) 
                e.printStackTrace();
            
        

扩展图片水印 (缺点在背景图片上操作,需要备份)

public class RunMain 
    public static void main(String[] args) 
        System.out.println("_____ 小罗的体验课, 模拟人生 ______ \\n");
       

        String backgroundImage = "设置的背景图片";  // 背景图片
        String myImage = "水印图片";
        pressImage(myImage,backgroundImage,210,80);  // 图片合成

    
ublic final static void pressImage(String myImage, String backgroundImage,
                                            int x, int y) 
            try 
                File _file = new File(backgroundImage);
                Image src = ImageIO.read(_file);
                int wideth = src.getWidth(null);  //获取宽
                int height = src.getHeight(null);    //获取高
                BufferedImage image = new BufferedImage(wideth, height,
                        BufferedImage.TYPE_INT_RGB);
                Graphics g = image.createGraphics();
                g.drawImage(src, 0, 0, wideth, height, null);

                // 水印文件
                File _filebiao = new File(myImage);
                Image src_biao = ImageIO.read(_filebiao);
                int wideth_biao = src_biao.getWidth(null);
                int height_biao = src_biao.getHeight(null);
                g.drawImage(src_biao, wideth - wideth_biao - x, height
                        - height_biao - y, wideth_biao, height_biao, null);
                g.dispose();
                FileOutputStream out = new FileOutputStream(backgroundImage);
                JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(out);
                encoder.encode(image);
                out.close();
             catch (Exception e) 
                e.printStackTrace();
            
        


遇到的报错(无效的源发行版: 11错误)

原因:小编使用的是JDK8.0版本,而文件夹中的JDK为11.

解决部分:file——>settings——>build、execution、deployment----compiler—java compiler

收获:

1,增加自己对问题产生了解兴趣和提高解决能力。

2,在Java中“\\”代表转义,不需要转义时可以“\\\\”代表“\\”,替代路径“\\”.

以上是关于CSDN实训之模拟人生的主要内容,如果未能解决你的问题,请参考以下文章

实训之countdown深度优化

东软实训之数据库

2018夏季实训之有关数据库基本操作的函数

金融信息安全实训之加密

Deep Learning系统实训之二:梯度下降原理

金融信息安全实训之信息加密与消息摘要