可以使用GC类的getAdvanceWidth(char ch)获取当前字符所占的像素宽度.
可以如下面的程序使用该函数:
public static int getStringWidth(String string, Control control) {
int width = 0;
GC gc = new GC(control);
for (int i = 0; i < string.length(); i++) {
char c = string.charAt(i);
width += gc.getAdvanceWidth(c);
}
gc.dispose();
return width;
}
或者更通用的,其中string是目标字符串,font是你要设给字符串的字体对象:
public static int getStringWidth(String string, Font font){
int width = 0;
Shell shell = new Shell();
Label label = new Label(shell, SWT.NONE);
label.setFont(font);
GC gc = new GC(label);
for(int i=0;i<string.length();i++){
char c = string.charAt(i);
width += gc.getAdvanceWidth(c);
}
gc.dispose();
shell.dispose();
return width;
}
分享到:
相关推荐
项目中提供的SWT文件可能包括源代码、测试图像和结果展示,通过运行这些代码,可以观察SWT在像素点文字检测上的具体表现,以及与基于区域方法的差异。 总结,SWT C++ OPENCV像素点文字检测项目旨在探索和比较两种...
这篇博客文章“在SWING、SWT中嵌入浏览器”就探讨了如何在Java应用中实现这一功能。 首先,SWING是Java Foundation Classes (JFC)的一部分,提供了丰富的组件和布局管理器来构建复杂的用户界面。尽管SWING本身并不...
SWT(Standard Widget Toolkit)是Java编程环境中一个用于创建图形用户界面(GUI)的开源库,它是Eclipse项目的一部分。本教程将深入讲解SWT的基本概念、组件使用以及实际开发中的应用技巧。以下是对SWT中文教程的...
SWT(Standard Widget Toolkit)是Java编程环境中一个用于创建图形用户界面(GUI)的开源库,它是Eclipse项目的一部分。标题“swt-64.rar_64位swt_64的SWT_SWT64_swt.jar 64位_swt64位”表明这个压缩包包含了适用于...
这篇博客"SWT中嵌入Word控件应用"可能就是讲述如何在Java SWT界面中集成Word编辑功能,使得用户可以直接在应用程序内部创建、编辑和查看Word文档。 SWT是Eclipse开源项目的一部分,它为Java开发者提供了一套用于...
使Excel嵌入到SWT窗口中 知识点一:Eclipse版本和jdk版本的选择 在本例中,我们使用的是Eclipse 3.3.1版本和jdk 5.0版本。Eclipse是一个开源的集成开发环境(IDE),它支持多种编程语言,包括Java、C++、Python等...
在图像分析中,尤其是针对文档图像、车牌图像或包含大量文本的图像,SWT算法能有效地识别出图像中的字符和线条,为后续的文字识别(OCR)提供前期处理。 该算法的基本思想是基于文字笔画的宽度特性:文字通常由具有...
SWT源码的获取和分析对于开发者来说非常有价值,因为它可以深入理解其工作原理,自定义组件或优化应用程序。 "swt.jar"文件是SWT库的二进制版本,包含了运行SWT应用所需的类和资源。这个jar包通常会被Java项目引用...
根据提供的文件信息,可以看出本文主要讨论的是如何在 SWT (Standard Widget Toolkit) 的 Table 控件中实现文本换行的功能。SWT 是一个用于开发基于 Java 的桌面应用程序的工具包,它提供了丰富的用户界面组件来帮助...
SWT(Standard Widget Toolkit)是Java编程环境中用于创建图形用户界面(GUI)的一种开源库,它是Eclipse项目的一部分。SWT提供了与操作系统本机UI组件的直接交互,从而能够创建性能高效、外观与操作系统的原生应用...
### SWT/JFace中文教程知识点详解 #### 1.1 SWT/JFace概览 - **SWT与JFace的目的**:SWT(Standard Widget Toolkit)和JFace是Eclipse平台提供的两个核心工具包,用于构建高性能的图形用户界面(GUI)。SWT主要...
非常不错的java swt 中文文档
在任何基于SWT的Java项目中,首要任务就是将SWT JAR文件添加到项目的Classpath中。这一步骤确保了编译器能够识别SWT类和方法。具体操作如下: - **创建Java项目**:首先,在IDE中创建一个新的Java项目。 - **指定...
用于在编程过程中快速验证String.format()方法和String.matches()方法的小工具。提供源代码。其中的SWT包需要64位环境。如果需要在32位环境下运行,可以使用32位的SWT包代替
其中,`Table`控件是SWT中最常用的数据展示组件之一,尤其适用于展示表格形式的数据。本文将深入探讨SWT `Table`控件中的单元格编辑功能,并通过实例代码进行详细解析。 #### 1. 创建TableEditor `TableEditor`是...
但是, SWT 中的资源释放问题是一件棘手的事情。如果不正确地释放资源,可能会导致内存泄露、程序崩溃等问题。下面,我们将详细介绍 SWT 中的资源释放问题。 一、Display 实例的创建和释放 在 SWT 中,Display ...
Java SWT(Standard Widget Toolkit)是Java编程环境中用于创建桌面应用程序的一种库,它是Eclipse基金会的一部分。SWT提供了与操作系统原生界面元素直接交互的能力,使得Java应用能够拥有更接近本地应用的外观和...
本文将详细介绍SWT中的按键及其对应的常量表、`KeyEvent`事件和`VerifyEvent`事件的相关知识,并通过示例进行说明。 #### 按键与对应的常量表 SWT定义了一系列的常量来表示不同的按键,这些常量通常用于按键事件的...
在本文中,我们将深入探讨SWT(Standard Widget Toolkit)的应用,以及如何在Java应用程序中使用它。SWT是由IBM公司为Eclipse集成开发环境设计的一种图形用户界面(GUI)工具包,它通过JNI(Java Native Interface)...
下载编译的SWT库,版本号4.911,包含多个版本: org.eclipse.swt.cocoa.macosx.x86_64 org.eclipse.swt.gtk.linux.aarch64 org.eclipse.swt.gtk.linux.arm org.eclipse.swt.gtk.linux.ppc64le org.eclipse.swt.gtk....