I'm looking for a Java library that will can take a Image (PNG) and create a PDF.

Or Create the PDF directly from a java panel that has been drawn.

解决方案

You can achieve this using Gnostice PDFOne for Java (http://www.gnostice.com/PDFOne_Java.asp).

Find below the code snippet that creates a PDF document from a PNG image.

PdfDocument doc = new PdfDocument();

// Read the image as BufferedImage object

BufferedImage bufImg = ImageIO.read(new File(

"SampleImage.PNG"));

// Create PdfImage object using the above BufferedImage object

PdfImage img = PdfImage.create(bufImg);

// Create a PdfPage of image size (image width x image Height)

PdfPage page1 = new PdfPage(img.width(), img.height());

// draw the image at 0, 0

page1.drawImage(img, 0, 0);

// add the page to the document object

doc.add(page1);

// save the document to the output file

doc.save("PNGImageToPDF.pdf");

doc.close();

To create a BufferedImage from a JPanel you can use the below code snippet.

int w = jpanel.getWidth();

int h = jpanel.getHeight();

BufferedImage bi = new BufferedImage(w, h,

BufferedImage.TYPE_INT_RGB);

Graphics2D g2 = bi.createGraphics();

jpanel.paint(g2);

g2.dispose();

After creating BuffereImage from JPanel you can use the first code snippet to create PDF.

I hope you will find this useful.

Disclaimer: I work for Gnostice.

创建面板对象Java,从PNG图像或Java面板创建PDF相关推荐

  1. java订单类_基于Java创建一个订单类代码实例

    这篇文章主要介绍了基于Java创建一个订单类代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 需求描述 定义一个类,描述订单信息 订单id 订 ...

  2. java订单类_使用Java创建一个订单类代码实例

    这篇文章主要简介了使用Java创建一个订单类代码实例,文中通过示例代码简介的非常具体,对大家的学习或者工作具有一定的参考学习网上卖,需要的朋友可以学习下 需求描述 定义一个类,描述订单信息 订单id ...

  3. Day25(线程同步安全问题,SellticketLock,DieLock,ThredGroup,ThreadPool,Timer,线程安全的类,匿名内部类的形式创建线程对象)

    一.线程同步安全问题1 package com.shujia.lhw.day25.demo1; /*     分析:       共享数据:同一个学生对象Student       生产者:SetTh ...

  4. ajax(判断浏览器创建xmlhttprequest对象),XMLHTTPRequest对象的创建与浏览器的兼容问题...

    MLHttpRequest 对象是AJAX功能的核心,要开发AJAX程序必须从了解XMLHttpRequest 对象开始. 了解XMLHttpRequest 对象就先从创建XMLHttpRequest ...

  5. 笔记整理2----Java语言基础(二)06 断点调试与数据加密+07 面向对象-类与对象+08 java常用API-基础+09 java集合+10 IO流-基础

    06 断点调试与数据加密+07 面向对象-类与对象+08 java常用API-基础+09 java集合+10 IO流-基础 第06天 java基础语法 今日内容介绍  Eclipse断点调试  基 ...

  6. Spring AOP 源码分析 - 创建代理对象

    1.简介 在上一篇文章中,我分析了 Spring 是如何为目标 bean 筛选合适的通知器的.现在通知器选好了,接下来就要通过代理的方式将通知器(Advisor)所持有的通知(Advice)织入到 b ...

  7. python 元类 type_Python 使用元类type创建类对象常见应用详解

    本文实例讲述了Python 使用元类type创建类对象.分享给大家供大家参考,具体如下: type("123") 可以查看变量的类型;同时 type("类名", ...

  8. php model get set方法,创建数据库对象之__set方法

    __set( )方法自动创建数据对象原始数据其实就是通过魔术方法动态创建属性的方法来生成数据对象 2. 源码:本教程如无特别说明:源码均指:Model.php 类文件中的内容. 文件位置:/think ...

  9. 创建 JavaScript 对象

    http://www.w3school.com.cn/js/js_objects.asp 创建 JavaScript 对象 通过 JavaScript,您能够定义并创建自己的对象. 创建新对象有两种不 ...

最新文章

  1. 2021年春季学期-信号与系统-第五次作业参考答案-第三小题
  2. 【spring boot2】第2篇:配置文件YAML语法
  3. 电脑网络信号传输频率_高速数字电路设计中信号完整性
  4. golang sdk后端怎么用_Python比Golang慢多少?实际上两者差异并不大
  5. NSDate 类的总结,全面基础
  6. cmd 进入mysql-python_MySQL在cmd和python下的常用操作
  7. Cannot delete or update a parent row: a foreign key constraint fails
  8. 【Windows】VMware虚拟机安装Windows 10 教程
  9. 企业如何管理软件资产,软件许可证,软件license,license管理,许可管理
  10. 关于Behavior的使用方法
  11. pixel bender 学习备忘录
  12. html画圣诞树—动态效果展示【炫酷合集】
  13. python中的与或非详解
  14. word中统一修改mathtype公式和大小对应
  15. CST仿真指导 | 如何构建个性化的用户界面
  16. 开机提示小娜无法在本计算机运行,win10 20h2提示此应用无法在你的电脑上运行解决方法...
  17. SQL 数据初级查询—实验报告
  18. 「SymPy」符号运算(1) 简介/符号/变量/函数/表达式/等式/不等式/运算符
  19. tableau数据分析实战:明星艺人数据分析
  20. 多路温度检测及报警系统(DS18B20)

热门文章

  1. 小型服务器的操作系统,小型机服务器的操作系统
  2. C语言头文件为什么要加#ifndef #define #endif(防止头文件重复包含)
  3. C语言 memset()函数(内存初始化函数)
  4. 横波与纵波的本质区别是什么?——偏振
  5. 独占设备的分配和回收模拟_系统设计硬核知识(4)——操作系统的设备管理...
  6. elxel表格纸张尺寸_印刷设计必懂知识:印刷纸张类型介绍
  7. C++获取Windows密码复杂度、密码有效期、密码锁定阀值等安全策略
  8. VS2017 报错;C2440:无法从“const char [14]”转换为“char *”
  9. 在Qt在GUI程序里显示控制台界面
  10. python 均方误差_一个很随意的Python智能优化库,一个文件就是一个库-- PySwarm