Extract a figure from a pdf file

12 visualizzazioni (ultimi 30 giorni)
MINATI PATRA
MINATI PATRA il 19 Apr 2024
Commentato: DGM il 2 Mag 2024
pdfFile = "example.pdf" % String
function extractImagePDF(pdfFile)
import java.io.*
import javax.imageio.ImageIO.*
import org.apache.pdfbox.*
filename = fullfile(pwd,pdfFile);
jFile = File(filename);
document = pdmodel.PDDocument.load(jFile);
catalog = document.getDocumentCatalog();
pages = catalog.getPages();
iter = pages.iterator();
% look for image objects on each page of the PDF
while (iter.hasNext())
page = iter.next();
resources = page.getResources();
pageImages = resources.getXObjectNames;
if ~isempty(pageImages)
imageIter = pageImages.iterator();
i = 1;
% extract each image object from page and write to destination folder
while (imageIter.hasNext())
key = imageIter.next();
if (resources.isImageXObject(key))
xObject = resources.getXObject(key);
img = xObject.getImage();
outputfile = File("Img_"+i +".jpg");
write(img, "jpg", outputfile);
end
i = i+1;
end
end
end
document.close();
end
%% I want to extract Figure 1 (Fig. 1. Geometrical representation of the model), Page 5 from the attached pdf
%% The code I got from this forum but unable to adjust
  2 Commenti
DGM
DGM il 2 Mag 2024
I don't know why the java tools can't find it, but here it is. I just used Inkscape to get the object.

Accedi per commentare.

Risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by