[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系列之三> ...
随机推荐
- springboot 配置jpa启动报Error processing condition on org.springframework.boot.autoconfigure.data.web.SpringDataWebAutoConfiguration.pageableCustomizer
springboot +gradle 配置jpa启动报Error processing condition on org.springframework.boot.autoconfigure.data ...
- Kubernetes-dns 域名解析问题
问题描述:nginx不能解析域名,但是使用nslookup却可以解析域名 ./sbin/nginx -t nginx: [emerg] host not found in upstream " ...
- javascript中对数组对象的深度拷贝
在前端开发的某些逻辑中,经常需要对现有的js对象创建副本,避免污染原始数据的情况. 如果是简单的一维数组对象,可以使用两个原生方法: 1.splice var arr1 = ['a', 'b', 'c ...
- 笔记--Yarn
Yarn,Facebook开源一个新的Javascript包管理工具. 简介 Yarn 是一个新的包管理器,用于替代现有的 npm 客户端或者其他兼容 npm 仓库的包管理工具.Yarn 保留了现有工 ...
- etherlime-2-Etherlime Library API-deployer
Etherlime Library API 库API Deployer部署者 Deployer functionality The main functionality the deployer ex ...
- swoole_table应用类
<?php/* Redis可真能坑爷,原先的设计用redis保存临时数据,可到了实际应用(实际上也就是几十个人同时用),总是出现莫名其妙的问题,最常见的就是读不出数据来,调试了好多天,那问题还是 ...
- 理解JavaScript继承(三)
理解JavaScript继承(三) 通过把父对象的属性,全部拷贝给子对象,也能实现继承. 7.浅拷贝 function extendCopy(p) { var o = {}; for (var pro ...
- IPython学习笔记(一)
开始看<利用python进行数据分析>这一本书,记录下学习的点滴,对于每一个小知识点记录得过于详细,但是好记性不如烂笔头,动动手还是记得比较深刻点. 1.Tab自动补齐 输入an后按Tab ...
- Js apply()使用详解
Js apply方法详解 我在一开始看到javascript的函数apply和call时,非常的模糊,看也看不懂,最近在网上看到一些文章对apply方法和call的一些示例,总算是看的有点眉目了,在这 ...
- 关于html5 audio 标签在ios系统上不能正常自动播放的解决办法
由于 iOS Safari 限制不允许 audio autoplay, 必须用户主动交互(例如 click)后才能播放 audio, 因此我们通过一个用户交互事件来主动 play 一下 audio. ...