Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    359

    Altezza e larghezza immagine

    Salve a tutti, ho recuperato questo codice in rete per sapere la larghezza e l'altezza di un'immagine salvata in un db. Bene il codice funziona alla grande finchè si tratta di recuperare la larghezza (w), ma quando voglio ricavare l'altezza (h) mi restituisce sempre il valore 36, PERCHE'??????
    Qualcuno lo conosce, sapete se c'è un'errore?
    Grazie
    codice:
    	function GetBytes(flnm, offset, bytes)
    	on error resume next
    	Set objFSO = CreateObject("Scripting.FileSystemObject")
    	Set objFTemp = objFSO.GetFile(flnm)
    	lngSize = objFTemp.Size
    	set objFTemp = nothing
    	fsoForReading = 1
    	Set objTextStream = objFSO.OpenTextFile(flnm, fsoForReading)
    	if offset > 0 then
    	strBuff = objTextStream.Read(offset - 1)
    	end if
    	if bytes = -1 then
    	GetBytes = objTextStream.Read(lngSize)
    	else
    	GetBytes = objTextStream.Read(bytes)
    	end if
    	objTextStream.Close
    	set objTextStream = nothing
    	set objFSO = nothing
    	end function
    	
    	function lngConvert(strTemp)
    	lngConvert = clng(asc(left(strTemp, 1)) + ((asc(right(strTemp, 1)) *256)))
    	end function
    	
    	function lngConvert2(strTemp)
    	lngConvert2 = clng(asc(right(strTemp, 1)) + ((asc(left(strTemp, 1)) *256)))
    	end function
    	
    	function gfxSpex(flnm, width, height, depth, strImageType)
    	gfxSpex = False
    	strType = GetBytes(flnm, 0, 3)
    	strBuff = GetBytes(flnm, 0, -1)
    	lngSize = len(strBuff)
    	flgFound = 0
    	strTarget = chr(255) & chr(216) & chr(255)
    	flgFound = instr(strBuff, strTarget)
    	if flgFound = 0 then
    	exit function
    	end if
    	strImageType = "JPG"
    	lngPos = flgFound + 2
    	ExitLoop = false
    	do while ExitLoop = False and lngPos < lngSize
    	do while asc(mid(strBuff, lngPos, 1)) = 255 and lngPos < lngSize
    	lngPos = lngPos + 1
    	loop
    	if asc(mid(strBuff, lngPos, 1)) < 192 or asc(mid(strBuff, lngPos,1))> 195 then
    	lngMarkerSize = lngConvert2(mid(strBuff, lngPos + 1, 2))
    	lngPos = lngPos + lngMarkerSize + 1
    	else
    	ExitLoop = True
    	end if
    	loop
    	if ExitLoop = False then
    	Width = -1
    	Height = -1
    	Depth = -1
    	else
    	Height = lngConvert2(mid(strBuff, lngPos + 4, 2))
    	Width = lngConvert2(mid(strBuff, lngPos + 6, 2))
    	Depth = 2 ^ (asc(mid(strBuff, lngPos + 8, 1)) * 8)
    	gfxSpex = True
    	end if
    	end function
    
    
    	Set objFSO = CreateObject("Scripting.FileSystemObject")
    	nomefile = Recordset8("Immagine")
    	Set objF = objFSO.GetFile(Server.MapPath(nomefile))
    	
    	if gfxSpex(objF.Path, w, h, c, strType) = true then
    		pdf.SetXY 112,80
    		pdf.setfillcolor 255,255,255
    		pdf.Cell 0,0, "MISURE :" &h
    	end if	
    	set objF = nothing
    	set objFSO = nothing
    Chi Crede in Me non Perirà MAI

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    359
    Buongiorno nessuna idea?
    Oppure qualcuno ha altro codice da passarmi per effettuare quello che voglio?
    grazie
    Queste misure mi occorrono per far rendere adattata l'immagine all'interno di un foglio pdf, creato con fpdf quindi se qualcuno ha un suggerimento da darmi è ben accetto
    Chi Crede in Me non Perirà MAI

  3. #3
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,657
    ho cercato qualcosa per te ma senza esito, pare che le opzioni migliori siano queste:
    -salvare a parte le dimensioni durante il salvataggio dell'immagine nel db
    -stampare l'immagine una cartella temporanea

    non ho provato o script che hai riportato... da dove lo hai preso? nessuno ha confermato il corretto funzionamento?

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    359
    Grazie Vincent, no nessuno lo ha confermato ma sul sito da dove l'ho prelevato dicono tutti che funziona alla grande
    Chi Crede in Me non Perirà MAI

  5. #5
    Amministratore L'avatar di Vincent.Zeno
    Registrato dal
    May 2003
    residenza
    Emilia-Romagna (tortellini und cappelletti land!)
    Messaggi
    20,657
    se riesco le testo...

    hai mica il link all'articolo?

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2003
    Messaggi
    359
    Chi Crede in Me non Perirà MAI

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.