Using unix within MATLAB

3 views (last 30 days)
Neil Bhattacharjee
Neil Bhattacharjee on 5 Jul 2016
Commented: Walter Roberson on 6 Jul 2016
I know there are several questions similar to this one, but none seem to be applicable in my scenario.
I want to convert a pdf (or eps) file from my matlab code into a png, using the downloadable software called ImageMagick.
In my command terminal, in order to execute this file format switch, I must type
convert file_name.pdf new_file_name_with_new_format.png
then, if I wanted to display it, (which I do), I go
display new_file_name_with_new_format.png
This works fine in the terminal window, but how can I do this in matlab? What specific syntax should I use.
I've tried some stuff with !, but to no solution.
Thanks,
Gauss.

Answers (1)

Walter Roberson
Walter Roberson on 6 Jul 2016
oldname = 'file_name.pdf';
newname = 'new_file_name_with_new_format.png'
command = sprintf('convert ''%s'' ''%s''', oldname, newname);
system(command);
command = sprintf('display ''%s''', newname);
system(command)
  2 Comments
Neil Bhattacharjee
Neil Bhattacharjee on 6 Jul 2016
Thanks for your reply.
I'm getting the problem
/bin/bash: convert: command not found
Could this possible be due to the location in which convert and display are in?
They are stored in
/opt/local/bin/convert
and
/opt/local/bin/display
Do I have to reference this somehow in my matlab code?
Thanks!
Walter Roberson
Walter Roberson on 6 Jul 2016
command = sprintf('/opt/local/bin/convert ''%s'' ''%s''', oldname, newname);

Sign in to comment.

Categories

Find more on Convert Image Type in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!