Utente:Alex brollo/hOCRview.js

Da Wikisource.

Nota: dopo aver pubblicato, potrebbe essere necessario pulire la cache del proprio browser per vedere i cambiamenti.

  • Firefox / Safari: tieni premuto il tasto delle maiuscole Shift e fai clic su Ricarica, oppure premi Ctrl-F5 o Ctrl-R (⌘-R su Mac)
  • Google Chrome: premi Ctrl-Shift-R (⌘-Shift-R su un Mac)
  • Internet Explorer / Edge: tieni premuto il tasto Ctrl e fai clic su Aggiorna, oppure premi Ctrl-F5
  • Opera: premi Ctrl-F5.
// rimuove il draggable da img;
// crea una div #divImg e ci sposta dentro l'immagine;
// assegna alla div le dimensioni dell'immagine e assegna all'immagine dimensioni inherit
// a questo punto è possibile appendere elementi a divImg, che si sovrapporranno all'immagine
	mw.ocr_show=function () {
	var scan="";
	var divImg="";
	if (mw.config.get("wgCanonicalNamespace")==="Page") {
	$(".prp-page-image img").draggable("destroy");
	scan=$(".prp-page-image img");
	divImg=$("<div>")
	.css("width",scan.css("width"))
	.css("height",scan.css("height"))
	.css("position","absolute")
	.attr("id","divImg")
	.appendTo($(".prp-page-image")); 
	scan.css("width","inherit").css("height","inherit").appendTo($("#divImg"));
	
	$("#divImg").draggable()
	
	} /*else {
		
		scan=$("#divImmagine img");
		divImg=$("<div>")
			.css("width",scan.css("width"))
			.css("height",scan.css("height"))
			.css("position","absolute")
			.attr("id","divImg")
			.appendTo($("#divImmagine")); scan.css("width","inherit").css("height","inherit");
		$("#divImg").append($("#divImmagine"));
	
	$("#divImg").draggable();	
	}*/
}


// riceve un oggetto mw.pagina.linee e ne visualizza la proiezione sull'immagine
mw.ocr_showLine=function (n,attr) {
	if (attr===undefined || attr>4) {
		attr=0;
	}
	var bg=["rgba(0,0,0,0.15)","rgba(0,0,255,0.15)","rgba(0,255,0,0.15)","rgba(255,0,0.15)","rgba(255,0,255,0.15)"]
	var fact=$("#divImg").css("width").replace("px","")/mw.pagina.dimensioniPagina.x2;
	creaDiv(mw.pagina.linee[n]);
	function creaDiv(linea) {
	var newDiv = $("<div>").css({
		"background-color":bg[attr],
		"position":"absolute",
		"z-index":"100",
		"top":linea.y1*fact,
		"left":linea.x1*fact,
		"width":(linea.x2-linea.x1)*fact,
		"height":(linea.y2-linea.y1)*fact
	});
	newDiv.attr("class","rettangoli")
		.attr("title",linea.text)
		.appendTo($("#divImg"));
	}
}

mw.ocr_showAllLines=function(attr) {
	
	if (mw.config.get("wgCanonicalNamespace")==="Page") {
	
		if (attr===undefined){
		attr=0;
		} 
		$(".rettangoli").remove();
		for (i=0;i<mw.pagina.linee.length;i+=1) {
			if (typeof(attr)==="number") mw.ocr_showLine(i,attr);
			else mw.ocr_showLine(i,mw.pagina.linee[i][attr]);
		}
	
	}
}