Bonjour & Bienvenue sur EOS-Numerique
Réseaux Sociaux : Follow us on Facebook Follow us on Twitter


Sign Up






Page 2 sur 2 PremièrePremière 12
Affichage des résultats 21 à 38 sur 38
  1. #21
    Membre Avatar de beocien
    Inscription
    décembre 2005
    Localisation
    Bayonne
    Âge
    75
    Messages
    5 675
    Boîtier
    1DX
    Objectif(s)
    16x35 2.8 II 17x40 70x200 f/2.8 100x400 ecran calibre TAMRON 150-600

    Par défaut

    Essaies d ajouter "var" " " devant BOTTOM dans les if et else if ??? ou bien var BOTTOM = 100 apres var Angle ( ligne 82 ).


  2. #22
    Membre Avatar de Mac64
    Inscription
    janvier 2007
    Localisation
    Biarritz
    Âge
    37
    Messages
    210
    Boîtier
    Canon EOS 400D | 430Ex
    Objectif(s)
    17-50 2.8 Tamron | 70-200 4 L USM | EFS 18-55 du kit

    Par défaut

    J'ai remplacé Bottom par var bottom

    J'ai une erreur 1244 Argument illegal - argument 3

    Valeur numérique attendue
    line 272
    desc52.putUnitDouble(id253,id254, TOP);

    Si jamais... enfin te prend pas trop la tete la dessus non plus

  3. #23
    Membre Avatar de beocien
    Inscription
    décembre 2005
    Localisation
    Bayonne
    Âge
    75
    Messages
    5 675
    Boîtier
    1DX
    Objectif(s)
    16x35 2.8 II 17x40 70x200 f/2.8 100x400 ecran calibre TAMRON 150-600

    Par défaut

    Je viens d alleger le script de moitie et il devrait marcher pour les nombres negatifs :


    SCRIPT

    Mac64 ce bout de code devrait te permettre de tester " BOTTOM " et " TOP " en utilisant les valeur 1 et 2 pour les angles :

    Code:
    // =======================================================
    var id248 = charIDToTypeID( "setd" );
        var desc51 = new ActionDescriptor();
        var id249 = charIDToTypeID( "null" );
            var ref23 = new ActionReference();
            var id250 = charIDToTypeID( "Chnl" );
            var id251 = charIDToTypeID( "fsel" );
            ref23.putProperty( id250, id251 );
            desc51.putReference( id249, ref23 );
            var id252 = charIDToTypeID( "T   " );
            var desc52 = new ActionDescriptor();
            var id253 = charIDToTypeID( "Top " );
            var id254 = charIDToTypeID( "#Prc" );
           
            var BOTTOM = 90; 
           // Var BOTTOM = 100 - Angle;
            var Angle = Window.prompt( 'DONNER un POURCENTAGE ' + "\n"+ "\n" + "de  1 a 100 "); 
              
           if ( Angle <= 1 ) {
              
                  
                    
               var BOTTOM = 99 - Angle*1.5;
            
               var LEFT = Angle*1.5;
    
    
               alert ( "ANGLE 1 = " + Angle + "   " + "BOTTOM = " + BOTTOM + "   " + "LEFT = " + LEFT + "     ")
            
            }
            
            else if ( Angle>1, Angle <=2 ) {
              
              
            
               var BOTTOM = 98 - Angle*1.5;
                    
               var LEFT = Angle*1.3;
               
               alert ( "ANGLE 2 = " + Angle + "   " + "BOTTOM = " + BOTTOM + "   " + "LEFT = " + LEFT + "     ")
            
            }
            
            
            var TOP = 100 - BOTTOM;
            var RIGHT = 100 - LEFT;
            
            desc52.putUnitDouble( id253, id254, TOP);
            var id255 = charIDToTypeID( "Left" );
            var id256 = charIDToTypeID( "#Prc" );
            desc52.putUnitDouble( id255, id256, LEFT );
            var id257 = charIDToTypeID( "Btom" );
            var id258 = charIDToTypeID( "#Prc" );
               
            desc52.putUnitDouble( id257, id258, BOTTOM );
            var id259 = charIDToTypeID( "Rght" );
            var id260 = charIDToTypeID( "#Prc" );
             
            desc52.putUnitDouble( id259, id260, RIGHT );
            var id261 = charIDToTypeID( "Rctn" );
            desc51.putObject( id252, id261, desc52 );
            executeAction( id248, desc51, DialogModes.NO );
    :blink:

  4. #24
    Membre Avatar de Mac64
    Inscription
    janvier 2007
    Localisation
    Biarritz
    Âge
    37
    Messages
    210
    Boîtier
    Canon EOS 400D | 430Ex
    Objectif(s)
    17-50 2.8 Tamron | 70-200 4 L USM | EFS 18-55 du kit

    Par défaut

    Citation Envoyé par beocien Voir le message
    Je viens d alleger le script de moitie et il devrait marcher pour les nombres negatifs :


    SCRIPT

    Mac64 ce bout de code devrait te permettre de tester " BOTTOM " et " TOP " en utilisant les valeur 1 et 2 pour les angles :
    Je viens de tester avec 1° et ca me trace effectivement le cadre

  5. #25
    Membre Avatar de beocien
    Inscription
    décembre 2005
    Localisation
    Bayonne
    Âge
    75
    Messages
    5 675
    Boîtier
    1DX
    Objectif(s)
    16x35 2.8 II 17x40 70x200 f/2.8 100x400 ecran calibre TAMRON 150-600

    Par défaut

    C est un bon debut. Et avec 2 ?

  6. #26
    Membre Avatar de Mac64
    Inscription
    janvier 2007
    Localisation
    Biarritz
    Âge
    37
    Messages
    210
    Boîtier
    Canon EOS 400D | 430Ex
    Objectif(s)
    17-50 2.8 Tamron | 70-200 4 L USM | EFS 18-55 du kit

    Par défaut

    Je me pose une petite question, Avec ton script si j'ai bien compris ça recarde pour garder "le maximum" de pixels (et ça ne respecte donc pas le ratio 10 par 15)
    C'est bien ça ?

    Est ce qu'il serait pas possible d'utiliser les cosinus et compagnie pour déterminer la zone max que l'ont peut récupérer après rotation mais tout en conservant le ratio 10 par 15
    En fait faire ce que fait Cameraraw par défaut quand on utilise le redressement
    Il suffirait juste que le script fasse une "pause" pour qu'on choisisse quelle partie de l'image on veut garder et le tour serait joué

    C'est peut etre ce que fait le script quand il fonctionne normalement.. je sais pas

  7. #27
    Membre Avatar de Mac64
    Inscription
    janvier 2007
    Localisation
    Biarritz
    Âge
    37
    Messages
    210
    Boîtier
    Canon EOS 400D | 430Ex
    Objectif(s)
    17-50 2.8 Tamron | 70-200 4 L USM | EFS 18-55 du kit

    Par défaut

    Citation Envoyé par beocien Voir le message
    C est un bon debut. Et avec 2 ?
    Ca marche aussi avec 2

  8. #28
    Membre Avatar de beocien
    Inscription
    décembre 2005
    Localisation
    Bayonne
    Âge
    75
    Messages
    5 675
    Boîtier
    1DX
    Objectif(s)
    16x35 2.8 II 17x40 70x200 f/2.8 100x400 ecran calibre TAMRON 150-600

    Par défaut

    Citation Envoyé par Mac64 Voir le message
    Je me pose une petite question, Avec ton script si j'ai bien compris ça recarde pour garder "le maximum" de pixels (et ça ne respecte donc pas le ratio 10 par 15)
    C'est bien ça ?

    Est ce qu'il serait pas possible d'utiliser les cosinus et compagnie pour déterminer la zone max que l'ont peut récupérer après rotation mais tout en conservant le ratio 10 par 15
    En fait faire ce que fait Cameraraw par défaut quand on utilise le redressement
    Il suffirait juste que le script fasse une "pause" pour qu'on choisisse quelle partie de l'image on veut garder et le tour serait joué

    C'est peut etre ce que fait le script quand il fonctionne normalement.. je sais pas
    C est faisable je pense mais quand je recadre apres redressement je ne m occupe pas du ratio c est pourquoi je l ai concu comme cela !

    J ai fait des essais ce matin avec sinus et cosinus sans succes ( sinus 4 5 .. passent en negatif par moment ) - a voir

    R: l appellation du sinus est " Math.sin " ex : Math.sin(Angle)


    Si cela marche avec le 2 prends le nouveau script ( plus court ) et mets des balises /* */ pour isoler une partie des else if et voir ou cela accroche ?

  9. #29
    Membre Avatar de beocien
    Inscription
    décembre 2005
    Localisation
    Bayonne
    Âge
    75
    Messages
    5 675
    Boîtier
    1DX
    Objectif(s)
    16x35 2.8 II 17x40 70x200 f/2.8 100x400 ecran calibre TAMRON 150-600

    Par défaut

    Mac64 je t envoie un script qui respecte le ratio :

    REDRESSEMENT RECADRAGE RATIO

    Il s arrete avec la selection ( boite de dialogue ) - il faut que l outil " Rectangle de selection " soit pret - tu deplaces la selection puis tu continues le script atn.



    R : J ai ameliore les precedents sur les memes liens ( les recharger ).
    Dernière modification par beocien ; 22/01/2008 à 12h29.

  10. #30
    Membre
    Inscription
    octobre 2007
    Localisation
    Montpellier
    Âge
    40
    Messages
    37
    Boîtier
    EOS 300 argentique; EOS 400D
    Objectif(s)
    Basculer au numerique...

    Par défaut

    Alors le probleme vient tres certainement de moi comme je debute a peine mais j'ai une erreur quand j'utilise le script voir l'image ci dessous .Merci

  11. #31
    Membre Avatar de beocien
    Inscription
    décembre 2005
    Localisation
    Bayonne
    Âge
    75
    Messages
    5 675
    Boîtier
    1DX
    Objectif(s)
    16x35 2.8 II 17x40 70x200 f/2.8 100x400 ecran calibre TAMRON 150-600

    Par défaut

    Il faut absolument que tu charges dans la palette des scripts ( scripts atn ) le fichier ANGLE_MESURE.atn ( petite fleche en haut a droite de la palette des scripts ! ).:blink:

  12. #32
    Membre
    Inscription
    octobre 2007
    Localisation
    Montpellier
    Âge
    40
    Messages
    37
    Boîtier
    EOS 300 argentique; EOS 400D
    Objectif(s)
    Basculer au numerique...

    Par défaut

    Merci mais je me suis mis sur lightroom et j'ai trouvé comment ca fonctionne!Ca me redresse et recadre les photos tout seul!Magique ce lightroom!!

  13. #33
    Membre Avatar de beocien
    Inscription
    décembre 2005
    Localisation
    Bayonne
    Âge
    75
    Messages
    5 675
    Boîtier
    1DX
    Objectif(s)
    16x35 2.8 II 17x40 70x200 f/2.8 100x400 ecran calibre TAMRON 150-600

    Par défaut



    A la suite de l effacement fortuit de mes 2 disques durs ( un moment de fatigue et un coup de doigt malencontreux en installant win98 sur un 3eme DD ! :censored: ) j ai tout reinstalle et mon script ne fonctionnait plus.


    J ai fini par trouver : l angle que je copiait apparaissait avec un point et maintenant il apparait avec une virgule !:surprise:


    Ce qui fait que pour le programme ce n est plus un nombre.


    J ai resolu le probleme en rajoutant la fonction Virgule()

    Code:
    function Virgule()
    {
    //Angle = "12,25"
    
    SousChaine = ",";
    
    Resultat = Angle.indexOf(SousChaine);
    if(Resultat==-1)
    {
    Angle = Angle
    
    }
    else
    {
    i = Resultat + 1;
    Resultat2 = Angle.substring(i, i+8)
    j = Resultat - 1;
    Resultat1 = Angle.substring(j+1, j - 8)
    Point = "."
    Angle = (Resultat1 + Point + Resultat2)
    
    
    }
    
    }

    juste apres l appel de l angle :


    Angle = Window.prompt( 'DONNER L ANGLE ' + "\n" + "\n" + "de 1 a 100 " );

    Virgule()



    Et j ai rectifie les scripts en telechargement. :blink:

  14. #34
    Membre Avatar de Mac64
    Inscription
    janvier 2007
    Localisation
    Biarritz
    Âge
    37
    Messages
    210
    Boîtier
    Canon EOS 400D | 430Ex
    Objectif(s)
    17-50 2.8 Tamron | 70-200 4 L USM | EFS 18-55 du kit

    Par défaut

    J'espère que t'avais une bonne sauvegarde :s

    les problèmes de disque dur, la hantise en informatique...

    A+

  15. #35
    Membre Avatar de beocien
    Inscription
    décembre 2005
    Localisation
    Bayonne
    Âge
    75
    Messages
    5 675
    Boîtier
    1DX
    Objectif(s)
    16x35 2.8 II 17x40 70x200 f/2.8 100x400 ecran calibre TAMRON 150-600

    Par défaut

    Citation Envoyé par Mac64 Voir le message
    J'espère que t'avais une bonne sauvegarde :s

    les problèmes de disque dur, la hantise en informatique...

    A+
    J ai juste perdu 2 logiciels de confort et 1 mois de raw - je suis devenu un peu parano avec les annees .....:rolleyes:

  16. #36
    Membre Avatar de beocien
    Inscription
    décembre 2005
    Localisation
    Bayonne
    Âge
    75
    Messages
    5 675
    Boîtier
    1DX
    Objectif(s)
    16x35 2.8 II 17x40 70x200 f/2.8 100x400 ecran calibre TAMRON 150-600

    Par défaut

    J ai fait quelques progres en javascript .........

    J ai beaucoup allege les precedents et supprime l utilisation du script .atn

    Comme toujours il faut les mettre dans ....\Adobe Photoshop CS2\Paramètres prédéfinis\Scripts

    et les appeler par un script .atn ( j utilise la touche F7 pour m en servir )


    L un est identique aux precedents pour les proportions - SelectFixe.jsx


    L autre preserve les proportions de l image d origine - RecadrageCrop.jsx

    :blink:

  17. #37
    Membre Avatar de beocien
    Inscription
    décembre 2005
    Localisation
    Bayonne
    Âge
    75
    Messages
    5 675
    Boîtier
    1DX
    Objectif(s)
    16x35 2.8 II 17x40 70x200 f/2.8 100x400 ecran calibre TAMRON 150-600

    Par défaut

    Et un petit dernier proportionnel et sans boites de dialogues qui utilise l outil trait :

    RecadrageCropTrait.jsx

    Je rajoute le code ici :

    Code:
    //REDRESSEMENT RECADRAGE avec PROPORTIONS utilisant l outil trait
    
    //J ai recupere la fonction qui permet de trouver l angle sur ps-cripts.com - une idee 
    // de Patrick et Mike Hale dans ce topic : http://ps-scripts.com/bb/viewtopic.php?t=841
    
    //Script realise sur https://www.eos-numerique.com/forums/newreply.php?do=newreply&p=653101
    //par Beocien ( moi meme ) avec l aide de DomDom_one et Mac64
    
    /*
    Ce script sert a redresser l image et a la recadrer 
       
    Je l ai calibre a peu pres jusqu a un angle de 12° - sans garantie apres !
     
    Mettre le script RecadrageCropTrait.jsx dans ....\Adobe Photoshop CS2\Paramètres prédéfinis\Scripts
    et l appeler au moyen d un script .atn
     
     
    MODE D EMPLOI :
     
     Utiliser l outil Trait - Maj U - ( cliquez sur l outil Rectangle en maintenant le click 
     et choisir l Outil Trait ) et tracer un trait pour determiner l angle de recadrage.
    
     
    Mon adresse email = hallun@free.fr - Faites moi part des bugs !!!
    */
    
    var strtRulerUnits = preferences.rulerUnits
    preferences.rulerUnits = Units.PIXELS
    
    
    
    //largeur et hauteur de l image
    
    docH = activeDocument.width
    docV = activeDocument.height
    
    
    // reference open document
    var docRef = app.activeDocument;
    
    // find the angle from the line using the line tool ( en utilisant l outil trait )
    Angle = findAngle();
    
    Erreur()
    
    Negatif()
    
    if (Angle>45) { Angle = 90 - Angle; }  
    
    // straighten the image  = redresse l image
    docRef.rotateCanvas(Angle);
    
    // remove the line used for measuring angle = on supprime le trait et on aplatit
    docRef.activeLayer.remove();
    docRef.flatten()
    
    
    AngleRedresse()
    
    RecadreAngle()
    
    app.preferences.rulerUnits = startRulerUnits
    app.preferences.typeUnits = startTypeUnits
    app.displayDialogs = startDisplayDialogs
    
    
    function AngleRedresse() {
        
        // Taille du recadrage en fonction de l angle de redressement - de 0° a 14
    
        if ( Angle <= 1 ) {
                 Angle0 = Angle * 1.26; 
            }
    
        else if ( Angle > 1, Angle <= 2 ) {
                
                Angle0 = Angle * 1.26; 
            }
    
        else if ( Angle > 2, Angle <= 3 ) {
                
                Angle0 = Angle * 1.22; 
            }
    
        else if ( Angle > 3, Angle <= 4 ) {
                
                Angle0 = Angle * 1.19; 
            }
    
        else if ( Angle > 4, Angle <= 5 ) {
                
                Angle0 = Angle * 1.15;  
            }
    
        else if ( Angle > 5, Angle <= 6 ) {
                
                Angle0 = Angle * 1.13; 
            }
    
        else if ( Angle > 6, Angle <= 7 ) {
                
                Angle0 = Angle * 1.09;  
            }
    
        else if ( Angle > 7, Angle <= 8 ) {
                
                Angle0 = Angle * 1.06; 
            }
    
        else if ( Angle > 8, Angle <= 9 ) {
                
                Angle0 = Angle * 1.04; 
            }
    
        else if ( Angle > 9, Angle <= 10 ) {
                
                Angle0 = Angle * 1.01; 
            }
    
        else if ( Angle > 10, Angle <= 11 ) {
                
                Angle0 = Angle * 0.98; 
            }
    
        else if ( Angle > 11, Angle <= 11.5 ) {
                
                Angle0 = Angle * 0.96; 
            }
    
        else if ( Angle > 11.5, Angle <= 12 ) {
                
                Angle0 = Angle * 0.95; 
            }
    
        else if ( Angle > 12, Angle <= 12.5 ) {
                
                Angle0 = Angle * 0.94; 
            }
    
        else if ( Angle > 12.5, Angle <= 13 ) {
                
                Angle0 = Angle * 0.93; 
            }
    
        else if ( Angle > 13, Angle <= 14 ) {
                
                Angle0 = Angle * 0.92;
            }
    
        else if ( Angle > 14 ) {
                alert ( "   LE RESULTAT N EST PAS GARANTIT AU DESSUS D UN ANGLE DE 14 DEGRES !!!!    " + "\n" + "\r" + "\r" + "\t" + "  Vous devriez prendre le temps de CADRER CORRECTEMENT   ??? " );
                alert ( " IL VAUT MIEUX REFAIRE PLUSIEURS FOIS CE SCRIPT AVEC UN ANGLE INFERIEUR !   ")
                
                Angle0 = Angle * 0.73;
            }
    }
    
    
    function Virgule()
    
    //Enleve la virgule de l angle copie et met un point a la place
    
    {
    
    SousChaine = ",";
    
    Resultat = Angle.indexOf(SousChaine);
    if(Resultat==-1)
    {
    Angle = Angle
    if ( isNaN(Angle)==true )
        {
        Angle = Window.prompt( 'ERREUR : ' + 'DONNER L ANGLE ' + "\n" + "\n" + "de  1 a 100 " );
        Erreur()
        }
    
    }
    else
    {
    i = Resultat + 1;
    Resultat2 = Angle.substring(i, i+8)
    j = Resultat - 1;
    Resultat1 = Angle.substring(j+1, j - 8)
    Point = "."
    Angle = (Resultat1 + Point + Resultat2)
    if ( isNaN(Angle)==true )
        {
        Angle = Window.prompt( 'ERREUR : ' + 'DONNER L ANGLE ' + "\n" + "\n" + "de  1 a 100 " );
        Erreur()
        }
    
    }
    
    }
    
    
    function Erreur() // remplace le point la virgule de l angle par un point
    {
    	if ( isNaN(Angle)==true )
    	{
    	
    	Virgule()
    	}
    }
    
    
    function Negatif() 
    
    //si l angle est negatif le remet en positif
    
    {
    
        if ( Angle < 0 ) {
                Angle = - Angle;
            }
    
        else {
                Angle = Angle;
            }
    }
    
    
    
    function RecadreAngle()
    {
      Angle1 = Angle0*docH/100
      Angle2 = Angle0*docV/100
    
      LEFT = Angle1
      TOP = Angle2
    
      docRef.resizeCanvas( docH - 2*LEFT,docV - 2*TOP)
      docRef.trim(TrimType.TOPLEFT, true, false, true, false)
    }
    
    
    function findAngle(){
       var lineStart = activeDocument.pathItems[0].subPathItems[0].pathPoints[0].anchor;
       var lineEnd = activeDocument.pathItems[0].subPathItems[0].pathPoints[3].anchor;
       
       var a = Math.abs(lineStart[0]-lineEnd[0]);
       var o = Math.abs(lineStart[1]-lineEnd[1]);
       var c = (180/Math.PI) * Math.atan2(o,a);
    
       if(lineStart[1] < lineEnd[1]){//negative angle
          c = -c;
       };       
       return c;
      
    };

    :blink:

  18. #38
    Membre Avatar de beocien
    Inscription
    décembre 2005
    Localisation
    Bayonne
    Âge
    75
    Messages
    5 675
    Boîtier
    1DX
    Objectif(s)
    16x35 2.8 II 17x40 70x200 f/2.8 100x400 ecran calibre TAMRON 150-600

    Par défaut

    Hum..........

    Une relance un peu tardive:

    Plus besoin de copier/coller l angle mesure !


    Code:
    //REDRESSEMENT RECADRAGE sans PROPORTIONS
    
    //Script realise sur https://www.eos-numerique.com/forums/newreply.php?do=newreply&p=653101
    //par Beocien ( moi meme ) avec l aide de DomDom_one et Mac64
    
    /*
    Ce script sert a redresser l image et a la recadrer
       
    Je l ai calibre a peu pres jusqu a un angle de 11° - sans garantie apres !
     
    Mettre MesureRecadrage.jsx dans ....\Adobe Photoshop CS2\Paramètres prédéfinis\Scripts
     
    MODE D EMPLOI :
     
     Utiliser d abord l outil mesure ( cliquez sur l outil pipette en maintenant le click 
     et choisir l Outil Mesure )  pour determiner l angle de recadrage.
     
     Faites OK.
     
    Mon adresse email = hallun@free.fr - Faites moi part des bugs !!!
    */
    
    
    var strtRulerUnits = preferences.rulerUnits
    preferences.rulerUnits = Units.PIXELS
    preferences.rulerUnits = Units.CM
    
    //Je cree un calque pour etre sur d aplatir les cadres existants eventuels :
    
    var docRef = app.activeDocument;
    var layerRef1 = docRef.artLayers.add();
    
    
    docRef.flatten(); //aplatir les calques
    
    //DonnerAngle()
     var myState = app.activeDocument.activeHistoryState;
    // id201 donne l angle de l instrument mesure !
    
    // =======================================================
    var id199 = charIDToTypeID( "Rtte" );
        var desc55 = new ActionDescriptor();
        var id200 = charIDToTypeID( "null" );
            var ref11 = new ActionReference();
            var id201 = charIDToTypeID( "Dcmn" );
            var id202 = charIDToTypeID( "Ordn" );
            var id203 = charIDToTypeID( "Frst" );
            ref11.putEnumerated( id201, id202, id203 );
        desc55.putReference( id200, ref11 );
        var id204 = charIDToTypeID( "Angl" );
        var id205 = charIDToTypeID( "#Ang" );
        desc55.putUnitDouble(id201, id204, id205 );
     //       desc2.putUnitDouble( idAngl, idAng, 4.390000 );
    //executeAction( id199, desc55, DialogModes.NO );
    
    var debutAngle = executeAction( id199, desc55, DialogModes.NO );
    
    
    
    Angle = debutAngle.getDouble(charIDToTypeID("Angl"));
    Angle = parseFloat(Angle);
    
    //executeAction( id199, desc55, DialogModes.NO );
    //alert(Angle)
    
    //app.activeDocument.activeHistoryState = myState; //retour a l historique precedent
    //sans appliquer la rotation
    
    executeAction( id199, desc55, DialogModes.NO );
    
    
    
    //commence la selection
    
    var id248 = charIDToTypeID( "setd" );
    var desc51 = new ActionDescriptor();
    var id249 = charIDToTypeID( "null" );
    var ref23 = new ActionReference();
    var id250 = charIDToTypeID( "Chnl" );
    var id251 = charIDToTypeID( "fsel" );
    ref23.putProperty( id250, id251 );
    desc51.putReference( id249, ref23 );
    var id252 = charIDToTypeID( "T   " );
    var desc52 = new ActionDescriptor();
    var id253 = charIDToTypeID( "Top " );
    var id254 = charIDToTypeID( "#Prc" );
    
    Negatif()
    
    function Negatif() {
    
        //valeur negative :
    
        if ( Angle < 0 ) {
                Angle = - Angle;
            }
    
        else {
                Angle = Angle;
            }
    }
    
    
    AngleRedresse()
    
    function AngleRedresse() {
     
       
                
        if ( Angle <= 1 ) {
                TOP = ( Angle * 3.00);
                LEFT = (Angle * 1.2);
            }
    
        else if ( Angle > 1, Angle <= 2 ) {
                TOP = ( Angle * 2.55);
                LEFT = (Angle * 1.1);
            }
    
        else if ( Angle > 2, Angle <= 3 ) {
                TOP = (Angle * 2.45);
                LEFT = (Angle * 1.08);
            }
    
        else if ( Angle > 3, Angle <= 4 ) {
                TOP = (Angle * 2.36);
                LEFT = (Angle * 1.05);
            }
    
        else if ( Angle > 4, Angle <= 5 ) {
                TOP = ( Angle * 2.33);
                LEFT = (Angle * 1.);
            }
    
        else if ( Angle > 5, Angle <= 6 ) {
                TOP = (Angle * 2.26);
                LEFT = (Angle * 0.96);
            }
    
        else if ( Angle > 6, Angle <= 7 ) {
                TOP = ( Angle * 2.17);
                LEFT = (Angle * 0.93);
            }
    
        else if ( Angle > 7, Angle <= 8 ) {
                TOP = ( Angle * 2.06);
                LEFT = (Angle * 0.90);
            }
    
        else if ( Angle > 8, Angle <= 9 ) {
                TOP = ( Angle * 2.01);
                LEFT = (Angle * 0.87);
            }
    
        else if ( Angle > 9, Angle <= 9.5 ) {
                TOP = (Angle * 1.96);
                LEFT = (Angle * 0.83);
            }
        
        else if ( Angle > 9.5, Angle <= 10 ) {
                TOP = (Angle * 1.92);
                LEFT = (Angle * 0.815);
            }
         
        else if ( Angle > 10, Angle <= 10.5 ) {
                TOP = (Angle * 1.90);
                LEFT = (Angle * 0.80);
            }    
    
        else if ( Angle > 10.5, Angle <= 11 ) {
                TOP = ( Angle * 1.88);
                LEFT = (Angle * 0.785);
            }
    
        else if ( Angle > 11, Angle <= 11.5 ) {
                TOP = ( Angle * 1.86);
                LEFT = (Angle * 0.77);
            }
    
        else if ( Angle > 11.5, Angle <= 12 ) {
                TOP = (Angle * 1.83);
                LEFT = (Angle * 0.755);
            }
    
        else if ( Angle > 12, Angle <= 12.5 ) {
                TOP = (Angle * 1.81);
                LEFT = (Angle * 0.74);
            }
    
        else if ( Angle > 12.5, Angle <= 13 ) {
                TOP = ( Angle * 1.79);
                LEFT = (Angle * 0.725);
            }
    
        else if ( Angle > 13, Angle <= 13.5 ) {
                TOP = ( Angle * 1.77);
                LEFT = (Angle * 0.708);
            }
    
        else if ( Angle > 13.5, Angle <= 14 ) {
                TOP = ( Angle * 1.74);
                LEFT = (Angle * 0.695);
            }
    
        else if ( Angle > 14 ) {
                alert ( "   LE RESULTAT N EST PAS GARANTIT AU DESSUS D UN ANGLE DE 14 DEGRES !!!!    " + "\n" + "\r" + "\r" + "\t" + "  Vous devriez prendre le temps de CADRER CORRECTEMENT   ??? " );
                TOP = ( Angle * 1.72);
                LEFT = (Angle * 0.680);
            }
    }
    
    //TOP = parseInt( TOP );
    //LEFT = parseInt(LEFT );
    
    PortPays();
    
    function PortPays() {
    
        //*******************************************************************************************
        // si l image est en PAYSAGE :
    
        if ( app.activeDocument.width / app.activeDocument.height > 1 ) 
            { 
            
                BOTTOM = 100 - TOP ;
                RIGHT = 100 - LEFT;
                TOPS = TOP;
                LEFTS = LEFT;
                RIGHTS = RIGHT;
                BOTTOMS = BOTTOM;
            }
    
        else {
                BOTTOM = 100 - TOP ;
                RIGHT = 100 - LEFT;
                TOPS = LEFT;
                LEFTS = TOP;
                RIGHTS = BOTTOM;
                BOTTOMS = RIGHT;
            }
    }
    
    //alert(TOPS);
    
    Selection()
    
    function Selection() {
        // Creation de la selection ( Prc = % a la place de Pxl ) qui se fait en pourcentage
    //alert(TOPS);
        desc52.putUnitDouble( id253, id254, TOPS );
        var id255 = charIDToTypeID( "Left" );
        var id256 = charIDToTypeID( "#Prc" );
        desc52.putUnitDouble( id255, id256, LEFTS );
        var id257 = charIDToTypeID( "Btom" );
        var id258 = charIDToTypeID( "#Prc" );
        desc52.putUnitDouble( id257, id258, BOTTOMS );
        var id259 = charIDToTypeID( "Rght" );
        var id260 = charIDToTypeID( "#Prc" );
        desc52.putUnitDouble( id259, id260, RIGHTS );
        var id261 = charIDToTypeID( "Rctn" );
        desc51.putObject( id252, id261, desc52 );
        executeAction( id248, desc51, DialogModes.NO );
    
        // =======================================================
        //ROGNER les pixels trensparents sur la copie de la selection
    
    
        var id910 = charIDToTypeID( "CpTL" );
        executeAction( id910, undefined, DialogModes.NO );
        // =======================================================
        var id911 = charIDToTypeID( "Hd  " );
        var desc213 = new ActionDescriptor();
        var id912 = charIDToTypeID( "null" );
        var list16 = new ActionList();
        var ref191 = new ActionReference();
        var id913 = charIDToTypeID( "Lyr " );
        var id914 = charIDToTypeID( "Bckg" );
        ref191.putProperty( id913, id914 );
        list16.putReference( ref191 );
        desc213.putList( id912, list16 );
        executeAction( id911, desc213, DialogModes.NO );
    
        // =======================================================
        var id915 = stringIDToTypeID( "trim" );
        var desc214 = new ActionDescriptor();
        var id916 = stringIDToTypeID( "trimBasedOn" );
        var id917 = stringIDToTypeID( "trimBasedOn" );
        var id918 = charIDToTypeID( "Trns" );
        desc214.putEnumerated( id916, id917, id918 );
        var id919 = charIDToTypeID( "Top " );
        desc214.putBoolean( id919, true );
        var id920 = charIDToTypeID( "Btom" );
        desc214.putBoolean( id920, true );
        var id921 = charIDToTypeID( "Left" );
        desc214.putBoolean( id921, true );
        var id922 = charIDToTypeID( "Rght" );
        desc214.putBoolean( id922, true );
        executeAction( id915, desc214, DialogModes.NO );
    
    }
    
    
    docRef.flatten(); //aplatir les calques
    
    zoom0()
    
    function zoom0()
    {
        var id57 = charIDToTypeID( "slct" );
        var desc15 = new ActionDescriptor();
        var id58 = charIDToTypeID( "null" );
        var ref6 = new ActionReference();
        var id59 = charIDToTypeID( "Mn  " );
        var id60 = charIDToTypeID( "MnIt" );
        var id61 = charIDToTypeID( "FtOn" );   
        ref6.putEnumerated( id59, id60, id61 );
        desc15.putReference( id58, ref6 );
        executeAction( id57, desc15, DialogModes.NO );
    }

 

 
Page 2 sur 2 PremièrePremière 12

Informations de la discussion

Utilisateur(s) sur cette discussion

Il y a actuellement 1 utilisateur(s) naviguant sur cette discussion. (0 utilisateur(s) et 1 invité(s))

Discussions similaires

  1. Redresser une photo
    Par beber dans le forum Les Logiciels photo
    Réponses: 2
    Dernier message: 05/11/2007, 21h15
  2. redresser des photos prises au grand angle
    Par Gibson dans le forum Discussions générales
    Réponses: 3
    Dernier message: 02/05/2007, 12h08
  3. redresser une photo
    Par regis dans le forum Albums
    Réponses: 11
    Dernier message: 04/10/2005, 06h28
  4. redresser les fuyantes
    Par Bousco Luno dans le forum Présentations & règlements
    Réponses: 2
    Dernier message: 08/08/2005, 16h45

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •  
Fuseau horaire GMT +1. Il est actuellement 09h46.
Powered by vBulletin® Version 4.2.5
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.
Search Engine Optimisation provided by DragonByte SEO (Pro) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.
Auto Closing Of Threads provided by Threads Auto Close (Lite) - vBulletin Mods & Addons Copyright © 2024 DragonByte Technologies Ltd.
Copyright © Eos-numerique 2004-2023
vBulletin Skin By: PurevB.com