UI框架在Windows上对DPI的感知情况

名词介绍:Windows下对高DPI的支持有几个等级,分别是不感知、系统级别感知、显示器级别感知。不感知则由系统强制缩放,界面模糊。系统级别感知只能获得系统级别的DPI,在更改缩放比例但没有注销的情况下会模糊,在将窗口移动到另外一个不同DPI的显示器时会模糊。显示器级别感知:能够感知每一个显示器的DPI并正常显示。

继续阅读“UI框架在Windows上对DPI的感知情况”

Windows 10 Drawboard PDF 免费啦!

以下信息可能已经过时。原始文章编写于2017年6月22日。

Drawboard PDF是Windows应用商店中的一款(英文的)PDF阅读软件,支持桌面版Windows 8.1以上版本。此前价格为79元,现在它免费啦(仅限中国区)!

它主打的功能是墨迹注释,是Surface Pro 4上的预装软件,操作方便,是替代纸笔的不错选择。相比Adobe Reader,它的滚动更加流畅,无论是使用鼠标滚轮,还是触摸板,还是触摸屏,都能获得绝佳的滚动体验。相比Microsoft Edge,它在打开复杂PDF文档的时候响应更快。不管你是否有手写笔,他都是笔记本电脑和平板电脑上一款值得尝试的PDF阅读器。

无需网盘,随心同步

备份手机照片,你一般有什么妙招?同步笔记本电脑和台式电脑的工作进度,你用什么方法?用网盘?网盘一方面有容量限制,一方面网盘的上传下载速度有限,另一方面国内的家庭宽带普遍上传带宽较小,若有大量数据,这么一来一回实在耗时太长。

一次偶然的机会,我发现了一款同步软件BitTorrent Sync(现在已改名Resilio Sync)。它是由BitTorrent创立的,与BT下载类似,它通过直接建立设备之间的连接来同步数据。由于不依赖服务器来中转数据,它在局域网环境下工作十分高效,即使互联网带宽很小也不影响使用。而与传统的“文件共享”相比,它不需要复杂的设置,可以在局域网以外使用,支持各种不同平台操作方便。(由于它是直接点对点同步的,所以必须两台设备都开着才能同步)

继续阅读“无需网盘,随心同步”

在Windows 10中快速切换播放设备

(本功能适用于Windows 10 1703,即创意者更新版本,旧版本未作测试)当你有多个播放设备,例如有线耳机、内置音箱、蓝牙耳机等,如何快速选择音频播放的位置呢?其实非常简单。只需单击任务栏上的音量按钮,打开音量控制菜单,点击播放设备的名称,即可展开“选择播放设备”的菜单。选择之后,音频就能在你选择的设备上播放了。注意,一些游戏不支持在运行过程中更改播放设备,若在游戏运行过程中更改播放设备,游戏的声音是不会发生任何变化的。

在Windows 10的音量设置菜单中,播放设备的名称旁边有一个小箭头。
点击Windows 10音量设置菜单中播放设备的名称,可以展开“选择播放设备”菜单。
Windows 10音量设置中的“选择播放设备”菜单
在“选择播放设备”菜单中,可以选择音频播放到哪个设备上。

使用VHDL制作二进制转BCD电路

最近在研究FPGA,涉及到一个将二进制数转换为BCD码显示出来的工作,整理出一套同时支持整数和小数的由二进制转换为十进制的算法。这套算法是可综合并且实测有效的。

这个电路的设计思路来源于两方面。一方面是人工进行进制转换的方法:将每一位二进制数所代表的十进制数加起来;另一方面是汇编语言中的BCD加法调整指令DAA的算法:若加法的结果大于9,则标记进位并且将结果再加上6。 继续阅读“使用VHDL制作二进制转BCD电路”

使用PowerShell自动放置Android图片资源

Android项目中,需要将不同分辨率的图片资源(drawable)放到对应的文件夹中。但是AI批量导出图片的时候,只能在文件名后面加后缀,不能将不同分辨率的图片放到不同的文件夹中。使用PowerShell脚本可以快速将不同后缀的文件放到对应的文件夹中,并去除文件名后缀。

继续阅读“使用PowerShell自动放置Android图片资源”

Windows 10 1703新增的缩放设置

Windows由于强大的兼容性,许多老旧的软件或是框架至今仍然在正常运行。但是,面对高分辨率显示屏这一相对比较新兴的事物,这些古老的代码并不能正确的运行,文本模糊、界面扭曲这种情况时常发生。

Windows 10 1703版本(创意者更新)中,有关高DPI缩放的部分有了大幅度的改进,模糊现象在系统软件上几乎销声匿迹,而新增的兼容性设置也能够大大提高那些不支持高DPI缩放的软件体验。
继续阅读“Windows 10 1703新增的缩放设置”