用文字制作成图片

简介: 最近呢,我一个朋友要过生日,我像给她一个硬核的生日祝福。然后就想到了用文字拼成她的QQ头像

话不多说,先看示例

1a393f77157e05c22a437828b36968e.png


4d5ed683b3f8171cf689723b8b6e553.png


不多说,直接上源码! 有不会的加QQ问我,等我上几个星期的学后回家就告诉你。

#include"graphics.h"

#include"stdio.h"

int main(void)

{

char str[256] = "";//请输入要表白的话

scanf_s("%s", str, sizeof(str));

//把字符串转换成数组形式的,“我爱你”,转换成“我”,“爱”,“你”

int count = strlen(str) / 2;//计算汉字个数

char** data = (char**)malloc(sizeof(char*) * count);

for (int i = 0; i < count; i++)

{

 data[i]=(char*)malloc(sizeof(char) * 3);//"我"占两个字节+'0'

 strncpy(data[i], &str[i * 2], 2);

 data[i][2] = 0;//字符串结束符

}

initgraph(200,40);

IMAGE img;//图片需要加工

loadimage(&img,_T("zz.jpg"));

//颜色是用 红绿蓝色调配成的,用三个字节.

//int 4 个字节 char 1个字节

int width = img.getwidth();//宽度

int height = img.getheight();//高度

 int *pix=(int*)malloc(sizeof(int)*width*height);//动态内存分配

 if (pix == NULL)

 {

  printf("图片分辨率过高");

  exit(1);

 }

 SetWorkingImage(&img);//对哪个图片进行加工

 int k = 0;

 for (int i = 0; i < height; i++)

 {

  for (int j = 0; j < width; j++)

  {//取出指定位置的颜色

   pix[k++] = getpixel(j, i);//坐标是宽度和高的

  }

 }

 SetWorkingImage();//恢复默认工作区,开始画图!

 //开始使用汉字画图

 //定义一个新的图片

 IMAGE imgDest;//空图片

 //调整新图片

 /*imgDest.Resize(width, height);*/

 //调整大小

 imgDest.Resize(width * 12, height * 12);//一个像素扩充成12*12

 SetWorkingImage(&imgDest);

 //设置字体

 LOGFONT f;

 gettextstyle(&f);//获取当前的字体

 f.lfHeight = 12;

 f.lfWidth = 0;//默认

 strcpy(f.lfFaceName, "黑体");//设置字体名称

 f.lfQuality = ANTIALIASED_QUALITY;//清除锯齿

 settextstyle(&f);

 int index = 0;

 for (int i = 0; i < height; i++)

 {

  for (int j = 0; j < width; j++)

  {

   int x = j * 12;

   int y = i * 12;

   //取出颜色

   int color = pix[i * width + j];

   //设置汉字绘制颜色

   settextcolor(color);

   outtextxy(x, y,data[index]);

   index = (index + 1) % count;//对汉字进行取余

  }

 }

 SetWorkingImage();

 //把图片保存到磁盘

 saveimage("ok.jpg", &imgDest);

 //让图片自动显示出来

 system("rundll32.exe C:\\Windows\\System32\\shimgvw.dll,ImageView_Fullscreen d:\\ok.jpg");

 system("pause");

 return 0;

}

目录
相关文章
|
25天前
|
数据安全/隐私保护
图片添加文字水印
【10月更文挑战第21天】图片添加文字水印是一种重要的保护和宣传手段。通过合理选择文字内容、设计和添加方法,可以有效地为图片添加水印,保护图片的权益和价值。同时,随着技术的发展,我们也需要不断探索和创新,以适应不断变化的需求。你还可以根据具体的行业需求和实际情况,进一步深入研究和优化文字水印的添加策略,确保图片得到更好的保护和利用。
27 0
|
6月前
|
C# 开发工具 数据安全/隐私保护
C# 给图片添加文字水印
C# 给图片添加文字水印
|
6月前
|
自然语言处理
二维码美化指南:从Logo到文字,轻松制作专属二维码
草料二维码提供基础的二维码美化设置,包含Logo、颜色、码点码眼、容错、添加文字等设置。
120 0
Photoshop制作漂亮白色荧光文字图片
Photoshop制作漂亮白色荧光文字图片
73 0
|
6月前
|
人工智能 搜索推荐 定位技术
证件照尺寸修改、图片背景换色、照片大小压缩…几个在线图片编辑、处理网站推荐
证件照尺寸修改、图片背景换色、照片大小压缩…几个在线图片编辑、处理网站推荐
168 1
Photoshop使用路径排版美化文字创作图案
Photoshop使用路径排版美化文字创作图案
109 0
|
算法 计算机视觉
图片的美白与美化
图片的美白与美化
124 0
|
前端开发 Android开发
制作圆形图片,你会以下几种?
制作圆形图片,你会以下几种?
制作圆形图片,你会以下几种?
|
开发者
图片与文字的修改| 学习笔记
快速学习图片与文字的修改。
图片与文字的修改| 学习笔记
|
图形学
PPT制作三大技巧:图标 、图片背景透明和自动函数
PPT制作三大技巧:图标 、图片背景透明和自动函数
292 0
PPT制作三大技巧:图标 、图片背景透明和自动函数