Typography Unit Converter
Konvertiere Typografie-Einheiten: pt, px, em, rem, pica und mehr mit DPI-Einstellungen.
| Einheit | Umgewandelter Wert |
|---|---|
| px | 16 |
| pt | 12 |
| em | 1 |
| rem | 1 |
| pica | 1 |
| mm | 4.2333 |
| cm | 0.42333 |
| in | 0.16667 |
| ex | 2 |
| ch | 2 |
Häufig verwendete Referenzwerte
Über dieses Tool
Typographische Einheiten bilden die Grundlage des digitalen und gedruckten Designs, aber die Umrechnung zwischen ihnen—Punkte, Pixel, em, rem, Picas und mehr—kann mühsam und fehleranfällig sein. Ob Sie ein Designer sind, der Druckspezifikationen in Webdesigns übersetzt, ein Entwickler, der Schriftgrößen in verschiedenen Rendering-Kontexten anpasst, oder ein Content-Creator, der Dokumente auf mehreren Plattformen verwaltet: Genauigkeit ist unerlässlich. Dieser Konverter beseitigt Unsicherheiten, indem er jede typographische Einheit sofort in eine andere umrechnet und dabei DPI-Einstellungen berücksichtigt, die Pixel-zu-Punkt-Umwandlungen erheblich beeinflussen.
Um das Tool zu nutzen, wählen Sie einfach Ihre Quell- und Zieleinheiten in den Dropdown-Menüs aus, geben Sie den Wert ein, den Sie konvertieren möchten, und passen Sie optional die DPI-Einstellung an, wenn Sie mit bestimmten Ausgabemedien arbeiten. Der Konverter verarbeitet relative Einheiten wie em und rem, die sich nach den Schriftgrößen des übergeordneten oder Root-Elements skalieren, sowie absolute Einheiten wie Punkte und Pixel. Beispielsweise ergibt die Umrechnung von 16 Pixeln in rem (bei Annahme einer 16px-Basis) 1rem, was beim Erstellen reaktionsschneller Webdesigns hilfreich ist, die sich anmutig über Geräte hinweg skalieren.
Häufig gestellte Fragen
Code-Implementierung
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.