<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent posts to Convert Operation Hangs on Specific Image</title><link>https://sourceforge.net/p/im4java/discussion/910877/thread/09bd86e3/</link><description>Recent posts to Convert Operation Hangs on Specific Image</description><atom:link href="https://sourceforge.net/p/im4java/discussion/910877/thread/09bd86e3/feed.rss" rel="self"/><language>en</language><lastBuildDate>Fri, 22 Sep 2017 19:02:53 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/im4java/discussion/910877/thread/09bd86e3/feed.rss" rel="self" type="application/rss+xml"/><item><title>Convert Operation Hangs on Specific Image</title><link>https://sourceforge.net/p/im4java/discussion/910877/thread/09bd86e3/?limit=25#47da</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Hi Bernard,&lt;/p&gt;
&lt;p&gt;Thanks for the quick reply. &lt;/p&gt;
&lt;p&gt;So we kept digging deeper and a coworker found that if she did the following, it worked.&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span&gt;&lt;/span&gt;                &lt;span class="n"&gt;ConvertCmd&lt;/span&gt; &lt;span class="n"&gt;cmd&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;ConvertCmd&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;
                &lt;span class="n"&gt;String&lt;/span&gt; &lt;span class="n"&gt;enginePath&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s"&gt;"C:\\Program Files\\ImageMagick-7.0.5-Q16"&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
                &lt;span class="c1"&gt;// create the operation, add images and operators/options&lt;/span&gt;
                &lt;span class="n"&gt;IMOperation&lt;/span&gt; &lt;span class="n"&gt;op&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="k"&gt;new&lt;/span&gt; &lt;span class="n"&gt;IMOperation&lt;/span&gt;&lt;span class="o"&gt;();&lt;/span&gt;
                &lt;span class="n"&gt;op&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;addImage&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"C:\\WorkStuff\\badOriginal.jpeg"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
                &lt;span class="n"&gt;op&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;resize&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="mi"&gt;800&lt;/span&gt;&lt;span class="o"&gt;,&lt;/span&gt;&lt;span class="mi"&gt;600&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
                &lt;span class="n"&gt;op&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;addImage&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s"&gt;"C:\\WorkStuff\\fixedHappy2.jpg"&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
                &lt;span class="c1"&gt;// execute the operation&lt;/span&gt;
                &lt;span class="n"&gt;cmd&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;setSearchPath&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="n"&gt;enginePath&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
                &lt;span class="n"&gt;cmd&lt;/span&gt;&lt;span class="o"&gt;.&lt;/span&gt;&lt;span class="na"&gt;run&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="n"&gt;op&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Moving one step at a time towards the broken code.  We found it was the pipeIn that caused the problem.&lt;/p&gt;
&lt;p&gt;Bernie (lol, hehe) ~ I think I'll go ahead and perhaps try to dig into that errorConsumer.  I can't let that become production code, but if it'll help the open source, I'll dig into it and try to get you some more info. &lt;/p&gt;
&lt;p&gt;As currently our solution is to modify the code to not use the pipe input.  We don't seem to have a use case for why the Pipe object was used and so long as it tests fine without using the pipe, we're going that route. &lt;/p&gt;
&lt;p&gt;&amp;lt;3 im4java and thanks for the reply.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Eric Manzitti</dc:creator><pubDate>Fri, 22 Sep 2017 19:02:53 -0000</pubDate><guid>https://sourceforge.netedff6c5f9d4ede1a43d0296ac7fe52fa445a7460</guid></item><item><title>Convert Operation Hangs on Specific Image</title><link>https://sourceforge.net/p/im4java/discussion/910877/thread/09bd86e3/?limit=25#383a</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Hi Eric,&lt;/p&gt;
&lt;p&gt;this is indeed strange. My first try would be to add an error-consumer. This might be the cause of the hang if the internal buffer for the stderr is not cleared. The output might also give some additional insights. This does not deal with the root-cause of course.&lt;/p&gt;
&lt;p&gt;Bernhard&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Bernhard Bablok</dc:creator><pubDate>Fri, 22 Sep 2017 07:18:26 -0000</pubDate><guid>https://sourceforge.net02130503b7940143ecf78f2472769a041724cc3c</guid></item><item><title>Convert Operation Hangs on Specific Image</title><link>https://sourceforge.net/p/im4java/discussion/910877/thread/09bd86e3/?limit=25#251f</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;:::java&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;            &lt;span class="nt"&gt;System&lt;/span&gt;&lt;span class="nc"&gt;.out.println&lt;/span&gt;&lt;span class="o"&gt;(&lt;/span&gt;&lt;span class="s2"&gt;"We're going to get the image info.  For two images."&lt;/span&gt;&lt;span class="o"&gt;);&lt;/span&gt;
            &lt;span class="nt"&gt;String&lt;/span&gt; &lt;span class="nt"&gt;incomingFileBad&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"C:\\WorkStuff\\badOriginal444.jpeg"&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;String&lt;/span&gt; &lt;span class="nt"&gt;incomingFileGood&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"C:\\WorkStuff\\badRandomProp.jpeg"&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;String&lt;/span&gt; &lt;span class="nt"&gt;incomingFileNormal&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"C:\\WorkStuff\\001.jpg"&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;String&lt;/span&gt; &lt;span class="nt"&gt;mimeType&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"image/jpg"&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;String&lt;/span&gt; &lt;span class="nt"&gt;enginePath&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"C:\\Program Files\\ImageMagick-7.0.5-Q16"&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;Info&lt;/span&gt; &lt;span class="nt"&gt;imageInfoBad&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nt"&gt;null&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;Info&lt;/span&gt; &lt;span class="nt"&gt;imageInfoGood&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nt"&gt;null&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;Info&lt;/span&gt; &lt;span class="nt"&gt;imageInfo3&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="nt"&gt;null&lt;/span&gt;&lt;span class="o"&gt;;&lt;/span&gt;
            &lt;span class="nt"&gt;try&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;//                  imageInfo = new Info (incomingFileBad, true);&lt;br/&gt;
//                  imageInfo2 = new Info (incomingFileGood, true);&lt;br/&gt;
//                  imageInfo3 = new Info (incomingFileNormal, true);&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;                imageInfoBad = new Info (incomingFileBad);
                imageInfoGood = new Info (incomingFileGood);
                imageInfo3 = new Info (incomingFileNormal);                 
            } catch (InfoException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            if (imageInfoBad != null) {
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;//                  System.out.println("We made it through the INFO gathering and here it is : " + imageInfo.toString());&lt;br/&gt;
//                  System.out.println("We made it through the INFO gathering and here it is : " + imageInfo2.toString());&lt;br/&gt;
//                  System.out.println("We made it through the INFO gathering and here it is : " + imageInfo3.toString());&lt;br/&gt;
                    System.out.println("Pause");&lt;br/&gt;
                    List&amp;lt;String&amp;gt; listOfDiffs = new ArrayList&amp;lt;String&amp;gt;();&lt;br/&gt;
                    boolean found = false;&lt;br/&gt;
                    Enumeration&amp;lt;String&amp;gt; badNames = imageInfoBad.getPropertyNames();&lt;br/&gt;
                    //Enumeration&amp;lt;String&amp;gt; goodNames = imageInfoGood.getPropertyNames();&lt;br/&gt;
                    int badNamesCounter = 0, goodNamesCounter =0;&lt;br/&gt;
                    while (badNames.hasMoreElements()){&lt;br/&gt;
                        String badFileProperty = badNames.nextElement();&lt;br/&gt;
                        goodNamesCounter =0;&lt;br/&gt;
                        //System.out.println(badFileProperty);&lt;br/&gt;
                        badNamesCounter++;&lt;br/&gt;
                        Enumeration&amp;lt;String&amp;gt; goodNames = imageInfoGood.getPropertyNames();&lt;br/&gt;
                        while (goodNames.hasMoreElements()){                          &lt;br/&gt;
                            String goodFileProperty = goodNames.nextElement();&lt;br/&gt;
                            //System.out.println(goodFileProperty);&lt;br/&gt;
                            goodNamesCounter++;&lt;br/&gt;
                            if (goodFileProperty.equals(badFileProperty)) {&lt;br/&gt;
                                found = true;                             &lt;br/&gt;
                            }&lt;br/&gt;
                        }&lt;br/&gt;
                        if (!found) {&lt;br/&gt;
                            listOfDiffs.add(badFileProperty);                         &lt;br/&gt;
                        }&lt;br/&gt;
                        found = false;                    &lt;br/&gt;
                    }&lt;br/&gt;
                    System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");&lt;br/&gt;
                    System.out.println("There were " + badNamesCounter + " bad image properties");&lt;br/&gt;
                    System.out.println("There were " + goodNamesCounter + " good image properties");&lt;br/&gt;
                    System.out.println("There were " + listOfDiffs.size() + " differences in good/bad properties");&lt;br/&gt;
                    System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");&lt;br/&gt;
                    if (listOfDiffs.size() &amp;gt; 0) {&lt;br/&gt;
                        for(String entry : listOfDiffs) {&lt;br/&gt;
                            System.out.println("Differing Property: " + entry);&lt;br/&gt;
                        }&lt;br/&gt;
                    } else {&lt;br/&gt;
                        System.out.println("No differing properties...");&lt;br/&gt;
                    }&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;            }
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;:::&lt;/p&gt;
&lt;p&gt;That produces the following output: &lt;br/&gt;
 ``&lt;br/&gt;
 We're going to get the image info.  For two images.&lt;br/&gt;
Pause&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;There were 151 bad image properties
There were 155 good image properties
There were 1 differences in good/bad properties
&lt;/pre&gt;&lt;/div&gt;


&lt;p&gt;Differing Property: Properties:exif:Artist:exif:Copyright:exif:Flash&lt;br/&gt;
''&lt;/p&gt;
&lt;p&gt;Now the difference betweent he two images is one is the bad image and one is that same image simply resaved (meaning It'll work)&lt;/p&gt;
&lt;p&gt;So digging deeper here, it looks like perhaps that property causing image magik to get mad...&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Eric Manzitti</dc:creator><pubDate>Thu, 21 Sep 2017 19:37:01 -0000</pubDate><guid>https://sourceforge.net46c604b45b60430f26a95d584224495cefc9695a</guid></item><item><title>Convert Operation Hangs on Specific Image</title><link>https://sourceforge.net/p/im4java/discussion/910877/thread/09bd86e3/?limit=25#47f2</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Oh sorry, here is the image file in question. &lt;/p&gt;
&lt;p&gt;And a link to it: &lt;/p&gt;
&lt;p&gt;&lt;a href="https://drive.google.com/open?id=0B-9pALoPVAUeMmU1RWdpdVJvdkE" rel="nofollow"&gt;https://drive.google.com/open?id=0B-9pALoPVAUeMmU1RWdpdVJvdkE&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Eric Manzitti</dc:creator><pubDate>Thu, 21 Sep 2017 14:55:24 -0000</pubDate><guid>https://sourceforge.netdbf5ac4d4ea8b5f2e2170058009c24337283e3e2</guid></item><item><title>Convert Operation Hangs on Specific Image</title><link>https://sourceforge.net/p/im4java/discussion/910877/thread/09bd86e3/?limit=25#79ac</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;Hello.  I have an instance where a specific image file is causing the convert.exe to hang.  However when I run the same command through either the command line in Windows, or through a runtime execution inside java, the operation complets successfully.&lt;/p&gt;
&lt;p&gt;The below code should indicate, I hope, that I am performing the same operation (in a local environment) between the im4java interface and the command line.&lt;/p&gt;
&lt;p&gt;Super weird.  I've tried an assortment of different commands in im4java, nothing seems to matter.  Even just tried to 'resave' it.&lt;/p&gt;
&lt;p&gt;Speaking of resaving.  Whenever I modify the image in anyway, even a simple resaving, it then clears up whatever is wrong with the image and the im4java interface deals with it just fine.&lt;/p&gt;
&lt;p&gt;Can anyone reproduce the hanging below?  We first found this to be happening in our prod environment on a linux box.&lt;/p&gt;
&lt;p&gt;Anyone happen to know or have an idea how I could try to detect the problem aspect(s) of this image before I send it to image magik through im4java?  That way we dont have hanging threads out there?&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;            &lt;span class="s-Atom"&gt;boolean&lt;/span&gt; &lt;span class="s-Atom"&gt;runImageTest&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s-Atom"&gt;true&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt; 
            &lt;span class="nv"&gt;String&lt;/span&gt; &lt;span class="s-Atom"&gt;domainName&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="s2"&gt;"google.com"&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
            &lt;span class="nv"&gt;String&lt;/span&gt; &lt;span class="s-Atom"&gt;command&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="err"&gt;"&lt;/span&gt;&lt;span class="nv"&gt;C&lt;/span&gt;&lt;span class="s-Atom"&gt;:\\&lt;/span&gt;&lt;span class="nv"&gt;Program&lt;/span&gt; &lt;span class="nv"&gt;Files&lt;/span&gt;&lt;span class="s-Atom"&gt;\\&lt;/span&gt;&lt;span class="nv"&gt;ImageMagick&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mf"&gt;7.0.5&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;Q16&lt;/span&gt;&lt;span class="s-Atom"&gt;\\convert&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="s-Atom"&gt;exe&lt;/span&gt; &lt;span class="nv"&gt;C&lt;/span&gt;&lt;span class="s-Atom"&gt;:\\&lt;/span&gt;&lt;span class="nv"&gt;WorkStuff&lt;/span&gt;&lt;span class="s-Atom"&gt;\\badOriginal&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="s-Atom"&gt;jpeg&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="s-Atom"&gt;quality&lt;/span&gt; &lt;span class="mi"&gt;40&lt;/span&gt; &lt;span class="nv"&gt;C&lt;/span&gt;&lt;span class="s-Atom"&gt;:\\&lt;/span&gt;&lt;span class="nv"&gt;WorkStuff&lt;/span&gt;&lt;span class="s-Atom"&gt;\\fixedOriginal1&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="s-Atom"&gt;jpg&lt;/span&gt;&lt;span class="s2"&gt;";&lt;/span&gt;
&lt;span class="s2"&gt;            StringBuffer output = new StringBuffer();&lt;/span&gt;
&lt;span class="s2"&gt;            Process p;&lt;/span&gt;
&lt;span class="s2"&gt;            try {&lt;/span&gt;
&lt;span class="s2"&gt;                p = Runtime.getRuntime().exec(command);&lt;/span&gt;
&lt;span class="s2"&gt;                p.waitFor();&lt;/span&gt;
&lt;span class="s2"&gt;                BufferedReader reader =&lt;/span&gt;
&lt;span class="s2"&gt;                                new BufferedReader(new InputStreamReader(p.getInputStream()));&lt;/span&gt;

&lt;span class="s2"&gt;                            String line = "";&lt;/span&gt;
&lt;span class="s2"&gt;                while ((line = reader.readLine())!= null) {&lt;/span&gt;
&lt;span class="s2"&gt;                    output.append(line + "&lt;/span&gt;&lt;span class="s-Atom"&gt;\n&lt;/span&gt;&lt;span class="s2"&gt;");&lt;/span&gt;
&lt;span class="s2"&gt;                }&lt;/span&gt;

&lt;span class="s2"&gt;            } catch (Exception e) {&lt;/span&gt;
&lt;span class="s2"&gt;                e.printStackTrace();&lt;/span&gt;
&lt;span class="s2"&gt;            }&lt;/span&gt;
&lt;span class="s2"&gt;            System.out.println(output.toString());&lt;/span&gt;

&lt;span class="s2"&gt;            if (runImageTest) {&lt;/span&gt;
&lt;span class="s2"&gt;                System.out.println("&lt;/span&gt;&lt;span class="nv"&gt;We&lt;/span&gt;&lt;span class="err"&gt;'&lt;/span&gt;&lt;span class="s-Atom"&gt;re&lt;/span&gt; &lt;span class="s-Atom"&gt;going&lt;/span&gt; &lt;span class="s-Atom"&gt;to&lt;/span&gt; &lt;span class="s-Atom"&gt;do&lt;/span&gt; &lt;span class="s-Atom"&gt;some&lt;/span&gt; &lt;span class="s-Atom"&gt;custom&lt;/span&gt; &lt;span class="s-Atom"&gt;arguments&lt;/span&gt;&lt;span class="s2"&gt;");&lt;/span&gt;
&lt;span class="s2"&gt;                String myCommand = "&lt;/span&gt;&lt;span class="s-Atom"&gt;quality&lt;/span&gt;&lt;span class="s2"&gt;";&lt;/span&gt;
&lt;span class="s2"&gt;                String incomingFile = "&lt;/span&gt;&lt;span class="nv"&gt;C&lt;/span&gt;&lt;span class="s-Atom"&gt;:\\&lt;/span&gt;&lt;span class="nv"&gt;WorkStuff&lt;/span&gt;&lt;span class="s-Atom"&gt;\\badOriginal&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="s-Atom"&gt;jpg&lt;/span&gt;&lt;span class="s2"&gt;";&lt;/span&gt;
&lt;span class="s2"&gt;                String outgoingFile = "&lt;/span&gt;&lt;span class="nv"&gt;C&lt;/span&gt;&lt;span class="s-Atom"&gt;:\\&lt;/span&gt;&lt;span class="nv"&gt;WorkStuff&lt;/span&gt;&lt;span class="s-Atom"&gt;\\fixedOriginal11&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="s-Atom"&gt;jpg&lt;/span&gt;&lt;span class="s2"&gt;";&lt;/span&gt;
&lt;span class="s2"&gt;                String mimeType = "&lt;/span&gt;&lt;span class="s-Atom"&gt;image&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="s-Atom"&gt;jpg&lt;/span&gt;&lt;span class="s2"&gt;";&lt;/span&gt;
&lt;span class="s2"&gt;                double qualityValue = 05;&lt;/span&gt;
&lt;span class="s2"&gt;                String stylePath = "&lt;/span&gt;&lt;span class="nv"&gt;C&lt;/span&gt;&lt;span class="s-Atom"&gt;:\\&lt;/span&gt;&lt;span class="nv"&gt;WorkStuff&lt;/span&gt;&lt;span class="s-Atom"&gt;\\&lt;/span&gt;&lt;span class="nv"&gt;HMS&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="s-Atom"&gt;test&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="s-Atom"&gt;scales&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="s-Atom"&gt;csv&lt;/span&gt;&lt;span class="s2"&gt;";&lt;/span&gt;
&lt;span class="s2"&gt;                String enginePath = "&lt;/span&gt;&lt;span class="nv"&gt;C&lt;/span&gt;&lt;span class="s-Atom"&gt;:\\&lt;/span&gt;&lt;span class="nv"&gt;Program&lt;/span&gt; &lt;span class="nv"&gt;Files&lt;/span&gt;&lt;span class="s-Atom"&gt;\\&lt;/span&gt;&lt;span class="nv"&gt;ImageMagick&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="mf"&gt;7.0.5&lt;/span&gt;&lt;span class="o"&gt;-&lt;/span&gt;&lt;span class="nv"&gt;Q16&lt;/span&gt;&lt;span class="s2"&gt;";&lt;/span&gt;
&lt;span class="s2"&gt;                String style = "&lt;/span&gt;&lt;span class="nv"&gt;WIDTH&lt;/span&gt;&lt;span class="s2"&gt;";&lt;/span&gt;

&lt;span class="s2"&gt;                InputStream inputStream = null;&lt;/span&gt;
&lt;span class="s2"&gt;                CreatedFilesList imageReturnObject = null;&lt;/span&gt;
&lt;span class="s2"&gt;                OutputStream outputStream = null;&lt;/span&gt;
&lt;span class="s2"&gt;                try {&lt;/span&gt;
&lt;span class="s2"&gt;                    inputStream = new FileInputStream(incomingFile);&lt;/span&gt;
&lt;span class="s2"&gt;                    outputStream = new FileOutputStream(outgoingFile);&lt;/span&gt;
&lt;span class="s2"&gt;                    IMOperation imOperation = new IMOperation();&lt;/span&gt;
&lt;span class="s2"&gt;                    //imOperation.list("&lt;/span&gt;&lt;span class="s-Atom"&gt;debug&lt;/span&gt;&lt;span class="s2"&gt;");&lt;/span&gt;
&lt;span class="s2"&gt;                    imOperation.addImage(FilenameUtils.getExtension(incomingFile) + "&lt;/span&gt;&lt;span class="p"&gt;:-&lt;/span&gt;&lt;span class="s2"&gt;");              &lt;/span&gt;
&lt;span class="s2"&gt;                    imOperation.quality(qualityValue);              &lt;/span&gt;
&lt;span class="s2"&gt;                    imOperation.addImage(FilenameUtils.getExtension(outgoingFile) + "&lt;/span&gt;&lt;span class="p"&gt;:-&lt;/span&gt;&lt;span class="s2"&gt;");&lt;/span&gt;

&lt;span class="s2"&gt;                    Pipe pipeIn = new Pipe(inputStream, null);&lt;/span&gt;
&lt;span class="s2"&gt;                    ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();&lt;/span&gt;
&lt;span class="s2"&gt;                    Pipe pipeOut = new Pipe(null, byteArrayOutputStream);&lt;/span&gt;
&lt;span class="s2"&gt;                    ConvertCmd convertCmd = new ConvertCmd();&lt;/span&gt;
&lt;span class="s2"&gt;                    convertCmd.setInputProvider(pipeIn);&lt;/span&gt;
&lt;span class="s2"&gt;                    convertCmd.setOutputConsumer(pipeOut);&lt;/span&gt;
&lt;span class="s2"&gt;                    convertCmd.setSearchPath(enginePath);&lt;/span&gt;
&lt;span class="s2"&gt;                    System.out.println("&lt;/span&gt;&lt;span class="nv"&gt;We&lt;/span&gt; &lt;span class="s-Atom"&gt;are&lt;/span&gt; &lt;span class="s-Atom"&gt;about&lt;/span&gt; &lt;span class="s-Atom"&gt;to&lt;/span&gt; &lt;span class="s-Atom"&gt;start&lt;/span&gt; &lt;span class="s-Atom"&gt;the&lt;/span&gt; &lt;span class="s-Atom"&gt;operation&lt;/span&gt;&lt;span class="s2"&gt;");&lt;/span&gt;
&lt;span class="s2"&gt;                    convertCmd.run(imOperation);&lt;/span&gt;
&lt;span class="s2"&gt;                    outputStream.write(byteArrayOutputStream.toByteArray());&lt;/span&gt;
&lt;span class="s2"&gt;                } catch (Exception e) {&lt;/span&gt;
&lt;span class="s2"&gt;                    e.printStackTrace();&lt;/span&gt;
&lt;span class="s2"&gt;                } finally {&lt;/span&gt;
&lt;span class="s2"&gt;                    outputStream.close();&lt;/span&gt;
&lt;span class="s2"&gt;                    inputStream.close();&lt;/span&gt;
&lt;span class="s2"&gt;                }&lt;/span&gt;
&lt;span class="s2"&gt;                System.out.println("&lt;/span&gt;&lt;span class="nv"&gt;Holy&lt;/span&gt; &lt;span class="nv"&gt;Moly&lt;/span&gt; &lt;span class="s-Atom"&gt;we&lt;/span&gt; &lt;span class="s-Atom"&gt;made&lt;/span&gt; &lt;span class="s-Atom"&gt;it&lt;/span&gt; &lt;span class="s-Atom"&gt;through&lt;/span&gt;&lt;span class="err"&gt;"&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt; 
            &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Eric Manzitti</dc:creator><pubDate>Thu, 21 Sep 2017 14:53:33 -0000</pubDate><guid>https://sourceforge.net80704128b89a7be97c93db6ca702046b116600a8</guid></item></channel></rss>