Home
» Come fare
»
Aggiungere font al server di documenti ONLYOFFICE: Docker vs Linux
Aggiungere font al server di documenti ONLYOFFICE: Docker vs Linux
Per aggiungere font personalizzati a ONLYOFFICE Document Server, posiziona i file dei font con licenza in una directory accessibile al server ed esegui il comando /usr/bin/documentserver-generate-allfonts.sh. Per le implementazioni Docker, una directory di font montata tramite bind è generalmente preferibile alla copia dei file in un container in esecuzione, perché persiste anche dopo la ricreazione del container.
Il metodo di installazione corretto dipende da dove viene eseguito ONLYOFFICE Docs, dalla frequenza con cui lo si ricompila e dalla possibilità di accettare una breve interruzione del servizio durante l'aggiornamento del catalogo dei font.
Il menu a tendina dei caratteri dell'editor elenca le famiglie di caratteri disponibili; i caratteri mancanti potrebbero essere sostituiti con un carattere alternativo fino all'aggiornamento del catalogo dei caratteri del server.
Scegli un metodo di installazione dei caratteri
Metodo
Migliore adattamento
Compromesso
Docker bind mount
Container di produzione gestiti con Docker Compose
Richiede la modifica della configurazione del container e potrebbe richiedere la ricreazione
docker cpnel contenitore in esecuzione
Test rapido o aggiunta temporanea
I file possono scomparire quando quel contenitore viene sostituito.
Installa i font sull'host Linux che esegue il pacchetto nativo Document Server.
Installazione in stile DEB/RPM senza Docker
Richiede l'amministrazione a livello di server e rimane legato a quell'host
Il documento ufficiale di Docker sulle istruzioni per i font spiega come copiare i file e ricostruire l'elenco dei font. La documentazione di Docker sul bind mount spiega perché il montaggio di una cartella host dedicata rende i file disponibili anche in caso di sostituzione del container. Si tratta di diverse opzioni di implementazione, non di diversi formati di font.
Prepara i file dei caratteri e conferma il server di destinazione
1. Identificare la distribuzione ONLYOFFICE attiva
Eseguire docker pssull'host Docker se l'editor viene eseguito in container. Trovare il nome del container del Document Server nella NAMEScolonna; gli esempi seguenti utilizzano onlyoffice-documentserver. Sostituire tale valore se il proprio è diverso. Un'integrazione con Nextcloud o ownCloud normalmente non modifica il fatto che i font devono essere installati sul server ONLYOFFICE Docs, non solo sul server di archiviazione o sul computer che visualizza il documento.
docker ps
Prima di copiare i font o rigenerare il catalogo, individua il container Document Server nell'elenco Docker.
2. Raccogli i file dei caratteri con licenza
Scegliete famiglie di font complete e con licenza valida, inclusi i pesi e gli stili effettivamente utilizzati nei vostri documenti. ONLYOFFICE elenca i formati TrueType e OpenType come .ttfe .otf, oltre ad altre estensioni di font supportate, nella sua documentazione sui font per Linux . Per una prima implementazione senza problemi, utilizzate normali file TTF o OTF e verificate l'utilizzo consentito sul server e sul client nella licenza del font.
Per l'esempio con Docker, posiziona i file /srv/onlyoffice/custom-fontsnell'host Docker. I nomi dei file di esempio Inter-Regular.ttfsono puramente Inter-Bold.ttfillustrativi; utilizza i file che hai il diritto di installare.
Eseguite questi comandi dalla directory contenente i file dei font. Verificate il contenuto della cartella prima di continuare. Su un sistema gestito, adattate la proprietà e le autorizzazioni ai criteri di sicurezza anziché rendere la cartella scrivibile da tutti.
Conservare tutte le varianti dei caratteri in una directory dedicata, in modo che possano essere montate nel contenitore del server dei documenti.
Consigliato per Docker: montare la directory dei font in modo permanente
3. Aggiungere un bind mount al servizio Compose esistente
Nel file Compose corrente, individua il servizio che esegue l'immagine ONLYOFFICE Document Server. Aggiungi la seguente voce all'elenco esistente volumes; mantieni gli altri volumi, porte, credenziali e variabili d'ambiente già configurati:
Il percorso di origine si trova sull'host Docker; la destinazione è all'interno del container. Il :rosuffisso limita le scritture del container alla directory dei font. Monta la customdirectory dedicata anziché sostituire l'intera /usr/share/fontsstruttura delle directory, operazione che potrebbe nascondere i font forniti dall'immagine. Il Dockerfile ufficiale di ONLYOFFICE dichiara la directory dei font TrueType personalizzati come volume nelle sue immagini Community ed Enterprise.
Esamina la configurazione di Compose rivista, quindi applicala docker compose up -ddalla directory del progetto. Questa operazione potrebbe ricreare il servizio: pianifica la modifica in un momento in cui gli editor possono chiudere i documenti in sicurezza. Se utilizzi una docker rundistribuzione standard, aggiungi l'argomento di sola lettura equivalente --mount type=bind,src=/srv/onlyoffice/custom-fonts,dst=/usr/share/fonts/truetype/custom,readonlydurante la ricreazione del contenitore.
Una voce di volume dedicata di sola lettura mantiene i file dei caratteri personalizzati separati dall'immagine del contenitore.
4. Verificare che il contenitore possa visualizzare i file dei caratteri
Dopo l'avvio del servizio, ispeziona la directory montata e, se disponibile, l'elenco di fontconfig. Il nome della famiglia riportato da fontconfig potrebbe differire dal nome del file.
Per i font Inter di esempio, il secondo comando dovrebbe elencare una famiglia corrispondente se fontconfig li rileva. Se i file esistono ma la famiglia non viene visualizzata, controlla i permessi ed esegui docker exec onlyoffice-documentserver fc-cache -f, quindi controlla fc-listdi nuovo. Il solo rilevamento da parte di fontconfig non popola il menu dell'editor ONLYOFFICE.
Verificare la configurazione dei caratteri (fontconfig) aiuta a distinguere un file di font illeggibile o mancante da un catalogo di font ONLYOFFICE obsoleto.
5. Rigenera il catalogo dei font ONLYOFFICE
Con i file presenti all'interno del contenitore, esegui lo script di generazione dei font del server dei documenti:
ONLYOFFICE utilizza questo passaggio per aggiornare i dati e le risorse di selezione dei font. Può influire sui servizi dell'editor attivi, quindi è consigliabile eseguirlo durante un periodo di manutenzione appropriato. La variabile d'ambiente Docker documentata GENERATE_FONTSè impostata di default su true, rigenerando i dati dei font all'avvio del container; questo è utile dopo un riavvio, ma non sostituisce l'installazione dei file in una posizione permanente.
Non modificare GENERATE_FONTSo forzare un riavvio solo per mascherare un volume mancante. Verifica prima che i file previsti siano effettivamente montati.
Eseguire lo script di generazione dei font del Document Server dopo che il contenitore ha avuto accesso ai nuovi file dei font.
Alternative: copia Docker temporanea o Linux nativo
6. Utilizzare una copia diretta del contenitore per un test di breve durata
Se non è possibile modificare Compose immediatamente, copiare un file nel container corrente e ricostruire il catalogo. Questo segue l'approccio Docker documentato da ONLYOFFICE ed evita di ricostruire il container per un test rapido:
Questo metodo è comodo per la risoluzione dei problemi, ma meno affidabile come piano di implementazione. Un aggiornamento dell'immagine o un nuovo container possono rimuovere il file copiato; il riavvio dello stesso container non equivale a una ricreazione . Se il font è necessario per il lavoro in corso, è consigliabile promuovere un test riuscito a un bind mount o a un'immagine personalizzata gestita separatamente.
7. Installare direttamente su un server di documenti Linux non containerizzato
Per un'installazione nativa del pacchetto Linux, posizionare i file nella directory dei font di sistema del server ed eseguire lo stesso script di rigenerazione su tale host. Questo comando non deve essere eseguito sul desktop di un utente normale.
Questo approccio lascia i file dei font nell'installazione Linux anziché in un volume Docker, ma gli amministratori devono conservarli nella gestione della configurazione o nei backup quando ricostruiscono l'host. Consultare la procedura ufficiale ONLYOFFICE Linux per il server con pacchetto installato. Se più di un nodo Document Server serve i vostri editor, predisponete la stessa famiglia e le stesse varianti su ciascun nodo.
Su un server di documenti Linux nativo, installa il font su quel server e rigenera il suo catalogo di font senza utilizzare comandi Docker.
8. Verificare il carattere in un documento reale
Apri una nuova sessione di modifica nell'applicazione connessa al Document Server. In un file DOCX di prova, seleziona la famiglia di caratteri installata dal menu a tendina dei font, inserisci una riga di testo normale, una di testo in grassetto e dei caratteri non inglesi rappresentativi, se il font è destinato all'uso multilingue. Salva, chiudi, riapri ed esporta in PDF. Confronta la larghezza del testo, l'a capo automatico, la copertura dei glifi e le varianti grassetto/corsivo con un documento di riferimento noto.
Se un font non è presente nel menu a tendina, verificare il percorso del server, l'output di fc-liste il comando di generazione del catalogo, in quest'ordine. Se la famiglia appare ma il layout si sposta, verificare che il documento richieda la famiglia esatta e che esistano i pesi necessari; altrimenti l'editor potrebbe sostituirla con un altro font. La sola installazione di un font sul desktop di un utente non lo aggiunge al server.
C'è un'avvertenza specifica per la versione del browser: le istruzioni di ONLYOFFICE relative ai font indicano di cancellare la cache del browser e riaprire l'editor nelle versioni 8.1.3 e precedenti . Nelle versioni successive questo passaggio aggiuntivo non è necessario. Se la tua installazione è precedente, utilizza la procedura di cancellazione della cache descritta nella documentazione prima di indagare su cause più complesse.
Verifica che il tipo di carattere sia presente nel menu, quindi riapri un documento salvato e confronta l'andata a capo e i glifi visualizzati.
La correzione è confermata quando la famiglia di caratteri personalizzata rimane selezionabile dopo aver riaperto l'editor, il documento salvato viene visualizzato correttamente e, nel caso di Docker, i caratteri sono ancora presenti dopo aver ricreato il servizio dalla stessa configurazione. Se uno di questi controlli fallisce, è consigliabile esaminare quel livello anziché copiare ripetutamente i caratteri nel container.