Ho un grafico pulsante con dimensioni 300 * 90.How deve essere le dimensioni per hdpi/MDPI/ldpi? Graziedimensioni grafici per hdpi/ldpi/MDPI
risposta
Google suggests utilizzando
3 : 4 : 6 : 8 : 12 : 16
rapporti di scala per
ldpi : mdpi : hdpi : xhdpi : xxhdpi : xxxhdpi
conseguenza.Esempio:
- 36x36 a bassa densità
- 48x48 per media densità
- 72x72 ad alta densità
- 96x96 per extra-alta densità
- 144x144 per extra-extra-alta densità
- 192x192 per extra-extra-extra-alta densità (launcher icon only)
Nel tuo esempio, se le dimensioni dei pulsanti indicati sono per hdpi, dimensioni corrette dovrebbero essere:
- 150x45 ldpi
- 200x60 mdpi
- 300x90 hdpi
- 400x120 xhdpi
- 600x180 xxhdpi
Solo un'aggiunta, ldpi: mdpi: hdpi: xhdpi: 'xxhdpi' = 3: 4: 6: 8:' 12' –
Grazie, lo aggiungerò non appena Google lo documenterà. –
Ho calcolato questo rapporto dalle icone ic_launcher che Android sdk genera in ciascuna cartella di densità. Non è ancora documentato da nessuna parte, ma è quasi autenticato :-) –
Dipende da quello schermo del dispositivo dimensioni avete progettato che grafica contro. Se si desidera visualizzare come 300x90 su un (HVGA) tela 320x480, quindi i vostri dimensioni in pixel sono corrette per i dispositivi MDPI, e si avrebbe bisogno le seguenti immagini:
- LDPI: 225x68px
- MDPI: 300x90px
- HDPI: 450x135px
LDPI è il 75% della scala MDPI, e HDPI è 150% della scala MDPI. Se avete progettato quelle dimensioni grafiche su un (WVGA) tela 480x800, per esempio, allora le vostre dimensioni sono già corrette per HDPI, ed è necessario scalare gli altri due verso il basso da lì:
- LDPI: 150x45px
- MDPI: 200x60px
- HDPI: 300x90px
Speranza che aiuta!
Formula completa per creare tutte le immagini della cartella risorse
In primo luogo si deve decidere per quale DPI si sta creando immagini per, una volta che avete deciso e ha creato le immagini quindi utilizzare il seguente secondo codice con Google Guide Lines
public class DPICalculator {
private final float LDPI = 120;
private final float MDPI = 160;
private final float HDPI = 240;
private final float XHDPI = 320;
private final float BASE_DPI = MDPI;
public static void main(String[] args) {
DPICalculator cal = new DPICalculator();
cal.calculateDPI_baseUnitPixel(300, 90, cal.HDPI);
}
private float densityWidth;
private float densityHeight;
public void calculateDPI_baseUnitPixel(float width, float height, float currentDensity) {
densityWidth = getDensityPX(width, currentDensity);
densityHeight = getDensityPX(height, currentDensity);
this.calculateAllDP();
}
private float getDensityPX(float value, float currentDensity) {
return (value/(currentDensity/BASE_DPI));
}
public void calculateDPI_baseUnitDPI(float width, float height, float currentDensity) {
densityWidth = getDensityDPI(width, currentDensity);
densityHeight = getDensityDPI(height, currentDensity);
this.calculateAllDP();
}
private float getDensityDPI(float value, float currentDensity) {
return (value * (currentDensity/BASE_DPI));
}
private void calculateAllDP() {
// get all settings.
float low_pw = densityWidth * (LDPI/BASE_DPI);
float low_ph = densityHeight * (LDPI/BASE_DPI);
float med_pw = densityWidth * (MDPI/BASE_DPI);
float med_ph = densityHeight * (MDPI/BASE_DPI);
float high_pw = densityWidth * (HDPI/BASE_DPI);
float high_ph = densityHeight * (HDPI/BASE_DPI);
float xhigh_pw = densityWidth * (XHDPI/BASE_DPI);
float xhigh_ph = densityHeight * (XHDPI/BASE_DPI);
System.out.println("LDPI " + low_pw + " x " + low_ph);
System.out.println("MDPI " + med_pw + " x " + med_ph);
System.out.println("HDPI " + high_pw + " x " + high_ph);
System.out.println("XHDPI " + xhigh_pw + " x " + xhigh_ph);
}
}
Risultato
LDPI 150.0 x 45.0
MDPI 200.0 x 60.0
HDPI 300.0 x 90.0
XHDPI 400.0 x 120.0
Per questo, è possibile provare il mio strumento che è stato realizzato per ridimensionare imag es (singolo o batch) di diversi tipi (png, jpg, gif, svg, psd, 9-patch ..). Utilizza algoritmi di ridimensionamento della qualità hiqh e supporta alcuni strumenti di compressione senza perdita come pngcrush. C'è una GUI e una riga di comando ui.
- 1. * Qualunque * modo per collegare elementi grafici/grafici Android/disegnabili?
- 2. Grafici a torta in ggplot2 con dimensioni di torta variabili
- 3. Come ottenere dimensioni e dimensioni di sfaccettatura identiche in diversi grafici ggplot2 a più facce?
- 4. soluzioni grafici per Yesod
- 5. Grafici grafici in Java
- 6. Cambiare font per grafici in R
- 7. Bootstrap Grafici e grafici reattivi
- 8. Libreria Java per la memorizzazione e l'elaborazione di grafici di grandi dimensioni (fino a 600k vertici)
- 9. Ridurre le dimensioni del file per i grafici incollati da Excel in Word
- 10. Libreria di grafici per Ruby
- 11. Grafici interattivi per applicazione web
- 12. MySQL Query per i grafici
- 13. Libreria di grafici per Qt
- 14. Librerie IronPython per grafici scientifici
- 15. più grafici pdf R
- 16. Windows Phone 7 Controlli grafici/grafici
- 17. Dimensioni carattere diverse per dimensioni schermo diverse
- 18. Cluster di modularità di Newman per i grafici
- 19. Confronto di due grafici
- 20. Programma di utilità per grafici 3D Javascript?
- 21. I migliori strumenti per i grafici Html
- 22. Grafici per la gestione del magazzino analisi
- 23. Soluzione NoSQL per grafici persistenti in scala
- 24. Eventuali grafici disponibili per Windows Phone 8
- 25. (? Semplice) Label Placement per la Linea Grafici
- 26. Database strutturati per grafici e Php
- 27. matplotlib grande set di colori per grafici
- 28. Dimensioni massime per StringBuffer
- 29. Dimensioni per ApplicationDataCompositeValue
- 30. Come impostare tight_layout per i grafici matplotlib dopo lo show()
http://developer.android.com/guide/practices/screens_support.html (vedi Tabella 1). DPI è un fattore di conversione. Senza sapere quanto grande vuoi che appaia il tuo pulsante, questa domanda non può essere risolta. –