<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ù : lien vers l'image est un lecteur réseau où le jpg est stocké)
Formule( Ouvert ( :Lien vers l'image, "jpg" ) ),
En raison de la taille de l'image, le tableau de données devient volumineux (j'ai environ 1500 images) et j'ai essayé la fonction de recadrage mais je n'arrive pas à obtenir la syntaxe correcte
l'une des différentes manières que j'ai essayées est la suivante (et probablement toutes les combinaisons de ceci à l'exception de la bonne !).
Formule( Ouvert ( :Lien vers l'image, "jpg" ) ) << recadrer ( La gauche ( 190 ), Haut( 0 ), fond( 1690 ), Droit ( 700 ) ),
Je sens que je suis proche mais pas tout à fait là.
Idéalement, il 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 alors une analyse d'image supplémentaire si nécessaire.
- Insérer le recadrage dans le tableau de données
- Fermez l'image d'origine.
Salutations
David
Voici un exemple de script qui fait ce que vous avez indiqué que vous vouliez
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 substitut car la valeur d'extension doit être une expression,
// pas un littéral
Éval (
Remplaçant (
Expr (
image = Ouvert ( "$SAMPLE_IMAGES\" || liste de fichiers [ je ] , __extension__ )
) ,
Expr ( __extension__ ) , Analyser ( Mot ( - 1 , liste de fichiers [ je ] , "." ) )
)
) ;
// Laisser le temps à l'image d'être lue
Attendre ( 1 ) ;
// Rogner l'image
image << Recadrer ( La gauche ( 50 ) , Droit ( 100 ) , Haut ( 60 ) , Fond ( 150 ) ) ;
// Enregistrer l'image dans un nouveau dossier
image << 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 ( {} ) )
) ;
// Remplir la colonne image
avant chaque ligne (
: image = Nouvelle image ( "" || liste de fichiers [ ligne ()])
) ;