- 浏览: 269077 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (152)
- lucene (5)
- java (12)
- eclipse (2)
- GEF (34)
- SWT/JFACE/PLUGIN (58)
- EMF (8)
- GMF (0)
- fckeditor (1)
- AIX (1)
- 云计算 (2)
- 使用 Grails 构建富 Internet 应用程序 (1)
- Grails (1)
- 动态调用动态语言 (2)
- W3C DOM (3)
- Google Maps (1)
- 优化 (1)
- WebSphere (1)
- NSIS (1)
- 计算机安全 (1)
- Mina (2)
- Draw2d (4)
- Compass (1)
- 原创诗集 (3)
- 人生 (1)
- 翻版 (1)
- OSGI (1)
- Ubuntu (2)
- Ireport (2)
最新评论
-
扬手就是一长鞭:
移动label也无法使得save可以执行。
让连线上的Label动起来吧 -
扬手就是一长鞭:
我的save是正常的,我添加删除node或者connectio ...
让连线上的Label动起来吧 -
扬手就是一长鞭:
我也是这扥写的,可是我双击label改变他的文字时,发现sav ...
让连线上的Label动起来吧 -
ae6623:
这段代码放到哪里??
控制拖拽范围 -
ae6623:
真牛!鼠标滚轮缩放GEF画布 ..
getGraphicalV ...
GEF实现用鼠标滑轮控制画布的放大与缩小
本文转载自:http://www.blogjava.net/Javawind/articles/129899.html
//Send questions, comments, bug reports, etc. to the authors: //Rob Warner (rwarner@interspatial.com) //Robert Harris (rbrt_harris@yahoo.com) import org.eclipse.swt.*; import org.eclipse.swt.graphics.*; import org.eclipse.swt.printing.*; import org.eclipse.swt.widgets.*; /** *//** * This class demonstrates printing images */ public class ImagePrinterExample { /** *//** * The application entry point * @param args the command line arguments */ public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display, SWT.NONE); try { // Prompt the user for an image file FileDialog fileChooser = new FileDialog(shell, SWT.OPEN); String fileName = fileChooser.open(); if (fileName == null) { return; } // Load the image ImageLoader loader = new ImageLoader(); ImageData[] imageData = loader.load(fileName); if (imageData.length > 0) { // Show the Choose Printer dialog PrintDialog dialog = new PrintDialog(shell, SWT.NULL); PrinterData printerData = dialog.open(); if (printerData != null) { // Create the printer object Printer printer = new Printer(printerData); // Calculate the scale factor between the screen resolution and printer // resolution in order to correctly size the image for the printer Point screenDPI = display.getDPI(); Point printerDPI = printer.getDPI(); int scaleFactor = printerDPI.x / screenDPI.x; // Determine the bounds of the entire area of the printer Rectangle trim = printer.computeTrim(0, 0, 0, 0); // Start the print job if (printer.startJob(fileName)) { if (printer.startPage()) { GC gc = new GC(printer); Image printerImage = new Image(printer, imageData[0]); // Draw the image gc.drawImage(printerImage, 0, 0, imageData[0].width, imageData[0].height, -trim.x, -trim.y, scaleFactor * imageData[0].width, scaleFactor * imageData[0].height); // Clean up printerImage.dispose(); gc.dispose(); printer.endPage(); } } // End the job and dispose the printer printer.endJob(); printer.dispose(); } } } catch (Exception e) { MessageBox messageBox = new MessageBox(shell, SWT.ICON_ERROR); messageBox.setMessage("Error printing test image"); messageBox.open(); } } } 和打印文字不同。因为系统中的dpi(dot per inch)和打印机的dpi不同,所以要进行转换。
发表评论
-
选择workspace中的文件对话框
2011-04-09 17:57 1586ElementTreeSelectionDialog dial ... -
在插件中访问StatusLine
2011-01-17 11:26 1132WorkbenchWindow window = Platfr ... -
给RCP添加SVN功能
2011-01-03 17:26 1849三个步骤: 一、下载SVN插件到eclipse; 二、给RCP ... -
获得当前激活状态的Iproject
2010-11-30 12:48 1526/** * 获得当前工程 * @return ... -
让TableViewer支持Tab编辑
2010-10-16 08:57 1965高效的编辑无疑于tab操作,给TableViewer加tab操 ... -
实现Eclipse自身的log管理
2010-01-14 10:58 3327做插件开发的都知道当 ... -
自定义RCP外观
2010-01-13 21:52 4295如果说只需要改变RCP的皮肤可以参照IBM上的Eclipse程 ... -
SWT GC重绘心得
2010-01-13 01:10 5232如果有需求要将Composite的边框颜色改成红色,大家肯定就 ... -
在eclipse中获得当前所有打开的editor实例列表
2009-12-18 14:42 1576EditorPart[] parts = Platfor ... -
将应用默认使用XP风格
2009-12-09 16:54 1091从http://www.eclipse.org/swt/jav ... -
RCP中访问StatusLine详解
2009-11-26 15:40 2802首先给大家介绍各种情 ... -
扩展org.eclipse.ui.preferencePages的些许经验
2009-11-13 15:28 2131最近参考Eclipse插件开发 ... -
给视图添加快捷键
2009-10-11 02:46 1039上一篇博文中讲了用扩展的方式添加全局快捷键,现在本文用硬编码的 ... -
添加全局快捷键
2009-10-11 02:38 1448两种方法:一种扩展, ... -
让SWT中的text只能输入数字
2009-10-07 14:51 3173思路:给Text添加键盘输入事件,判断按下的键的ASCII码 ... -
通过ACTION的ID来获得ACTION
2009-09-28 11:43 2954现在又很多需求都需要动态去改变Action的enable/di ... -
动态关闭ViewPart
2009-09-24 18:36 1929IWorkbenchPage page = PlatformU ... -
设置TreeViewer的前景色和背景色
2009-09-23 11:54 1693让TreeViewerLabelProvider实现IColo ... -
给子控件和父控件添加相同的事件
2009-09-18 13:24 1298方法很多种,我这里介绍种最简单易懂的;触发事件得有listen ... -
SWT时间选择器
2009-09-04 16:50 3324package com.netunit.workbench.t ...
相关推荐
5. **图像和位图**:SWT 提供了处理图像和位图的类,如 `Image` 和 `Bitmap`,可以加载、显示和处理图片资源。 6. **对话框(Dialogs)**:SWT 提供了多种类型的对话框,包括消息对话框(MessageDialog)、输入...
6. **图像处理**:SWT提供了Image类,可以加载、显示和处理图像资源,如图标、背景图片等。 7. **拖放功能**:SWT支持拖放操作,允许用户通过拖拽控件或数据在界面中进行交互。 8. **打印功能**:SWT提供了...
除了上述核心包,SWT还提供了其他的辅助包,如org.eclipse.swt.dnd用于拖放操作,org.eclipse.swt.printing用于打印功能,以及org.eclipse.swt.accessibility支持无障碍访问。 JFace是在SWT基础上构建的一个高级...
GC可以在任何实现了`Drawable`接口的类上使用,例如控件、图像、显示设备或打印设备。创建GC时,应确保在完成绘图任务后及时调用`dispose()`方法来释放系统资源,因为每个GC对应着底层的操作系统资源,并且在某些...
SWT还提供了许多高级特性,如拖放支持、打印功能、数据库访问、国际化和本地化等。通过这些特性,开发者可以构建出功能强大且易于使用的桌面应用程序。 本资料集详细介绍了SWT API的各个方面,无论是初学者还是经验...
第10章 SWT中的拖放支持 211 10.1 可拖放的树 211 10.2 拖放原理概述 214 10.3 拖放源(DragSource) 215 10.3.1 创建拖放源对象 215 10.3.2 定义拖放源数据传输类型 215 10.3.3 处理拖放源事件 216 ...
在给定的描述中提到了一个博客链接,虽然具体内容无法在当前环境中查看,但可以推测博主可能分享了一个将 SWT 图像转换为 AWT 图像的方法,因为文件名 "ConvertSWTImagetoAWTImage.java" 暗示了这个过程。SWT...
像坐标控制、旋转矩阵、定时器、生成图像、数据初始化、矩阵乘法、坐标旋转、判断是否是顺时针方向排列、鼠标按下、放开时的动作等,都可在本源码中得以体现。 Java编写的显示器显示模式检测程序 2个目标文件 内容...
像坐标控制、旋转矩阵、定时器、生成图像、数据初始化、矩阵乘法、坐标旋转、判断是否是顺时针方向排列、鼠标按下、放开时的动作等,都可在本源码中得以体现。 Java编写的显示器显示模式检测程序 2个目标文件 ...
像坐标控制、旋转矩阵、定时器、生成图像、数据初始化、矩阵乘法、坐标旋转、判断是否是顺时针方向排列、鼠标按下、放开时的动作等,都可在本源码中得以体现。 Java编写的显示器显示模式检测程序 2个目标文件 ...
像坐标控制、旋转矩阵、定时器、生成图像、数据初始化、矩阵乘法、坐标旋转、判断是否是顺时针方向排列、鼠标按下、放开时的动作等,都可在本源码中得以体现。 Java编写的显示器显示模式检测程序 2个目标文件 ...
像坐标控制、旋转矩阵、定时器、生成图像、数据初始化、矩阵乘法、坐标旋转、判断是否是顺时针方向排列、鼠标按下、放开时的动作等,都可在本源码中得以体现。 Java编写的显示器显示模式检测程序 2个目标文件 内容...
像坐标控制、旋转矩阵、定时器、生成图像、数据初始化、矩阵乘法、坐标旋转、判断是否是顺时针方向排列、鼠标按下、放开时的动作等,都可在本源码中得以体现。 Java编写的显示器显示模式检测程序 2个目标文件 内容...
- **图像**:用于插入静态图片。 - **图表**:用于插入图表,如柱状图、折线图等。 - **表格**:用于展示数据集合。 - **列表**:用于展示单行数据。 - **3.1.2. 设置数据源** 在设计报表前,需要为iReport...