"The file is damaged and could not be repaired"

Questo messaggio significa che Acrobat ha già tentato il proprio recupero e ha rinunciato, di solito perché la tabella dei riferimenti incrociati del PDF —la mappa che legge in fondo al file— è rotta o troncata. Gli oggetti delle pagine di solito sono ancora all'interno; una ricostruzione più a fondo può raggiungerli, e non implica mai caricare un documento riservato.

Il tuo file non lascia mai il tuo dispositivo — la riparazione avviene nel browser. 0 byte caricati.

Your data is the big block — usually intact. What breaks is the small index. Repair rebuilds it.

Drop a file here or browseTap to choose a file

ZIP · Office · PDF · video · JPG · PNG · RAR/7z · SQLite — repaired right here in your browser. Nothing is uploaded

0 bytes uploadedFree: 3 repairs/day — up to 500 MB video, 100 MB docs & archives, 50 MB photos. Free download. Single repair €5.90. No account required.

Ripara ora

  1. Trascina il file
  2. La riparazione avviene in locale
  3. Scarica il risultato

Quando Acrobat o Reader mostra "There was an error opening this document. The file is damaged and could not be repaired," non è una lamentela generica: Acrobat ha già tentato il proprio recupero silenzioso ed è fallito. Un PDF si legge dalla fine, e le strutture finali sono proprio ciò che un salvataggio difettoso o un download interrotto distruggono per primo. Trascina il file qui sopra e lo strumento analizza la reale struttura a oggetti del PDF nel tuo browser, ricostruisce la tabella dei riferimenti incrociati a partire dagli oggetti che trova e riassembla un file che si apre davvero, senza che il documento lasci mai il tuo dispositivo.

Un PDF si legge dalla fine, ed è per questo che si rompe così

Un PDF non è un flusso che si legge dall'alto verso il basso. Inizia con un'intestazione come %PDF-1.7, seguita da un corpo di oggetti numerati (ciascuno scritto come N 0 objendobj) che contengono le pagine, i font, le immagini e il contenuto. Dopo il corpo viene la tabella dei riferimenti incrociati (xref): un elenco con lo scostamento (offset) esatto in byte di ogni oggetto. Poi un trailer indica qual è la radice del documento e, cosa più importante, il file termina con startxref seguito da un offset in byte e dal marcatore %%EOF.

Per aprire il file, un lettore si posiziona alla fine, legge startxref per sapere dove si trova l'xref, salta fin lì e usa gli offset per individuare la radice e caricare le pagine. Tutto dipende dal fatto che quel trailer sia intatto e gli offset siano corretti. A partire da PDF 1.5, questa mappa può anche essere salvata come una cross-reference stream compressa e impacchettare molti oggetti dentro degli object stream (ObjStm): più efficiente, ma significa che un solo flusso danneggiato in coda può nascondere di colpo moltissimi oggetti.

Poiché l'indice e il trailer stanno proprio alla fine, sono le prime vittime quando un salvataggio si interrompe, un download viene troncato o un aggiornamento incrementale viene scritto male. Ecco perché i PDF "danneggiati" hanno così spesso un contenuto delle pagine perfettamente valido e una mappa rotta che punta ad esso.

Perché la riparazione integrata di Acrobat si arrende

Acrobat di norma ricostruisce un xref rotto in modo silenzioso: se gli offset non tornano, scansiona il file in cerca di marcatori obj e ricostruisce la tabella senza dirti nulla. Quindi "could not be repaired" significa che anche questo meccanismo di emergenza è fallito: il danno è andato oltre ciò che il ricostruttore di Acrobat tollera. I motivi più comuni:

La coda del file è stata troncata. Un download o una copia che si è fermato in anticipo perde del tutto l'xref, il trailer, lo startxref e il %%EOF, e forse anche gli ultimi oggetti. Un aggiornamento incrementale difettoso. I PDF vengono spesso modificati aggiungendo alla fine una nuova sezione xref e un trailer; se quell'aggiunta è corrotta, la catena degli aggiornamenti punta al posto sbagliato. Una cross-reference stream o object stream danneggiata. Quando la mappa stessa è un flusso compresso e quel flusso è corrotto, Acrobat può perdere di vista gli oggetti impacchettati al suo interno. Byte alterati durante il trasferimento: un trasferimento in modalità testo che ha cambiato i fine riga, o una sincronizzazione che ha invertito dei byte, può ugualmente scombinare gli offset finché nulla combacia più.

In tutti i casi, la conclusione utile è la stessa: gli oggetti che compongono le tue pagine di solito sono ancora presenti nel corpo; ciò che è rotto è la directory che punta ad essi.

Cosa recupera una ricostruzione più a fondo, e perché non caricare nulla

Invece di fidarsi del trailer rotto, lo strumento scansiona l'intero file in cerca di definizioni obj, annota dove ciascuna inizia davvero e ricostruisce la tabella dei riferimenti incrociati a partire da quelle posizioni reali. Poi ricollega la radice del documento e l'albero delle pagine affinché un lettore possa percorrere di nuovo le pagine, recuperando lungo il percorso i flussi di contenuto, i font incorporati e le immagini. Quando la mappa risiedeva in una cross-reference stream o object stream compressa che è sopravvissuta, legge anche quelle; quando la coda è stata troncata, recupera ogni oggetto scritto prima del taglio e assembla un PDF valido attorno ad essi. Tutto questo viene eseguito interamente nella scheda del tuo browser: senza Acrobat, senza plugin, senza andata e ritorno a un server.

I limiti onesti: il contenuto che non è mai stato scritto non può essere ripristinato, quindi se il file è stato troncato, le pagine che non erano ancora state salvate sono perse; recuperi le pagine fino al punto del taglio. Se un oggetto specifico da cui dipendono le tue pagine è finito nella zona danneggiata, quella pagina può tornare incompleta. E un PDF cifrato e protetto da password non può essere ricostruito senza la password, perché i suoi oggetti sono illeggibili finché non vengono decifrati. Ciò che la riparazione garantisce davvero è la privacy: contratti, cartelle cliniche, estratti conto e lavori non pubblicati vengono letti dal disco e riassemblati localmente, e puoi tenere d'occhio la scheda Rete (Network) e verificare che 0 byte del documento lascino mai il tuo dispositivo.

Cosa può e cosa non può riparare

Può riparare

  • Un PDF il cui xref / trailer / startxref è rimasto danneggiato o troncato: la tabella viene ricostruita scansionando in cerca di definizioni obj
  • File troncati da un download o una copia interrotti: viene recuperato ogni oggetto scritto prima del taglio
  • Documenti rotti da un aggiornamento incrementale difettoso o da una cross-reference/object stream corrotta
  • PDF che Acrobat apre solo per dire che il file è danneggiato e non può essere riparato, quando gli oggetti delle pagine sopravvivono

Non può riparare

  • Pagine o oggetti che non sono mai stati scritti dopo un troncamento: quei byte non sono sul tuo disco
  • PDF cifrati con password senza la password (gli oggetti non si possono leggere finché non vengono decifrati)
  • Un file di 0 byte o che non contiene oggetti PDF riconoscibili
  • Una pagina che dipende da un oggetto specifico finito dentro la zona danneggiata (può tornare incompleta)

Se una riparazione fallisce, ti diciamo perché (dati mancanti rispetto a struttura danneggiata), e non ti viene mai addebitato nulla per una riparazione fallita.

Domande frequenti

Acrobat dice che il file è danneggiato e non può essere riparato. È davvero perso?

Spesso no. Quel messaggio significa che la ricostruzione silenziosa dell'xref che Acrobat effettua è fallita, non che il contenuto sia distrutto. Gli oggetti delle pagine di solito sono ancora nel corpo del file; ciò che è rotto è la tabella dei riferimenti incrociati e il trailer finale. Ricostruire quella tabella a partire dagli oggetti presenti fa di solito riaprire il documento.

Perché un PDF si rompe proprio alla fine?

Un PDF si legge dalla fine: il lettore usa startxref e %%EOF per trovare la tabella xref e poi gli offset per caricare le pagine. Quelle strutture stanno proprio in coda, così un salvataggio o un download interrotti le distruggono per prime, lasciando pagine valide dietro una mappa rotta.

Era a posto, poi una sincronizzazione nel cloud o un trasferimento l'ha rotto. Cosa è successo?

Un trasferimento interrotto può troncare il file (eliminando il trailer e l'indice), e un trasferimento in modalità testo può alterare i byte in modo che gli offset non tornino più. In ogni caso la mappa si rompe mentre buona parte del corpo sopravvive, così una ricostruzione che rifà la tabella a partire dalle posizioni reali degli oggetti può recuperare le pagine.

Il mio PDF viene caricato per essere riparato?

No. Il documento viene letto dal tuo disco e ricostruito nella scheda del tuo browser; non viene trasmesso nulla. Puoi aprire la scheda Rete (Network) e verificare che 0 byte lascino il tuo dispositivo, cosa che conta con contratti, cartelle e bozze che non vorresti veder copiate sul server di qualcun altro.

Correlati: Riparare un PDF · Riparare una cartella di Excel · Verifica che non venga caricato nulla