<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head><body style="font-size:10pt;font-family:Sans Serif">
<p><span style="font-family:Courier;font-size:9pt">{{\<br />{{REM=                     NUMERISATION AVEC scanimage (nécessite aussi ImageMagick)                               }}\<br />{{REM=                                      testé sous Linux                                                       }}\<br />{{REM=                     lorsque vous double cliquez sur ce modèle, le scanner est actionné et                   }}\<br />{{REM=                     un nouveau document est créé avec l'image numérisée                                     }}\<br />{{REM=-------------------- cette commande est spécifique à chaque scanner -----------------------------------------}}\<br />{{REM=                     pour connaître les paramètres de votre scanner tapez dans une console                   }}\<br />{{REM=                     scanimage -f%d'|' cela affichera séparés par | les noms des scanners                    }}\<br />{{REM=                                exp :     brother3:net1;dev0|epkowa:libusb:001:007|                          }}\<br />{{REM=                     récuperer la partie du nom de votre scanner située avant les deux points                }}\<br />{{REM=                                exp :     epkowa       ou    brother3                                        }}\<br />{{REM=                     tapez dans une console,                                                                 }}\<br />{{REM=                                scanimage --help -d epkowa                   ou                              }}\<br />{{REM=                                scanimage --help -d brother3                                                 }}\<br />{{REM=                     cela listera les commandes possibles et acceptées par votre scanner                     }}\<br />{{REM=                                 exemple (tronqué) : pour     epkowa                                         }}\<br />{{REM=             Options specific to device `epkowa':                                                            }}\<br />{{REM=             Scan Mode:                                                                                      }}\<br />{{REM=                --mode Binary|Gray|Color [Binary]                                                            }}\<br />{{REM=                    Selects the scan mode (e.g., lineart, monochrome, or color).                             }}\<br />{{REM=                --depth 8|16 [inactive]                                                                      }}\<br />{{REM=                    Number of bits per sample, typical values are 1 for &quot;line-art&quot; and 8                     }}\<br />{{REM=                    for multibit scans.                                                                      }}\<br />{{REM=                --resolution 50..3200dpi [300]                                                               }}\<br />{{REM=                    Sets the resolution of the scanned image.                                                }}\<br />{{REM=                                                                                                             }}\<br />{{REM=     nous voyons que l'option --mode peut comporter trois valeurs : Binary|Gray|Color                        }}\<br />{{REM=     nous voyons que l'option --depth peut comporter deux valeurs : 8|16                                     }}\<br />{{REM=     nous voyons que l'option --</span><span style="font-family:Courier;font-size:9pt;color:#0000ff">resolution</span><span style="font-family:Courier;font-size:9pt"> peut comporter plusieurs valeurs de :</span><span style="font-family:Courier;font-size:9pt;color:#0000ff">50..3200 dpi</span><span style="font-family:Courier;font-size:9pt">                 }}\<br />{{REM=                                                                                                             }}\<br />{{REM=  ----------------- execution conditionnelle d'instructions -------------------------------------------------}}\<br />{{REM=  Le probleme est de faire en sorte que la macro ne s'execute qu'au moment de la creation du document        }}\<br />{{REM=  et non lors de la previsualisation                                                                         }}\<br />{{REM=  ASTUCE : on teste si la variable systeme : $SCRIPT_STATUS contient la valeur $FUSION_ADD ou $FUSION_CREATE }}\<br />{{REM=           ce qui est le cas lors de la creation effective de document.                                      }}\<br />{{REM=           et alors si vrai on positionne une variable validAction sur du vide sinon sur une valeur          }}\<br />{{REM=           quelconque M_NOP pour notre exemple.                                                              }}\<br />{{REM=           Le terme {{VAR = validAction}} etant place devant des instructions celles-ci seront prefixes      }}\<br />{{REM=           par le contenu de cette variable, soit M_NOP si on est en mode previsualisation                   }}\<br />{{REM=                                                  ou vide si on en mode creation effective du document       }}\<br />{{REM=           le fait d'avoir M_NOP comme prefixe rendra l'instruction non reconnaissable par le langage de     }}\<br />{{REM=           script et elle ne sera donc pas executee et donc invalidee.                                       }}\<br /><br />{{REM=-------------------- definir les paramètres de numérisation ----------------------------}}\<br />{{REM= certains scanners sont arrangeants d'autre }}\</span></p>
<p><span style="font-family:Courier;font-size:9pt">{{:: SET_VAR(scanMode ,Color)}}\      {{REM= brother = '24bit Color' / epson scansnap hp = 'Color'}}<br />{{:: SET_VAR(scanResolution ,100)}}\  {{REM= brother = '100' '150' '200' '300' '400' '600' '1200' '2400' '4800' '9600' / epson scansnap hp = '72'}}<br />{{:: SET_VAR(scanRotation ,0)}}\      {{REM= pour un ECG A4 horizontal le tourner de -90° peut être utile }}<br /><br />{{REM=-------------------- valider l'execution de la macro selon contexte -------------------------}}\<br />{{:: SET_VAR(validAction           ,{{:: SI(S,{{VAR=$SCRIPT_STATUS}},%%,$FUSION_ADD, ,{{:: SI(S,{{VAR=$SCRIPT_STATUS}},%%,$FUSION_CREATE,,M_NOP)}})}})}}\<br />{{::#SET_VAR(messageFinal,{{::#SI(S,{{VAR = validAction}},=,M_NOP,</span><span style="font-family:Courier;font-size:9pt;font-weight:600;color:#ff0000">Double cliquez sur ce modèle '</span><span style="font-family:Courier;font-style:italic;font-size:9pt;font-weight:600;color:#0000ff">Nouveau document avec le scanner.html</span><span style="font-family:Courier;font-size:9pt;font-weight:600;color:#ff0000">' pour actionner le scanner</span><span style="font-family:Courier;font-size:9pt">,)}})}}\<br /><br />{{REM=-------------------- définition des fichiers temporaires ------------------------------------}}\<br />{{:: SET_VAR(ListScanDevFile       ,{{AP=../../tmp/devicelist.txt}})}}\<br />{{:: SET_VAR(LastScannedFile       ,{{AP=../../tmp/lastscanned}})}}\<br /><br />{{REM=-------------------- récuperer la liste des scanners ----------------------------------------}}\<br />{{:: {{VAR = validAction}}EXE_PROCESS (WaitEnd,../../Plug/scanimage/listdevice.sh,{{VAR=ListScanDevFile}})}}\<br />{{:: SET_VAR(ListScanDevData       ,$File{{VAR=ListScanDevFile}})}}\                                     {{REM=      on charge dans 'ListScanDevData' le fichier de la liste des scanners }}<br /><br />{{REM=-------------------- positionner les actions selon les scanners trouvés----------------------}}\<br />{{:: VAR_SPLIT(scanDev_,{{VAR=ListScanDevData}},-+-,FALSE) }}\                                           {{REM=      on explose 'ListScanDevData' en plusieursvariables 'scanDev_0' 'scanDev_1' ... 'scanDev_n' }}<br />{{:: SET_VAR(validAction           ,{{:: TEST(S,{{VAR=scanDev_0}},=,,M_NOP,{{VAR = validAction}})}})}}\  {{REM=      si pas de scanner trouve en premiere position 'validAction' prend la valeur M_NOP}}<br />{{:: SET_VAR(doChoixListe          ,{{:: TEST(S,{{VAR=scanDev_1}},=,,NOP,DO_LISTE)}})}}\                 {{REM=      test si plus d'un scanner alors afficher la liste de choix}}<br />{{:: SET_VAR(resultatSelectLst     ,{{:: {{VAR = validAction}}{{VAR=doChoixListe}}({{VAR=ListScanDevData}},Liste des scanners,-+-,listConfirmation)}})}}\<br />{{:: SET_VAR(resultatSelectDev     ,{{:: SI(S,{{VAR=scanDev_1}},=,,{{VAR=scanDev_0}},{{:: SI(S,{{VAR=listConfirmation}},=,Accepted,{{VAR=resultatSelectLst}},)}})}})}}\<br />{{REM=-------------------- si selection du scanner vide alors on annule tout ----------------------}}\<br />{{:: SET_VAR(validAction           ,{{:: SI(S,{{VAR=resultatSelectDev}},=,,M_NOP,{{VAR = validAction}})}})}}\     {{REM=      si sélection du scanner vide ne pas lancer le process }}<br />{{REM=-------------------- detection de la brother----------------------------------------------------}}\<br />{{REM= dont le mode 'Color' doit être remplacé par '24bit Color' }}\<br />{{:: SET_VAR(scanMode, {{:: SI (S,{{:: LEFT({{VAR=resultatSelectDev}},7)}},=,brother,24bit Color,{{VAR=scanMode}})}})}}\<br />{{REM=-------------------- si tout est ok on y va -------------------------------------------------}}\<br />{{:: {{VAR = validAction}}EXE_PROCESS  (WaitEnd,../../Plug/scanimage/scan.sh,{{VAR=resultatSelectDev}},{{VAR=scanMode}},{{VAR=scanResolution}},{{VAR=scanRotation}},{{VAR=LastScannedFile}})}}\<br />}}\<br /><br /><hr></span><span style="font-family:Courier;font-size:9pt;font-weight:600">{{VAR=messageFinal}}</span><span style="font-family:Courier;font-size:9pt"><br />{{:: {{VAR = validAction}}INSERT_IMAGE ({{VAR=LastScannedFile}}.png, 700 , 700)}}<br /><br /><hr>{{::#SI(S,{{VAR  = validAction}},=,M_NOP,</span><span style="font-family:Courier;font-size:9pt;color:#f5f1f1">__ERREUR Fusion :__</span><span style="font-family:Courier;font-size:9pt">,)}}{{REM=      on affiche en blanc pour que ce soit invisible '__ERREUR Fusion :__' afin de bloquer l'insertion si action annulée }}</span></p>
</body></html>
