Skip to content

Releases: antann/md2pdf

v1.2.1

Choose a tag to compare

@antann antann released this 30 Jul 22:41

Nessuna modifica all'applicazione: cambia soltanto ciò che si trova allegato
alla release.

Aggiunto

  • Archivio zip per Windows, accanto all'installatore, fra gli allegati della
    release: si estrae in una cartella qualsiasi e si avvia da lì, senza
    installazione e senza privilegi di amministratore. Utile su una chiavetta o
    dove non si può installare nulla.
  • SHA256SUMS.txt fra gli allegati: gli eseguibili non sono firmati, e il
    checksum è la verifica che resta per controllare che il file scaricato sia
    quello pubblicato.

v1.2.0

Choose a tag to compare

@antann antann released this 27 Jul 22:19

L'applicazione ha una finestra propria e scrive il PDF da sé: la finestra di
stampa del browser non serve più.

Aggiunto

  • Finestra dell'applicazione. MD2PDF si apre in una finestra sua, con menu
    in italiano: File → Apri documento (Ctrl+O) e Salva come PDF (Ctrl+P),
    Modifica, Visualizza, Aiuto. Il motore di resa arriva con
    l'applicazione, quindi il risultato non dipende più dal browser installato.
  • PDF scritto direttamente su disco. Il pulsante diventa Salva PDF: apre
    la finestra di salvataggio e scrive il file. Formato, margini e sfondi sono
    quelli del template, senza impostazioni da correggere a mano.
  • Collegamento Mostra l'ultimo PDF nella barra di stato: apre la cartella con
    il file appena salvato.
  • Apertura dei documenti dal dialogo di sistema, accanto al trascinamento e al
    selettore file.
  • npm run dist costruisce l'installatore: NSIS su Windows, AppImage su Linux,
    DMG su macOS. Va lanciato sul sistema di destinazione.
  • L'icona dell'applicazione è il marchio del progetto. npm run icona la
    rigenera da docs/logo/md2pdf-marchio.svg senza dipendenze aggiuntive.
  • diagnostica.bat: controlla ambiente, file, dipendenze e porte, e dice con
    quale comando rimediare.
  • avvia.bat --browser conserva il funzionamento precedente, nel browser e con
    la finestra di stampa.

Modificato

  • avvia.bat senza argomenti apre la finestra invece del browser;
    arresta.bat chiude anche la finestra, limitandosi ai processi avviati da
    questa cartella.
  • Il server di sviluppo è fissato su 127.0.0.1: su Windows localhost si
    risolve spesso in ::1 e la finestra non trovava il server.

Note tecniche

  • Il PDF nasce da webContents.printToPDF con preferCSSPageSize: comanda la
    regola @page del foglio di stile, quindi l'anteprima e il PDF restano lo
    stesso oggetto — nessun secondo motore di impaginazione.
  • La pagina compilata dichiara una Content-Security-Policy; in sviluppo no,
    perché bloccherebbe la ricarica a caldo di Vite.
  • Electron ed electron-builder stanno fra le dipendenze di sviluppo:
    l'applicazione non ha dipendenze di runtime nuove.

v1.1.0

Choose a tag to compare

@antann antann released this 26 Jul 16:51

Corredo per la vita pubblica del progetto: licenza, regole di contribuzione,
verifica automatica della compilazione e un marchio.

Aggiunto

  • Licenza MIT, CONTRIBUTING.md, CODE_OF_CONDUCT.md, SECURITY.md,
    ROADMAP.md e AUTHORS.
  • Modelli per le segnalazioni e per le pull request; .editorconfig.
  • examples/documento-esempio.md: il documento caricato all'avvio, in forma
    di file, da trascinare sulla finestra.
  • Verifica automatica della compilazione su Node 18, 20 e 22.
  • Marchio del progetto: un foglio in proporzione A4 con il margine in negativo
    e il filetto del titolo in accento. Prende il posto del pallino nella barra
    in alto, dà l'icona alla scheda del browser e apre il README.md. Le
    varianti e le regole d'uso stanno in docs/logo/.

v1.0.0

Choose a tag to compare

@antann antann released this 26 Jul 09:13

Prima versione funzionante: dal file Markdown al PDF, senza passaggi manuali
intermedi.

Aggiunto

  • Caricamento del sorgente per trascinamento, da selettore file o incollando
    il testo; le immagini trascinate insieme al documento risolvono i percorsi
    relativi per nome file.
  • Quattro template — Tecnico, Relazione, Manuale, Appunti — presentati con
    anteprima, descrizione e specifiche tipografiche.
  • Lettura del front-matter YAML con chiavi italiane e inglesi; le chiavi non
    previste vengono riportate nell'intestazione anziché scartate.
  • Form di correzione dei metadati: quanto scritto vince sul file per la sola
    generazione in corso, il sorgente resta intatto.
  • Anteprima impaginata a fogli reali, con segni di taglio, intestazione e piè
    di pagina correnti, numerazione e copertina dedicata opzionale.
  • Indice automatico su due livelli, con ancore interne e numeri di pagina
    calcolati a impaginazione conclusa.
  • Formati carta A4 e Letter, verticale e orizzontale.
  • Evidenziazione della sintassi nei blocchi di codice, tabelle, citazioni,
    elenchi di attività, righe orizzontali.
  • Zoom dell'anteprima con adattamento alla finestra.
  • Generazione del PDF dalla stampa del browser, anche con Ctrl+P.
  • avvia.bat e arresta.bat per l'uso su Windows; avvia.bat --build
    compila la versione di produzione prima di servirla.
  • Documentazione: README.md e istruzioni di progetto in CLAUDE.md.

Note tecniche

  • L'impaginazione misura i blocchi alla larghezza reale della colonna in un
    contenitore fuori schermo, poi li distribuisce sui fogli. Un titolo non
    resta mai isolato in fondo alla pagina: scende insieme alla sua sezione.
  • La ricomposizione è ritardata di 200 ms rispetto alla battitura, per non
    ricalcolare l'impaginazione a ogni tasto.
  • L'evidenziazione carica solo i linguaggi di uso comune: il pacchetto
    completo pesava circa tre volte tanto sul bundle finale.

Limiti di questa versione

  • L'unità minima di impaginazione è il blocco: i paragrafi lunghi non si
    spezzano tra due pagine.
  • Un blocco più alto della pagina viene tagliato; la barra di stato lo segnala.
  • La generazione del PDF richiede il passaggio dalla finestra di stampa.

Quel che è previsto per le versioni successive sta in
ROADMAP.md: qui restano solo le modifiche già fatte.