Posso inserire l'immagine nel mio file excel usando jxl usando sheet.addImage(WritableImage obj)
. Il mio problema è che si estende in base agli argomenti di WritableImage
. Mi chiedo se c'è un modo in modo che l'immagine che inserisco non si allunghi come se inserissi un'immagine di dimensioni 200x200 che apparirà sul foglio come 200x200.Inserire l'immagine nel file excel usando JXL senza allungarlo
risposta
Per quanto mi abbia infastidito su jxl, non ho mai trovato un modo per inserire un'immagine senza associare le proporzioni alle celle invece di pixel/pollici/qualsiasi unità di misura standard, e ho fatto una scelta decente ricerca in passato su questo.
Il meglio si può fare è per adattare le immagini al altezza/larghezza delle celle si inserisce in, o meglio ancora, impostare la larghezza/altezza di cella per le celle state mettendo l'immagine.
Dal JExcel FAQ- http://jexcelapi.sourceforge.net/resources/faq/
private static final double CELL_DEFAULT_HEIGHT = 17;
private static final double CELL_DEFAULT_WIDTH = 64;
File imageFile = new File(GIF_OR_JPG_IMAGE_FILE);
BufferedImage input = ImageIO.read(imageFile);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
ImageIO.write(input, "PNG", baos);
sheet.addImage(new WritableImage(1,1,input.getWidth()/CELL_DEFAULT_WIDTH,
input.getHeight()/CELL_DEFAULT_HEIGHT,baos.toByteArray()));
per mantenere il rapporto di aspetto, si potrà anche impostare il WritableImage di non ridimensionare se l'utente cambia l'altezza della riga o la larghezza della colonna. Fate questo con uno dei due al di sotto (la vostra preferenza sulla base se si desidera che l'ancoraggio immagine bloccato o di muoversi con il ridimensionamento):
WritableImage.MOVE_WITH_CELLS;
WritableImage.NO_MOVE_OR_SIZE_WITH_CELLS;
Grazie per la risposta! Penso di non poterlo applicare alla mia situazione attuale poiché la larghezza e l'altezza della colonna sono soggette alla lunghezza della parola più lunga nella stessa colonna in cui ho bisogno di mettere un'immagine. Ma apprezzo molto la tua risposta. – Jemp
Nessun problema, mi è già successa questa situazione prima. Quanto sopra funziona SE è possibile correggere la larghezza/altezza delle celle, ma nel caso in cui non sia possibile (come quando si imposta AUTOSIZE su true su colonne), non ho trovato un modo per farlo. Se trovi un modo per farlo in jxl, assicurati di postare qui, in quanto potrebbe aiutare gli altri. – king14nyr
@ king14nyr hai trovato una soluzione per favore postala thankx – shareef
In realtà, questo è possibile. Si supponga che la larghezza dell'immagine che si desidera includere è 4000. Poi procedere come segue:
CellView cv = excelSheetTemp.getColumnView(0);
//get the width of the column where you want to insert the picture
int width = forLogo.getSize();
//if the width is less than the size you want, set the column width to
//the width. This will ensure that your image does not shrink
if (width < 4000) {
forLogo.setSize(4000);
excelSheetTemp.setColumnView(0, cv);
width = 4000;
}
double c = 4000/width;
WritableImage im = new WritableImage(0, 1, c, 3, the image file);
excelSheetTemp.addImage(im);
- 1. Modifica excel esistente utilizzando jxl
- 2. JXL e Timezone che scrivono un Excel
- 3. Aggiunta di dati a un file Excel utilizzando jxl
- 4. Come inserire (incorporare) un oggetto file nel foglio Excel
- 5. POI Apache: Come inserire una colonna nel file Excel
- 6. Come creare un foglio Excel con allineamento da destra a sinistra usando JXL
- 7. Formattazione cella JXL
- 8. Crea file Excel in Java
- 9. confronto di prestazioni tra JXL e POI per Excel generazioni di file
- 10. Incorpora file EXE nel file Excel
- 11. Inserire il grafico dei panda in un file Excel usando XlsxWriter
- 12. Come creare un file Excel usando OpenXML senza creare un file locale?
- 13. Inserire i file minificati nel barattolo
- 14. Matlab numero di righe nel file excel
- 15. JXL e Apache Analisi dei POI excel con oggetti immagine collegati
- 16. Inserire l'immagine nel file xml utilizzando C#
- 17. Come inserire nel file DBF (FoxPro)
- 18. Inserire il testo nel file esistente
- 19. Come inserire un "-" nel file string.xml
- 20. Excel esportare senza Interop
- 21. JXL risolve il problema #VALORE
- 22. Converti Word docx in Excel usando OpenXML
- 23. Come inserire un'immagine nella cella excel?
- 24. Esegui un comando nel prompt dei comandi usando excel VBA
- 25. Inserire MAVEN_OPTS nel POM.xml
- 26. Come inserire più righe nel database usando Hibernate?
- 27. Come inserire spazi/tabulazioni nel testo usando HTML/CSS?
- 28. Come inserire valori "NULL" nel database PostgreSQL usando Python?
- 29. SQL inserire nel usando Unione dovrebbe aggiungere solo valori distinti
- 30. Lettura di Excel con JXL, numero di celle per riga che cambia tra le righe
@ king14nyr hai trovato una soluzione per favore invialo thankx – shareef