我正在使用下面的库将JP2图像转换为JPG。
<dependency>
<groupId>com.github.jai-imageio</groupId>
<artifactId>jai-imageio-jpeg2000</artifactId>
<version>1.3.0</version>
</dependency>
转换后的图像会引入多个黑点。当我使用在线图像转换器(https://www.freefileconvert.com/)then时,效果很好。
下面是我使用的代码的输出jpg。 enter image description here
您可以观察到图像周围的黑点。我无法在此处附加源JP2文件。
我使用的代码如下:
公共类CreateImageFileFromGraphicsObject {
public static void main(String[] args) throws IOException {
int width = 250;
int height = 250;
File foundFile = new File("C:\\Users\\krishnam\\Documents\\PDFDocs\\Arun\\arun_Text-2.jp2");
BufferedImage fb = ImageIO.read(foundFile);
// Constructs a BufferedImage of one of the predefined image types.
BufferedImage bufferedImage = new BufferedImage(fb.getWidth(), fb.getHeight(), BufferedImage.TYPE_INT_RGB);
// Create graphics which can be used to draw into the buffered image
bufferedImage.createGraphics().drawImage(fb,0,0,Color.WHITE,null);
Graphics2D g2d = bufferedImage.createGraphics();
g2d.setBackground(Color.white);
// create a string with yellow
g2d.setColor(Color.yellow);
g2d.drawString("Java Code", 50, 120);
g2d.dispose();
// Save as PNG
File file = new File("C:\\Users\\krishnam\\Documents\\PDFDocs\\Arun\\myimage.png");
ImageIO.write(bufferedImage, "png", file);
// Save as JPEG
file = new File("C:\\Users\\krishnam\\Documents\\PDFDocs\\Arun\\myimage.jpg");
ImageIO.write(bufferedImage, "jpg", file);
System.out.println("Completed!!!");
}}
请提出如何上传JP2文件的建议。
注意:我还使用了一个应用程序将JP2转换为JPG,效果很好。 http://www.faststone.org/FSViewerDownload.htm
我还下载了一些示例图像,并尝试使用上述代码进行转换,效果很好。