惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Martin Fowler
Martin Fowler
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
雷峰网
雷峰网
J
Java Code Geeks
G
Google Developers Blog
博客园 - 司徒正美
The GitHub Blog
The GitHub Blog
L
LangChain Blog
人人都是产品经理
人人都是产品经理
GbyAI
GbyAI
Vercel News
Vercel News
S
SegmentFault 最新的问题
Engineering at Meta
Engineering at Meta
H
Hackread – Cybersecurity News, Data Breaches, AI and More
云风的 BLOG
云风的 BLOG
F
Fortinet All Blogs
Y
Y Combinator Blog
博客园_首页
Last Week in AI
Last Week in AI
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
罗磊的独立博客
A
About on SuperTechFans
B
Blog
Microsoft Security Blog
Microsoft Security Blog

博客园 - iceboundrock

Introduction to the Reactive Extensions for JavaScript文章集合(收集贴) CCR源码分析-CCR架构 CCR源码分析-分析环境准备 CCR相关的Channel 9视频 DSS简介 也许你还不知道的一些关于App Domain的事 Common UNIX directories 几篇优化.net动态调用性能的文章 安装TFS 2008备注 Windbg点滴 MySQL Connector/Net 5.20安装后无法在VS2008中正常使用的问题 LAMP周边点滴 并行与并发编程学习心得 并发和协调运行时 其它并发方法 与非CCR代码互操作 失败处理 迭代器 任务调度
美化VS2010在远程桌面/无法启动硬件加速渲染的机器下的字体显示
iceboundrock · 2010-04-13 · via 博客园 - iceboundrock

VS2010全面采用了WPF技术构建,编辑器可以充分利用计算机的硬件图形加速功能,所以如果在编辑器中使用Clear Type字体,显示效果会非常漂亮。但是这个功能只局限于本地计算机,一旦使用远程桌面进行开发,原本漂亮平滑的字体就会变得毛糙。这是因为远程桌面为了性能原因禁止了Clear Type。今天偶尔调节了一下编辑器的缩放功能(左下角那个写着100%的下拉框),发现当放大比例高于一定程度(比如11号字体放大到150%的时候在我的屏幕上很漂亮)时即使没有Clear Type,字体就会又变平滑。但是每次打开一个文件就要调一遍缩放比例让我非常的不爽,我们是程序员,当然要自动化一切可以自动化的东西。Google了一番找到了解决办法,步骤如下:

  1. 安装VS2010 SDK
  2. 从GitHub下载DisableMouseWheelZoom项目的代码
  3. 打开这个工程,然后在代码(只有一个cs/一个class/一个方法,所以别说你找不到哈)中增加一行:textView.ZoomLevel = 150D; //代表放大到150%,如果你不需要禁用鼠标滚轮缩放的话,删掉另外一行。
  4. 编译,然后安装生成的VSIX
  5. 重启VS2010,再打开一个文件看看吧,是不是已经自动放大到150%了

另外如果机器的配置不够,启动硬件加速会导致VS2010比更卡,这时也可以用这个办法来调整。

Have fun!

后记:

本来以为一行代码就能搞定的,发现虽然放大了字体,但是旁边的outline却没有一起被放大,我猜测是初始化顺序的问题,在设置ZoomLevel时Outline控件还没有挂接TextView的事件,所以没有响应。用如下代码就能解决:

var op = AsyncOperationManager.CreateOperation(null);
op.PostOperationCompleted(o
=> {
     textView.ZoomLevel
= 150D;
 },
null);

其实道理也很简单,通过异步Post把修改ZoomLevel的方法放入消息队列等待,让TextView先执行TextViewCreated事件之后的方法,这样就可以正确的初始化outline,再设置ZoomLevel就可以让TextView与Outline一同缩放了。