Typography Unit Converter
Convertir les unités typographiques : pt, px, em, rem, pica et bien plus avec paramètres DPI.
| Unité | Valeur convertie |
|---|---|
| px | 16 |
| pt | 12 |
| em | 1 |
| rem | 1 |
| pica | 1 |
| mm | 4.2333 |
| cm | 0.42333 |
| in | 0.16667 |
| ex | 2 |
| ch | 2 |
Valeurs de référence courantes
À propos de cet outil
Les unités de typographie constituent la base du design numérique et imprimé, mais convertir entre elles—points, pixels, em, rem, picas et bien d'autres—peut être fastidieux et sujet aux erreurs. Que vous soyez un designer traduisant des spécifications d'impression en designs web, un développeur ajustant les tailles de police dans différents contextes de rendu, ou un créateur de contenu gérant des documents sur plusieurs plates-formes, la précision est primordiale. Ce convertisseur élimine l'incertitude en traduisant instantanément n'importe quelle unité de typographie en une autre, tout en tenant compte des paramètres DPI qui affectent considérablement les conversions de pixels en points.
Pour utiliser l'outil, sélectionnez simplement vos unités source et cible dans les menus déroulants, entrez la valeur que vous souhaitez convertir et, le cas échéant, ajustez le paramètre DPI si vous travaillez avec un support de sortie spécifique. Le convertisseur gère les unités relatives comme em et rem, qui s'adaptent en fonction des tailles de police des éléments parents ou racine, ainsi que les unités absolues comme les points et les pixels. Par exemple, convertir 16 pixels en rem en supposant une base de 16px donne 1rem, ce qui est utile pour créer des designs web réactifs qui se redimensionnent gracieusement sur tous les appareils.
Questions Fréquentes
Implémentation du Code
def typography_converter(value: float, from_unit: str, to_unit: str,
dpi: float = 96, base_font_px: float = 16) -> float:
"""Convert between typography units. Returns converted value."""
# Convert to px first
to_px = {
'px': lambda v: v,
'pt': lambda v: v * dpi / 72,
'pc': lambda v: v * dpi / 6,
'em': lambda v: v * base_font_px,
'rem': lambda v: v * base_font_px,
'mm': lambda v: v * dpi / 25.4,
'cm': lambda v: v * dpi / 2.54,
'in': lambda v: v * dpi,
'ex': lambda v: v * base_font_px * 0.5,
'ch': lambda v: v * base_font_px * 0.5,
}
from_px = {
'px': lambda v: v,
'pt': lambda v: v * 72 / dpi,
'pc': lambda v: v * 6 / dpi,
'em': lambda v: v / base_font_px,
'rem': lambda v: v / base_font_px,
'mm': lambda v: v * 25.4 / dpi,
'cm': lambda v: v * 2.54 / dpi,
'in': lambda v: v / dpi,
'ex': lambda v: v / (base_font_px * 0.5),
'ch': lambda v: v / (base_font_px * 0.5),
}
px = to_px[from_unit](value)
return from_px[to_unit](px)
# Examples
print(f"16px = {typography_converter(16, 'px', 'pt'):.4f}pt at 96dpi")
print(f"1em = {typography_converter(1, 'em', 'px'):.4f}px at base 16px")
print(f"12pt = {typography_converter(12, 'pt', 'px'):.4f}px at 96dpi")
print(f"1in = {typography_converter(1, 'in', 'pt'):.4f}pt")
Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.