I need to convert jpg,gif and eps files to pdf and vice versa. Is ImageMagick will be the best tool for this ? I have configure imagemagic with ubuntu 11.04 and using CLI trying to convert images into pdf, but quality is too bad. So what whoud be best approch to convertion ?
Thanks in Advance :)
You want to support two types of files; raster (jpg/gif) and vectorial (eps). Conversion from one set to the other is never lossless.
When converting from vectorial to raster or vice-versa, one crucial parameter is -density, that sets the image size before it gets converted.
Imagemagick is probably the right tool for vectorial to raster, it's just a matter of getting the parameters right. To transform raster to vectorial, better tools would probably be autotrace or potrace, but be aware these tools cannot do a perfect conversion.
Related
Task: I am trying to create multipage tiff files at high speed, 4 pages each 4096 x 4096 8-bit bitmap. Each page needs to be compressed with a codec before, that results in minimum loss, before being written.
What I am doing: I am using Libtiff (Standard version, no IPP or GPU) to create these multipage tiff files and compressing each page using JPEG (quality- 95). I tried to use TIFFWriteEncodedStrip(), TIFFDWriteEncodedTile() and TIFFWriteScanline() and the CPU choked. In order to optimize the process, I am using my own JPEG compression method which is able to compress fast.
Problem: I am not able to write a tiff file with pre-compressed data. I am not able to use any WiteEncoded..() or WriteRaw..() methods in LibTiff.
Questions:
Is there a method in Libtiff or extensions written by third party that would let people to write pre-encoded data to a multipage tiff file ?
Is there a version of Libtiff, IPP or GPU based that I can use that will speed up my process ?
Or, are there other libraries available to write multipage tiff files that would solve my problems ?
I am open to other compression codecs as well as long as it can save space with minimal loss.
Thanks in advance!
I'd like to know of alternatives to the command line program texturetool which comes with XCode for converting PNG Images to PowerVR compressed images.
For some reason texturetool takes about 50 seconds for converting some of the images I am working with. With about 1.3 mio images to be compressed, that would take several months.
Now I am looking for other tools running on either Linux or OSX, most preferable an in-memory C++ library, as the images are being generated procedurally.
Would love to get an answer.
Thanks.
Imagination Technologies have just released an updated version of their texture compression library That may be worth trying. (I know the page only says Windows and Linux but there appears to be a Mac version there as well).
Does anyone know of a adobe command line tool for creating jpegs from pdfs. This needs to cater for EPS 15 ( CS5 )?
I am converting EPS files to hi-res JPEGS with imagemagic but the results are mediocre even when the EPS is scanned at a very high-res. I think imagemagic works off the eps preview rather than rasterizing the vector.
GIMP is a bit better but not perfect.
Photoshop produces perfect jpegs but I dont know of a command line utility for this and have used the scripting tools but found them a pain on large batches.
I have distiller server but this ( to my knowledge ) does not produce jpegs.
You could try ghostscript:
gs -sDEVICE=ppmraw -sOutputFile=file%d.ppm -r600 -dNOPAUSE yourfile.ps -c quit
I would give GraphicsMagick http://www.graphicsmagick.org a try. It's a fork of Image Magick, more complete and updated.
It internally uses GhostScript as the PS interpreter, it does not use the embedded image but it completely renders the postscript.
For best results, make sure that you work at the right density. Instead of the PostScript standard of 72 DPI, try
gm convert -density 144 infile.eps outfile.jpg
with different -density values and see if the quality improves.
If you're out of luck to find a command line tool for this, you can create a macro to script GIMP or Photoshop to do the job.
You have not mentioned the operating system, but if you're using OS X you can write an AppleScript which will do the converting through commanding the GUI programs.
In Windows you can download a macro recorder program, but I have no experience with that in the new versions of Windows.
http://www.reaconverter.com/command-line-image-processing.html for 50USD
Inkscape is a mature free vector graphics program with commandline import/export options. I would be happy to test its ability to handle EPS15 but I don't have CS5 or any documents in that format. If you can post a link I'll try it out.
http://www.adobe.com/eeurope/products/indesignserver.html does the Job.
I need to do some light image processing on large image, and I try to use ImageMagick for that. Unfortunately, the API documentation has a very low information content, with documentation similar to:
MagickDeleteImageArtifact
MagickDeleteImageArtifact() deletes a wand artifact.
The format of the MagickDeleteImageArtifact method is:
MagickBooleanType MagickDeleteImageArtifact(MagickWand *wand, const char *artifact)
A description of each parameter follows:
image
the image.
artifact
the image artifact.
Could anybody suggest a few information sources for ImageMagick that would have, you know, information?
(and yes, this piece of "documentation" is pasted from ImageMagick web site, with the incorrect parameter)
Edit: Here is the context: I develop an iOS application, so I want to call ImageMagick from the C language (or Objective-C or C++). The need is to split large images that would not fit in the limited amount of RAM of an iOS device into smaller "tiles" (and downsample for lower resolution versions too. But once I have the tiles, I can do that using only iOS facilities).
Edit 2: Using the command line, I can achieve this tiling with the "convert" command with corresponding parameters. So my immediate need would be to translate such a command line command into the relevant set of API calls.
I am using ImageMagick from Commandline in .Net? Although a .Net wrapper (ImageMagick.Net in codeplex) is available but it is still in alpha and does not have implementation for all the command line options e.g Distort, Montage. Therefore I am using System.Diagnostics.Process class to invoke the ImageMagick command line.
What are the Pros/Con of this approach? I can see a performance issue if I have to perform multiple transformation on the same image and if I invoke the command twice then the commandline will load the Image twice. Is there a way I can chain the commands so that output of the first transformation is feed into the second command?
It will definitely be slower, and when you chain commands, you are going to be encoding and decoding the image into a format unnecessarily -- if you do this, make sure you use a lossless format like PNG for intermediate formats. To speed it up, use one without compression.
Two other choices
Use ImageMagick.NET and then wrap anything else you need from imagemagick yourself, probably by contributing to the project
My company, Atalasoft, has a free .NET imaging SDK with a lot of overlap with ImageMagick. You can download here: http://atalasoft.com/photofree -- Montage is basically the same as our Overlay commands and Distort is a 2D transformation, which are all included. If ImageMagick.NET can accept and produce .NET Bitmap objects, then you can use both together fairly easily.