我正在为 VS2012 制作一个编辑器扩展,我需要在编辑器中找到任何字符的逻辑像素宽度。
我认为所有字符共享相同的宽度,但是共享宽度随着编辑器缩放量的变化而变化;当缩放为 100% 时,所有字符都是 7 个逻辑像素宽,否则它们都是 7.33 个逻辑像素宽。
我可以通过以下方式找到任何字符的宽度:
// textview is an ITextView
textview.Caret.ContainingTextViewLine.TextWidth /
textview.Caret.ContainingTextViewLine.Length
但是,问题是插入符号所在的行是空的,因为那将是除以零。