2013-08-31 4 views
6

मैं जावा में मौजूदा तस्वीर पर एक स्ट्रिंग लिखना चाहता हूं। तस्वीर .jpg प्रारूप का है। मैंने नीचे दिए गए कोड का उपयोग किया है, केवल समस्या यह है कि अंतिम छवि पर लाल छाया है ... कुछ ऐसा है जैसे छवि ने अपना असली रंग खो दिया है और हल्का लाल है। कृपया इस समस्या को सुधारने में मेरी मदद करें।जावा में एक तस्वीर पर प्रिंटिंग स्ट्रिंग

BufferedImage img = ImageIO.read(new File("pic1.jpg")); 
    int width = img.getWidth(); 
    int height = img.getHeight(); 
    BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB); 
    Graphics2D g2d = bufferedImage.createGraphics(); 
    Font font = new Font("Serif", Font.PLAIN, 96); 
    g2d.setFont(font); 
    g2d.drawImage(img, 0, 0, null); 
    g2d.drawString(text, 100, 250); 
    g2d.dispose(); 

    File file = new File("newimage.jpg"); 

    ImageIO.write(bufferedImage, "jpg", file); 

उत्तर

6

INT_ARGB के बजाय INT_RGB उपयोग और आप ठीक हो जाओगे:

BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB); 
+0

धन्यवाद एक बहुत। यह पूरी तरह से काम किया !! – user2626234

संबंधित मुद्दे