Je souhaite lire les fichiers * .icns sous OS X dans une image tamponnée. AideComment lire le fichier OS X * .icns avec Java
3
A
Répondre
4
2
Vous devez convertir ICNS à un autre type d'image d'abord, et après charge cette image vous pouvez le supprimer. Voici comment convertir PNG à ICNS, vous avez juste besoin de faire dans le sens inverse:
public static void Png(File png, File icns) throws IOException{
ImageIcon image = new ImageIcon(ImageIO.read(png));
ImageIconAs(image, icns);
}
public static void ImageIconAs(ImageIcon ii, File icns) throws IOException{IconAs((Icon)ii,icns);}
public static void IconAs(Icon icon, File icns) throws IOException{
if (icon != null) {
BufferedImage bi = new BufferedImage(icon.getIconWidth(), icon.getIconHeight(), BufferedImage.TYPE_INT_ARGB);
Graphics2D g = bi.createGraphics();
icon.paintIcon(new Canvas(), g, 0, 0);
g.dispose();
File outputfile = new File("temp000.png");
ImageIO.write(bi, "png", outputfile);
execTerminal(new String[]{ "sips", "-s", "format", "tiff",
"temp000.png","--out", "temp000.tiff" });
File apaga2 = new File("temp000.png");
apaga2.delete();
execTerminal(new String[]{ "tiff2icns", "-noLarge",
"temp000.tiff", icns.getAbsolutePath()});
File apaga = new File("temp000.tiff");
apaga.delete();
}
}
static void execTerminal(String[] cmd){
int exitCode = 0;
try {
exitCode = Runtime.getRuntime().exec(cmd).waitFor();
}
catch (InterruptedException e) {e.printStackTrace();}
catch (IOException e) {
if (exitCode != 0) System.out.println("ln signaled an error with exit code " + exitCode);
}
}
Vous avez juste besoin de l'utiliser pour appeler l'action:
Png (png_file, icns_file);
Questions connexes
- 1. API Java Sound sur OS X avec carte son USB
- 2. Java OS X Dock Menu
- 3. script php pour convertir .png en .icns pour mac os
- 4. Comment lire un fichier XML avec Java?
- 5. Ouverture d'un fichier sous Mac OS X
- 6. Code source Java OS X perdu
- 7. Java OS X - Aucune icône de l'application dans le dock
- 8. Utilisation de VTK 5.4.2 avec Java dans OS X 10.6
- 9. Dormir OS X à partir de Java
- 10. charger .icns particulier size
- 11. Junit et Java classpath woes - OS X
- 12. Java 1.5 crypto sur OS X - AccessControlException
- 13. Schéma pour lire le fichier vidéo dans son propre format de conteneur sur Mac OS X
- 14. Subversion avec Mac OS X
- 15. Interrogation Mac OS X Spotlight de Java
- 16. OS X: Comment accélérer l'interface graphique Java/Swing?
- 17. Double-cliquez sur le fichier document sous Mac OS X pour ouvrir l'application Java
- 18. écrire un fichier exécutable avec .sh Java pour Mac OS X
- 19. OS X bash: dirname
- 20. Lire les propriétés du fichier/répertoire avec java
- 21. Comment trouver le dossier 'Documents' de l'utilisateur avec Java dans OS X?
- 22. L'application Java ne connaît pas le nom du fichier en cours d'ouverture - Mac OS X
- 23. Comment lire le fichier Excel et le convertir en fichier délimité par tabulation avec Java
- 24. Subclipse ne peut pas renommer le fichier (OS X)
- 25. Icône haute résolution pour le fichier sous Mac OS X?
- 26. Modèle d'icône de document Mac OS X?
- 27. Lire le fichier svg via Java
- 28. java Processbuilder - exec un fichier qui n'est pas dans le chemin sous OS X
- 29. Comment lancer clojure sur Mac OS X?
- 30. Détection d'une caméra OS X avec Ruby
Il est ici maintenant: http://svn.apache.org/viewvc/commons/proper/imaging/trunk/src/main/java/org/apache/commons/imaging/formats/icns/IcnsDecoder.java?view = balisage Merci beaucoup. Cela va m'aider à faire un fichier .app sous GNU Linux et Windows: https://sourceforge.net/p/tuer/tickets/9/#c109 – gouessej