Výpočet výšky SVG – HTML / XHTML – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Výpočet výšky SVG – HTML / XHTML – Fórum – Programujte.comVýpočet výšky SVG – HTML / XHTML – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené — příspěvek s řešením.
ingiraxo+15
Grafoman
17. 4. 2021   #1
-
0
-

Ahoj,

řeším takový problém. Mám tady SVG (xml), kde je na pevno nastavená pouze šířka, ale chybí výška. Chtěl bych to SVG pomocí JS převést do PNG, ale k tomu potřebuju i výšku, abych zachoval ratio.

Mám k dispozici pouze šířku a viewbox. Bohužel jsem z toho lehce zmaten výpočet, který mi funguje u jednoho svg, tak u jiného zase nevychází :(

Prosím o radu nebo rovnou o vzoreček. Díky

Mám k dispozici toto (převzato s SVG): 

viewBox="14.571370 -50.523260 0.107050 0.086410" width="1000px"

PS: Případně jak by to bylo obráceně, kdybych měl pouze výšku, ale potřeboval dopočítat šířku (při zachování ratio).

Nahlásit jako SPAM
IP: 95.85.216.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
ingiraxo+15
Grafoman
19. 4. 2021   #2
-
0
-

#1 ingiraxo
Nikdo? :(

Vim, že viewbox má formát [x, y, w, h]. Ale v mém případě jsou ty hodnoty tak malé, že nemůžu použít ty z viewbox. Navíc souřadnice Y je záporná. A já potřebuju vytvořit obrázek, co bude mít 1000 šířku (je v pohodě), ale abych zachoval ratio, tak musí být odpovídající výška a tu neznám a tu potřebuju zjistit.

Když si takový SVG obrázek představíte na prázdné ploše, tak šířka bude skutečně 1000px, ale výška se dopočítá aby se zachovalo ratio. A toto ja potřebuju získat. (možná to dělá prohlížeč, ale ten taky musí vědět jak)

Nevím jestli je to možné, ale některé programy co provádí konverzi z svg to png to dokážou. Takže nějaký způsob jak to vypočítat být musí. Nouzove řešení je nechat to v SVG, ale to jsem úplně nechtěl :-/

Nahlásit jako SPAM
IP: 95.85.216.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
gna
~ Anonymní uživatel
1891 příspěvků
19. 4. 2021   #3
-
+1
-
Zajímavé
Kit +

Navíc souřadnice Y je záporná.

X/Y se rozměrů netýká. Vezmi jen poměr W/H.

Nahlásit jako SPAM
IP: 213.211.51.–
peter
~ Anonymní uživatel
4016 příspěvků
20. 4. 2021   #4
-
0
-

Tak to vykresli do js canvas. Tam by width mohla stacit.

Nahlásit jako SPAM
IP: 193.84.197.–
Řešení
MilanL+1
Grafoman
23. 4. 2021   #5
-
+2
-
Zajímavé
Vyřešeno Nejlepší odpověď

#4 peter
jestliže máš W a H SVG a chceš to šoupnout do určité šířky stránky tak výšku lze spočítat se zachováním poměrů

h= H* w/W

v příkladu bude kde je W=0.107050 H=0.086410

h=0,086410 * 1000/0,107050 = 807

stejným způsobem pak i w

w= W* h/H

Nahlásit jako SPAM
IP: 185.112.167.–
ingiraxo+15
Grafoman
24. 4. 2021   #6
-
0
-

#5 MilanL
Jo, díky. Tohle (vzoreček) jsem potřeboval   

Nahlásit jako SPAM
IP: 95.85.216.–
Moje aplikace: http://ophite.cz
Tutoriály na: C#
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 13 hostů

Podobná vlákna

PHP a SVG — založil Mona

TCPDF a SVG obrázok — založil juraj175

SVG obyčejný Sans — založil Matěj Andrle

Prevedeni svg do jpg — založil Jan

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý