[Processing]在画布上写文本
- 准备工作
- 这一步只是我强迫症犯了哈,这个随意,画几根线而已。每一小格10个像素,中格50,大格100像素
void setup()
{
size(,);
} void draw()
{
background(,,);
//translate(width/2,height/2);
Aix(,,width,height,);
Aix(,,width,height,);
Aix(,,,,);
Aix(,,,,);
stroke();
strokeWeight();
line(-width,, width,);
line(,-height, ,height); DrawText();
} float weight = ;
float del = ;
float lonW = ;
float lonH = ;
void Aix(float w,float d,float lw,float lh,float st)
{
weight = w;
del = d;
lonW = lw;
lonH = lh;
stroke(st);
strokeWeight(weight);
for(int i = ;i <= width;i+=del)
{
line(i,-lonH, i,lonH);
}
for(int i = ;i >= -width;i-=del)
{
line(i,-lonH, i,lonH);
}
for(int i = ;i <= height;i+=del)
{
line(-lonW,i, lonW,i);
}
for(int i = ;i >= -height;i-=del)
{
line(-lonW,i, lonW,i);
}
} void DrawText()
{ }
- 打印文字
text(String str,float x,float y[,float z]);//在某位置显示文本,默认为白色的文本,可用 fill() 方法填充颜色
text(char[] chars,int start,int end,float x,float y[,float z]);
text(String str,float x1,float y1,float x2,float y2);//在两个点决定的矩形内显示字符串
text(float num,float x,float y[,float z]);void DrawText()
{
String str = "Hello World";
text(str,,);
}- 默认文字是白色的,所以如果一开始背景是浅色的话回看不清楚,这一点要注意。可用用 fill(); 方法改变颜色
- 字体大小
void DrawText()
{
String str = "Hello World"; textSize();//修改字体大小
text(str,,);
}- 对其方式
- textAlign(h[,o]); 其中,h表示水平对齐方式,o表示垂直对齐方式,可填入宏
- h
- RIGHT 右对齐
- CENTER
- LEFT
- o
- TOP
- CENTER
- BOTTOM
- BASELINE 基线对齐
- h
void DrawText()
{
String str = "Hello World"; noFill();
stroke(#E0A000);
rect(,, ,);//画矩形 textSize();
textAlign(RIGHT,BOTTOM);//右下对齐
text(str,,, ,);//在一个矩形内显示
}
- textAlign(h[,o]); 其中,h表示水平对齐方式,o表示垂直对齐方式,可填入宏
- 设置行高
void DrawText()
{
String str = "Hello World\nWorld Hello"; noFill();
stroke(#E0A000);
rect(,, ,); textSize();
textLeading();
text(str,,, ,);
textLeading();
text(str,,, ,);
textLeading();
text(str,,, ,);
}
文本宽度
void DrawText()
{
String str = "Hello World\nWorld Hello"; noFill();
stroke(#E0A000);
rect(,, ,); textSize();
textLeading();
text(str,,, ,); //画一个框把一行文字框起来
stroke(#FFFFCC);
line(,, textWidth(str),);//用到了获取字符串宽度的方法 textWidth()
line(,, textWidth(str),); stroke(#EECCEE);
line(,, ,);
line(textWidth(str),, textWidth(str),);
}
[Processing]在画布上写文本的更多相关文章
- matlab 工具函数 —— axnote(在坐标轴上写文本内容)
function axnote(string) font_size = get(0, 'DefaultAxesFontSize'); if 1 h1 = text(0.99, 0.05, string ...
- 玩转html5(二)----用canvas结合脚本在画布上画简单的图(html5又一强大功能)
在html5中可以使用canvas标签在画布上画图,先直接上代码,这篇文章先简单介绍一下canvas的使用方法,简单画几个圆,矩形,三角形,写字. 在代码中均给出了注释,在这里特别强调的一点是:使用c ...
- 有趣html5(两)----使用canvas结合剧本画在画布上的简单图(html5另一个强大)
请珍惜劳动小编成果,这篇文章是原来小编,转载请注明出处. 于html5中能够使用canvas标签在画布上绘图,先直接上代码,这篇文章先简介一下canvas的用法.简单画几个圆,矩形,三角形,写字. 在 ...
- AsyncTask异步上传文本到服务器
服务器代码:用于接收客户端信息 package ches; import java.io.IOException; import java.io.PrintWriter; import javax.s ...
- C#从Image上读取文本
今天通过C#来实现一个读取Image上文本的功能. 1. 环境准备: 1). 下载 Microsoft Office SharePoint Designer 2007. 2). 安装请参考KB:htt ...
- 使用hexo在github上写blog
使用hexo在github上写blog 安装nodejs http://nodejs.org/ 安装hexo npm install -g hexo 创建bolg文件夹 安装完成后在自己的工作目录创建 ...
- 用Jekyll在github上写博客——《搭建一个免费的,无限流量的Blog》的注脚
本来打算买域名,买空间,用wordpress写博客的.后来问了一个师兄,他说他是用github的空间,用Jekyll写博客,说很多人都这么做.于是我就研究了一下. 比较有价值的文章有这么几篇: htt ...
- 当标签上写了runat="server" 后,<%%>就会无效
当标签上写了runat="server" 后,<%%>就会无效 //这是错误的写法 <input type="hidden" runat=&q ...
- USB系列之四:向U盘上写数据
在<USB系列之三>中,我们实现了一系列的SCSI命令,在这个系列中,我们要实现向U盘上写扇区的命令,所以,本文相对比较容易,更多地是给出一个实现的源程序. 在<USB系列之三> ...
随机推荐
- casperjs,phantomjs,slimerjs and spooky
1.casperjs http://casperjs.org/ CasperJS is a navigation scripting & testing utility for Phantom ...
- P1710 地铁涨价
题目背景 本题开O2优化,请注意常数 题目描述 博艾市除了有海底高铁连接中国大陆.台湾与日本,市区里也有很成熟的轨道交通系统.我们可以认为博艾地铁系统是一个无向连通图.博艾有N个地铁站,同时有M小段地 ...
- 基于PHP的cURL快速入门教程 (小偷采集程序)
cURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP.FTP.TELNET等.很多小偷程序都是使用这个函数. 最爽的是,PHP也支持 cURL 库.本文将介绍 c ...
- Python之Web2py框架使用
本文主要是对Web2py框架的介绍和安装使用. 一. 介绍 全栈式Web框架:Web2py是 Google 在 web.py 基础上二次开发而来的,兼容 Google App Engine .是一个为 ...
- oracle ORA-01722:无效数字 记录
今天在对12万条记录的表进行左联接时,有时可以查询出数据,有时会报无效数字,反复检查,发现问题. 例如sql: SELECT * FROM USER U LEFT JOIN USER_ROLE UR ...
- springboot activiti 整合项目框架源码 shiro 安全框架 druid windows10风格
官网:www.fhadmin.org 此项目为Springboot工作流版本 windows 风格,浏览器访问操作使用,非桌面应用程序. 1.代码生成器: [正反双向](单表.主表.明细表.树形表 ...
- 学习Java 采取令牌的方式避免重复提交
重复提交原因 从提交页面到成功页面的跳转一般采用视图定位,由于视图定位是在服务端跳转的,如果用户在点击提交之后再次刷新页面,会导致重复提交,数据库的数据会有重复. 采用令牌措施 1.在转账展示页面生成 ...
- Mysql 5.7 windows安装 zip安装
最近想安装一个本地数据库, 发现网上写的没一个能安装成功的, 各种蛋疼, 我还是自己写一个吧 参考链接: https://www.cnblogs.com/by330326/p/5608290.html ...
- HDFS源码文件过大,IDEA打开失败解决方法
问题现象:hadoop 3.1.0源码文件ClientNamenodeProtocolProtos大小4M+,IDEA打开时加载失败,ClientNamenodeProtocolPB报错找不到类. - ...
- 时间序列分析工具箱——tidyquant
目录 时间序列分析工具箱--tidyquant tidyquant 的用途 加载包 tq_get:获得数据 从 Yahoo! Finance 获得股票数据 从 FRED 获得经济数据 使用 tq_tr ...