Domanda

Un paio di anni fa, un graphic designer ha rinnovato il nostro sito Web. I suoi risultati sembravano fantastici, ma sfortunatamente ha introdotto un nuovo font non supportato dal browser web.

All'inizio ero tipo " Cosa!?! " ... poiché la maggior parte dei nostri contenuti è dinamica e non c'era modo reale di pre-realizzare tutte le immagini. C'era anche il problema di più lingue (poiché sapevamo che lo spagnolo era all'orizzonte).

In ogni caso, ho deciso di creare alcune classi per generare automaticamente immagini tramite GDI + e programmarle nella cache a livello di programmazione, se necessario. Questo ha risolto la maggior parte dei nostri problemi iniziali. Tuttavia, ora che il nostro carico è aumentato drasticamente, c'è stato un drenaggio sul nostro server UI.

Ora alla domanda ... Sto cercando di sostituire la maggior parte delle immagini GDI + dinamiche con un carattere standard per browser web. Sto pensando di conservare alcune delle immagini GDI + renderizzate e di metterle in un file resx, ma ho intenzione di sostituirle con caratteri Tahoma o Arial tramite asp: Labels.

Quale hai trovato per essere una soluzione di immagine localizzata migliore?

  • Incorporamento delle immagini nel resx
  • Aggiungendo solo l'URL dell'immagine nel resx
  • Qualche altra soluzione

La mia preoccupazione principale è limitare l'elaborazione sul server UI. In tal caso, aggiungere l'URL dell'immagine al resx sarebbe una soluzione migliore rispetto all'effettiva incorporazione dell'immagine nel resx?

È stato utile?

Soluzione

Dovresti solo generare ogni immagine una volta, quindi salvarla sul disco rigido. Il carico sul tuo sito non dovrebbe aumentare la quantità di elaborazione che devi fare. Detto questo, sembra quasi che tu stia usando immagini per cose che non dovresti essere. Se ci sono così tante immagini diverse che non riesci a tenere il passo con la loro generazione, è tempo di abbandonare le tue immagini fantasiose per cose che non dovrebbero essere immagini e tornare al testo semplice. Se l'utente non ha installato il carattere specificato, dovrebbe semplicemente ricorrere a un carattere simile. CSS ha un buon supporto per questo.

Altri suggerimenti

vedi la mia risposta qui

Questo può essere fatto manualmente o usando una sorta di sistema automatizzato (CMS).

Il metodo di base è memorizzare nella cache le immagini in una struttura di directory specifica della lingua e quindi scrivere un gestore HTTP che rimuova efficacemente il livello di directory aggiuntivo. ad esempio:

/images/
    /en/
        header1.gif
    /es/
        header1.gif

Nel tuo markup o CSS faresti semplicemente riferimento /images/header1.gif. Il hander http utilizza quindi la sessione (se la lingua è specifica dell'utente) o la configurazione (se specifica del sito) per scegliere da quale directory servire l'immagine.

Fornisce una linea pulita tra codice e contenuto e consente la memorizzazione nella cache lato client. Resx è ottimo per stringhe piccole ma preferisco di gran lunga un sistema come questo per immagini e contenuti più grandi. soprattutto sul Web, dove in genere è facile cambiare le immagini.

Ho avuto lo stesso problema qualche anno fa e il nostro team di interfaccia ci ha indicato SIFr. http://wiki.novemberborn.net/sifr/

Hai incorporato il tuo carattere in un filmato Flash e poi hai usato SIFr JavaScript per convertire dinamicamente il tuo testo nel tuo carattere. Poiché è lato client, non vi è alcun impatto sul lato server.

Se l'utente non ha Flash o JavaScript installati, ottiene il carattere web-friendly più vicino.

Come bonus aggiuntivo: poiché i tuoi contenuti sono ancora di testo - Google può cercare e indicizzare i contenuti - un'enorme ottimizzazione SEO.

A causa della memorizzazione nella cache, preferirei aggiungere solo l'URL dell'immagine nel resx. La memorizzazione nella cache è molto migliore per i contenuti statici (file semplici i-e) che per i contenuti generati.

Sarei molto cauto nel mettere del testo in immagini, il CSS con un appropriato fallback della famiglia di caratteri è probabilmente la risposta corretta sull'accessibilità e sui buoni motivi MVC.

Dove è veramente richiesta la generazione penso che Kiblee e JayArr descrivono buone soluzioni

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top