La cosa che sorprende le persone sulla conversione di un documento è che non c'è pagina nel file da convertire. Un .docx contiene paragrafi, stili e una nota sul formato carta e la pagina che vedi sullo schermo viene prodotta da Word Doing Layout nel momento in cui lo apri. Qualsiasi altro programma deve ripetere quel layout, con i propri font e la propria rottura di linee, motivo per cui due convertitori danno due conteggi di pagine diversi da un file. Capire che un fatto spiega ogni sorpresa nell'output, inclusa quella in cui un'eliminazione tracciata che pensavi fosse scomparsa si presenta nel PDF.
tl; dr: Un .docx è una cerniera di XML che trasporta una struttura reale, quindi i titoli, i paragrafi e gli elenchi arrivano correttamente piuttosto che essere dedotti. Ciò che non arriva è l'aspetto: font, colonne, tabelle, stop di tabulazione, numerazione e spaziatura esatta in parti Live in parti Un convertitore deve implementare un elaboratore di testi in onore. Misurato su input reale, le eliminazioni tracciate vengono eliminate in modo che un documento modificato venga letto come la sua formulazione finale, un elenco numerato torna puntato, una tabella diventa le sue celle in ordine di lettura e una scheda diventa uno spazio. Render di testo dell'Europa occidentale; cirillico, greco, cjk ed emoji no, perché i caratteri PDF incorporati sono Winansi. la Convertitore da parola a PDF Fa la composizione nel tuo browser.
Cosa c'è dentro un .docx?
Una cerniera di parti XML e una di esse contiene tutto ciò che conta qui.
Apri qualsiasi .docx con uno strumento di archivio e troverai word/document.xml Accanto a un manifest, una parte di relazioni e di solito stili, caratteri, temi, definizioni di numerazione e impostazioni. Il formato è ECMA-376, con proprio di Microsoft Note di implementazione coprendo ciò che Word fa sopra.
La parte del documento è una sequenza di <w:p> elementi. Ognuno è un paragrafo, con proprietà opzionali che dicono quale stile utilizza e se appartiene a un elenco, e al suo interno una serie di esecuzioni che portano il testo effettivo dentro <w:t>.
Questo è davvero meglio di quello che offre un PDF. In un pdf un paragrafo deve essere dedotto dallo spazio verticale tra le righe, dove è dove la conversione nell'altra direzione Perde colonne e tabelle. Qui un paragrafo è un paragrafo perché il file lo dice e un'intestazione è un'intestazione perché il paragrafo nomina uno stile di intestazione.
Il fermo è nelle parti che un convertitore non viene letto.
Perché il risultato non sembra come in Word?
Perché l'aspetto è distribuito su parti che ammontano a un elaboratore di testi e il convertitore imposta invece nuovamente il testo.
Il testo è nella parte del documento. Il motivo per cui il tuo testo appare in Calibri a 11 punti con una spaziatura di 1,08 linee è in styles.xml. Il motivo per cui la tua lista recita "1., 2., 3." piuttosto che "A., B., C." è in numbering.xml. Il tema che fornisce il colore dell'intestazione è di nuovo in un'altra parte e le proprietà della sezione regolano i margini, le colonne e le dimensioni della pagina per sezione.
Onorando tutto ciò sta costruendo un motore di layout con la semantica di Word. Quello che fa invece questo strumento è leggere la struttura e disporla in modo pulito: volte romano per il corpo del testo, volte in grassetto romano per le intestazioni, un margine di 56 punti, una spaziatura di 1,4 linee, nella dimensione della pagina che scegli.
Quindi l'output è un documento leggibile e correttamente ordinato che non assomiglia all'originale. Questo è un vero limite e vale la pena affermare chiaramente piuttosto che seppellire, perché le persone che cercano questa conversione cadono in due gruppi e solo uno di loro è servito. Se vuoi il testo come PDF che chiunque può aprire, questo è giusto. Se vuoi QUELLA PAGI, con i suoi caratteri e la sua spaziatura, continua a leggere nella sezione sull'esportazione di Word.
Cosa sopravvive alla conversione?
Struttura e lettura dell'ordine, in modo affidabile. Ecco l'elenco completo, misurato rispetto al codice anziché assunto.
| elemento | Risultato |
|---|---|
| paragrafi | conservato, nell'ordine del documento |
| intestazioni | Conservato, dimensionato per livello, imposta in grassetto |
| Elenca gli elementi | Testo conservato, indicatore sostituito da un punto elenco |
| celle di tabella | conservati come paragrafi separati in ordine di lettura |
| Eliminazioni tracciate | caduto, poiché Word li mostra |
| Schede e interruzioni di riga | Diventa un unico spazio |
| grassetto, corsivo, colore, font | non trasportato |
| Immagini | non trasportato |
| intestazioni, piè di pagina, numeri di pagina | non trasportato |
| Note a piè di pagina e note di chiusura | non trasportato |
La metà superiore di quel tavolo è il motivo per cui vale ancora la pena fare questa conversione: nulla in essa doveva essere indovinato. La metà inferiore è il prezzo di non implementare Word.
Cosa succede alle modifiche tracciate?
Le delezioni scompaiono, il che è corretto, e il fatto che abbia bisogno di dirlo è la parte interessante.
Un documento modificato con il monitoraggio delle modifiche su Mantiene il testo rimosso nel file, all'interno <w:delText> Dentro a <w:del> elemento. Word sa di non mostrarlo come testo corrente. Un convertitore che cammina ogni nodo di testo non lo fa, a meno che qualcuno non ci abbia pensato.
Misurato su un paragrafo che originariamente recitava "la scadenza è il 31 marzo" ed è stata modificata in "30 aprile":
with the rule: The deadline is 30 April.
without the rule: The deadline is 31 March30 April.
Ogni versione di quella frase che qualcuno abbia mai digitato, corri insieme, senza spazio tra di loro. Su un contratto o una lettera di offerta questo non è un bug cosmetico: pubblica la storia negoziale del documento a chiunque riceve il pdf.
Vale la pena conoscere per se stesso, qualunque sia lo strumento che usi. Se si invia un documento convertito verso l'esterno, verificare che una data o una figura modificate vengano visualizzate una volta anziché due volte.
Cosa succede a una lista numerata?
Ritorna puntato, perché i numeri non sono nel paragrafo.
un paragrafo di elenco porta <w:numPr>, che punta a una definizione di numerazione in un'altra parte. Tale definizione contiene il formato, il valore iniziale, i livelli di indennità e se questo elenco continua a uno precedente. Il paragrafo stesso contiene il testo e nient'altro.
Quindi un convertitore che legge solo la parte del documento sa che il paragrafo è un elemento di elenco e non quale marcatore dovrebbe portare. Il rendering di un punto elenco è l'onesto predefinito:
• First point
• Second point
Ordinary paragraph
Questo è importante quando i numeri hanno un significato. "Vedi il punto 4" in una procedura, o una clausola numerata in un accordo, perde il suo riferimento. Se il tuo documento dipende dalla sua numerazione, questa conversione è quella sbagliata e l'esportazione di Word è quella giusta.
Cosa succede a un tavolo?
Le cellule sopravvivono, la griglia no.
Una cella di tabella contiene <w:p> elementi come qualsiasi altra cosa, quindi il testo arriva come ordinario paragrafo in ordine di lettura. Una tabella a due colonne di regioni e cifre viene fuori come:
Region | Q2 | EMEA | 412
Quattro paragrafi, uno dopo l'altro, senza che nulla registrasse che i primi due fossero una riga di intestazione. Trasportare la tabella significa trasportare larghezze di colonna, struttura di righe, celle e bordi uniti, quindi disporre una griglia che impagina, che è uno strumento diverso e molto più grande.
Questo è lo stesso commercio in entrambe le direzioni. PDF a Word appiattisce una tabella perché il PDF non ne ha mai avuto uno; Word to PDF lo appiattisce perché ricostruirne uno è un motore di layout. Il consiglio onesto in entrambi i casi: se il tavolo è il punto, screenshot o mantieni l'originale.
Perché il mio layout allineato alla scheda è crollato?
Poiché una scheda è un'istruzione di posizione e senza tabulazioni non c'è nessun posto dove inviarla.
<w:tab/> significa "Avanzamento della scheda successiva" e le fermate sono definite nelle proprietà del paragrafo o ereditate dal suo stile. Un convertitore che sta stendendo il testo con i propri margini non ha un arresto significativo a cui saltare, quindi la scheda diventa un singolo spazio. Lo stesso vale per <w:br/>:
input: Name <tab> Value <br> Next line
output: "Name Value Next line"
Chiunque abbia creato un elenco a due colonne, un blocco di firma o un semplice sommario con le schede perde completamente l'allineamento. È uno dei modi più comuni in cui un documento convertito sembra sbagliato ed è invisibile nella fonte: il file sembra paragrafi ordinari perché è quello che è.
Se l'allineamento è importante, una tabella reale nel documento di origine non converte meglio, ma almeno fallisce più ovviamente.
Quali caratteri non possono essere visualizzati i caratteri PDF integrati?
Qualsiasi cosa al di fuori dell'Europa occidentale latina, e il fallimento era in silenzio su quale personaggio fosse in colpa.
Lo standard PDF definisce quattordici caratteri di base che ogni lettore ha, e sono codificati con WinansiEncoding, un set di 256 caratteri documentato nell'allegato D del la specifica del pdf. Usarli significa che nessun font deve essere incorporato, il che mantiene piccolo l'output e significa che l'alfabeto è fisso.
testato con PDF-lib, la biblioteca che fa il disegno:
| Testo | Risultato |
|---|---|
Quarterly report |
rendering |
"Revenue" rose, he'd said con citazioni ricci |
rendering |
| una frase che usa em trattini, u+2014 | rendering |
Chiffre d'affaires réalisé en Août |
rendering |
Total: €1,249.50 |
rendering |
Отчёт за квартал |
Falli: WinAnsi cannot encode "О" (0x041e) |
Αποτελέσματα |
Falli: WinAnsi cannot encode "Α" (0x0391) |
季度报告 |
Falli: WinAnsi cannot encode "季" (0x5b63) |
四半期報告 |
Falli: WinAnsi cannot encode "四" (0x56db) |
Revenue up 🚀 |
Falli: WinAnsi cannot encode "🚀" (0x1f680) |
Francese, tedesco, spagnolo, portoghese, italiano e le lingue nordiche vanno bene, così come l'euro, le citazioni ricci e una corsa EM. Russo, greco, cinese, giapponese, coreano, arabo, ebraico, hindi e ogni emoji non lo sono.
Lo strumento ora nomina il carattere nell'errore anziché dire che il documento non può essere convertito, perché "rimuovere questo carattere" è un consiglio e "qualcosa è andato storto" non lo è. Un documento in uno di quegli script ha bisogno di un convertitore che incorpori un font che lo copre, il che significa un PDF più grande e uno strumento diverso.
Perché un file .doc viene rifiutato?
Perché .doc e .docx sono formati diversi che condividono tre lettere.
Un .docx è uno zip di XML, introdotto nel 2007. Un .doc è un file binario composto in un layout risalente ai primi anni Novanta, con il testo interfogliato tra le strutture che un parser deve camminare. Leggere uno non è una variazione nella lettura dell'altro, ma un'implementazione separata.
Quindi il convertitore controlla l'estensione e lo dice, invece di fallire su uno zip illeggibile:
| File | Cosa dice |
|---|---|
.doc |
questo è il formato più vecchio. Aprilo e salva prima come .docx |
.rtf, .odt, .pages |
non un documento di Word. Esporta come .docx |
.pdf |
già un pdf; usa l'altra direzione per un file modificabile |
L'apertura di un .doc in Word, LibreOffice o Google Docs e il salvataggio come .docx richiede alcuni secondi ed è una conversione che quei programmi fanno bene.
Come sono le dimensioni delle intestazioni e quanto vanno in profondità?
Per livello, audace, con tutto oltre il terzo livello trattato come il terzo.
Il nome dello stile viene letto dal paragrafo e normalizzato, perché entrambe le grafie esistono in natura. La parola scrive Heading1; diversi generatori di documenti scrivono heading 1. entrambi si risolvono allo stesso livello, e Title viene trattato come livello uno.
| stile nel file | Livello utilizzato |
|---|---|
Title, Heading1, heading 1 |
1 |
Heading2 |
2 |
Heading3 |
3 |
Heading4 da parte a parte Heading9 |
3 |
ListParagraph, BodyText, qualsiasi altra cosa |
corpo del testo |
Tre livelli visivi sono un punto di arresto deliberato. Un quarto livello distinguibile dal terzo richiede un altro passo di dimensione, che inizia a scontrarsi con il corpo del testo, o un peso o un cambiamento di stile che i caratteri di base non forniscono.
Quante pagine sarà il PDF?
Non il numero che ti ha mostrato la parola e la differenza non è un bug.
L'interruzione di riga dipende dal carattere, quindi lo stesso paragrafo in Times Roman a 12 punti occupa un numero di righe diverso rispetto a Calibri a 11. I margini differiscono. La spaziatura della linea è diversa. Tutto ciò che decide dove finisce una linea è cambiato, quindi l'impaginazione cambia con essa.
In una corsa misurata, un documento di un'intestazione e dieci paragrafi di una quarantina di parole ciascuno disposti in due pagine A4: 39 righe sulla prima e 2 sulla seconda, con l'intestazione impostata a 20,4 punti in grassetto contro il corpo del testo a 12 punti.
La conseguenza pratica è che i riferimenti alla pagina si interrompono. "Come descritto a pagina 7" in un documento convertito può ora essere pagina 6 o pagina 8. Un documento che fa riferimento a una propria pagina dovrebbe essere esportato da Word, dove il layout è quello contro cui sono stati scritti i riferimenti.
Quando dovresti invece usare l'esportazione di Word?
Ogni volta che l'aspetto o l'impaginazione fa parte del contenuto. Questo è un elenco più breve di quello che sembra, ma gli elementi su di esso contano.
| Usa l'esportazione di Word | Usa un convertitore |
|---|---|
| Un documento progettato: carta intestata, CV, rapporto con branding | Un documento di testo normale di cui hai bisogno come PDF |
| qualsiasi cosa con tabelle, immagini, intestazioni o piè di pagina | note, un articolo, una bozza, una trascrizione |
| clausole numerate o pagine di riferimenti incrociati | Qualsiasi documento in cui la lettura dell'ordine sia tutto ciò di cui hai bisogno |
| un documento in uno script non latino | un documento che preferiresti non caricare da nessuna parte |
Il file di Word, salva come, il PDF è una vera esportazione: lo stesso motore di layout che ha disegnato la pagina scrive il PDF, quindi quello che vedi è quello che ottieni. Niente in un browser corrisponde a quello, perché nulla in un browser ha il motore di layout di Word.
Il caso per la conversione è l'ultima riga di quella tabella, oltre a non avere parole a portata di mano.
Perché questo viene eseguito nel browser?
Poiché i documenti sono i file più personali che le persone convertono e questa conversione non ha bisogno di nulla che un server abbia.
Leggere uno zip, analizzare XML e disegnare testo sono tutte cose che un browser fa in modo nativo. Il file viene letto dal tuo disco nella scheda, decompresso lì, disposto lì, scritto in un pdf lì e restituito come download. Nessuna richiesta porta il documento e nessuna copia viene lasciata da nessuna parte.
I documenti in questione sono contratti, CV, lettere mediche, bozze legali e dissertazioni. L'alternativa convenzionale li carica su un servizio, li converte su una macchina di cui non sai nulla e li mantiene per un certo periodo descritto in una politica che nessuno legge.
I limiti sono onesti: solo testo dell'Europa occidentale, nessuna immagine, nessuna formattazione oltre a titoli e punti elenco. Sono visibili prima di iniziare piuttosto che scoperti in seguito, che è il commercio che vale la pena fare quando l'alternativa è un PDF dall'aspetto più bello di un documento che non controlli più.



