Convert images when extention is not in the filename using ImageMagick - linux

I would like to convert a jpg image to a pdf file using ImageMagick convert. I can successfully do so using the following:
convert image.jpg image.pdf
How could I convert the image if the original file name was "image" and not "image.jpg", and the target file name is "image" and not "image.pdf"?

You can use Explicit Image Format to force convert to use a specific format, regardless of filename.
convert jpg:image_source pdf:image_out

Related

JPEG hex text to Image?

I have an old database that has images in it that I want to extract. The images are in a column labelled jpg and have format :
ffd8ffe0 00104a46 49460001 01000001 00010000 fffe002e 496e7465 6c285229 204a5045 47204c69 62726172 792c2076 65727369 6f6e205b 312e3531 2e31332e 34355d00 ffdb0043 00080606 07060508 ...
I believe this is JPEG encoding. How do I turn this into a regular image? I tried copy pasting it into a text editor and naming the file image.jpg, but it won't open. Not sure what I'm missing. Is there a solution in python?

Convert Pdf buffer to jpg image buffer ( NodeJS )

I have extracted a PDF attachment from email and i have the content of PDF file like : Buffer ff 34 54 ,I want to convert this buffer to jpg image buffer. So that i can convert the the PDF to jpg image. Is there a way to convert the buffer directly?
I have saved the pdf file then using some third party module, I have converted that to jpg. But for that I have to write and read files many times.
Maybe this could help. Just googled pdf to image and got this.
npm install pdf-image
var PDFImage = require("pdf-image").PDFImage;
var pdfImage = new PDFImage("/tmp/slide.pdf");
pdfImage.convertFile().then(function (imagePaths) {
// [ /tmp/slide-0.png, /tmp/slide-1.png ]
});

Could not append multiple image files in a PDF

I know there are answers regarding this question, but hear me out.
I am currently trying to make PDF out of .jpg files using img2pdf in python, but instead of appending the files to PDF it overwrites the already existing pages from the PDF.
Here's the code
import os,img2pdf
os.chdir("/home/aditya/Desktop")#images are inside desktop
root, dir, files = list(os.walk(os.getcwd()))[0]#files contains the
list of all names of all .jpg file
which I want to convert into PDF
with open("pdf_file.pdf","ab") as f:#PDF file is set to append
for img_file in files:
with open(img_file,"rb") as im_file:#read bytes from the image files
f.write(img2pdf.convert(im_file))#this line overwrites the exisiting
pages in the pdf despite the fact that
I have set it to #append
Any reason for this? Is there special attribute I need to pass?
Any help is appreciated. Thanks
img2pdf.convert does not convert image by image. It either does a single image or all at once
img2pdf.convert(list of images )
with open("pdf_file.pdf","ab") as f: #Open a pdf
f.write(img2pdf.convert(files)) #convert all the images and write bytes

How to define the input image format for imagemagick convert?

How to define the input image format for imagemagick convert, if convert -identify can't identify the input format by content, but I know it format well, and I can define it directly?
For example, I want to convert the svg file to png, but I have an example of valid svg which can't be identified by content.
Step to reproduce
Take this valid https://commons.wikimedia.org/wiki/File:Svg.svg
Rename file Svg.svg to image
Try to convert image image.png
Got the
convert.exe: NoDecodeDelegateForThisImageFormat ' # error/constitute.cReadImage/501.
ImageMagick version is 6.9.2-0 Q16 x86 2015-08-15
Like this - you need to tell ImageMagick what to expect with the svg: prefix as it can't work out what is coming from the extension since there isn't one:
curl https://upload.wikimedia.org/wikipedia/commons/1/15/Svg.svg > image
convert svg:image image.png

Conversion of dat file into jpg

I have a set of .dat files. They are images of characters from the UNIPEN character database. I want to convert them into .jpg images for further processing. I use the following simple code for that, but it gives an error message saying that .dat extention is invalid. Can someone suggest a method for that?
Bitmap ^myImage = gcnew Bitmap("D:\\charimage\\a.dat");
myImage->Save("D:\\test.jpg");

Resources