Exec imagemagick convertir via C #
-
06-07-2019 - |
Question
Lorsque j'ouvre une fenêtre de commande dans Windows et que j'utilise la commande imagemagick convert:
convertir /somedir/Garden.jpg /somedir/Garden.png
Cela fonctionne comme prévu.
Ce que j'essaie de faire, c'est d'exécuter la même commande que ci-dessus en utilisant C #.
J'ai essayé d'utiliser System.Diagnostics.Process, mais aucun fichier foo.png n'a été créé.
J'utilise ce code:
var proc = new Process
{
StartInfo =
{
Arguments = string.Format("{0}Garden.jpg {1}Garden.png",
TEST_FILE_DIR,
TEST_FILE_DIR),
FileName = @"C:\xampp\ImageMagick-6.5.4-Q16\convert",
UseShellExecute = false,
CreateNoWindow = true,
RedirectStandardOutput = false,
RedirectStandardError = false
}
};
proc.Start();
Aucune exception n'est levée, mais aucun fichier .png n'est écrit non plus.
La solution
À mon avis, TEST_FILE_DIR
contient un espace - vous devez donc le citer.
Essayez ceci:
Arguments = string.Format("\"{0}Garden.jpg\" \"{1}Garden.png\"",
TEST_FILE_DIR,
TEST_FILE_DIR)
Vous pouvez également indiquer le nom du fichier, y compris son extension, par exemple.
FileName = @"C:\xampp\ImageMagick-6.5.4-Q16\convert.exe"
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow