Esportare codice Java in HTML

 

 

Molto spesso ho l'esigenza di esportare in formato Html del codice sorgente (file.java) da Netbeans in Dreamwiever per poter realizzare dei tutorial. vediamo come fare.

  1. In Netbeans evidenziare il file.java ce si vuole esportare
  2. Fare doppio clic per averlo nell'area di lavoro
  3. Nel menù File cliccare su "Print to Html"
  4. Nella finestra di dialogo che compare selezionare "Print To File", "Show line Number"
  5. Impostare il percorso nella posizione dentro il vostro sito locale con il pulsante "Browse" ad es..
    "D:\Archivio\SITI\MySiti\Cersil-Java\pagine\comeFare\"
    Aggiungere in coda il nome "temp.html" così:
    D:\Archivio\SITI\MySiti\Cersil-Java\pagine\comeFare\temp.html" e cliccare su OK
  6. Passare a Dreamwiever, aprire il file temp.html copiare il codice presente entro i tag <pre></pre>
  7. Usare gli snipets per aprire un nuovo file nella posizione desiderata al giusto livello. Ad es. questa pagina è in Sito/pagine/comefare/export.html. E l'abbiamo creata utilizzando lo snipet livello2.html
  8. Incollare (visualizzazione codice) tra i tag <pre></pre> nel nuovo file nella tabella "Copiare qui il codice"
  9. Ora si può cancellare il file temp.html.
Copia qui il Codice      

 

E questo sarà il risultato:

 1 package customsliderexample;
 2 
 3 import javax.swing.*;
 4 import javax.swing.plaf.metal.MetalSliderUI;
 5 import java.awt.*;
 6 
 7 public class CustomSliderExample {
 8     public static void main(String[] args) {
 9         JFrame frame = new JFrame("Custom Slider Example");
10         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
11 
12         // Carica l'immagine del cursore
13         ImageIcon customCursorIcon = new ImageIcon("../img/pome.png");
14 
15         // Crea uno JSlider
16         JSlider slider = new JSlider(JSlider.HORIZONTAL, 0, 100, 50);
17      
18         slider.setUI(new CustomSliderUI(customCursorIcon)); // Imposta l'UI personalizzata
19 
20         frame.add(slider);
21         frame.pack();
22         frame.setVisible(true);
23     }
24 }
25 
26 // Classe UI personalizzata per il cursore
27 class CustomSliderUI extends MetalSliderUI {
28     private ImageIcon cursorIcon;
29 
30     public CustomSliderUI(ImageIcon cursorIcon) {
31         this.cursorIcon = cursorIcon;
32     }
33 
34     @Override
35     public void paintThumb(Graphics g) {
36         // Disegna l'icona del cursore personalizzato
37         cursorIcon.paintIcon(slider, g, thumbRect.x, thumbRect.y);
38     }
39 }
40 

 

Questa modalità, oltre ad essere bella a vedersi, è molto comoda sia per la presenza della numerazione delle linee di codice che per il fatto che possiamo copiare le parti che selezioniamo. C'è però un problema è che se volessimo copiare il codice per inserirlo in Netbeans, la presenza della numerazione delle linee ci creerebbe dei problemi. Una solusione potrebbe essere quella di aggiungere un link ad un file di testo che contiene il codice pulito da poter scaricare.

Per fare questo:

  1. Copiare in Netbeans il codice del file java interessato (ctrl A + Ctrl C)
  2. Aprire Notepad ed incollare il contenuto,
  3. Salvare, in una direttory appositamente creata con nome "source", assegnnando il nome del file java. Nel nostro es. "CustomSliderExample.java"
  4. Nella nostra pagina inserire due immagini (vedi sopra il riquadro celeste nell'angolo destro)
  5. La prima consentirà di fare il download del sorgente
  6. La seconda aprirà invece il sorgente nel browser e ci permetterà di copiare nella clipboard il contenuto, che potremo incollare direttamente in Netbeans per compilarlo ed eseguirlo
  7. Per la prima dovremo associare il codice seguente:
    <p class="corpodex"><a href="souce/CustomSliderExample.java" download>Scarica</a></p>
  8. Per la seconda:
    <p class="corpodex"><a href="scr/CustomSliderExample.java"><img src="../../../img/dowld.jpg" width="20" height="25" alt=""/></a></p>
  9. La differenza consiste nella presena e nell'assenza dell'attributo download
  10. Se presente il file verrà scricato altrimenti verrà semplicement visualizzato nel browser