`

java swing 把JTextArea导出为图片

    博客分类:
  • Java
阅读更多

java swing中如何把JTextArea 导出成为一张图片(jpg或png)呢?

核心方法:

/***
	     * convert JTextArea to image
	     * @param ta
	     * @param destFile
	     * @param format
	     */
	    public static File genericImage(JTextArea ta,File destFile,String format){//TODO 如何提高分辨率
			BufferedImage img = new BufferedImage(ta.getWidth(), ta.getHeight(), BufferedImage.TYPE_INT_RGB);
	        Graphics2D g2d = img.createGraphics();
	        ta.printAll(g2d);
	        g2d.dispose();
	        try {
	            ImageIO.write(img, format/*"jpg"*/, destFile);
	        } catch (IOException ex) {
	            ex.printStackTrace();
	        }
	        return destFile;
		}

调用:

private void chooseDestFile(JTextArea ta,String picFormat){
		JFileChooser chooser = new JFileChooser();
        chooser.setFileSelectionMode(JFileChooser.FILES_ONLY);
        File selectedFile=new File("C:\\Users\\Administrator\\Pictures\\"+TimeHWUtil.formatDate(new Date(), "yyyyMM"));
        //home目录应该动态获取
//        System.out.println(selectedFile.getAbsolutePath());
        if(!ValueWidget.isNullOrEmpty(selectedFile)){
        	chooser.setSelectedFile(selectedFile);
        }
        chooser.setName("二维码."+picFormat);
        FileNameExtensionFilter filter = new FileNameExtensionFilter(
                "picture Files", picFormat, "二维码");
            chooser.setFileFilter(filter);
        chooser.setDialogType(JFileChooser.SAVE_DIALOG);
        chooser.setControlButtonsAreShown(true);
        chooser.setDialogTitle("保存二维码");
        //            chooser.setVisible(true);
        int result = chooser.showSaveDialog(ta);
        System.out.println("New file:" + result);
        if (result == JOptionPane.OK_OPTION)
        {
            selectedFile = chooser.getSelectedFile();
            if(! SystemHWUtil.isHasSuffix(selectedFile)){
            	selectedFile=new File(selectedFile.getAbsolutePath()+ SystemHWUtil.ENGLISH_PERIOD+picFormat);
            }
            ImageHWUtil.genericImage(ta, selectedFile, picFormat);
            System.out.println("select file:" + selectedFile);
        }
	}

  

界面如下图:

 

可执行的jar包见附件

参考:http://stackoverflow.com/questions/11894064/java-converting-a-string-in-jtextarea-to-an-image

http://stackoverflow.com/questions/23568114/converting-text-to-image-in-java

http://myjeeva.com/convert-image-to-string-and-string-to-image-in-java.html

  • 大小: 83.4 KB
0
0
分享到:
评论

相关推荐

    java-swing版代码生成器

    Java Swing版代码生成器是一个基于Java Swing图形用户界面(GUI)的工具,它旨在帮助开发者自动化创建和管理Java代码。Swing是Java平台上的一个组件库,用于构建桌面应用程序,提供了丰富的用户界面元素,如按钮、...

    基于java swing界面的PDF绘画工具

    Java Swing是Java GUI(图形用户界面)库的一部分,用于创建桌面应用程序。在"基于Java Swing界面的PDF绘画工具"项目中,开发人员利用Swing构建了一个用户友好的界面,允许用户在PDF文档上进行绘图操作。这个工具...

    java Swing 抽奖系统

    总的来说,这个Java Swing抽奖系统结合了Swing的组件特性,实现了图片导入、名单管理、抽奖逻辑以及文件操作等多种功能,为各种活动提供了便捷的抽奖解决方案。开发者通过熟练运用Java GUI技术,为用户创建了一个...

    数据库管理工具GUI例子(Java Swing)

    在IT领域,GUI(图形用户界面)为用户提供直观、友好的操作方式,而Java Swing作为Java的标准GUI库,提供了丰富的组件和功能,使得开发者能够轻松创建桌面应用。 首先,我们要理解Java Swing。Java Swing是Java ...

    java swing实现的mysqlplus源代码

    Java Swing 是Java GUI(图形用户界面)开发的一个重要框架,它是Java AWT(Abstract Window Toolkit)的扩展,提供了丰富的组件库来构建桌面应用程序。在Java Swing中,开发者可以使用组件如JButton、JLabel、...

    Java swing学生成绩系统(源码+数据库脚本).rar

    Java Swing是Java平台上用于构建图形用户界面(GUI)的一个库,它是Java Foundation Classes (JFC)的一部分。在Java Swing学生成绩系统中,开发者利用Swing组件创建了一个用于管理学生分数的应用程序。这个系统通常...

    Swing开发MIS框架实例

    Swing是Java的一种图形用户界面(GUI)工具包,用于构建桌面应用程序。它提供了一组丰富的组件和功能,使得开发者可以创建美观且功能强大的应用程序。在这个"Swing开发MIS框架实例"中,我们将深入探讨如何利用Swing...

    javaswing商品管理系统(含报告).zip

    这些库可以将数据转换为PDF、Excel等格式的报告,方便打印或导出。例如,系统可能提供月度销售报告,展示销售额、畅销商品等关键指标。 标签“范文/模板/素材”暗示了这个项目可能作为一个学习示例或模板,供初学者...

    javaswing简单源码-ImageMapAssistant:简单的JavaSwing应用程序可为Wikimedia引擎扩展“ImageMa

    本项目“javaswing简单源码-ImageMapAssistant”是一个基于Java Swing的简单应用程序,主要用于帮助用户为Wikimedia引擎创建和扩展“ImageMap”。 ImageMap 是一种在HTML中定义图像的特定区域并将其链接到不同URL或...

    java swing + mysql 实现图书管理系统

    9. **文件操作与序列化**: 若系统支持导入导出图书数据,那么就需要使用Java的文件操作API,可能还需要用到对象序列化技术将数据转换为文件格式。 10. **多线程**: 如果系统有异步任务,如后台数据库同步,可以使用...

    Swing 组件大全

    Swing组件大全是一个深入探讨Java Swing库的资源,它涵盖了Swing提供的几乎全部组件,同时结合了数据库操作和第三方库jxl与TableLayout的使用。Swing是Java Foundation Classes (JFC)的一部分,用于构建图形用户界面...

    swing图书馆系统

    Swing图书馆系统是一款基于Java Swing技术开发的桌面应用程序,它为用户提供了一个全面的图书管理解决方案。Swing是Java Standard Edition(Java SE)的一部分,主要用于构建图形用户界面(GUI)。这个库包含了丰富...

    Java+Swing实现电子相册管理系统

    Java Swing 是Java平台上的一个图形用户界面(GUI)工具包,它是Java Foundation Classes (JFC)的一部分,用于构建桌面应用程序。本项目"Java+Swing实现电子相册管理系统"利用了Swing库的强大功能,创建了一个功能完备...

    Swing图形程序—同学通讯录

    用户可以将通讯录数据导出为XML或JSON格式的文件,然后在需要时导入恢复。这通常会涉及文件I/O操作,如使用FileInputStream和FileOutputStream读写文件,以及序列化和反序列化对象。 总之,"Swing图形程序—同学...

    快速构建swing原形的软件

    Swing UI设计是Java开发中的一个重要领域,它提供了一套丰富的组件库,用于构建桌面应用程序的用户界面。GUI Design Studio是一款专门针对Swing原型构建的工具,它简化了UI设计过程,让开发者能够快速地创建出功能...

    基于Java的Swing实现的物流日志管理系统.zip

    综上,基于Java Swing的物流日志管理系统结合了Swing组件的强大功能和物流业务的特性,为用户提供了一个直观、易用且功能完善的管理平台。开发者可以利用Swing提供的API和设计模式,构建出满足各种需求的物流管理...

    可视化swing编辑插件

    6. **导入与导出**:可以将现有的Swing代码导入到设计视图中进行编辑,也可以将设计好的界面导出为源代码。 使用Eclipse的Swing编辑插件,开发者能够更高效地创建和管理Swing应用的界面。为了开始使用这个插件,你...

    Java数据生成统计图表程序

    - 导出功能:将生成的图表保存为图片文件,便于分享和报告。 - 用户界面改进:提供更友好的交互体验,如拖放导入数据、自定义图表样式等。 综上所述,"Java数据生成统计图表程序"是一个综合性的项目,涵盖了数据...

Global site tag (gtag.js) - Google Analytics