Qualcuno ha un modo semplice per calcolare quanti punti su una pagina consumano un pezzo di testo in un particolare tipo di carattere e dimensione? (facile = linee minime di codice + computazionalmente convenienti). Zend_Pdf non sembra avere una funzione che lo fa, ad eccezione di alcune chiamate molto costose per ogni personaggio a getGlyphForCharacter(), getUnitsPerEm() e getWidthsForGlyph().Zend_Pdf calcolo della lunghezza della stringa di testo nel carattere corrente per il ritorno a capo
Sto generando un PDF multipagina con più tabelle su ogni pagina e necessario avvolgere il testo all'interno delle colonne. Ci vogliono già alcuni secondi per crearlo e non voglio che duri troppo a lungo o dovrò iniziare a fare scherzi con le attività in background o le barre di avanzamento ecc.
L'unica soluzione che ho trovato è pre-calcolare la larghezza (in punti) di ciascun carattere in ogni dimensione di carattere utilizzata, quindi aggiungendoli sopra ogni stringa. Ancora piuttosto costoso.
mi sto perdendo qualcosa? O hai qualcosa di più semplice?
grazie!
Ho usato anche questo. Funziona come pubblicizzato. – jason
sembra buono. Ho un vocabolario fisso di circa 200 frasi, quindi potrei usare il codice sopra (leggermente adattato) per precalcolare e mettere in cache le stringhe di parole avvolte. Il pdf viene generato solo una volta (alla prima visualizzazione) e poi anche nella cache. Ciò dovrebbe comportare quasi nessuna penalizzazione delle prestazioni e alcune formattazioni molto più belle. Grazie per l'aiuto! – Steve