matlab制作徽标
这里我参考了网上的一些例子,详细介绍制作简单徽标的过程。建立脚本文件.m,由于版本问题,可能有些人使用时字体不能显示,因为一些新的字体的原因旧版本的matlab未能添加导致,可自行修改字体解决。
建立显示空间区域
clc;
clear;
figure();
ax = gca;
hold(ax,'on'); %hold(ax,___) 为 ax 指定的坐标区而非当前坐标区设置 hold 状态。指定坐标区作为以上任何语法的第一个输入参数。使用单引号将 'on' 和 'off' 输入引起来,例如 hold(ax,'on')。
axis(ax,'equal','off',[-35,35,-35,35]); %axis([xmin xmax ymin ymax]): [ ]中分别给出x轴和y轴的最大值、最小值
画同心圆环
% 画外圆
plot(ax,30*exp(1i*(0:0.01:2*pi)),'color',[0.5,0,0.7],'linewidth',4);
%li是复数中的i,30是半径,exp(2) 就等于 e^2,在复变中的实部与虚部可以表示横纵坐标,即在0-2pi之间,间隔0.01取值,密集取点,形成近似圆
% 画内圆
plot(ax,22*exp(1i*(0:0.01:2*pi)),'Color',[0.5,0,0.5],'LineWidth',4);%同理
画内折线
a(1,:) = 22*exp(1i*2*pi*(0:1/8:1));
%li是复数中的i,22是半径,exp(2) 就等于e^2 ,在复变中的实部与虚部可以表示横纵坐标,即8等分半径为22的圆
a(2,:) = 22* sin(pi/4)/sin(5*pi/8) * exp( 1i*2*pi*(1/16:1/8:17/16) );
%同理等分半径为22* sin(pi/4)/sin(5*pi/8)的圆参考黄金比例
plot(ax,a(:),'Color',[0.5,0,0.5],'LineWidth',4); %a(:)作用是将矩阵二维降为一维空间,遵循【1 2 3;4 5 6】降维后【1 4 2 5 3 6】达到交叉连线的作用
填充文字
text(ax,-13,0,'和','FontName','楷体','FontSize',110,... %控制字体的位置、字体型号、大小、颜色、粗细
'Color',[0.5,0,0.5]) %[0.5 0.5 0.5]是RGB颜色空间的值,是归一化之后的结果,可以参考ps中的颜色调和比例
text(ax,3,-1,'平','FontName','楷体','FontSize',18,...
'Color',[0.5,0,0.5])
圆环环绕文字制作
% 环绕字体
circleWord1 = ' FAN YAO XI MENG '; %分开是为了后边的对称
circleWord2 = '· 9102 ·'; %由于代码旋转原理的原因和时间有限,只能先倒序显示文字
wordlength1=size(circleWord1,2 ) ; %求长size(a,1 ) size(a,2 ) 分别是求矩阵a的行、列长度,也可求字符串
wordlength2=size(circleWord2,2);
for i=1:wordlength1
step1(i)=5;
end
for i=1:wordlength2
step2(i)=5;
end
Angle1 =[180 100-200/sum(step1).*cumsum(step1) linspace(-80,80,wordlength1)]; %角度范围设置
Angle2 =[280 100-200/sum(step2).*cumsum(step2) linspace(-50,50,wordlength2)];
Angle2= fliplr(Angle2); %反向取值
for ii = 1:wordlength1+wordlength2
if ii < wordlength1+1
t = text(ax,0,0,circleWord1(ii));
t.Position = [26.5*cosd(Angle1(ii)+90) 26.5*sind(Angle1(ii)+90)]; %cosd是以度为参数的计算
t.Rotation = Angle1(ii);
else
t = text(ax,0,0,circleWord2(ii-wordlength1));
t.Position = [25.5*cosd(Angle2(ii-wordlength1)-90) 25.5*sind(Angle2(ii-wordlength1)-90)];
t.Rotation = Angle2(ii-wordlength1);
end
t.FontName = 'Segoe UI'; %Segoe UI 是比较新的字体,更加美观
t.FontSize = 32;
t.FontWeight = 'bold'; %设置粗细
t.Color = [0.5 0 0.5];
t.HorizontalAlignment = 'center'; %可自行参考网上的解释
end
以上就是制作的matlab代码,see you again !