关于Ubuntu系统汉字“复”“门”等简体中文显示为异体(日文)字形

前言

之前工作中遇到ubuntu后台调用wkhtmltopdf生成PDF文件时,里面的部分中文字体显示异常,例如门、关、复等字字形与规范中文不符。主要原因是 ubuntu 系统自带的 fontconfig 配置语言优先级造成的。原配置文件里面的日文优先级排在中文前面,所以解决办法就是修改配置文件 /etc/fonts/conf.d/64-language-selector-prefer.conf 将优先级改一下即可。
在这里插入图片描述

如下图所示,配置文件里面的 Noto Sans CJK JP(红框) 排在 Noto Sans CJK SC)(椭圆) 前面,所以系统使用字体时优先使用JP字体了。
在这里插入图片描述

解决办法:

# 先备份原文件
sudo cp /etc/fonts/conf.d/64-language-selector-prefer.conf /etc/fonts/conf.d/64-language-selector-prefer_back.conf
# 修改以下配置文件,将 所有 Noto Sans CJK SC 放在 最前面 保存退出即可
sudo vim /etc/fonts/conf.d/64-language-selector-prefer.conf
# 注:不同ubuntu系统版本支持的语言种类有所不一样,但都是将所有 Noto Sans CJK SC 放在 最前面 即可。

下图所示为Ubuntu 16.04(上面截图为Ubuntu 18.04版本)版本修改后的配置文件
在这里插入图片描述

测试:

# 上面修改完成后,更新字体缓存
fc-cache -fv
# 然后执行以下命令检查,如果出现 NotoSansCJK-Regular.ttc: "Noto Sans CJK SC" "Regular" 则表示设置成功:
fc-match -s | grep 'Noto Sans CJK'

在这里插入图片描述
在这里插入图片描述

参考资料:
更多详情可以点击参考 1.2.2.2~~

在MATLAB中绘制并联机器人的字轨迹,可以按照以下步骤进行: 1. 定义机器人的运动学模型:根据机器人的结构和参数,使用MATLAB的Robotics System Toolbox或自定义函数定义机器人的运动学模型。这包括每个关节的长度、连杆角度等。 2. 定义关节角度变化:根据字轨迹的要求,确定每个关节角度随时间的变化规律。可以使用函数或数学表达式来描述关节角度的变化。 3. 计算末端执行器的位置:根据机器人的运动学模型和关节角度变化,计算出末端执行器在三维空间中的位置。 4. 绘制轨迹:使用MATLAB的绘图函数,如plot3或plot3d,根据计算得到的末端执行器位置数据,绘制出机器人的字轨迹。 下面是一个简单的示例代码,演示如何在MATLAB中绘制一个并联机器人的字轨迹: ```matlab % 机器人参数 L1 = 1; % 关节1长度 L2 = 1; % 关节2长度 % 关节角度变化 t = linspace(0, pi, 100); % 时间变化范围 theta1 = sin(t); % 关节1角度变化 theta2 = cos(t); % 关节2角度变化 % 计算末端执行器位置 x = L1*cos(theta1) + L2*cos(theta1+theta2); y = L1*sin(theta1) + L2*sin(theta1+theta2); z = zeros(size(t)); % 假设末端执行器高度为0 % 绘制轨迹 plot3(x, y, z, 'b', 'LineWidth', 2); grid on; xlabel('X'); ylabel('Y'); zlabel('Z'); title('并联机器人的字轨迹'); ``` 以上代码将绘制出一个并联机器人在三维空间中的字轨迹。你可以根据自己的机器人参数和轨迹要求进行相应的调整。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值