मैं पीडीएफ के अंदर छवियों को सम्मिलित करने की कोशिश कर रहा हूं लेकिन गुणवत्ता छवियों को पढ़ने योग्य बनाती है। अंतिम पीडीएफ दस्तावेज की गुणवत्ता में सुधार कैसे हो सकता है?जावा में पीडीएफ पर डालने पर पीडीएफबॉक्स ब्लूरी छवि
मैंने अन्य मुफ्त गैर जीपीएल लाइसेंस पुस्तकालयों की कोशिश की है और मुझे लगता है कि पीडीएफबॉक्स सबसे अच्छा है, इसलिए मैं पीडीएफबॉक्स का उपयोग करने में सक्षम होना चाहता हूं।
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import org.apache.pdfbox.exceptions.COSVisitorException;
import org.apache.pdfbox.pdmodel.PDDocument;
import org.apache.pdfbox.pdmodel.PDPage;
import org.apache.pdfbox.pdmodel.edit.PDPageContentStream;
import org.apache.pdfbox.pdmodel.font.PDFont;
import org.apache.pdfbox.pdmodel.font.PDType1Font;
import org.apache.pdfbox.pdmodel.graphics.xobject.PDJpeg;
import org.apache.pdfbox.pdmodel.graphics.xobject.PDXObjectImage;
public class pdfBoxTest {
public static void WritteBufferedImageToPDF(BufferedImage buff)
{
PDDocument doc = null;
PDPage page = null;
PDXObjectImage ximage = null;
try {
doc = new PDDocument();
page = new PDPage();
doc.addPage(page);
ximage = new PDJpeg(doc, buff, 1.0f);
PDPageContentStream content = new PDPageContentStream(doc, page);
content.drawImage(ximage, 0, 0);
content.close();
doc.save("C:/Users/crusader/Desktop/Hello World.pdf");
doc.close();
}
catch (IOException ie){
ie.printStackTrace();
//handle exception
}
//save and close
catch (COSVisitorException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String []args)
{
BufferedImage buff= null;
try{
buff = ImageIO.read(new File("C:/Users/crusader/Desktop","tests.jpg"));
}
catch(IOException ex)
{
ex.printStackTrace();
}
System.out.println(buff.getWidth());
System.out.println(buff.getHeight());
pdfBoxTest.WritteBufferedImageToPDF(buff);
}
}
समस्या से PDFBox केवल दस्तावेज़ है, जो एक हानिपूर्ण प्रारूप है में छवियों के लिए छवि प्रारूप के रूप में जेपीईजी का उपयोग करने में सक्षम होने उपजा कर दिया गया है चलो। मुझे अभी तक कोई उचित समाधान नहीं मिला है। – iddo
@iddo: नवीनतम संस्करण – Gilead
@Crusader में PDPixelMap आज़माएं: मैंने आपके कोड की कोशिश की है और यह अच्छा काम कर रहा है, लेकिन मुझे केवल पीडीएफ दस्तावेज़ में पेज सामग्री (चौड़ाईवार) का आधा हिस्सा मिल रहा है। क्या आप कृपया मेरी मदद कर सकते हैं –