DISKUSE
Hlášení o uložení změn (4)
12.08.2022 13:23

IE vs Edge (2)
09.08.2022 08:43

telefonní seznam / adresář 
05.08.2022 09:25

Chybějící properties NotesViewColumn  (2)
29.06.2022 08:33

@SetTargetFrame (1)
24.05.2022 21:06

Hodně sloupců (8)
24.05.2022 12:18

Jazyk vzorců: Zapisování do jiné aplikace LN (2)
24.05.2022 12:10

pravidla pro poštu (7)
12.05.2022 14:12


ŠKOLENÍ


REKLAMA


KOMENTÁŘE

Jak určit rozlišení GIF nebo JPEG obrázku?

Vytisknout článek

Možná jste se také setkali s klasickým problémem: k dokumentu je přiložen (Attache) GIF nebo JPEG obrázek a vy ve formuláři na něj generujete odkaz. A nastává problém - je velmi vhodné do "IMG" tagu uvést rozměry obrázku, aby prohlížeč pro něj včas vyhradil příslušné místo. Kde je vzít?


Možná jste se také setkali s klasickým problémem: k dokumentu je přiložen (Attache) GIF nebo JPEG obrázek a vy ve formuláři na něj generujete odkaz. A nastává problém - je velmi vhodné do <IMG> tagu uvést rozměry obrázku, aby prohlížeč pro něj včas vyhradil příslušné místo. Kde je vzít ?

Samozřejmě, přímo ze souboru - jsou uloženy přímo v hlaviččce GIF nebo JPEG dokumentu. Stačí si tedy v okamžiku načtení souboru tyto údaje poznamenat do dokumentu a ve vhodný okamžik je využít.

Dim header As String
Dim filename As String
Dim f As Integer
Dim wHi As Variant
Dim wLo As Variant
Dim hHi As Variant
Dim hLo As Variant
Dim w As Integer ' šířka obrázku
Dim h As Integer ' výška obrázku

filename="c:\picture.gif" ' jméno obrázku

f = Freefile()
Open filename For Input As #f

If Lcase(Right(filename, 3))="gif" Then
header = Input(10, f)
Close #f
wHi = Mid(header, 8, 1)
wLo = Mid(header, 7, 1)
hHi = Mid(header, 10, 1)
hLo = Mid(header, 9, 1)
w = Asc(wHi) * 256 + Asc(wLo)
h = Asc(hHi) * 256 + Asc(hLo)

Elseif Lcase(Right(filename, 3))="jpg" Then
header = Input(167, f)
Close #f
wHi = Asc(Midbp(header, 166, 1))
wLo = Asc(Midbp(header, 167, 1))
hHi = Asc(Midbp(header, 164, 1))
hLo = Asc(Midbp(header, 165, 1))
w = (wHi) * 256 + (wLo)
h = (hHi) * 256 + (hLo)
End If

Příklad byl převzat z diskuzního fóra, ještě by se samozřejmě dal hodně vylepšit (např. nespoléhat se ve zjištění typu obrázku na příponu a provést přímo analýzu hlavičky, doplnit podporu PNG formátu atd.) ale použít se dá velmi dobře.


Autor: Zdeněk Michálek
Datum: 26.03.2001


Sdílet článek Seznam komentářů

Zatím nebyl přidán žádný komentář. Buďte první!