//FFSubmenu=Skalieren
//FFName=Schrittweise Skalieren & Schärfen
//** Start Dialog Schrittweise Skalieren **
FF_AddDialog("Schrittweise Skalieren",141,78);
FF_AddControl("Schrittweise Skalieren","Breite:","STATIC",2,2,23,10);
FF_SetControlStyle("Schrittweise Skalieren","Breite:",2);
FF_AddControl("Schrittweise Skalieren","VBreite","COMBO",60,2,40,10);
FF_AddControl("Schrittweise Skalieren","Höhe:","STATIC",2,13,23,10);
FF_SetControlStyle("Schrittweise Skalieren","Höhe:",2);
FF_AddControl("Schrittweise Skalieren","VHöhe","COMBO",60,13,40,10);
FF_AddControl("Schrittweise Skalieren","VProp","BOOL",73,26,8,8);
FF_AddControl("Schrittweise Skalieren","proportional","STATIC",83,24,33,11);
FF_AddControl("Schrittweise Skalieren","Schritte:","STATIC",2,25,23,10);
FF_SetControlStyle("Schrittweise Skalieren","Schritte:",2);
FF_AddControl("Schrittweise Skalieren","SVal","VSPIN",60,24,8,12);
FF_AddControl("Schrittweise Skalieren","SText","EDIT",28,25,26,10);
FF_AddControl("Schrittweise Skalieren","Schärfe:","STATIC",2,42,23,10);
FF_SetControlStyle("Schrittweise Skalieren","Schärfe:",2);
FF_AddControl("Schrittweise Skalieren","SHVal","EDIT",28,42,26,10);
FF_AddControl("Schrittweise Skalieren","SHPoti","HSLIDER",58,38,74,18);
FF_AddControl("Schrittweise Skalieren","Ausführen","BUTTON",2,65,33,11);
FF_AddControl("Schrittweise Skalieren","Abbrechen","BUTTON",106,65,33,11);
FF_AddControl("Schrittweise Skalieren","BText","EDIT",28,2,26,10);
FF_AddControl("Schrittweise Skalieren","HText","EDIT",28,13,26,10);
//** End Dialog Schrittweise Skalieren **
var***i,ret,exit=0,ox,oy;
var sval=new Array(300,320,400,480,600,640,768,800,960,1024,1200,1280,1536,1600,1696,1704,1920,2048,2128,2272,2448,2544,2560,2832,3264);
ox = FF_GetImageWidth(); oy = FF_GetImageHeight();
for(i=0; i<sval.length; i++)
***{
***FF_SetControl("Schrittweise Skalieren","VBreite",sval[i]);
***FF_SetControl("Schrittweise Skalieren","VHöhe",sval[i]);
***}
FF_SetControl("Schrittweise Skalieren","BText",ox);
FF_SetControl("Schrittweise Skalieren","HText",oy);
FF_SetControl("Schrittweise Skalieren","VProp",1);
FF_SetControl("Schrittweise Skalieren","SVal",3);
FF_SetControl("Schrittweise Skalieren","SText",3);
FF_SetControlBuddy("Schrittweise Skalieren","SHPoti","SHVal");
FF_SetControl("Schrittweise Skalieren","SHPoti",64);
FF_SetControl("Schrittweise Skalieren","SHVal",64);
while(!exit)
***{***
***ret = FF_ShowDialog("Schrittweise Skalieren");
***switch(ret)
******{
******case "VBreite":
*********i = parseInt(FF_GetControl("Schrittweise Skalieren","VBreite"));
*********FF_SetControl("Schrittweise Skalieren","BText",i);
*********if(FF_GetControl("Schrittweise Skalieren","VProp") == 0) break;
*********FF_SetControl("Schrittweise Skalieren","HText",i * oy / ox);
*********break;
******case "VHöhe":
*********i = parseInt(FF_GetControl("Schrittweise Skalieren","VHöhe"));
*********FF_SetControl("Schrittweise Skalieren","HText",i);
*********if(FF_GetControl("Schrittweise Skalieren","VProp") == 0) break;
*********FF_SetControl("Schrittweise Skalieren","BText",i * ox / oy);
*********break;
******case "SVal":
*********i = parseInt(FF_GetControl("Schrittweise Skalieren","SText"))
************+ parseInt(FF_GetControl("Schrittweise Skalieren","SVal"));
*********if(i < 2) i = 2;
*********FF_SetControl("Schrittweise Skalieren","SText",i);
*********break;
******case "Ausführen":
*********ScaleImage();
******default:
*********exit = 1; break;
******}
***}
FF_CloseDialog("Schrittweise Skalieren");
function ScaleImage()
***{
***var******i,x,y,nx,ny,s,sx,sy,sh;
***nx = parseInt(FF_GetControl("Schrittweise Skalieren","BText"));
***ny = parseInt(FF_GetControl("Schrittweise Skalieren","HText"));
***s = parseInt(FF_GetControl("Schrittweise Skalieren","SText"));
***sh = parseInt(FF_GetControl("Schrittweise Skalieren","SHVal")) / 2;
***sx = (ox - nx) / s; sy = (oy - ny) / s;
***for(i=0,x=ox,y=oy; i<s-1; i++)
******{
******FF_SetProgress(i,s-1);
******x -= sx; y -= sy;
******FF_HQScale(x,y,false);
******FF_Sharp(sh);
******}
***FF_SetProgress(i,s-1);
***FF_HQScale(nx,ny,false);
***FF_Sharp(sh);
***}
FF_Reload();