Narzędzia do przechwytywania i konwertowania Internetu
Społeczność online GrabzIt

Jak działa skalowanie obrazów?

W większości przypadków zrzut ekranu, który próbuję zrobić, jest zmniejszany w przeglądarce, ale chcę go wyeksportować jako większy. Korzystam z wartości bheight i bwidth, aby wskazać, jaka jest wysokość i szerokość elementu na stronie, a następnie przekazać żądaną wartość szerokości i wysokości (która będzie miała ten sam współczynnik kształtu). W niektórych przypadkach wysokość jest 2-4 razy większa niż wysokość, co powoduje, że obraz jest bardzo rozmazany.

Jednak wszystkie elementy wewnątrz div, które próbuję uchwycić, nie są powiększane o więcej niż 100% ich rozmiaru. Na przykład, przepustowość div może wynosić 300px i chcę, aby wyeksportował jako szerokość 900px. Wszystkie obrazy w tym div są wyświetlane nie większe niż 300px, ale ich prawdziwa szerokość to 1000px. Biorąc pod uwagę, że obraz ma szerokość 1000px, nie powinien mieć problemu z szerokością 900px, ale wygląda na rozmazany, jakby to był naprawdę szeroki obraz 300px, który jest powiększony 3x.

Ponadto tekst na tym obrazie jest rozmazany.

Kilka pytań:

- Czy robię coś źle?

- Jak rośnie Grabzit? Czy wykonanie zrzutu ekranu w formacie 300px (w moim przykładzie powyżej), a następnie skalowanie go później? A może najpierw skaluje moje elementy z HTML, a następnie zwraca zrzut ekranu?

- Czy jest jedynym sposobem na osiągnięcie tego, co chcę przekonwertować HTML, aby wszystkie wartości wysokości i szerokości były zwiększane o żądaną skalę?

Korzystam z metody ConvertHTML z DataURI

Dzięki.

Pytanie zadane przez GrabzIt Support we wtorek, 24 wrzesień, 2019 01: 01: 51 PM

Informacje na temat korzystania Obrazy HD można znaleźć tutaj.

Powinieneś użyć parametru hd i -1 szerokość i wysokość spowoduje to podwojenie rozmiaru obrazu.

Używanie szerokości do ustawienia dokładnego rozmiaru nie jest zalecane. Dodatkowe ustawienie wysokości spowoduje, że obraz zostanie powiększony, a następnie wyskalowany pod względem wysokości, co spowoduje rozmycie obrazu.

Obrazy HD działają poprzez powiększanie okna przeglądarki i tworzenie zrzutu ekranu.

Odpowiedzi udzielił GrabzIt Support we wtorek, 24 wrzesień, 2019 01: 09: 41 PM

Dzięki. Problem polega na tym, że HD skaluje tylko 2X i czasami potrzebuję więcej. Czy istnieje sposób, aby wykonać ustawienie takie jak HD, w którym ustawiam skalę? Jeśli nie, to czy istnieje inny sposób na osiągnięcie tego, co próbuję zrobić?

W tej chwili wydaje mi się, że jedynym sposobem na osiągnięcie tego, co chcę, jest przechwycenie HTML, a następnie użycie javascript do dostosowania wszystkich stylów wysokości i szerokości oraz zastąpienie wysokością i szerokością skali, którą chcę.

Dzięki

Odpowiedzi udzielił Corey Alderin we wtorek, 24 wrzesień, 2019 01: 16: 53 PM

Ok, możesz ustawić własny zoom za pomocą szerokości, ale musisz ustawić wysokość na -1, aby uniknąć zmiany rozmiaru obrazu na wiele sposobów.

Odpowiedzi udzielił GrabzIt Support we wtorek, 24 wrzesień, 2019 01: 20: 35 PM

Ale chcę również zmienić wysokość. Więc jeśli mam na ekranie obraz 300x300, ale chcę go wyeksportować jako 900x900, ustawienie wysokości na -1 spowoduje wyświetlenie obrazu 900x300.

Odpowiedzi udzielił Corey Alderin we wtorek, 24 wrzesień, 2019 01: 46: 18 PM

Tak, przepraszam, masz rację co do ustawienia wysokości.

Wygląda na to, że powiększanie poprzez ustawienie szerokości jest obecnie zepsute. Podniosłem sprawę, aby to naprawić.

Odpowiedzi udzielił GrabzIt Support we wtorek, 24 wrzesień, 2019 03: 03: 45 PM

OK, dziękuję za informację. Masz pojęcie, ile czasu zajmują tego typu rzeczy? Wiem, że harmonogramy są trudne do podania, ale wszelkie wyczucie czasu byłoby dla mnie pomocne.

Odpowiedzi udzielił Corey Alderin we wtorek, 24 wrzesień, 2019 03: 33: 33 PM

Mam nadzieję, że w ciągu następnego dnia.

Odpowiedzi udzielił GrabzIt Support we wtorek, 24 wrzesień, 2019 03: 34: 40 PM

To byłoby niesamowite, dzięki.

Odpowiedzi udzielił Corey Alderin we wtorek, 24 wrzesień, 2019 04: 34: 51 PM

Problem został już rozwiązany.

Odpowiedzi udzielił GrabzIt Support we wtorek, 24 wrzesień, 2019 08: 52: 49 PM

Świetnie, dziękuję za pracę nad tym tak szybko. Czy to coś, co zaraz zobaczę po mojej stronie, czy zajmie to trochę czasu? Powodem, dla którego pytam, jest to, że właśnie go przetestowałem i wydaje się to samo.

Dzięki jeszcze raz

Odpowiedzi udzielił Corey Alderin we wtorek, 24 wrzesień, 2019 09: 15: 10 PM

Właśnie próbowałem i zoom działa, gdy szerokość jest większa niż szerokość przeglądarki.

Odpowiedzi udzielił GrabzIt Support we wtorek, 24 wrzesień, 2019 09: 27: 47 PM

Może nie rozumiem, co zostało naprawione. Testuję ten sam div, ale z różnymi rozmiarami przeglądarki. Im mniejsza przeglądarka, tym bardziej rozmyty jest ostateczny obraz, nawet jeśli jest dokładnie taki sam.

Innymi słowy, mam ostateczny obraz, który będzie 1000px x 1000px. Przetestowałem to, gdy div w przeglądarce to 800x800, 600x600, 400x400 itp. I im mniejsza szerokość / wysokość (lub większa skala do końcowej szerokości / wysokości), tym bardziej rozmazany jest ostateczny obraz.

Jeśli mój obraz wygląda świetnie, gdy szerokość / wysokość wynosi 800x800, czy nie powinien wyglądać tak samo, gdy obraz to 400x400?

Dzięki

Odpowiedzi udzielił Corey Alderin we wtorek, 24 wrzesień, 2019 09: 35: 51 PM

Zaleca się HD, ponieważ podwaja ona rozmiar obrazu, co daje najlepsze wyniki.

Poprawka oznacza, że ​​powiększenie jest teraz wykonywane, jeśli szerokość jest większa niż szerokość przeglądarki.

Jeśli używasz szerokości i wysokości, musisz podwoić lub potroić itp. Szerokości i wysokości w stosunku do wymiarów przeglądarki, aby uzyskać najlepsze wyniki. Jest tak, ponieważ niestety zoom działa w poziomach, a nie w procentach. Tak więc każde procentowe powiększenie obliczone na podstawie różnic w szerokości musi zostać przekonwertowane na poziom, który prawdopodobnie nie jest zbyt dokładny, jeśli nie jest to prosty czynnik wielkości.

Odpowiedzi udzielił GrabzIt Support we wtorek, 24 wrzesień, 2019 10: 01: 47 PM

HD nie jest czymś, czego mogę użyć (chyba że czegoś mi brakuje), ponieważ w niektórych przypadkach potrzebuję dokładnego wymiaru, a nie 2X rozmiaru. A w niektórych przypadkach potrzebuję więcej niż 2X.

Pokaż mi, czy rozumiem, co mówisz. Powiedzmy, że mam HTML, który jest 200x200 i chcę ostateczny rozmiar to 900x900. To jest 4.5 x rozmiar. Czy mówisz, że stworzy to tylko jako 800x800 lub 1000x1000 (rozmiar 4X lub 5x) z najlepszymi wynikami, ale różnica .5x powoduje rozmycie?

Jeśli mam to prawidłowe, to najlepszym rozwiązaniem jest manipulowanie HTML przed wysłaniem? Więc w zasadzie powinienem tworzyć HTML o odpowiednim rozmiarze, a wtedy nie będę potrzebował żadnego powiększenia?

Dzięki

Odpowiedzi udzielił Corey Alderin we wtorek, 24 wrzesień, 2019 11: 14: 50 PM

Tak, w miarę wzrostu poziomów wraz ze wzrostem powiększenia.

Więc powiększenia, które nie są x2, x3 lub x4, będą niedokładne, ponieważ wymiary będą wyłączone. Istnieje również tylko dziesięć potencjalnych poziomów powiększenia, więc myślę, że równa się maksymalnie X5.

Odpowiedzi udzielił GrabzIt Support w środę, 25 wrzesień, 2019 05: 40: 03 AM