2013-10-27 43 views
-1

所以我試圖採取的BufferedImage並將其轉換成一個類型文件,但ImageIO.write只會讓我寫的圖像文件。我已經看過了源代碼,似乎無法找到一種方法,將圖像轉換爲一個文件,那是不是寫入文件。的Java的ImageIO,轉換圖像到文件

 // array of puzzle piece images 
     BufferedImage puzzle_pieces[] = new BufferedImage[num_pieces]; 

     // make the pieces to the puzzle 
     for (int current_row = 0; current_row < rows; current_row++) 
     { 
      for (int current_column = 0; current_column < columns; current_column++) 
      { 
       // initializes image array with pieces 
       puzzle_pieces[count] = new BufferedImage(pieceWidth, pieceHeight, puzzle_image.getType()); 

       // draws the image for each piece 
       Graphics2D piece = puzzle_pieces[count++].createGraphics(); 
       piece.drawImage(puzzle_image, 0, 0, pieceWidth, pieceHeight, pieceWidth * current_column, pieceHeight * current_row, 
          pieceWidth * current_column + pieceWidth, pieceHeight * current_row + pieceHeight, null); 
       piece.dispose(); 
      } 
     } 

     // put pieces into array 
     for (int i = 0; i < num_pieces; i++) 
     { 
      //Put pieces into array of type File 
     } 
+0

究竟是通過將圖像轉換爲文件來完成的? – kviiri

+0

的文件類型只表示文件的路徑。將圖像轉換爲文件沒有多大意義。如果你想有一個文件,然後從頭創建:'新的文件(「image.png」)' –

+0

我分裂的圖像成碎片......但我想加載這些碎片進入我的程序不能將它們保存爲JPEG格式。我有一個將文件保存到文件的功能。但是,我需要的部分留在我的程序中的文件,而不是「圖像」。 – visc

回答

1

File在這裏需要。簡單地削減了BufferedImage到使用getSubimage(x,y,w,h)獨立的圖像。

該技術在this answer中用於將圖像(加載爲BufferedImage)分成控件各個部分的子圖像。鼠標懸停在「向右」控件上,顯示用於顯示焦點的變體圖像。