什么是我国软件工程师引以为豪的能力?山寨、山寨,山寨!
我国程序员的山寨能力是世界一流的。这一点在世界范围内令人闻风丧胆。世界上根本就找不到一款我国工程师不能山寨的软件。
今天,锋哥教大家来山寨一款软件。
最近,朋友圈传的比较火的的一张图是什么?《xxx,七夕要发生的五件事》。如下图:
下面,我们通过这款世界级的编程语言PHP,来对它实现山寨。没错,PHP编程语言在编程界兵器榜排名第一,不服来辩,辩赢有奖!
首先,我们需要把上面的页面下载下来,然后经过简单的PS处理,得到毛坯底图:
现在目标就很明确了,就是在空白的地方,把关键的信息通过程序的方式填写上去。代码如下:
<?php
$openID = "testFileName";
$name = "李小明"."七夕";
//随机事件
$event = array("加班", "被表白", "有艳遇", "结束单身");
//在0-3之间产生随机数
$i = rand(0,3);
$dst_path = "./".$openID.".jpg";
$src_path = './qixi.jpg';
//创建图片的实例
$dst = imagecreatefromstring(file_get_contents($src_path));
//打上文字
$fontS = './font/shouxie.ttf';//字体
$fontZ = './font/simsun.ttc';//字体
$blue = imagecolorallocate($dst, 0x00, 0x00, 0xff);//字体颜色
$black = imagecolorallocate($dst, 0x00, 0x00, 0x00);//字体颜色
//输出名字到图片
imagefttext($dst, 48, 0, 360, 195, $blue, $fontS, $name);
//输出第一行文字到图片
imagefttext($dst, 50, 0, 185, 375, $black, $fontS, $event[$i]);
imagefttext($dst, 50, 0, 185, 485, $black, $fontS, $event[$i]);
imagefttext($dst, 50, 0, 185, 605, $black, $fontS, $event[$i]);
imagefttext($dst, 50, 0, 185, 715, $black, $fontS, $event[$i]);
imagefttext($dst, 50, 0, 185, 835, $black, $fontS, $event[$i]);
//输出图片
imagejpeg($dst, $dst_path);
?>
原理很简单,就是导入字库,然后输出文字到指定的坐标。这些坐标必须刚好是图片上的空格。所以需要反复调试文字的位置,直到合适为止。
调试完输出的图片如下: