Oryginalne pytanie:
Jak skalować obraz w JavaScript bez obsługi CSS?Algorytm skalowania obrazu lub duplikowania DOM w JavaScript?
Mój zespół ma środowisko STB, coś w stylu EPG, które obsługuje JavaScript i DOM rzucony na niego. Obsługa CSS istnieje, ale nie możemy tam wprowadzać własnego CSS. Jednostka miary jest zawsze stała i nie może być skalowana przez CSS.
Pokazujemy obrazy w następujący sposób:
- Każdy obraz jest wyświetlany jako kawałek małych obrazów generowanych przez urządzenie
- Dla
40 x 30
obrazu, daje nam1200
kawałki1px x 1px
, reprezentowane jako elementy DOM. - Są one umieszczane w kolumnach i wierszach
width x height
wewnątrz nadrzędnego elementu DOM. Wyglądają na większym ekranie o dużym fizycznym rozmiarze piksela.
Spójrz na obrazek poniżej - coś próbowałem w przeglądarce dla jasności:
Załóżmy, że każdy blok powyżej jest obraz w sobie 1 x 1 pikseli, stąd DOM element. Łącznie zawsze jest 40 x 30 = 1200 elementów DOM jednocześnie.
Chcemy przeskalować to w wywołanie funkcji, aby podwoić jego rozmiar. Lub przynajmniej dodaj 10 jednostek zarówno do szerokości, jak i wysokości.
Jaką logikę mogę napisać w JavaScript? Czy duplikuję każdy element DOM i umieszczam duplikat obok oryginału? To tylko podwaja szerokość. Czy pomnożę 4 razy również wysokość? Pomoc doceniona.
UPDATE:
Od jedynej odpowiedzi, wydaje się, co potrzebne jest do realizacji algorytmu skalowania lub powielania w JavaScript.
Kiedy powiększamy obrazy w dowolnym systemie operacyjnym, jaki algorytm stosuje się do każdego piksela, aby podwoić jego rozmiar i wyświetlić 1 piksel na 4 piksele sprzętowe?
Potrzebuję zrobić to samo z elementami DOM, gdzie każdy element span
lub img
działa jak piksel.
Tak, myślę, że podwojenie tych elementów zarówno w poziomie, jak iw pionie jest jedyną drogą. Mogę się jednak mylić ... –