Processing 字体变形
在Processing中做字体变形通常需要有以下基础知识:
1、PGraphics对象
2、图片像素化
制作过程也不复杂,代码如下:
color ELLIPSE_COLOR = color(0);
color LINE_COLOR = color(0, 125);
color PGRAPHICS_COLOR = color(0);
int LINE_LENGTH = 25;
boolean reverseDrawing = false;
PGraphics pg;
PFont f = createFont("宋体", 42);
void setup() {
size(1280, 720,P2D);
pg = createGraphics(width, height, JAVA2D);
pg.beginDraw();
pg.textFont(f);
pg.textSize(300);
pg.textAlign(CENTER, CENTER);
pg.fill(PGRAPHICS_COLOR);
pg.text("麥塔威", pg.width/2, pg.height/2);
pg.endDraw();
}
void draw() {
int gridH = (int) map(mouseX, 0, width, 30, 100);
int gridV = (int) map(mouseY, 0, height, 15, 100);
float w = width/gridH;
float h = height/gridV;
float r = min(w, h); background(255);
strokeWeight(1);
for (int y=0; y<gridV; y++) {
for (int x=0; x<gridH; x++) {
float _x = x*w;
float _y = y*h;
color c = pg.get(int(_x), int(_y));
boolean textDraw = (c == PGRAPHICS_COLOR);
if (textDraw) {
noStroke();
fill(ELLIPSE_COLOR);
ellipse(_x, _y, r, r);
} else {
stroke(LINE_COLOR);
line(_x, _y, _x+LINE_LENGTH, _y+LINE_LENGTH);
}
}
}
}
其中,setup部分的pg操作都是在PGraphics对象上的操作,这个对象就类似于画布上的画布,而draw里面两个for循环则是实现字体变形的关键,将图片像素化以后比对字体颜色和背景颜色就可以将字体从背景中“抠”出来,然后想捏扁还是捏圆就看各人的喜好了~

Processing 字体变形的更多相关文章
- UI设计教程分享:字体变形—阴阳收缩法
阴阳师中国古代对自然规律发展变化基础因素的描述,是古代美学逻辑思维.推理分析的核心要素,也是描述万物基本要素和成因的概念之一.阴阳代表事物的对立关系,它是自然界的客观规律,是万物运动变化的本源,是人类 ...
- CAD2015 C#二次开发 字体变形
开发环境:VS2012问题描述:一个简单的WinForm窗口,一个群组控件和一个Label,都是微软雅黑12pxCAD2015下,看起来却不一样,一个明显细得多. CAD2014下,无此问题.实验了C ...
- CSS字体
字体系列 [1]5种通用字体系列:拥有相似外观的字体系列 serif字体:字体成比例,且有上下短线,包括Times\Georgia\New century Schoolbook sans-serif字 ...
- HTML 学习笔记 CSS样式(字体)
css字体属性定义文本的字体系列 大小 加粗 风格 和 变形(如小型大写字母(类似于大写字母字体变小了)) css字体系列 在css中 有两种不同类型的字体系列名称 1.通用字体系列 - 拥有相似外观 ...
- css整理-02 颜色和字体
颜色 命名颜色 RGB指定颜色 数值: 0-255 百分比 三元组:红绿蓝 16进制RGB web安全颜色 在256色计算机系统上总能避免抖动的颜色 表示为rgb值20%和51的倍数 web安全色的简 ...
- css字体样式(Font Style),属性
css字体样式(Font Style),属性 css字体样式(Font Style)是网页中不可或缺的样式属性之一,有了字体样式,我们的网页才能变得更加美观,因此字体样式属性也就成为了每一位设计者 ...
- CSS笔记(五)字体
CSS 字体属性定义文本的字体系列.大小.加粗.风格(如斜体)和变形(如小型大写字母). 参考:http://www.w3school.com.cn/css/css_font.asp CSS字体系列 ...
- Web前端新人笔记之CSS字体
本章内容是阅读CSS权威指南的一个小积累和随笔.新人必看,老鸟也可查看并指出不足指出以便后人阅读更好地理解.O(∩_∩)O谢谢!!!设置字体属性时样式变的最常见的用途之一:不过,尽管字体选择很重要,但 ...
- 字体图标 icon font
Icon font icon font 指的是用字体文件代替图片文件,来展示图标.特殊字体等元素的方法. 应用场景: iconfont的优缺点 大小能够自由地变化 颜色能够自由地改动 加入阴影效果 * ...
随机推荐
- WebApi接收接收日期格式参数时,日期类型(2019-10-08T16:00:00.000Z)后台接收时间少8小时问题
前端使用的是elementui的日期控件,将日期格式的数据提交到webapi后台时,接收到的日期格式少了8小时,这个原因是由于时区引起的,应该在WebApiConfig进行配置转成本地时间,解决少8小 ...
- C# vb .net实现扭曲角特效滤镜图像处理
在.net中,如何简单快捷地实现Photoshop滤镜组中的扭曲角效果呢?答案是调用SharpImage!专业图像特效滤镜和合成类库.下面开始演示关键代码,您也可以在文末下载全部源码: 设置授权 第一 ...
- MySQL的ERROR 1205错误分析
一.错误发生及原因猜测 1.错误发生 在删除 t_user 表的一条数据时,Navicat 发生长时间的无响应,然后弹出一个对话框,提示:ERROR 1205: Lock wait timeout e ...
- 1+X学习日志——导航栏demo
初级菜鸟的作品,各位大佬见笑了 <!DOCTYPE html> <html lang="en"> <head> <meta c ...
- 初始SQL语句 简单使用
初始SQL语句 简单使用 SQL语言共分为四大类: DQL (Data QueryLanguage )数据查询语言 DML(Data manipulation language)数据操纵语言 DDL( ...
- iOS加解密最重要的干货:CCCrypt
需要引入框架#import <CommonCrypto/CommonCryptor.h> 函数定义: CCCryptorStatus CCCrypt( CCOperation op, /* ...
- 【亲测有效】安装npm慢的解决方案
使用淘宝的NPM库:npm install -gd express --registry=http://registry.npm.taobao.org
- 将Centos7的yum配置为阿里云的镜像(完美解决yum下载太慢的问题)
2017-02-17 16:02:30 张老湿 阅读数 13768 http://mirrors.aliyun.com/help/centos?spm=5176.bbsr150321.0.0. ...
- python智能提取省、市、区地址
工具原文 https://github.com/DQinYuan/chinese_province_city_area_mapper 说明: https://blog.csdn.net/qq_3325 ...
- Django admin 修改密码
Django admin 修改密码 问题:Django的admin 用户忘记密码或修改密码,在auth_user表中password字段是加密的,所以需要以下方法进行修改. 方法一: python m ...