Pictures survive an export
A Notion, Confluence or Obsidian export kept its pictures in the .zip and never unpacked them, so the document arrived with every image pointing at a file that was not there. A PowerPoint deck lost its slides’ pictures. A Word file lost its pictures having already handed every one of them over. All four now carry them, inside the document itself.
Era la lamentela più frequente su due di questi formati, e questo convertitore ce l’aveva anche lui.
Che cosa succedeva
Un’esportazione mette le immagini in cartelle e le collega in modo relativo: Notion accanto a ogni
pagina, Confluence sotto attachments/, Obsidian dove le hai messe tu. Dall’archivio veniva
letto solo il testo, così il Markdown continuava a dire  di file mai
estratti — venti immagini rotte in un wiki convertito, il che sembra che lo strumento le abbia
perse invece che non averle mai avute.
Con PowerPoint era peggio in modo più silenzioso: una diapositiva che era solo uno schema lo
diceva e passava oltre. Word era il più strano dei quattro, perché mammoth legge le immagini di
un .docx dal file stesso e le consegna tutte — e una riga scritta anni fa, mai commentata, le
buttava via.
Portate, non caricate
Un’immagine diventa parte del documento, con i propri byte. È il vincolo, non una scorciatoia: ogni conversione qui promette che il file resta nel browser, e mettere le immagini in un archivio remoto lungo la strada renderebbe falsa quella promessa. Vuol dire anche che viaggiano — nel Markdown scaricato, nell’HTML autonomo, nell’esportazione in Word, in un link condiviso.
C’è un tetto, e non è nostro
Un documento deve stare in 4 MB per essere salvato in un account; le immagini si dividono la metà, al massimo un megabyte ciascuna. Oltre, un’immagine che viene da un archivio mantiene il collegamento che aveva già — non si perde nulla che non fosse già perso — e quella che non ha alcun file dietro viene sostituita dalla propria descrizione.
La parte che ha cambiato il progetto
Il modo ovvio di tenere le immagini di Word era smettere di scartarle. Misurato su un documento da
3,5 MB con tre fotografie: 4,7 MB di HTML in 224 ms, e poi più nulla — un <img> il cui
indirizzo è lungo due milioni di caratteri non è ciò per cui è fatto un parser HTML. Ora i byte
non gli si avvicinano: ogni immagine viene pesata mentre si legge, messa da parte sotto un numero
e rimessa quando il Markdown è tornato piccolo. Sessanta millisecondi.