Creare PDF con LibreOffice mantenendo i caratteri utilizzati
Correggi i font mancanti o sostituiti nei PDF di LibreOffice Writer, scegli il profilo di esportazione corretto e verifica quali font sono incorporati prima della condivisione.
Se disponi di una cartella di file Word, LibreOffice può convertirli con un solo comando. Dalla cartella contenente i file DOCX, crea una cartella di output vuota ed esegui il comando libreoffice --headless --convert-to pdf:writer_pdf_Export --outdir pdf *.docx. Questo utilizza il filtro di esportazione PDF di Writer e lascia i file originali al loro posto.
Utilizzate una nuova cartella di output, verificate che LibreOffice sia installato e controllate i PDF risultanti, anziché considerare l'uscita corretta dal comando come prova che ogni pagina sia a posto. La riga di comando è uno strumento pratico per l'elaborazione in batch; non garantisce una paginazione identica a quella di Microsoft Word né la riparazione di documenti danneggiati.
In Linux, apri un terminale nella directory contenente i file. Crea prima la directory di output:
mkdir -p pdf
libreoffice --headless --convert-to pdf:writer_pdf_Export --outdir pdf *.docx
--headlessViene eseguito senza aprire la normale finestra del desktop. --convert-toSeleziona PDF come formato di destinazione; writer_pdf_Exportspecifica il filtro di esportazione PDF di LibreOffice Writer; e --outdir pdfinvia i risultati nella pdfcartella. La shell si espande *.docxper includere i file corrispondenti prima dell'avvio di LibreOffice. LibreOffice documenta questa sintassi di conversione e il nome del filtro nel suo riferimento ai parametri della riga di comando e nell'elenco dei filtri di conversione dei file .

Il comando jolly è più efficace quando tutti i file DOCX si trovano direttamente all'interno di una cartella di input. Non effettua la ricerca nelle sottocartelle. Su Linux, il pattern è per impostazione predefinita sensibile alle maiuscole/minuscole, quindi *.docxpotrebbe saltare i file che terminano con .DOCX. Se la shell segnala che il pattern non corrisponde, elenca i file e controlla le loro estensioni prima di modificare il comando.
Per i documenti annidati in sottocartelle, un ciclo può preservare la struttura delle directory ed evitare conflitti quando due cartelle contengono un file con lo stesso nome. Impostare inputla struttura ad albero di origine e pdfuna struttura ad albero di destinazione separata:
input="$PWD/input"
output="$PWD/pdf"
profile="file:///tmp/lo-batch-profile"
find "$input" -type f -iname '*.docx' -print0 |
while IFS= read -r -d '' file; do
rel="${file#"$input"/}"
dest="$output/$(dirname "$rel")"
mkdir -p "$dest"
libreoffice --headless \
-env:UserInstallation="$profile" \
--convert-to pdf:writer_pdf_Export \
--outdir "$dest" "$file"
done
-print0e la corrispondenza read -d ''gestisce in modo sicuro gli spazi e la maggior parte dei caratteri insoliti nei nomi dei file. Il profilo separato impedisce a questo processo batch di entrare in conflitto con una sessione desktop di LibreOffice che utilizza lo stesso profilo utente; consultare i documenti di riferimento per l'avvio di LibreOffice -env:UserInstallation. Utilizzare un percorso di profilo univoco se due processi di conversione possono essere eseguiti contemporaneamente. Mantenere la struttura ad albero di output al di fuori della struttura ad albero di input in modo che la ricerca non si sposti nei risultati precedenti.

Un comando potrebbe sembrare terminare senza produrre file oppure potrebbe connettersi a un processo LibreOffice già in esecuzione. Un'istanza desktop in esecuzione può contenere il profilo utente predefinito. Chiudi LibreOffice e riprova; per i processi non presidiati, l' -env:UserInstallationopzione isolata nell'esempio ricorsivo è una misura di sicurezza utile. Assegna a ogni processo simultaneo una propria directory di profilo e attendi che un processo termini prima di riutilizzare quella directory.
Se il comando indica libreoffice: command not found, installa LibreOffice tramite la sorgente di pacchetti supportata dal tuo sistema operativo oppure usa il percorso completo dell'eseguibile. Su Windows PowerShell, un semplice batch non ricorsivo può essere scritto come:
$src = (Resolve-Path .).Path
$out = Join-Path $src 'pdf'
New-Item -ItemType Directory -Force -Path $out | Out-Null
$soffice = "$env:ProgramFiles\LibreOffice\program\soffice.exe"
Get-ChildItem -File -Filter *.docx | ForEach-Object {
& $soffice --headless --convert-to pdf:writer_pdf_Export --outdir $out $_.FullName
}
Modificare $sofficeil comando se LibreOffice è installato in un'altra posizione. Eseguire il comando dalla cartella di origine e utilizzare una nuova cartella di output. PowerShell Get-ChildItem -Filecerca solo in quella cartella a meno che non venga richiesta la ricorsione; i processi ricorsivi necessitano di un ciclo che crei una cartella di destinazione corrispondente per ogni percorso di origine.
La conversione in PDF preserva il layout che LibreOffice è in grado di interpretare, ma Word e LibreOffice non sempre impaginano i documenti in modo identico. Font mancanti, oggetti incorporati non supportati, modifiche rilevate, campi o tabelle complesse possono alterare le interruzioni di riga e il conteggio delle pagine. Per una tipografia coerente, installare i font necessari ai documenti prima della conversione. I file protetti o crittografati con password potrebbero dover essere aperti con credenziali o gestiti manualmente, e un file DOCX danneggiato potrebbe non essere convertito correttamente anche se altri file vengono convertiti.
Non eseguire ripetutamente il processo batch in una cartella contenente file PDF importanti con nomi identici. Utilizza una destinazione pulita o esegui prima un backup dei file esistenti. Se un file è particolarmente importante, aprilo in LibreOffice Writer e controllalo prima di fare affidamento sul PDF. Se la paginazione esatta di Microsoft Word è un requisito contrattuale, LibreOffice potrebbe non essere il motore di rendering adatto; confronta un esempio rappresentativo nell'applicazione che definisce il layout richiesto.

Innanzitutto, confronta il numero di file sorgente con il numero di file PDF. Su Linux, questi comandi contano i file in una cartella piatta:
find . -maxdepth 1 -type f -iname '*.docx' | wc -l
find pdf -maxdepth 1 -type f -iname '*.pdf' | wc -l
Per la conversione ricorsiva, confronta invece i conteggi sull'intero albero di input e output. Un conteggio corrispondente è un utile filtro, ma non una garanzia di qualità: un documento danneggiato o un duplicato sovrascritto potrebbero comunque richiedere una revisione. Controlla il log del terminale per eventuali errori e verifica che ogni nome file previsto sia presente nella destinazione.
Esaminate i PDF rappresentativi con un visualizzatore di PDF. Controllate la prima e l'ultima pagina, il numero di pagine, i margini, le tabelle, le intestazioni e i piè di pagina, le immagini e le eventuali interruzioni di pagina rilevanti. Se pdfinfoinstallato, pdfinfo pdf/Report.pdfil visualizzatore fornisce metadati come il numero di pagine e le dimensioni della pagina; non valuta la fedeltà visiva. Riconvertite i PDF solo dopo aver corretto un problema specifico, ad esempio installando un font mancante o modificando la directory di output, quindi rivedete i PDF interessati.

Il batch è pronto quando tutti i file PDF previsti sono presenti, si aprono senza errori e le pagine importanti mantengono il layout previsto. Per archivi di grandi dimensioni, conservare i file DOCX originali e i log di conversione in modo da poter individuare un singolo errore e rieseguire il processo senza sovrascrivere output non correlati.
Correggi i font mancanti o sostituiti nei PDF di LibreOffice Writer, scegli il profilo di esportazione corretto e verifica quali font sono incorporati prima della condivisione.
Converti una cartella di documenti Word in PDF con i comandi di LibreOffice, gestisci in modo sicuro le cartelle annidate e verifica il risultato prima di condividerlo.
Imposta un modello personalizzato di LibreOffice Writer come predefinito, in modo che i nuovi documenti si aprano con gli stili e il layout di pagina che preferisci.
Installa un runtime Java compatibile, abilitalo in LibreOffice e risolvi i problemi relativi a un elenco JRE vuoto senza modificare impostazioni non correlate.
Crea un piccolo container LibreOffice, converti documenti Office senza interfaccia grafica e verifica l'output PDF limitando l'accesso ai file host.
Riduci le dimensioni eccessive dei file di presentazione di LibreOffice comprimendo le foto incorporate, scegliendo impostazioni di immagine appropriate e verificando la qualità delle diapositive prima della condivisione.
Prima di stampare un documento di dimensioni personalizzate, assicurati che le dimensioni della pagina di LibreOffice corrispondano a quelle della tua stampante, verifica i margini di stampa e correggi il ridimensionamento.
Sostituisci gli accessi ripetuti alle celle con letture e scritture di intervallo in blocco, quindi confronta i risultati e proteggi le formule in cartelle di lavoro Calc di grandi dimensioni.
Dividi un lungo manoscritto in capitoli, assemblali in Writer e mantieni coerenti stili, contenuti e controlli di esportazione.
Utilizza l'opzione PostgreSQL diretta di Base per inserire i dettagli del tuo server, accedere, salvare un file di connessione ODB e risolvere i problemi di accesso più comuni.