fix(brand): Haarstrich an der Naht des AirCard-IOS-Symbols
Die Maske hatte exakt die Kartenkante als Region und als weißes Feld; die Kantenglättung wurde doppelt angewendet und ließ bei Vergrößerung einen hellen Strich. Jetzt Standardregion der Maske und ein überstehendes weißes Feld. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
9c4e80ec9a
commit
e7acd79225
2 files changed
+16
-1
No files matched your search
@@ -175,6 +175,21 @@ describe('AirCard-IOS-Marken', () => {
|
||||
expect(symbol).not.toMatch(/fill-opacity="1"/);
|
||||
});
|
||||
|
||||
it('Symbol: die Maske hat keine eigene Region und ihr weißes Feld ist größer als die vordere Karte (kein Haarstrich an der Naht)', () => {
|
||||
const tag = /<mask\b[^>]*>/.exec(symbol)?.[0] ?? '';
|
||||
// Ohne x/y/width/height gilt die Standardregion (-10 % / 120 % der Karte); eine Region exakt auf der Kartenkante
|
||||
// würde deren Kantenglättung doppelt anwenden und bei Vergrößerung einen hellen Strich lassen.
|
||||
expect(tag).not.toMatch(/\s(?:x|y|width|height|maskUnits)=/);
|
||||
const white = /<mask\b[^>]*>\s*<path\b[^>]*fill="#fff"[^>]*\bd="M(-?[\d.]+)[ ,](-?[\d.]+)h([\d.]+)v([\d.]+)H/.exec(symbol);
|
||||
expect(white, 'weißes Rechteck am Anfang der Maske').not.toBeNull();
|
||||
const [x, y, w, h] = white!.slice(1).map(Number);
|
||||
// Die vordere Karte: x 172–852, y 660–1090.
|
||||
expect(x).toBeLessThan(172);
|
||||
expect(y).toBeLessThan(660);
|
||||
expect(x + w).toBeGreaterThan(852);
|
||||
expect(y + h).toBeGreaterThan(1090);
|
||||
});
|
||||
|
||||
it('Symbol: enge viewBox um die drei Karten (680 x 730)', () => {
|
||||
expect(svgAspect(symbol)).toBeCloseTo(680 / 730, 3);
|
||||
});
|
||||
|
||||
Reference in new issue
Block a user