logoMass function

LogoMass logoMass(
  1. int zeichen
)

Ins Kaestchen der Stufe eingepasst, nie hochgerechnet (1 Bildpixel hoechstens 1 Druckpunkt).

Implementation

LogoMass logoMass(BlattLogo logo, int zeichen) {
  if (logo.pxBreite <= 0 || logo.pxHoehe <= 0) {
    throw ArgumentError('Logo ohne Pixelmass');
  }
  final blattPunkte = zeichen * punkteJeZeichen;
  final faktor = math.min(
    math.min((logo.stufe.breiteAnteil * blattPunkte) / logo.pxBreite, (logo.stufe.hoeheZeilen * punkteJeZeile) / logo.pxHoehe),
    1.0,
  );
  return LogoMass(
    breiteAnteil: (logo.pxBreite * faktor) / blattPunkte,
    hoeheZeilen: (logo.pxHoehe * faktor) / punkteJeZeile,
  );
}