我正在为eclipse编辑器编写插件,这是一个可以突出显示代码某些部分的覆盖。我可以访问已打开的CEditor (及其IDocument),也可以从它访问StyledText。我也有一个字符偏移的部分,我想突出显示。目前,我在编辑器上使用了PaintListener,并且我能够绘制(我在上面绘制高亮显示的透明图像,然后将其设置为文本背景,即styledText.setBackgroundImage(newImage); )。在styledText中,我还可以获得关于文本高度和文本垂直位置的信息(包括滚动),也就是说,我能够突出显示代码行,但我只想突出显示该行的一部分。
gc.fillRectangle(OFFSETX1, styledText.getLinePixel(LINE), OFFSETX2, tyledText.getLineHeight());如何从字符偏移量获得X像素(OFFSETX1,OFFSETX2)?(是否可以从StyledText获得X?)。我已经搜索了几个小时的StyledText API,但是找不到它。谢谢。
发布于 2015-08-06 07:51:23
使用StyledText.getLocationAtOffset
返回字符边框左上角在文本中指定偏移量处的x,y位置。该点相对于小部件工作区的左上角。
Point loc = styledText.getLocationAtOffset(character offset);https://stackoverflow.com/questions/31849368
复制相似问题