/*************************************************************************************************************************************/ /* */ /* 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