2016-08-24 49 views
0

我开发了一个发票生成程序。 每个pdf发票在左上角包含一个图像,当我在其他人的机器(而不是开发的机器)上运行应用程序时,它不会在pdf的左上角显示图像。如何从我的Java应用程序读取图像文件?

这是我读的图像:

Image companyLogo = Image.getInstance("images/amadeus14.png"); 

这是我的选择1

我创建了一个包的项目中,并在它里面我做了一个名为图像文件夹。 该文件夹内我已经把该图像文件,并试图访问它在我的程序。

Image companyLogo = Image.getInstance("Resources/Images/HemasLogo.jpg"); 

这是我的选择2选项

,但它给出了一个错误说

java.io.FileNotFoundException:C:\用户\ businesssupport \文档\的NetBeansProjects \ invoiceGenerator \资源\ HemasLogo。 JPG(系统找不到指定的路径)

+0

阅读它没有更多的代码,我们只能猜测,你的问题是。也许你的图像路径不同? – Blobonat

+0

我无法在这里上传文件夹?在我的应用程序文件夹中,我已经为我想要的图像分配了图像文件夹。我只是试图访问该图像? –

+0

如果工作路径正确,请检查'System.getProperty(“user.dir”)'。 – Blobonat

回答

1

看你以前的问题thisthis

  • 你必须知道你正在尝试从当前工作目录中读取(你可以使用System.getProperty("user.dir"))找到它)
  • 这不是一个web应用程序。
  • 不能使用共享(FTP)文件夹

所以,我可以看到2个选项:

  1. 把图像的包装内包装的应用程序之前,那么你就能够从任何计算机上阅读,不做任何更改

    检查Including Images with an executable jar


  1. 使用本地文件夹。您将需要为每个已安装的计算机创建一个公共文件夹,然后手工将图像在每台计算机上复制,像

    Image companyLogo = Image.getInstance("C:\\myApp\\images\\amadeus14.png"); 
    
+1

除此之外,如果OP使用iText,查看[关于PDF图像的这个问题]也是有用的(http://stackoverflow.com/questions/15742125/getting-image-from-drawable-and-adding -to-PDF-使用-iText的) – px06

相关问题