我已经开发了发票生成程序。
每个pdf发票的左上角都包含一个图像,当我在其他人的机器(不是已开发的机器)上运行应用程序时,它不会在pdf的左上角显示图像。
这是我阅读图像的方式:
Image companyLogo = Image.getInstance("images/amadeus14.png");
这是我的选择1
在项目中,我创建了一个程序包,并在其中创建了一个名为image的文件夹。
在该文件夹中,我已将该图像文件放入并尝试在程序中访问它。
Image companyLogo = Image.getInstance("Resources/Images/HemasLogo.jpg");
这是我的选择2
但它给出了一个错误的说法
java.io.FileNotFoundException:C:\ Users \ businesssupport \ Documents \ NetBeansProjects \ invoiceGenerator \ Resources \ HemasLogo.jpg(系统找不到指定的路径)
最佳答案
回顾您之前的问题this和this,
您必须知道您正在尝试从当前工作目录中读取(可以使用System.getProperty("user.dir"))
找到它)
它不是一个webapp。
您不能使用共享(FTP)文件夹
因此,我可以看到2个选项:
在打包应用程序之前将图像放入包装中,然后您就可以从任何计算机上读取图像而无需进行任何更改
检查Including Images with an executable jar
使用本地文件夹。您将需要为每台已安装的计算机创建一个公用文件夹,然后在每台计算机上手动复制图像,然后像读取图像一样
Image companyLogo = Image.getInstance("C:\\myApp\\images\\amadeus14.png");