https://github.com/chenjunyu19/lowdpi
一个将剪贴板截图按系统缩放倍率还原到 100% 尺寸的轻量 Win32 小工具。 | A lightweight Win32 utility that scales clipboard screenshots back to their 100% DPI size.
https://github.com/chenjunyu19/lowdpi
Last synced: about 2 months ago
JSON representation
一个将剪贴板截图按系统缩放倍率还原到 100% 尺寸的轻量 Win32 小工具。 | A lightweight Win32 utility that scales clipboard screenshots back to their 100% DPI size.
- Host: GitHub
- URL: https://github.com/chenjunyu19/lowdpi
- Owner: chenjunyu19
- Created: 2026-05-19T13:30:07.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2026-05-19T16:29:26.000Z (2 months ago)
- Last Synced: 2026-05-19T16:41:52.642Z (2 months ago)
- Language: C++
- Homepage:
- Size: 9.77 KB
- Stars: 2
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# lowdpi
`lowdpi` 是一个面向 Windows 高 DPI 桌面截图场景的小型 Win32 工具。
当系统显示缩放高于 100%(例如 200%)时,复制到剪贴板中的截图有时会比视觉上预期的尺寸更大,不方便直接分享。这个工具会读取当前剪贴板中的图片,按照当前系统 DPI 缩放倍率将其缩小回 100% 缩放下对应的尺寸,重新写回剪贴板,然后立即退出。
## 功能说明
1. 读取当前系统 DPI 缩放倍率
2. 从剪贴板读取图片
3. 将图片缩放到对应的 100% 尺寸
4. 将缩放后的图片重新写回剪贴板
5. 立即退出
当前实现假定系统只存在一个有效的全局缩放倍率,不会尝试判断多显示器截图具体来自哪一个屏幕。
## 运行环境
- Windows
- 安装了 MSVC 的 Visual Studio Build Tools
- Windows Imaging Component(WIC)
## 构建方法
运行:
```bat
build-msvc.cmd
```
输出文件位置:
```bat
build\lowdpi.exe
```
## 使用方法
1. 先将截图复制到剪贴板
2. 运行 `build\lowdpi.exe`
3. 在目标程序中粘贴图片
如果当前系统缩放已经是 100%,程序会直接退出,不会修改剪贴板中的图片。
## 说明
- 剪贴板图片输入支持 `CF_DIBV5`、`CF_DIB` 和 `CF_BITMAP`
- 图片缩放通过 WIC 完成
- 只有在新图片成功准备完成后,程序才会替换剪贴板内容
- 为避免刚截图后剪贴板暂时被占用,程序会在打开剪贴板时进行短暂重试