<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />J'exécute actuellement un script qui insère une image de 1 Mo dans une table de données à l'aide du script simple suivant (où :link to image est un lecteur réseau sur lequel le jpg est stocké)
Formule( Ouvrir ( :Lien vers l'image, "jpg" ) ),
En raison de la taille de l'image, le tableau de données devient volumineux (j'ai environ 1 500 images) et j'ai essayé la fonction de recadrage mais je n'arrive pas à obtenir la syntaxe correcte.
l'une des différentes façons que j'ai essayées est la suivante (et probablement toutes les combinaisons de celle-ci, sauf la bonne !).
Formule( Ouvrir ( :Lien vers l'image, "jpg" ) ) << recadrer ( Gauche ( 190 ), haut( 0 ), bas( 1690 ), Droite ( 700 ) ),
Je sens que j'en suis proche mais pas tout à fait là.
Idéalement, cela ferait ce qui suit
- Ouvrez l'image (une à la fois pour économiser la mémoire de l'ordinateur ?)
- recadrez l’image, puis enregistrez le recadrage dans un dossier central. Cela permettrait ensuite une analyse d’image supplémentaire si nécessaire.
- Insérez le recadrage dans la table de données
- Fermez l'image d'origine.
Salutations
David
Voici un exemple de script qui fait ce que vous avez indiqué vouloir
Noms par défaut ici ( 1 ) ;
// Récupère la liste des images
liste de fichiers = Fichiers dans le répertoire ( "$SAMPLE_IMAGES" ) ;
// Boucle sur toutes les images, recadrage et enregistrement
Pour ( je = 1 , je <= N articles ( liste de fichiers ) , je ++,
// Utilisation d'un Substitute car la valeur d'extension doit être une expression,
// pas un littéral
Évaluer (
Remplaçant (
Expr (
img = Ouvrir ( "$SAMPLE_IMAGES\" || liste de fichiers [ je ] , __extension__ )
) ,
Expr ( __extension__ ) , Analyser ( Mot ( - 1 , liste de fichiers [ je ] , "." ) )
)
) ;
// Laisser le temps à l'image d'être lue
Attendez ( 1 ) ;
// Recadrer l'image
img << Recadrer ( Gauche ( 50 ) , Droite ( 100 ) , Haut ( 60 ) , Bas ( 150 ) ) ;
// Enregistre l'image dans un nouveau dossier
img << Enregistrer l'image ( "" || liste de fichiers [ je ] , Mot ( - 1 , liste de fichiers [ je ] , "." ) ) ;
) ;
// Crée un nouveau tableau
Nouveau tableau ( "Sans titre" ,
Ajouter des lignes ( N articles ( liste de fichiers ) ) ,
Nouvelle colonne ( "image" , Expression , "Aucun" , Définir les valeurs ( {} ) )
) ;
// Remplit la colonne image
avant-bras (
: image = Nouvelle image ( "" || liste de fichiers [ rangée ()])
) ;