Skip to content

窗口定位

本节介绍 mpv 的窗口位置和大小控制。

窗口位置

位置设置

bash
# 指定窗口位置
geometry=100:100

# 居中显示
geometry=50%:50%

# 指定显示器
screen=0
screen=1

位置选项

bash
# 窗口左对齐
window-left=no

# 窗口顶部对齐
window-top=no

窗口大小

大小设置

bash
# 指定窗口大小
geometry=1280x720

# 百分比大小
geometry=50%x50%

# 指定大小和位置
geometry=1280x720+100+100

大小选项

bash
# 窗口最大化
window-maximized=yes

# 禁用最大化
window-maximized=no

窗口样式

边框设置

bash
# 显示边框
border=yes

# 隐藏边框
border=no

置顶设置

bash
# 窗口置顶
ontop=yes

# 禁用置顶
ontop=no

透明设置

bash
# 窗口透明
alpha=yes

# 禁用透明
alpha=no

全屏模式

全屏设置

bash
# 全屏模式
fullscreen=yes

# 禁用全屏
fullscreen=no

# 全屏显示器
fs-screen=0
fs-screen=1

全屏样式

bash
# 无边框全屏
border=no

# 全屏置顶
ontop=yes

多显示器

显示器选择

bash
# 指定显示器
monitor=0
monitor=1

# 显示器名称
screen=HDMI-1
screen=DP-1

显示器配置

bash
# 显示器全屏
fs-screen=0

# 显示器窗口
screen=0

窗口调试

调试信息

bash
# 显示窗口信息
mpv --msg-level=all=v video.mp4

# 测试窗口
mpv --geometry=1280x720 video.mp4

窗口测试

bash
# 测试窗口大小
mpv --geometry=1280x720 video.mp4

# 测试全屏
mpv --fullscreen video.mp4

窗口脚本

Lua 脚本窗口

lua
-- 窗口控制脚本
local mp = require 'mp'

mp.add_key_binding('ctrl+w', 'toggle-window', function()
    local fullscreen = mp.get_property('fullscreen')
    if fullscreen == 'yes' then
        mp.set_property('fullscreen', 'no')
    else
        mp.set_property('fullscreen', 'yes')
    end
end)

JavaScript 脚本窗口

javascript
// 窗口控制脚本
mp.add_key_binding('ctrl+w', 'toggle-window', function() {
    const fullscreen = mp.get_property('fullscreen');
    if (fullscreen === 'yes') {
        mp.set_property('fullscreen', 'no');
    } else {
        mp.set_property('fullscreen', 'yes');
    }
});

窗口故障排除

常见问题

  1. 窗口位置异常

    • 检查位置配置:geometry=100:100
    • 检查显示器配置
  2. 窗口大小异常

    • 检查大小配置:geometry=1280x720
    • 检查最大化配置
  3. 全屏异常

    • 检查全屏配置:fullscreen=yes
    • 检查显示器配置

调试命令

bash
# 显示窗口信息
mpv --msg-level=all=v video.mp4

# 测试窗口
mpv --geometry=1280x720 video.mp4

下一步