Dies sieht aus wie Gleitpunktpositionierung (z. B. Sie haben einen Bildlauf bis 100.5, 100.5) kombiniert mit bilinearer Filterung, die die meisten Browser verwenden, um Bilder auf der 2D-Leinwand anzuzeigen.
Grundsätzlich, wenn Sie Image () ein Bild zwischen Pixeln zeichnen, wird jedes Pixel über zwei Pixel geglättet, was bedeutet, dass die Kanten bei 50% Alpha über den Hintergrund gezeichnet werden. Dies unterbricht die Aufteilung, da die Kante der nächsten Fliese die gleiche ist und 50% Alpha über die 50% Alpha der anderen Fliese zieht, was 75% Alpha ergibt. Dies erscheint heller oder dunkler (abhängig von der Hintergrundfarbe) als der Rest der Kachel. So erhalten Sie "Nähte" entlang der Kanten der Fliesen.
Um zu beheben: Math.round () Ihr Bild koordiniert, sowie alle Anrufe zu übersetzen () (seit der Übersetzung um ein halbes Pixel hat den gleichen Effekt). Dies garantiert, dass alles in ein pixelorientiertes Raster gezeichnet wird und nie zusammenkommt.
Tags und Links javascript html5 canvas html5-canvas