快速开始

Rainmeter 的核心理念是"信息可视化"。它将桌面变为一个画布,你可以在上面放置任意数量的"皮肤"组件,每个组件通过"测量值(Measure)"采集数据,再通过"显示元素(Meter)"渲染到桌面。

初次启动 Rainmeter 后,系统托盘会出现 Rainmeter 图标,桌面右下角会自动加载一个名为 "illustro" 的默认示例皮肤包。这个皮肤包包含时钟、CPU、内存、网络四个基础组件,是新手了解 Rainmeter 工作原理的最佳起点。

启动 Rainmeter

安装完成后,Rainmeter 会默认开机自启动。你也可以通过开始菜单搜索 "Rainmeter" 手动启动。启动后,右键点击托盘图标或桌面任意皮肤即可打开主管理界面。

主管理界面介绍

主管理界面分为左右两栏。左侧是皮肤文件树,按照文件夹结构组织;右侧是当前选中皮肤的配置选项卡,包含"设置"、"参数"、"统计"等子页。通过这个界面你可以切换皮肤显示/隐藏、调整位置、修改参数、查看资源占用情况。

安装皮肤

Rainmeter 皮肤以 .rmskin 格式分发,这是官方制定的打包格式,包含皮肤文件、字体、图片资源、配置说明等所有必需内容。安装 .rmskin 文件非常简单:

  1. 皮肤市场或 DeviantArt 等社区下载 .rmskin 文件
  2. 双击该文件,系统会自动调用 Rainmeter Skin Installer 打开
  3. 点击"安装"按钮,安装程序会自动将皮肤文件解压到正确目录
  4. 安装完成后,皮肤会自动加载到桌面,可在管理界面中调整
小提示:若 .rmskin 关联失效,可右键点击文件,选择"打开方式",浏览到 Rainmeter 安装目录下的 SkinInstaller.exe 手动关联。

管理皮肤

当桌面皮肤数量增多时,合理的管理变得尤为重要。Rainmeter 提供了多种皮肤管理功能:

显示与隐藏

在管理界面左侧皮肤列表中,每个皮肤名称前都有一个"眼睛"图标,点击即可切换显示状态。隐藏的皮肤不会占用任何 CPU 资源,但仍保留所有配置。

位置与层级

右键点击任意皮肤,可在"位置"菜单中选择"置顶"、"底部"、"普通桌面"等层级。还可以通过"对齐到屏幕边缘"快速调整皮肤位置。

主题切换

主题是一组皮肤配置的快照。通过"管理 → 主题"可以保存当前所有皮肤的显示状态,方便在不同场景(如工作模式、娱乐模式)之间快速切换。

系统设置

点击管理界面顶部的"设置"选项卡,可以调整 Rainmeter 的全局行为:

  • 开机自启动:勾选后 Rainmeter 会随 Windows 启动自动加载
  • 刷新间隔:全局默认刷新频率(毫秒),可被皮肤内的设置覆盖
  • 日志级别:控制日志输出详细程度,调试皮肤问题时可设置为 DEBUG
  • 语言:切换管理界面语言,支持简体中文、英文、俄文、德文等
  • 检查更新:定期检查 GitHub Release 是否有新版本

皮肤结构

Rainmeter 皮肤本质上是 INI 格式的文本文件,存放于 Documents\Rainmeter\Skins\ 目录下。每个皮肤文件夹可包含多个 .ini 文件,每个 .ini 文件即一个独立的皮肤组件。

一个最简单的皮肤文件结构如下:

[Rainmeter]
; 元信息与全局设置
Update=1000
BackgroundMode=2
SolidColor=0,0,0,1

[Variables]
; 变量定义区
FontColor=255,255,255,255
AccentColor=224,144,40,255

[MeasureTime]
; 测量值区
Measure=Time
Format=%H:%M:%S

[MeterTime]
; 显示元素区
Meter=String
MeasureName=MeasureTime
FontFace=Segoe UI
FontSize=20
FontColor=#FontColor#
StringAlign=Center
AntiAlias=1
X=100
Y=50

皮肤文件按区块组织,每个区块以方括号 [SectionName] 开始,下方是该区块的属性键值对。共分为三大区块类型:[Rainmeter](皮肤元信息)、[Variables](变量定义)、各种 [Measure*][Meter*](测量值与显示元素)。

测量值 Measures

测量值是皮肤获取数据的途径。Rainmeter 内置 30+ 种测量值类型,涵盖系统、网络、时间、媒体、Web 等各类数据源。每个测量值定期更新(频率由 Update 控制),最新值存储在内存中供显示元素读取。

常用测量值示例:

[MeasureCPU]
Measure=CPU
CPUIndex=0

[MeasureMemory]
Measure=PhysicalMemory

[MeasureNetworkDown]
Measure=NetIn
NetInSpeed=100000000

[MeasureWeather]
Measure=Plugin
Plugin=WebParser
URL=https://api.weather.com/...
RegExp="(?siU)<temp>(.*)</temp>"
UpdateRate=600

测量值的关键属性包括 Measure(类型)、UpdateRate(更新频率,单位秒,可独立于皮肤刷新频率)、MaxValue(最大值,用于百分比计算)、IfCondition(条件触发,类似 if 语句)。

显示 Meters

显示元素是皮肤渲染到桌面的可视化组件。Rainmeter 支持 10 种 Meter 类型:

  • String - 文字,最常用,支持自定义字体、颜色、对齐、阴影
  • Bar - 条形进度条,水平或垂直
  • Line - 折线图,适合历史数据可视化
  • RoundLine - 环形仪表,类似速度表盘
  • Image - 图片,支持 PNG/JPG/GIF/SVG
  • Bitmap - 位图序列,可制作动画
  • Shape - 矢量图形,可绘制矩形、圆形、路径
  • Rotator - 旋转,用于指针式时钟
  • Histogram - 直方图,展示数值随时间的分布
  • Button - 按钮,支持鼠标点击交互

每个显示元素通过 MeasureName 属性绑定一个测量值,MeterStyle 可引用共享样式,DynamicWindowSize=1 让皮肤根据内容自适应大小。

变量与公式

变量是皮肤开发的核心特性,让皮肤具备动态行为。Rainmeter 支持两类变量:静态变量(在 [Variables] 区定义)和动态变量(运行时通过 !SetVariable 命令修改)。

更强大的是公式计算。任何接受数字值的属性都可以使用 Formula= 前缀引用数学表达式:

[Variables]
BaseSize=100

[MeasureCalc]
Measure=Calc
Formula=#BaseSize# * 2 + 10
DynamicVariables=1

[MeterDemo]
Meter=String
Text="Size is [MeasureCalc]px"
DynamicVariables=1

通过 DynamicVariables=1,可以让皮肤在每次刷新时重新计算变量值,实现动态布局与动画效果。

Lua 脚本

当 INI 文件的表达式不够用时,可以调用 Lua 脚本扩展能力。Rainmeter 内置 Lua 5.1 解释器,可以执行任意复杂的业务逻辑,包括字符串处理、文件操作、JSON 解析、HTTP 请求等。

[MeasureLua]
Measure=Script
ScriptFile=my_script.lua

; Lua 文件内容 (my_script.lua)
function Initialize()
    -- 初始化时执行一次
    print("Skin initialized")
end

function Update()
    -- 每次刷新执行
    local time = os.time()
    SKIN:Bang('!SetVariable', 'CurrentTime', tostring(time))
    return 0
end

Lua 脚本通过全局 SKIN 对象访问皮肤上下文,可以读写变量、调用任何 Bang 命令、获取测量值等。这是实现复杂数据看板的核心机制。

插件 API

当 Lua 脚本仍不能满足需求时,可使用 C++ 开发自定义插件。Rainmeter 提供完整的插件 SDK,支持 Measure 类型插件(提供数据)与 Plugin 类型插件(提供功能)。

官方维护的常用插件包括:

  • WebParser - 网页抓取与正则解析,对接任何 HTTP API
  • SpeedFan - 读取 SpeedFan 温度传感器数据
  • Win7Audio - Windows 音量控制与状态读取
  • RecycleManager - 回收站状态监控
  • AudioLevel - 实时音频频谱分析
  • MediaKey - 模拟媒体按键,控制任意播放器

完整插件列表与开发文档请访问 GitHub Wiki

常见问题

Rainmeter 是否完全免费?

是的,Rainmeter 完全免费开源,采用 GPL-2.0 协议发布。任何人都可以免费下载、使用、修改和分发,无任何付费版本或功能限制。我们鼓励社区贡献代码、翻译、皮肤作品,共同推动项目发展。

Rainmeter 支持 Mac 或 Linux 吗?

很遗憾,Rainmeter 仅支持 Windows 7 SP1 及以上版本。这与 Rainmeter 大量调用 Win32 API 息息相关,移植到其他平台几乎相当于重写整个软件。Mac 用户可考虑使用 GeekToolÜbersicht,Linux 用户可使用 Conky,它们功能类似但生态略有差异。

Rainmeter 会拖慢电脑速度吗?

Rainmeter 采用 C++ 原生编译,运行时内存占用约 15-30MB(取决于加载的皮肤复杂度),CPU 占用通常低于 1%。即使是老旧的低配电脑也能流畅运行,前提是不加载过多复杂动态皮肤(如视频背景、实时频谱)。可在管理界面的"统计"标签页查看每个皮肤的实际资源占用。

如何安装 .rmskin 皮肤文件?

下载 .rmskin 文件后,双击即可自动安装。安装过程中会自动识别皮肤依赖、字体、插件等所有资源,无需手动操作。安装完成后在皮肤管理器中即可看到新皮肤。若 .rmskin 关联失效,可右键点击文件 → 打开方式 → 浏览到 Rainmeter 安装目录下的 SkinInstaller.exe

皮肤不显示怎么办?

首先检查皮肤是否被设置为"隐藏"状态:右键点击托盘 Rainmeter 图标 → 管理 → 检查皮肤前的眼睛图标是否打开。其次检查皮肤位置是否超出屏幕范围:右键点击皮肤 → 位置 → 设置位置 → 屏幕中央。最后查看日志(管理 → 日志)是否有报错信息。

如何备份我的皮肤配置?

所有皮肤配置都存放在 Documents\Rainmeter\ 目录下,包括皮肤文件(Skins 子目录)、设置文件(Rainmeter.ini)、插件配置等。备份整个目录到外部存储即可。重装系统或迁移到新电脑时,将这个目录还原即可恢复全部皮肤与配置。

可以同时使用多个皮肤吗?

完全可以。Rainmeter 设计上就支持同时加载任意数量的皮肤,每个皮肤都是独立的进程实例,互不干扰。你可以从一个皮肤包加载时钟、从另一个加载天气、再从第三个加载系统监控,自由组合搭配。建议合理控制皮肤总数(一般不超过 30 个),避免资源过度占用。

故障排查

遇到皮肤显示异常、性能问题、插件报错等情况时,请按以下步骤排查:

  1. 查看日志:管理 → 日志,查看是否有红色 ERROR 级别条目
  2. 逐个禁用:禁用除问题皮肤外的所有皮肤,确认是否为冲突
  3. 检查依赖:部分皮肤依赖特定字体或插件,确认已正确安装
  4. 重置位置:皮肤可能被拖到屏幕外,右键 → 位置 → 设置位置 → 屏幕中央
  5. 检查路径:路径含中文或空格可能导致部分插件异常,建议安装到纯英文路径
  6. 社区求助:将日志截图与皮肤名称发到 官方论坛,社区通常会在 24 小时内回复

准备好了吗?立即下载 Rainmeter

4.2 MB · 完全免费 · 完整文档 · 海量皮肤