/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        S I G N A T U R E   I N V I S I B L E   D ' U N E   I M A G E  :                                                           */
/*                                                                                                                                   */
/*                                                                                                                                   */
/*        Author of '$xci/estampille$K' :                                                                                            */
/*                                                                                                                                   */
/*                    Jean-Francois COLONNA (LACTAMME, 1993??????????).                                                              */
/*                                                                                                                                   */
/*************************************************************************************************************************************/

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        I N T E R F A C E   ' listG '  :                                                                                           */
/*                                                                                                                                   */
/*                                                                                                                                   */
/*        :Debut_listG:                                                                                                              */
/*        :Fin_listG:                                                                                                                */
/*                                                                                                                                   */
/*************************************************************************************************************************************/

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        D I R E C T I V E S   S P E C I F I Q U E S   D E   C O M P I L A T I O N  :                                               */
/*                                                                                                                                   */
/*************************************************************************************************************************************/

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        F I C H I E R S   D ' I N C L U D E S  :                                                                                   */
/*                                                                                                                                   */
/*************************************************************************************************************************************/
#include  INCLUDES_BASE
#include  image_image_CONTOURS_EXT
#include  image_image_ALPHABET_0_EXT
#include  image_image_ALPHABET_1_EXT
#include  image_image_ALPHABET_2_EXT
                                        /* L'include de 'image_image_ALPHABET_3_DEF' a ete supprime le 20110502094940...             */
#include  image_image_ALPHABET_3_EXT
#include  image_image_ALPHABET_4_EXT
                                        /* Introduit le 20161116111422...                                                            */
#include  image_image_ALPHABET_5_EXT
                                        /* Introduit le 20230516182851...                                                            */
#include  image_image_ALPHABET_6_EXT
                                        /* Introduit le 20240419180012...                                                            */
#include  image_image_ALPHABETS_EXT

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        P A R A M E T R E S  :                                                                                                     */
/*                                                                                                                                   */
/*************************************************************************************************************************************/
#define   SIGNER                                                                                                                        \
                    VRAI

#define   LISIBLE                                                                                                                       \
                    FAUX                                                                                                                \
                                        /* Indique si l'estampille est minuscule ('FAUX') ou bien doit rester lisible ('VRAI').      */

#define   ABSCISSE_DE_LA_SIGNATURE                                                                                                      \
                    _____cNORMALISE_OX(SOUS(Xcentre,MOIT(ONZE)))                                                                        \
                                        /* Abscisse de la signature dans 'ImageR' (qui occupe un rectangle 11x5).                    */
#define   ORDONNEE_DE_LA_SIGNATURE                                                                                                      \
                    _____cNORMALISE_OY(SOUS(Ycentre,MOIT(CINQ)))                                                                        \
                                        /* Ordonnee de la signature dans 'ImageR' (qui occupe un rectangle 11x5).                    */

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        M A C R O S   U T I L E S  :                                                                                               */
/*                                                                                                                                   */
/*************************************************************************************************************************************/

/*===================================================================================================================================*/
/*************************************************************************************************************************************/
/*                                                                                                                                   */
/*        S I G N A T U R E   I N V I S I B L E   D ' U N E   I M A G E  :                                                           */
/*                                                                                                                                   */
/*************************************************************************************************************************************/
BCommande(nombre_d_arguments,arguments)
/*-----------------------------------------------------------------------------------------------------------------------------------*/
     Bblock
     DEFV(CHAR,INIC(POINTERc(nom_imageR),NOM_PIPE));
     DEFV(CHAR,INIC(POINTERc(nom_imageA),NOM_PIPE));
     DEFV(Logical,INIT(signer,SIGNER));
     DEFV(Logical,INIT(lisible,LISIBLE));
                                        /* Indique si l'estampille est minuscule ('FAUX') ou bien doit rester lisible ('VRAI').      */
     DEFV(pointF_2D,emplacement_de_la_signature_invisible);
                                        /* Donne le coin "bas-gauche" dans l'image Resultat ; ces donnees sont normalisees           */
                                        /* telles que l'unite represente la taille de l'image.                                       */
     /*..............................................................................................................................*/
     INITIALISATION_POINT_2D(emplacement_de_la_signature_invisible,ABSCISSE_DE_LA_SIGNATURE,ORDONNEE_DE_LA_SIGNATURE);
                                        /* Introduit le 20050310160247 pour eviter de voir "n'importe quoi" lorsque l'option         */
                                        /* "Parametres=VRAI" est active...                                                           */

     GET_ARGUMENTSg(nombre_d_arguments
                   ,BLOC(GET_ARGUMENT_C("imageA=""A=",nom_imageA);
                         GET_ARGUMENT_C("imageR=""R=",nom_imageR);
                         GET_ARGUMENT_L("signer=",signer);
                         GET_ARGUMENT_L("lisible=",lisible);
                         GIT_ARGUMENT_F("x=""X=",ASD1(emplacement_de_la_signature_invisible,x),ABSCISSE_DE_LA_SIGNATURE);
                         GIT_ARGUMENT_F("y=""Y=",ASD1(emplacement_de_la_signature_invisible,y),ORDONNEE_DE_LA_SIGNATURE);
                         )
                    );

     Test(PAS_D_ERREUR(CODE_ERROR(Iload_image(ImageR,nom_imageA))))
          Bblock
          Test(IL_FAUT(signer))
               Bblock
               CALS(Isignature_invisible(ImageR,ImageR,ADRESSE(emplacement_de_la_signature_invisible),lisible));
               Eblock
          ATes
               Bblock
               Eblock
          ETes

          CALi(Iupdate_image(nom_imageR,ImageR));
          Eblock
     ATes
          Bblock
          Test__CODE_ERREUR__ERREUR07;
          Eblock
     ETes

     RETU_Commande;
     Eblock
ECommande



Copyright © Jean-François COLONNA, 2019-2024.
Copyright © CMAP (Centre de Mathématiques APpliquées) UMR CNRS 7641 / École polytechnique, Institut Polytechnique de Paris, 2019-2024.