
一、preload()函数与图片上传
preload()函数是一个特殊的函数,它同setup()类似,只在程序开始时运行一次,但顺序在setup()之前。
一般我们会将媒体文件(图片、声音)加载的语句放在preload()中,因为preload()有一个特性就是不加载完毕,程序就不会开始,保证了程序运行时不会出错。
在加载图片之前,我们需要先将图片文件上传。
方法是:
①点击编辑器左上角的小三角展开文件目录。

②点击文件目录右上角小三角,展开菜单后Add File。

③可以直接将图片文件拖到框里,会自动上传,传完后关闭即可,jpg和png格式均支持。

二、加载图片
接着,添加代码如下:
var img; 
function preload(){ 
 //加载图片文件 
 img=loadImage("HearthStone.png"); 
} 
 
function setup() { 
 createCanvas(400, 400); 
} 
 
function draw() { 
 background(220); 
 //坐标原点设为图片中心 
 imageMode(CENTER); 
 //绘制图片 
 image(img,200,200); 
} 其中有两个函数:
imageMode():设置图片中心,常用的有CENTER、CORNER,CENTER为中心,CORNER为左上角
image():绘制图片,image("图片地址",x,y)
效果图:

三、图片染色与拉伸
p5.js还提供了一些方便的功能,如染色与拉伸,代码如下:
var img; 
function preload(){ 
 //加载图片文件 
 img=loadImage("HearthStone.png"); 
} 
 
function setup() { 
 createCanvas(400, 400); 
} 
 
function draw() { 
 background(220); 
 //坐标原点设为图片中心 
 imageMode(CENTER); 
 //图片染色 
 tint(0,255,255); 
 //绘制图片,后两个参数调整长宽 
 image(img,200,200,150,150); 
} tint():图片染色,括号内填入颜色,格式同fill()
image():第四、五个参数为图片长与宽,若不填的话则使用原图片长宽
效果图:

