首页 > 其他分享 >字体库加密

字体库加密

时间:2023-10-31 12:12:43浏览次数:35  
标签:simsun 加密 .. fonts 字体库 cmap font

自定义字体库

工具:Fontmin(http://ecomfe.github.io/fontmin/#banner)

常用汉字集:https://gitee.com/feng_xingkai/chinese

1、打开Fontmin,将自定义字体库需要的字粘贴到页面中,并拖入字体文件,然后点击生成,获得自定义的字体库。

修改字体映射关系

fontTools安装:pip install fontTools

from fontTools.ttLib import TTFont

# 加载字体文件:
font = TTFont('simsun.ttf')

# 获得字符、字形映射
cmap = font.getBestCmap()

print("--------------原始映射关系-----------------")
print(cmap)

# 修改映射关系
for key in reversed(list(cmap.keys())):
    cmap[key + 0x0001] = cmap.pop(key)

print("--------------修改后的映射关系-------------")
print(cmap)

# 保存新ttf文件:
font.save('simsun_new.ttf')
# 保存woff文件
font.save('yahei_new.woff')

font.close()

后台数据返回修改方法

public static String encryptContent(String content) {
    if (StrUtil.isBlank(content)) {
        return "";
    }

    char[] charArray = content.toCharArray();
    StringBuilder stringBuilder = new StringBuilder();
    for (char c : charArray) {
        if (c == 32) {
            stringBuilder.append(" ");
        } else {
         stringBuilder.append("&#x").append(Integer.toHexString(++c)).append(";");
        }
    }

    return stringBuilder.toString();
}

Vue使用

创建font.css文件

@font-face {
  font-family: 'webfont';
  font-display: swap;
  src: url('../fonts/simsun.eot'); /* IE9 */
  src: url('../fonts/simsun.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
  url('../fonts/simsun.woff') format('woff'), /* chrome、firefox */
  url('../fonts/simsun.ttf') format('truetype'), /* chrome、firefox、opera、Safari, Android, iOS 4.2+*/
  url('../fonts/simsun.svg#webfont') format('svg'); /* iOS 4.1- */
}

页面引入

<style>
    @import "~@assets/css/font.css";

    .webfont {
      font-family: webfont !important;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
    }
</style>

需要用到加密的地方

<span class="webFont" v-html="content"></span>

附:

字体转换:https://convertio.co/zh/font-converter/

字体图标库:https://icomoon.io/app/#/select

标签:simsun,加密,..,fonts,字体库,cmap,font
From: https://www.cnblogs.com/duya12345/p/17799949.html

相关文章

  • 当java文件被加密时候,通过.class文件查看代码
    使用jadx-gui.exe工具,或者jd-gui.exe工具查看  ......
  • XOR 加密
    1.代码#include<stdio.h>#include<stdlib.h>#include<time.h>intmain(){srand(time(NULL));inta,b,c,i,n;longlongd=0;printf("原文:");scanf("%d",&a);printf("密钥长度:");sc......
  • JS加密/解密之逻辑运算符加密进阶篇
    前言 前篇给大家介绍了运算符不为人知的基础知识。他们的各种表达形式,今天我们从这个基础上,继续进一步告诉大家,如何对字符串进行加密处理。还是那句话,技术人不废话,直接晒代码。示例源代码//字符串加密示例letstr="HelloWorld";//加密letencryptedString=[[]+[]+......
  • 【每日例题】蓝桥杯 C语言 凯撒加密
    凯撒加密题目题目描述给定一个单词,请使用凯撒密码将这个单词加密。凯撒密码是—种替换加密的技术,单词中的所有字母都在字母表上向后偏移3位后被替换成密文。即α变为d,b变为e,·,w变为z,Z变为a,g变为b,z变为c。输入描述输入格式:输入一行,包含一个单词,单词中只包含小写英文字母,单词中......
  • 5款在线JavaScript加密混淆工具
    5款常用、好用的在线JavaScript加密混淆工具,网址请从截图中查看。1、jscrambler2、JShaman3、javascriptobfuscator4、freejsobfuscator5、jjencode......
  • AES加密
    关于AESAES属于分组加密算法,明文长度固定为128位,密钥长度可以为128、192、256位。本文以明文长度128位,密钥长度128位的AES进行实现。AES加密解密python实现#S-Box的预定义值,用于替代输入字节。256s_box=(0x63,0x7c,0x77,0x7b,0xf2,0x6b,0x6f,0xc5,0x30,......
  • JS加密/解密之那些不为人知的基础逻辑运算符
    不多说,直接上干货使用逻辑非运算符!和双重逻辑非运算符!!:例如![]、!![]、!0、!!0和!""、!!""。空字符串的转换:!""和!!""。数组和对象的类型转换:[]+[]、[]-[]、{}+[]和[]+{}。对象和原始值的自动拆箱:例如({valueOf:()=>5})+3。减法运算符的字符串转换:例如......
  • Windows文件夹加密
    第一步:创建加密文件电脑本地新建一个文件,把后缀修改为.bat,右键编辑这个文件,将以下代码拷贝进去并保存:   @echooff::关掉无关显示chcp65001CLS::清除屏幕闲杂信息titlelocktool::命名批处理标题ifEXIST"ControlPanel.{21EC2020-3AEA-1069-A2DD-08002B30309D......
  • PHP RSA加密解密实例
    <?phpheader('Content-Type:text/html;charset=utf-8');//RSA加密解密实例$private_key=<<<EOF-----BEGINRSAPRIVATEKEY-----MIICXQIBAAKBgQC3//sR2tXw0wrC2DySx8vNGlqt3Y7ldU9+LBLI6e1KS5lfc5jlTGF7KBTSkCHBM3ouEHWqp1Z......
  • Linux 脚本加密解密工具
    1、系统自带工具gzexe加密方法:#gzexetest.sh此时在目录下就会产生一个test.sh~文件,该文件是源文件,test.sh是加密后的文件解密方法:#gzexe-dtest.sh在目录下就会产生一个test.sh~文件,该文件是源文件,test.sh是解密后的文件2、shc加密软件,unshc来解密软件#wgethtt......