Codice sorgente con effetto “pagina strappata”

  • Creatore
    Topic
  • #98797
    Up
    0
    Down
    ::


    Salve ragazzi,

    da qualche tempo sto scrivendo la mia tesi di laurea in (xe)latex con la classe memoir, ed avrei la necessità di inserirvi degli stralci di codice sorgente. In particolare, trattandosi di file di input di un software e non di un vero e proprio listato scritto con un linguaggio di programmazione, mi piacerebbe frammentare il codice in modo da commentarlo man mano, sezione per sezione, al di fuori dell’ambiente listing. Quindi pensavo di inserire ciascun frammento di codice in qualcosa di simile ad una “pagina stappata”, ovvero in un box con una cornice in cui i due lati verticali siano rettilinei, mentre i lati superiore ed inferiore siano, all’occorrenza, o rettilinei (se lo stralcio di codice in esame è posto in testa o in coda al file sorgente) o segmentati (per l’appunto, come se la pagina contenente il sorgente fosse stata strappata).

    Sono abbastanza sicuro di aver visto qualcosa di simile in molti documenti scritti con latex, ma non ho trovato nulla di utile, ne tanto meno sono stato in grado di trovare un esempio da mostrarvi. L’unica cosa che sono riuscito a trovare è questa, che però da un lato è una soluzione molto più complessa (anche da un punto di vista grafico) di quella che cercavo, e dall’altro non produce il risultato voluto se il sorgente è compilato con xelatex (come nel mio caso). Inoltre leggevo di un’incompatibilità con il pacchetto listings.

    Spero di essere riuscito a spiegarmi,

    saluti,
    Davide.

Visualizzazione 1 filone di risposte
  • Autore
    Risposte
    • #98798
      GKT
      Partecipante
        Up
        0
        Down
        ::

        DavideC” post=98342Salve ragazzi,

        da qualche tempo sto scrivendo la mia tesi di laurea in (xe)latex con la classe memoir, ed avrei la necessità di inserirvi degli stralci di codice sorgente. In particolare, trattandosi di file di input di un software e non di un vero e proprio listato scritto con un linguaggio di programmazione, mi piacerebbe frammentare il codice in modo da commentarlo man mano, sezione per sezione, al di fuori dell’ambiente listing. Quindi pensavo di inserire ciascun frammento di codice in qualcosa di simile ad una “pagina stappata”, ovvero in un box con una cornice in cui i due lati verticali siano rettilinei, mentre i lati superiore ed inferiore siano, all’occorrenza, o rettilinei (se lo stralcio di codice in esame è posto in testa o in coda al file sorgente) o segmentati (per l’appunto, come se la pagina contenente il sorgente fosse stata strappata).

        Sono abbastanza sicuro di aver visto qualcosa di simile in molti documenti scritti con latex, ma non ho trovato nulla di utile, ne tanto meno sono stato in grado di trovare un esempio da mostrarvi. L’unica cosa che sono riuscito a trovare è questa, che però da un lato è una soluzione molto più complessa (anche da un punto di vista grafico) di quella che cercavo, e dall’altro non produce il risultato voluto se il sorgente è compilato con xelatex (come nel mio caso). Inoltre leggevo di un’incompatibilità con il pacchetto listings.

        Spero di essere riuscito a spiegarmi,

        saluti,
        Davide.

        Benvenuto nel forum! Abbiamo a che fare con due tipi di “problemi”, che vanno verificati uno alla volta:

        1. La compatibilità tra XeLaTeX e listings. Se non hai caratteri speciali, dovrebbe bastare il pacchetto fontspec. Puoi leggere qui.
        2. L’inserimento dell’effetto “carta strappata”. Difficile evitare il ricorso al pacchetto TikZ. partendo da questo esempio, puoi disegnarti la tua “carta strappata” e inserirla come immagine di sfondo.

        Lorenzo

      • #98799
        Up
        0
        Down
        ::


        Innanzitutto ti ringrazio per il benvenuto e per la risposta.

        Sarò sincero, anche se la cosa potrebbe essere un po’ “imbarazzante”: non ho idea del perchè sto usando XeLaTeX. O meglio, lo sto usando per accedere alle font di sistema (usate ad esempio per i capilettera delle citazioni di inizio capitolo), ma la mia intenzione originaria era quella di usare LuaTeX, anche per evitare il “TeX capacity excedeed” (o similare) che risulta nell’includere via pgfplots numerosi grafici in due o tre dimensioni. Quindi perchè XeLaTeX e non LuaTex? Semplice: il primo funziona mentre il secondo no (per questo particolare documento, ovviamente). Ad ogni modo l’incompatibilità tra XeLaTeX e la soluzione che ho riportato nel post precedente soggiace nello shading (con conseguente warning), infatti l’output viene prodotto, ma il tutto appare fondamentalmente nero. Questo problema si risolve dunque rimuovendo lo shading in background (lo avrei fatto ugualmente per maggior sobrietà). Resta però il fatto che quel codice non funziona con listings (che di per se funziona).

        Tornando al problema in oggetto, ho dedicato un po’ di tempo alla ricerca di un esempio da mostrarvi, e ne ho trovato più d’uno (ad esempio a pag. 32, 37 o 39) in “Scrivere la Tesi di Laurea con LaTeX” di Lapo Filippo Mori. Quindi come puoi vedere quello che cercavo è molto più semplice (graficamente parlando) rispetto al risultato che ho linkato prima.

    Visualizzazione 1 filone di risposte
    • Devi essere connesso per rispondere a questo topic.

    Go to top