博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用PHP山寨一款软件
阅读量:7114 次
发布时间:2019-06-28

本文共 1492 字,大约阅读时间需要 4 分钟。

 

什么是我国软件工程师引以为豪的能力?山寨、山寨,山寨!

 

我国程序员的山寨能力是世界一流的。这一点在世界范围内令人闻风丧胆。世界上根本就找不到一款我国工程师不能山寨的软件。

 

今天,锋哥教大家来山寨一款软件。

 

最近,朋友圈传的比较火的的一张图是什么?《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);

?>

 

原理很简单,就是导入字库,然后输出文字到指定的坐标。这些坐标必须刚好是图片上的空格。所以需要反复调试文字的位置,直到合适为止。

 

调试完输出的图片如下:

 

 

上面的程序虽然很简单,但是相信有些初学编程的同学,没有经过一番调试,看起来还是会有些疑问。但是不要紧,如果你真的对学习编程有兴趣,锋哥可以免费教会你调试这个程序。对编程感兴趣的,可以长安下面的二维码,添加锋哥的微信,向锋哥索取源代码和搭建编程环境的方法。

 

 

如果你想在线测试一下效果,关注《编程牛人》公众号,点击公众号上的菜单“七夕干嘛”,就可以测试啦。

转载于:https://www.cnblogs.com/bianchengniuren/p/9591260.html

你可能感兴趣的文章
spring boot(三):Spring Boot中Redis的使用
查看>>
通过DNS通道传输的交互式PowerShell脚本
查看>>
VueJs开发笔记—IDE选择和优化、框架特性、数据调用、路由选项及使用
查看>>
用secureCRT操作ubuntu终端
查看>>
【转】UISearchBar的使用
查看>>
ASP.NET MVC 5 学习教程:添加视图
查看>>
Net设计模式实例之抽象工厂模式(Abstract Factory Pattern)
查看>>
C++:多重继承
查看>>
【原】Github系列之二:开源 一行代码实现多形式多动画的推送小红点WZLBadge(iOS)...
查看>>
Linux下svn常用指令【转】
查看>>
Android -- 发送Broadcast、有序无序
查看>>
SQL Server DATEDIFF() 函数 用法
查看>>
SharePoint 2016 的新特性概览(一)(What's New for IT Professionals in SharePoint Server 2016)...
查看>>
深度学习笔记之关于常用模型或者方法
查看>>
使用jenkins配置.net mvc网站进行持续集成三
查看>>
关于增强for循环
查看>>
GENIA项目-综述论文(E99)
查看>>
JavaScript 资源列表
查看>>
SharePoint online Multilingual support - Settings
查看>>
中断相关一【转】
查看>>