Newsgroup: it.comp.lang.javascript
Titolo: rilevare centrimetri sulle immagini

sto realizzando una piccolissima applicazione web per utilizzare lo scanner 
tramite SANE (scanner su linux)...l'applicazione è scritta in PHP e se verrà 
un bel lavoro verrà hostato tutto su sourceforge..
il problema principale è: una volta scansionata l'immagine e visualizzata a 
video (non è un problema)... vorrei fare in modo che l'utente possa, 
cliccando sull'immagine stessa, decidere l'area da scansionare. quindi mi
servirebbero questi dati (che sono poi i parametri da inviare a scanimage): 
X iniziale, Y iniziale, Larghezza scansione, Altezza scansione... tutto in 
millimetri.
aiuti/suggerimenti? avete uno script da adattare che mi aiuti?
ciao
davide 

azz... nessuno riesce a darmi una mano?

 azz... nessuno riesce a darmi una mano?
puoi conoscere la posizione del mouse relativa all'oggetto se ti serve:
 
http://www.criosoftware.it/default11.aspx
Poi dalla posizione di un oggetto nella pagina:
 
http://www.criosoftware.it/default10.aspx
Puoi ottenere IN PIXEL l'area "selezionata"...e poi come lo converti in mm?
 
http://www.convert-me.com/en/convert/units/length/length.pixel.en.html
 
ma IMHO javascript non è adatto per queste operazioni.
-- 
"E' l' ignoranza che crea l'intolleranza
 di gente cieca e senza coscienza"
									  S.S.S.

 
Il problema non è come farà a riconvertire in mm i pixel .. per quello 
basta sapere quqanto è grande l'area selezionata e in quanti dpi è stata 
scansionata ..
Il punto è che per davvero il php non è adatto per questo tipo di cose 
.. meglio il flash se proprio deve usare qualcosa di carino o javascript ..
-- 
                                  [CapoBecchino]
| --------------------------------------------- |
| hotmail/msn: capobecchino [@] hotmail [.] com |
| yahoo: capo_becchino [@] yahoo [.] it         |
| icq: 217325174                                |
| --------------------------------------------- |
!!! NOVITA' ASSOLUTA !!!
Bara familiare x incidenti familiari. Sconto 15% se muore il papà, la 
mamma ed eventuali figli.

 aiuti/suggerimenti? avete uno script da adattare che mi aiuti?
Qualcosa del tipo:
<html>
<head>
<style type="text/css">
#selimg{
 position:absolute;
 left:10px;
 top:20px;
 z-index:0;
}
#coord{
 position:absolute;
 left:10px;
 top:0px;
}
#select{
 position:absolute;
 left:210px;
 top:0px;
}
#sel{
 position:absolute;
 left:10px;
 top:10px;
 width:0px;
 height:0px;
 border:1px solid #ff0000;
 background-color:#00ff00;
 font-size:0px;
 z-index:1;
 opacity:0.25;
 filter:alpha(opacity=25); 
}
</style>
<script type="text/javascript">
 var left=10;
 var top=20;
 var w=0;
 var h=0;
 var selimg="selimg";
 var selid="sel";
 var x1=0;
 var x2=0;
 var y1=0; 
 var y2=0;
 var ssel=false;
 var sel=null;
 var coord=null;
 
function showcoord(){
 var sx1=x1-left;
 var sx2=x2-left;
 var sy1=y1-top;
 var sy2=y2-top;
 coord.innerHTML="("+sx1+", "+sy1+") - ("+sx2+", "+sy2+")";
}
function setsel(dx, dy){
 sel.style.left=x1+"px"; 
 sel.style.top=y1+"px"; 
 sel.style.width=dx+"px"; 
 sel.style.height=dy+"px";
}
function moveTheMouse(e){
 var ev=e?e:event;
 if (ssel){
	var firedobj = ev.target ? ev.target : ev.srcElement;
	if ((
firedobj.id
 == selimg)||(
firedobj.id
 == selid)){
		x2 = ev.clientX;
		y2 = ev.clientY;
		if((x2>x1)&&(y2>y1)){
			setsel(x2-x1,y2-y1);
			showcoord();
		}
		return false;
	}
 }
}
function startSel(e){
 var ev=e?e:event;
 var firedobj = ev.target ? ev.target : ev.srcElement;
 if ((
firedobj.id
 == selimg)||(
firedobj.id
 == selid)){
	ssel = true;
	x1 = ev.clientX;
	y1 = ev.clientY;
	x2=0;
	y2=0;	
	setsel(0,0);
	showcoord();
	return false;
 }
}
function stopSel(e){
 var ev=e?e:event;
 if (ssel){
	var firedobj = ev.target ? ev.target : ev.srcElement;
	ssel = false;
	if ((
firedobj.id
 == selimg)||(
firedobj.id
 == selid)){
		x2 = ev.clientX;
		y2 = ev.clientY;
		var sx1=x1-left;
		var sx2=x2-left;
		var sy1=y1-top;
		var sy2=y2-top;
		document.getElementById("select").innerHTML="Selezionato ("+sx1+
		","+sy1+") - ("+sx2+","+sy2+")";
	}
 }
 return false;
}
function init(){
 document.onmousedown = startSel;
 document.onmouseup = stopSel;
 document.onmousemove = moveTheMouse;
 sel=document.getElementById("sel");
 coord=document.getElementById("coord");
 var simg=document.getElementById("selimg");
 w=simg.width;
 h=simg.height;
}
</script>
</head>
<body onload="init();">
<div id="sel"></div>
<img src="sel.gif" id="selimg"/>
<div id="coord">(0,0) - (0,0)</div>
<div id="select"></div>
</body>
</html>
'bye

 e se verrà
avevo perso ogni speranza... :) ...ho ricontrollato solo oggi il ng!
grazie mille per le riposte.. mi butto subito su codice e link! :)
GRAZIE!
davide 

 [cut]
cavolo... sbigottito! proprio quello che stavo cercando!
lo hai fatto te?? my compliment!
se ora riesco a convertire tutto in mm... è fatta.. :)
grazie mille!!!!!!!!!!!!!!