用excel画像素画,和十字绣一样简单

 如果大家能看到这个帖子,那么应该已经见过像素画了。我们电脑上的图标都是像素画,在网络世界上,他无处不在,例如:

   画一幅像素画需要的工具很简单,画图板就可以制作,甚至用excel就可以。
       下面我就以穆夏的一幅图作制作excel像素画,希望大家看了这个教程能踊跃提交作品哦。
原图


最终作品


第一步 准备软件
       大家应该准备一个excel软件,2007以上的版本更好。因为97-2003的版本每一个格子的颜色只有256种,而2007以上的版本可以提供高达16777216种颜色,普通人只能分别一千多万种。所以用2007以上的版本可以更好地表达画面。

第二步 设置好列宽和行高
        一般情况下,像素画的格子都是正方形的,所以我们需要把excel表格的格子调整到合适的大小。我设置的比例是列宽=1,行高=10,近似正方形。大家也可以依照excel提供的参数,将格子的数值调得更精确。


第三步 设置好要画图像所需的面积
       这一部开始我们要估算画像的面积。点击原图像右键——属性——摘要——高级,我们可以看到宽度和高度的像素值,200*272。


  也就是说我们在excel上的格子列:行=200:272。由于是像素画,不用每个像素都描绘出来,我选择列=89,行=122,用黑色的背景标出边界。

选择黑色背景


标出边界


第四步 画出大形。
       这个步骤中我们开始找出,这幅画的大体的形态。一个格子代表一个像素点,以不同形式将点排列起来就可以得到线,用线组成面就成了一幅画。如果想删除格子的颜色请使用无填充色代替橡皮。

用“无填充色”代替橡皮


下面,介绍一下像素画通用的线条。
      1、22.6度的斜线
  以两个格子(像素)的方式斜向排列,共分为双点横排、双点竖排两种排列方法。


   2、30度的斜线
       以两个格子(像素)间隔一个像素的方式斜向排列,当竖向排列时则形成了60度的斜线。


  3、45度的斜线
        以一个格子(像素)的方式斜向排列。


       4、直线
       0度或90°的线


    5、弧线
    因为弧度大小的关系,因此弧线画法有很多种。常用的方法有格子(像素)3-2-1-2-3、4-2-2-4、5-1-1-5的弧型排列,其排列具有一定的规律性以及对称性。


 掌握以上线条使用方法,我们可以轻松地画出原图的大型


      第五步 细化上色
       最后我们细化一下线条,铺上色彩,一幅excel像素画就画好了。


       O(∩_∩)O哈哈,很简单吧。
  文章出自 :果壳网 像素之城小组

——————————————————————————————评论线————————————————————


(⊙o⊙)…    一点也不简单,没关系 马上就来秘诀了

刀松子儿

原理有点像十字绣哦~只要在网上搜十字绣图样,然后数格子把颜色填到excel相应的地方就可以了。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用Python生成Excel像素画,可以使用openpyxl库来读取和编辑Excel文件,同时使用OpenCV库来处理图像。以下是一个示例代码的步骤: 1. 导入所需的库:import openpyxl, cv2, openpyxl.styles.PatternFill 2. 加载图像:使用OpenCV的cv2.imread函数加载图像文件。 3. 获取图像的RGB通道:使用图像数组的切片操作分别获取红色通道(R)、绿色通道(G)和蓝色通道(B)的像素值。 4. 创建Excel文件:使用openpyxl的load_workbook函数加载现有的Excel文件(如果有)或创建一个新的Excel文件。 5. 获取工作表:使用wb.worksheets[0]获取第一个工作表。 6. 循环遍历像素值:使用两个嵌套的for循环遍历每个像素值。 7. 创建填充样式:根据每个像素的RGB值创建填充样式,并使用PatternFill函数设置填充类型为'solid',前景色为RGB值。 8. 应用填充样式:使用工作表的cell方法选择要应用填充样式的单元格,并将填充样式赋值给单元格的fill属性。 9. 保存Excel文件:使用wb.save函数保存Excel文件。 以下是示例代码: ``` from openpyxl import load_workbook import cv2 as cv from openpyxl.styles import PatternFill image = cv.imread("your_image.jpg", 1) B = image[:, :, 0] G = image[:, :, 1] R = image[:, :, 2] fileName = "output.xlsx" wb = load_workbook(fileName) sheet = wb.worksheets[0] for c in range(1, len(B[0])): for r in range(1, len(B)): d = str(hex(R[r][c])).lstrip("0x").upper() e = str(hex(G[r][c])).lstrip("0x").upper() f = str(hex(B[r][c])).lstrip("0x").upper() while len(d) < 2: d = "0" + d while len(e) < 2: e = "0" + e while len(f) < 2: f = "0" + f RGB = d + e + f fill = PatternFill(fill_type='solid', fgColor=RGB, bgColor="FFFFFF") sheet.cell(row=r, column=c).fill = fill wb.save(fileName) ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值