Python中的“点阵字体”

“点阵字体”是个啥?,在python中怎么使?在现在全面高清的 5 G 5G 5G时代,它还有用“武”之地?


(笔记模板由python脚本于2024年06月01日 18:44:31创建,本篇笔记适合会基本编程的coder翻阅)


【学习的细节是欢悦的历程】

  • Python 官网:https://www.python.org/

  • Free:大咖免费“圣经”教程《 python 完全自学教程》,不仅仅是基础那么简单……
    地址:https://lqpybook.readthedocs.io/


  自学并不是什么神秘的东西,一个人一辈子自学的时间总是比在学校学习的时间长,没有老师的时候总是比有老师的时候多。
            —— 华罗庚


  • My CSDN主页、My HOT博、My Python 学习个人备忘录
  • 好文力荐、 老齐教室


“点阵字体”是个啥?
点 阵 字 体
(在python中怎么使?)


本文质量分:

96 96 96

本文地址: https://blog.csdn.net/m0_57158496/article/details/139508604

CSDN质量分查询入口:http://www.csdn.net/qc


目 录

  • ◆ Python中的“点阵字体”
    • 1、点阵字体?
    • 2、适用python的点阵字库
    • 3、点阵字库应用场景
    • 4、点阵字库的使用
    • 5、在Python中应用点阵字库
      • 5.1 怎样通过python应用点阵字库?
      • 5.2 luma.led_matrix库简介
    • 6、在python中模拟“点阵”打印
      • 6.1 模拟打印当前时间
      • 6.2 代码解析
    • 7、完整源码(Python)


◆ Python中的“点阵字体”


1、点阵字体?


   点 阵 字 体 是 个 啥 ? 点阵字体是个啥? 点阵字体,说白了就是在一个设定块状区域内,用点的序列““出””的样子。一般是在白色背景上用黑色的点“画”。

  看到“点阵字体”这个概念,想方儿对它进行了一些了解。您如有兴趣,跟着我一起扒拉扒拉,看看我都晓得了些啥?


您请先瞅瞅我在python中模拟的时间打印——

  • 代码运行效果截屏图片
    在这里插入图片描述
      这是用5×5*字符定义了一个只有0123456789: 11 11 11个字符的简单“点阵字库”来玩儿一下的产物。



回页目录


2、适用python的点阵字库


  在Python中生成点阵字库,通常可以使用专门的库来将字符转换成点阵格式。以下是一些可以用于生成点阵字库的Python库:

  1. python-font-to-dotmatrix - 这是一个可以将字体转换为点阵格式的库,可以用于将字符转换为可以在点阵显示器上显示的格式。
  2. dotmap - 这是一个可以将字符转换为点阵地图的库,可以用于生成字符的点阵表示。
  3. CharMapper - 这是一个可以用于创建字符映射的库,可以将字符映射到点阵显示上。
  4. Pillow(PIL Fork)- 虽然Pillow主要是图像处理库,但它可以用来处理图像上的文字,包括生成文字的点阵表示。
  5. python-bdf - 这个库可以解析BDF(Bitmap Distribution Format)字体文件,这种文件格式包含了字体的点阵信息。
  6. fontTools - 这个库提供了广泛的字体处理功能,包括操作TrueType、OpenType等字体格式,也可以用来提取字体的点阵信息。
  在使用这些库时,通常需要结合具体的硬件规格,如点阵显示器的分辨率和像素排列方式,来生成适用于特定设备的点阵字库。这些库可能需要结合其他图形处理库或硬件控制库来在点阵显示器上显示文字。

  在开发过程中,请确保遵守相关的开源协议和知识产权法律法规,尊重字体的版权和使用权限。如果需要商业用途或定制化的点阵字库,可能需要联系专业的字体设计公司或个人来获取授权和定制服务。



回页目录


3、点阵字库应用场景


  点阵字库具有广泛的实际应用场景,尤其是在嵌入式系统和硬件限制较大的场合。以下是一些常见的应用场景:

  1. 嵌入式显示:许多嵌入式设备,如单片机、微控制器驱动的设备、POS机、小型打印机、手持设备等,使用点阵字库来显示文本信息,因为它们通常不需要高分辨率的显示。
  2. 工业控制面板:在工业环境中,点阵字库常用于控制面板和显示屏,以显示状态信息、警报、实时数据等。
  3. 车载显示屏:汽车中的信息显示屏,如车载导航系统、电子仪表盘等,可能会使用点阵字库来显示信息。
  4. 电子看板和广告牌:在公共场所,如公交车站、地铁站、机场等地方,点阵字库可以用于显示时间、航班信息、广告等。
  5. 打印机:点阵打印机使用点阵字库来打印文本,尽管现在激光和喷墨打印机更为常见,但在一些特定的应用中,点阵打印机仍然在使用。
  6. 复古游戏和电子玩具:复古风格的电子游戏机和电子玩具可能会使用点阵字库来显示文本和图形。
  7. DIY项目:业余爱好者和DIY者可能会使用点阵字库在他们的项目中显示文本,如自制时钟、小型游戏机等。
  8. 通讯设备:一些老式的通讯设备,如传真机、电报机等,使用点阵字库来显示和打印文本信息。
  9. 专业仪器:在医疗、科研等专业领域,一些仪器可能会使用点阵字库来显示测量结果或状态信息。
  10. 艺术和设计:艺术家和设计师有时也会使用点阵字库来创造复古或独特的视觉效果。
  点阵字库的优势在于它们的简单性和低资源需求,这使得它们非常适合在资源受限的环境中工作。随着技术的发展,虽然高分辨率的显示技术越来越普及,但点阵字库仍然在许多应用中占有一席之地。



回页目录


4、点阵字库的使用


  点阵字库在不同的编程语言环境中使用方法一样吗?点阵字库的使用方法,在不同的编程语言环境中会有所不同,因为每种语言都有其独特的语法和库。不过,基本的思路是相似的,通常包括以下几个步骤:

  1. 选择或创建字库:首先,你需要有一个点阵字库,这可以是一个预先生成的字库文件,或者你可以使用特定的工具或库来创建一个。
  2. 加载字库:在程序中加载点阵字库,这通常涉及到读取字库文件或将字库数据集成到程序中。
  3. 映射字符:将需要显示的字符映射到点阵字库中的对应点阵数据。每个字符通常都有一个唯一的编码或索引。
  4. 显示或输出:将点阵数据输出到显示设备上,如点阵显示器、打印机或其他类型的输出设备。
  5. 字体渲染:在某些情况下,可能需要进行字体渲染,将点阵数据转换为可以显示的图形格式。
    在不同的编程语言中,这些步骤可能会以不同的方式实现。以下是一些示例:

下面是常用语言的三个简单示例代码


P y t h o n Python Python

# 假设使用一个预定义的点阵字库
from dotmatrix import DotMatrixFont
# 加载字库
font = DotMatrixFont('path/to/font')
# 获取字符点阵数据
character_bitmap = font.get_char_bitmap('A')
# 输出点阵数据到显示器
display.show_bitmap(character_bitmap)

C / C + + C/C++ C/C++

// 假设有一个点阵字库数组
const uint8_t font_data[] = {/* 点阵字库数据 */};
// 获取字符点阵数据
uint8_t char_bitmap[8]; // 假设每个字符是8x8的点阵
memcpy(char_bitmap, font_data + ('A' * 8), 8);
// 在显示设备上显示字符
display_draw_bitmap(char_bitmap, x, y);

J a v a S c r i p t JavaScript JavaScript(用于Web)

// 假设有一个点阵字库对象
const font = {/* 点阵字库对象 */};
// 获取字符点阵数据
const characterBitmap = font['A'];
// 在Canvas上绘制字符
const ctx = document.getElementById('canvas').getContext('2d');
ctx.drawImage(characterBitmap, x, y);

  在实际应用中,你需要根据所使用的编程语言和具体的库或框架来调整代码。不同的库可能会提供不同的函数和对象来操作点阵字库。因此,了解你所使用的语言和库的文档是至关重要的。



回页目录


5、在Python中应用点阵字库


5.1 怎样通过python应用点阵字库?

  在Python中应用点阵字库,通常是指使用特定的库来渲染点阵字体,这种字体由像素点组成,常用于嵌入式设备或需要小尺寸字体的场合。以下是一个基本的步骤指南,展示如何在Python中应用点阵字库:

  1. 选择或获取点阵字库
    点阵字库通常是一些.h文件,包含了字符的像素数据。你可以从网上找到一些开源的点阵字库,或者使用工具生成你自己的点阵字库。
  2. 选择合适的Python库
    有一些Python库支持点阵字库的使用,例如luma.led_matrixPillow等。这些库可以帮助你将点阵字库中的数据转换成可以在屏幕上显示的图像。
  3. 安装必要的库
    使用pip安装你选择的库。例如,如果你选择了luma.led_matrix,你可以使用以下命令安装:
    pip install luma.led_matrix
    
  4. 编写代码加载点阵字库
    在Python代码中,你可以定义函数来加载点阵字库文件,并将字库中的数据转换成Python可以理解的结构。
  5. 渲染字体
    使用选定的库,根据点阵字库中的数据渲染字体到屏幕或图像上。
  6. 显示或保存结果
    渲染完成后,你可以将结果显示在屏幕上,或者保存为图片文件。


下面是一个使用Pillow库的简单例子,展示如何加载点阵字库并显示一个字符:

from PIL import Image, ImageDraw
# 假设你有一个点阵字库,每个字符是一个8x8像素的矩阵
# 定义一个字符的点阵数据
dot_matrix_char = [[0, 1, 1, 0, 1, 1, 0, 0],[1, 0, 0, 1, 0, 0, 1, 0],[1, 0, 0, 1, 0, 0, 1, 0],[1, 0, 0, 1, 0, 0, 1, 0],[1, 0, 0, 1, 0, 0, 1, 0],[1, 0, 0, 1, 0, 0, 1, 0],[1, 0, 0, 1, 0, 0, 1, 0],[0, 1, 1, 0, 1, 1, 0, 0]
]
# 创建一个8x8的黑色图像
img = Image.new('1', (8, 8), 0)
# 使用ImageDraw来绘制点阵字符
d = ImageDraw.Draw(img)
for y, row in enumerate(dot_matrix_char):for x, value in enumerate(row):if value == 1:d.point((x, y), fill=1)
# 显示图像
img.show()

  这个例子只是展示了如何在Python中处理点阵数据的基本方法。实际应用中,你可能需要读取*.h文件中的数据,或者处理更复杂的字体和格式。



回页目录


5.2 luma.led_matrix库简介


  Pillowluma.led_matrix都是比较好用的Python库,Pillow功能强大好用且大家都比较熟悉,在这里就简单介绍一下后者。luma.led_matrix是一个轻量级且易用的Python 库,它提供了一个API来控制各种LED矩阵和类似显示设备。这个库是luma.lcd项目的一部分,后者是一组用于控制LCD显示屏的Python库。


luma.led_matrix 支持多种硬件,包括但不限于:

  • MAX7219或MAX7221控制的LED矩阵
  • APA102 / DotStar RGB LED矩阵
  • WS2812 / NeoPixel RGB LED矩阵
  • PWM控制的单色LED矩阵


这个库的主要特点包括:

  • 支持多种硬件设备
  • 提供简单的API来绘制文本、形状和图像
  • 支持多种字体,包括点阵字体
  • 可以与luma.core库结合使用,后者提供了更高级的图形功能,如旋转、缩放和颜色处理


  luma.led_matrix 库通常用于创建信息显示屏、广告牌、状态指示器等。它通过SPI或类似接口与LED矩阵板通信,允许用户在Python中轻松控制LED矩阵的显示内容。


安装luma.led_matrix库通常很简单,可以使用pip:

pip install luma.led_matrix


  使用luma.led_matrix时,你需要根据你的硬件设备选择合适的显示驱动,并初始化一个显示实例。然后,你可以使用提供的绘图功能来显示文本、图像和其他图形元素。
以下是一个简单的例子,展示了如何使用luma.led_matrix库来显示文本:

from luma.led_matrix.device import max7219
from luma.core.interface.serial import spi, noop
from luma.core.render import canvas
from luma.core.legacy import text
# 初始化SPI接口
serial = spi(port=0, device=0, gpio=noop())
# 创建一个MAX7219控制的LED矩阵设备实例
device = max7219(serial, width=32, height=8)
# 使用canvas来绘制内容
with canvas(device) as draw:text(draw, (0, 0), "Hello World", fill="white")
# 保持程序运行,以便LED矩阵可以继续显示内容
try:while True:pass
except KeyboardInterrupt:pass

  这个例子假设你有一个连接到SPI接口的MAX7219控制的LED矩阵。它会显示文本 “Hello World”。注意,实际使用时你可能需要根据你的硬件配置调整SPI端口和设备参数。



回页目录


6、在python中模拟“点阵”打印


6.1 模拟打印当前时间


  • 代码运行效果截屏图片
    在这里插入图片描述

  • 点阵字库0123456789:,仅数字0-9和冒号:11个ASCII字符的简易点阵字库,每个字符是5×5的点阵

chars = [["     ","  *  ","     ","  *  ","     ",],["*****","*   *","*   *","*   *","*****"],["  *  "," **  ","  *  ","  *  "," *** "],["*****","    *","*****","*    ","*****"],["*****","    *"," ****","    *","*****"],["*  * ","*  * ","*****","   * ","   * "],["*****","*    ","*****","    *","*****"],["*****","*    ","*****","*   *","*****"],[" ****","    *","    *","    *","    *"],["*****","*   *","*****","*   *","*****"],["*****","*   *","*****","    *","*****"]
] # 11个字符图形列表charDict = dict(zip(':0123456789', chars)) # 利用dict和zip函数,生成字符映射字典——简易“点阵字库”

  自己“”了一个简易点阵字符列表,利用dict和zip函数,将列表生成字符映射字典——简易“点阵字库”。


Python代码


t = localtime()[3:5] # 截取当前系统时、分数据
nowstr = f"{t[0]:0>2}:{t[1]:0>2}" # 字符串格式化当前时间
#input(nowstr) 
nowArray = [charDict.get(i) for i in nowstr]
#input(nowArray)print() for i in range(5):print(f"{'':>5}{' '.join([nowArray[j][i] for j in range(5)])}")print()#lines = '\n'.join([f"{'':>5}{' '.join([nowArray[j][i] for j in range(5)])}" for i in range(5)]) # 列表解析每行字符数据并用“\n”拼接
#print(f"\n{lines}\n")
  • 被注释掉的两行代码,可以更好地完成for循环的功能
    在这里插入图片描述



回页目录


6.2 代码解析


  我这段儿代码,就是把当前系统时间,格式化成“HH:SS”的形式,把其字符“置换”成5×5点阵字体,打印到Python“终端”(控制台)。

  难点在于,点阵字符串的打印,python终端是逐午打印的,而点阵字体却分布于5行。我采用的是拼接 5 个 5个 5时间字符”的每行*来实现打印的。


  • 下面是代码的逐行解析:
  1. #!/usr/bin/env python:这是一个shebang行,用于指定此脚本应该由哪个解释器执行。在这里,它指定使用环境变量python指定的Python解释器。
  2. # coding: utf-8:这是一个编码声明,用于指定源代码文件使用的字符编码是UTF-8
  3. from time import localtime:导入time模块中的localtime函数,该函数用于获取当前系统的本地时间数据数组。
  4. chars:这是一个列表,包含了数字0-9和冒号:字符的5x5点阵表示。每个子列表代表一个字符的点阵图形。
  5. charDict = dict(zip(':0123456789', chars)):创建一个字典,将字符(数字0-9和冒号:)映射到它们的点阵表示。
  6. t = localtime()[3:5]:调用localtime函数获取当前时间,然后从中提取小时和分钟(索引3和4)。
  7. nowstr = f"{t[0]:0>2}:{t[1]:0>2}":将提取的小时和分钟格式化为一个字符串,例如“09:45”。这里使用了格式化字符串语法,确保小时和分钟都是两位数,不足部分用0填充。
  8. nowArray = [charDict.get(i) for i in nowstr]:遍历nowstr中的每个字符,从charDict中获取对应的点阵表示,并将它们存储在一个列表中。
  9. 代码接下来使用两个循环来打印时间。外层循环遍历点阵的每一行(共5行),内层循环遍历当前时间的每个字符。它使用join方法和列表解析来构造并打印每一行的点阵字符。
  10. 注释掉的lines变量和print语句是另一种打印方式,它首先构造一个包含所有行的字符串,然后一次性打印出来。这种方式更为Python,且比for更为简洁高效,但对初入坑Python的code person不太“友好”。

  总的来说,这段儿代码将当前时间以点阵的形式显示在控制台上,每个数字和冒号都是由星号(*)组成的5x5的点阵图形。


Python代码


lines = '\n'.join([f"{'':>5}{' '.join([nowArray[j][i] for j in range(5)])}" for i in range(5)]) # 列表解析每行字符数据并用“\n”拼接
print(f"\n{lines}\n")



回页目录


7、完整源码(Python)

(源码较长,点此跳过源码)

#!/sur/bin/nve python
## coding: utf-8 
from time import localtime chars = [["     ","  *  ","     ","  *  ","     ",],["*****","*   *","*   *","*   *","*****"],["  *  "," **  ","  *  ","  *  "," *** "],["*****","    *","*****","*    ","*****"],["*****","    *"," ****","    *","*****"],["*  * ","*  * ","*****","   * ","   * "],["*****","*    ","*****","    *","*****"],["*****","*    ","*****","*   *","*****"],[" ****","    *","    *","    *","    *"],["*****","*   *","*****","*   *","*****"],["*****","*   *","*****","    *","*****"]
] # 5×5的点阵字符列表charDict = dict(zip(':0123456789', chars)) # 生成字符映射字典t = localtime()[3:5] # 截取当前系统时、分数据
nowstr = f"{t[0]:0>2}:{t[1]:0>2}" # 字符串格式化当前时间
#input(nowstr) 
nowArray = [charDict.get(i) for i in nowstr]
#input(nowArray)print() for i in range(5):print(f"{'':>5}{' '.join([nowArray[j][i] for j in range(5)])}")print()#lines = '\n'.join([f"{'':>5}{' '.join([nowArray[j][i] for j in range(5)])}" for i in range(5)]) # 列表解析每行字符数据并用“\n”拼接
#print(f"\n{lines}\n")



回页首


上一篇:  对AI的提问技艺(人工智能大行其道,如何借势?始于问询。要得要得预期,精于“提问技巧”)
下一篇: 



我的HOT博:

  本次共计收集 311 篇博文笔记信息,总阅读量43.82w。数据于2024年03月22日 00:50:22完成采集,用时6分2.71秒。阅读量不小于6.00k的有 7 7 7篇。

  • 001
    标题:让QQ群昵称色变的神奇代码
    (浏览阅读 5.9w )
    地址:https://blog.csdn.net/m0_57158496/article/details/122566500
    点赞:25 收藏:86 评论:17
    摘要:让QQ昵称色变的神奇代码。
    首发:2022-01-18 19:15:08
    最后编辑:2022-01-20 07:56:47

  • 002
    标题:Python列表(list)反序(降序)的7种实现方式
    (浏览阅读 1.1w )
    地址:https://blog.csdn.net/m0_57158496/article/details/128271700
    点赞:8 收藏:35 评论:8
    摘要:Python列表(list)反序(降序)的实现方式:原址反序,list.reverse()、list.sort();遍历,全数组遍历、1/2数组遍历;新生成列表,resersed()、sorted()、负步长切片[::-1]。
    首发:2022-12-11 23:54:15
    最后编辑:2023-03-20 18:13:55

  • 003
    标题:pandas 数据类型之 DataFrame
    (浏览阅读 9.7k )
    地址:https://blog.csdn.net/m0_57158496/article/details/124525814
    点赞:7 收藏:36 
    摘要:pandas 数据类型之 DataFrame_panda dataframe。
    首发:2022-05-01 13:20:17
    最后编辑:2022-05-08 08:46:13

  • 004
    标题:个人信息提取(字符串)
    (浏览阅读 8.2k )
    地址:https://blog.csdn.net/m0_57158496/article/details/124244618
    点赞:2 收藏:15 
    摘要:个人信息提取(字符串)_个人信息提取python。
    首发:2022-04-18 11:07:12
    最后编辑:2022-04-20 13:17:54

  • 005
    标题:Python字符串居中显示
    (浏览阅读 7.6k )
    地址:https://blog.csdn.net/m0_57158496/article/details/122163023
    评论:1

  • 006
    标题:罗马数字转换器|罗马数字生成器
    (浏览阅读 7.5k )
    地址:https://blog.csdn.net/m0_57158496/article/details/122592047
    摘要:罗马数字转换器|生成器。
    首发:2022-01-19 23:26:42
    最后编辑:2022-01-21 18:37:46

  • 007
    标题:回车符、换行符和回车换行符
    (浏览阅读 6.0k )
    地址:https://blog.csdn.net/m0_57158496/article/details/123109488
    点赞:2 收藏:3 
    摘要:回车符、换行符和回车换行符_命令行回车符。
    首发:2022-02-24 13:10:02
    最后编辑:2022-02-25 20:07:40


推荐条件 阅读量突破6.00k
(更多热博,请点击蓝色文字跳转翻阅)

  • 截屏图片
    在这里插入图片描述
      (此文涉及ChatPT,曾被csdn多次下架,前几日又因新发笔记被误杀而落马。躺“未过审”还不如回收站,回收站还不如永久不见。😪值此年底清扫,果断移除。留此截图,以识“曾经”。2023-12-31)



回页首


老齐漫画头像

精品文章:

  • 好文力荐:齐伟书稿 《python 完全自学教程》 Free连载(已完稿并集结成书,还有PDF版本百度网盘永久分享,点击跳转免费🆓下载。)
  • OPP三大特性:封装中的property
  • 通过内置对象理解python'
  • 正则表达式
  • python中“*”的作用
  • Python 完全自学手册
  • 海象运算符
  • Python中的 `!=`与`is not`不同
  • 学习编程的正确方法

来源:老齐教室


◆ Python 入门指南【Python 3.6.3】


好文力荐:

  • 全栈领域优质创作者——[寒佬](还是国内某高校学生)博文“非技术文—关于英语和如何正确的提问”,“英语”和“会提问”是编程学习的两大利器。
  • 【8大编程语言的适用领域】先别着急选语言学编程,先看它们能干嘛
  • 靠谱程序员的好习惯
  • 大佬帅地的优质好文“函数功能、结束条件、函数等价式”三大要素让您认清递归

CSDN实用技巧博文:

  • 8个好用到爆的Python实用技巧
  • python忽略警告
  • Python代码编写规范
  • Python的docstring规范(说明文档的规范写法)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/24000.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一文搞懂DevOps、DataOps、MLOps、AIOps:所有“Ops”的比较

引言 近年来,“Ops”一词在 IT 运维领域的使用迅速增加。IT 运维正在向自动化过程转变,以改善客户交付。传统的应用程序开发采用 DevOps 实施持续集成(CI)和持续部署(CD)。但对于数据密集型的机器学习和人…

网络隔离后的跨网投递需求,要这样做才能让需求落地

为了保护企业的核心数字资产、隔离有害的网络安全威胁、保障数据信息在可信网络内进行安全交互,越来越多的企业在网络建设时,选择进行网络隔离。应用较为普遍的网络隔离手段包括物理隔离、协议隔离、应用隔离等,而常见的状态是企业进行内部网…

Lab_ Finding and exploiting an unused API endpoint

https://portswigger.net/web-security/learning-paths/api-testing/api-testing-identifying-and-interacting-with-api-endpoints/api-testing/lab-exploiting-unused-api-endpoint# 查看功能点: 在Burp的HTTP history中发现 /api路径 我们先尝试一下将API请求…

全网最全!场外个股期权的询价下单流程的详细解析

场外个股期权的询价下单流程 场外个股期权交易,作为在交易所外进行的个性化期权交易方式,为投资者提供了更加灵活和定制化的交易选择。以下是场外个股期权询价下单流程的详细步骤: 文章来源/:财智财经 第一步:明确交…

STM32——ADC篇(ADC的使用)

一、ADC的介绍 1.1什么是ADC ADC(Analogto-Digital Converter)模拟数字转换器,是将模拟信号转换成数字信号的一种外设。比如某一个电阻两端的是一个模拟信号,单片机无法直接采集,此时需要ADC先将短租两端的电…

AI日报|文生语音大模型国内外均有突破,Pika完成6亿新融资,视频大模型也不远了!

文章推荐 AI搜索哪家强?16款产品实战测评,效率飙升秘籍! AI日报|智谱AI再降价,同时开源9B系列模型;国内外气象大模型竞逐升级 字节推出文本到语音模型家族Seed-TTS:擅长情感表达,…

短视频矩阵系统----可视化剪辑独立开发(采用php)

短视频矩阵系统源头技术开发: 打磨短视频矩阵系统的开发规则核心框架可以按照以下几个步骤进行: 明确系统需求:首先明确系统的功能需求,包括短视频的上传、编辑、发布、播放等环节。确定系统的目标用户和主要的使用场景&#xff…

C++三大特性之继承,详细介绍

阿尼亚全程陪伴大家学习~ 前言 每个程序员在开发新系统时,都希望能够利用已有的软件资源,以缩短开发周期,提高开发效率。 为了提高软件的可重用性(reusability),C提供了类的继承机制。 1.继承的概念 继承: 指在现有…

鸢尾花分类和手写数字识别(K近邻)

鸢尾花分类 from sklearn.datasets import load_iris from sklearn.model_selection import train_test_split import pandas as pd import mglearn# 加载鸢尾花数据集 iris load_iris() X_train, X_test, y_train, y_test train_test_split(iris.data,iris.target,test_siz…

免费分享一套SpringBoot+Vue校园论坛(微博)系统【论文+源码+SQL脚本】,帅呆了~~

大家好,我是java1234_小锋老师,看到一个不错的SpringBootVue校园论坛(微博)系统,分享下哈。 项目视频演示 【免费】SpringBootVue校园论坛(微博)系统 Java毕业设计_哔哩哔哩_bilibili【免费】SpringBootVue校园论坛(微博)系统 Java毕业设计…

数据中心网络架构设计与优化

数据中心是现代企业和组织的核心基础设施,它们用于存储、处理和传输大量的数据和信息。为了满足不断增长的数据需求和提供可靠的服务,设计和优化数据中心网络架构至关重要。 首先,数据中心网络架构设计需要考虑可扩展性。随着业务的增长&…

[Bug]使用Transformers 微调 Whisper出现版本不兼容的bug

错误的现象 ImportError Traceback (most recent call last) <ipython-input-20-6958d7eed552> in () from transformers import Seq2SegTrainingArguments training_args Seq2SeqTrainingArguments( output_dir"./whisper-small-…

【全开源】防伪溯源一体化管理系统源码(FastAdmin+ThinkPHP+Uniapp)

&#x1f50d;防伪溯源一体化管理系统&#xff1a;守护品质&#xff0c;追溯无忧 一款基于FastAdminThinkPHP和Uniapp进行开发的多平台&#xff08;微信小程序、H5网页&#xff09;溯源、防伪、管理一体化独立系统&#xff0c;拥有强大的防伪码和溯源码双码生成功能&#xff0…

从零开始学JAVA

一、编写Hello world程序 public class JavaMain1 {//主程序执行入口&#xff0c;main方法public static void main(String[] args){System.out.println("Hello world!");} } 运行结果 Hello world! java编写主程序常见错误&#xff1a; 1、System ---首字母没有…

使用Aspose技术将Excel转换为PDF

简介&#xff1a;本文将介绍如何使用Aspose技术将Excel文件转换为PDF格式。我们将使用Aspose-Cells-8.5.2.jar包&#xff0c;并演示Java代码以及进行测试。 一、Aspose技术概述 Aspose是一款强大的文档处理库&#xff0c;支持多种编程语言&#xff0c;如Java、C#、Python等。…

工程力学 - 课程导论

工程力学是工程学科中的核心基础课程&#xff0c;专注于研究物体在外力作用下的运动规律和受力情况。它涵盖了静力学、运动学、动力学和材料力学等关键领域&#xff0c;为工程结构的安全性、稳定性和功能性提供理论支撑。通过理论分析、实验测定和计算机模拟等方法&#xff0c;…

MyEclipse新手使用介绍

目录 1.MyEclipse诞生背景 2.作用 3.版本历史 4.优缺点 5.应用场景 6.如何使用 6.1.下载与安装 6.2.MyEclipse 菜单及其菜单项 7.创建和发布一个 Java 程序 7.1.创建 Java 程序 7.2.发布 Java 程序 8.示例 8.1. Hello World 示例 8.2. 简单Spring Boot 应用 8.3…

SpringBoot实现发送邮件功能

目录 一、开启邮件服务 二、导入pom依赖 三、配置yml文件 四、发送邮件 4.1、发送文字邮件 4.2、发送html邮件 4.3、发送附件邮件 4.4、发送图片邮件 一、开启邮件服务 这里拿QQ邮箱举例。 翻到下面进行开启,之后获取授权码。 二、导入pom依赖 <dependency><…

问题:明朝统辖西域的主要措施有( )(2.0分) (多选题) #学习方法#微信#经验分享

问题&#xff1a;明朝统辖西域的主要措施有( )(2.0分) (多选题) A.设立哈密卫 B.册封各地的首领 C.都护统领 D.布局要地 参考答案如图所示

为什么说国产大模型的野心,都藏在 MaaS 的生态中

2016 年 4 月&#xff0c;在一场由 IDG 主办的行业峰会上。 IDG 创始董事长熊晓鸽&#xff0c;刚刚盘点完 IDG 深耕中国企业服务多年的成果&#xff0c;台下&#xff0c;GE 中国公司 CEO 便发出了不合时宜的灵魂一问&#xff1a; 「中国有很多伟大的公司&#xff0c;也有很多…