-
Notifications
You must be signed in to change notification settings - Fork 2
Supported File Types.zh.CN
paperhammer edited this page May 22, 2026
·
1 revision
内部每个文件类型(FileType)对应一个运行时类型(RuntimeType),决定了渲染方式。理解这种映射有助于理解不同类型之间的行为差异。
| 壁纸类型 | 扩展名 | FileType |
RuntimeType |
|---|---|---|---|
| 静态图像 |
.jpg .jpeg .bmp .png .svg .webp
|
FImage |
RImage 或 RImage3D ¹ |
| 动态图像 |
.gif .apng
|
FGif |
RImage 或 RImage3D ¹ |
| 视频 |
.mp4 .webm
|
FVideo |
RVideo |
| Web 交互型 |
.zip .rar .7z
|
FWebZip |
RWeb |
¹ 导入静态或动态图像时,会弹出对话框询问是否启用 3D 视差效果。选择是则触发深度估计(MiDaS),运行时类型设为
RImage3D。详见 AI 功能 中深度估计部分。
四种 RuntimeType 共用同一个播放器进程(VirtualPaper.PlayerWeb.exe),底层基于 WebView2 宿主。RVideo 禁用鼠标视差输入转发,其余三种启用。
文件通过 魔数(文件头)进行校验,而非仅依赖扩展名。扩展名与实际内容不匹配的文件在导入时会被拒绝。
| 类型 | 校验的魔数 |
|---|---|
.jpg / .jpeg
|
FF D8 FF |
.bmp |
42 4D |
.png |
89 50 4E 47 0D 0A 1A 0A |
.svg |
3C 73 76 67 (<svg) 或 3C 3F 78 6D (<?xm) |
.gif |
47 49 46 38 39 61 (GIF89a) 或 47 49 46 38 37 61 (GIF87a) |
.mp4 |
66 74 79 70 (ftyp,偏移量 4) |
.webm |
1A 45 DF A3 (EBML) |
.zip |
50 4B 03 04 / 50 4B 05 06 / 50 4B 07 08
|
.rar |
52 61 72 21 1A 07 (RAR4) 或 52 61 72 21 1A 07 01 00 (RAR5) |
.7z |
37 7A BC AF 27 1C |
-
Web 交互型 壁纸是嵌入到内置播放器壳中的 web 项目,无需实现 JS 回调。详见 Web 交互型壁纸 中所需的
project.json清单和包结构。 -
SVG 作为静态图像通过 WebView2 渲染。SVG 排除在 AI 功能之外(风格迁移、超分辨率),因为 OpenCV 的
ImRead无法解析矢量格式。 -
AI 功能(风格迁移、超分辨率)仅支持
.jpg.jpeg.png.bmp.webp—— 该子集内部标记为FimageAI。 -
视频 在 WebView2 内部播放。硬件解码是否可用取决于系统 GPU 驱动和编解码器支持,不在 VirtualPaper 控制范围内。
-
.apng(动态 PNG)与.gif一同归类为FGif,遵循相同的运行时路径。