אם יש לך מסמך ואתה רוצה להשתמש בתמונות שבתוך המסמך הזה במסמכים אחרים, הנה אחד הפתרונות. במאמר זה, נלמד לחלץ תמונות באופן פרוגרמטי ממסמכי PDF, Excel, PowerPoint ו-Word באמצעות Java.

חלץ תמונות ממסמכים ב-Java

חילוץ תמונה Java API

ניתוח מסמכים וחילוץ נתונים ב-Java

לחילוץ תמונות, נשתמש ב-GroupDocs.Parser for Java. Java API זה תומך בניתוח מסמכים ובחילוץ תמונות, טקסט ומטא נתונים ממסמכי עיבוד תמלילים, גיליונות אלקטרוניים, מצגות, ארכיונים ומסמכי דוא"ל. להלן פורמטי המסמכים הנתמכים על ידי Java API לחילוץ תמונות.

| סוג מסמך | פורמטי קבצים |

| — | —- |

| מסמכי עיבוד תמלילים | DOC, DOCX, DOCM, DOT, DOTX, DOTM, ODT, OTT, RTF |

| גיליונות אלקטרוניים | XLS, XLSX, XLSM, XLSB, XLT, XLTX, XLTM, ODS, OTS, XLA, XLAM, NUMBERS |

| מצגות | PPT, PPTX, PPTM, PPS, PPSX, PPSM, POT, POTX, POTM, ODP, OTP |

| מסמכים ניידים | PDF |

| מיילים | EML, EMLX, MSG |

| ארכיון | ZIP |

לפני שתתחיל עם הדוגמאות שלהלן, הייתי ממליץ להגדיר את הסביבה על ידי הורדת הגרסה העדכנית ביותר של ניתוח מסמכים Java API מסעיף ההורדות או שאתה יכול להגדיר את התצורות הבאות ביישומי Java המבוססים על maven:

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
	<groupId>com.groupdocs</groupId>
	<artifactId>groupdocs-parser</artifactId>
	<version>20.8</version> 
</dependency>

חלץ תמונות ממסמכי PDF ב-Java

מסמך PDF לחילוץ תמונות

בצע את השלבים הפשוטים הבאים כדי לקבל את כל התמונות ממסמך PDF.

  1. יצירת אובייקט מחלקה Parser.
  2. התקשר לשיטת getImages של המחלקה Parser כדי לקבל את כל התמונות.
  3. חזור על תמונות באמצעות PageImageArea.
  4. שמור תמונות בשיטת השמירה של PageImageArea.

זה נעשה. ראה את הקוד המלא למטה. ניתן לשמור תמונות שחולצו בפורמטים BMP, GIF, JPEG, PNG ו- WebP.

// חלץ תמונות מ-Word, Excel, PowerPoint, מסמכי PDF באופן פרוגרמטי באמצעות GroupDocs.Parser עבור Java
try (Parser parser = new Parser("path/document.pdf")) {
	// חלץ תמונות
	Iterable<PageImageArea> images = parser.getImages();

	// צור את האפשרויות לשמירת תמונות בפורמט PNG
	ImageOptions options = new ImageOptions(ImageFormat.Png);
	int imageNumber = 0;

	// חזור על תמונות ושמור
	for (PageImageArea image : images) {
		// הדפס את אינדקס העמוד, המלבן וסוג קובץ התמונה:
		System.out.println(String.format("Page: %d, R: %s, Type: %s", image.getPage().getIndex(), 
				image.getRectangle(), image.getFileType()));
		image.save(String.format("filesPath/image_%d.png", imageNumber), options);
		imageNumber++;
	}
}

אלו הן התמונות שאוחזרו ממסמך ה-PDF באמצעות הקוד שלמעלה.

חילצו תמונות ממסמך באמצעות Java

חלץ תמונות מקובצי Word, Excel, PowerPoint ב-Java

באופן דומה, ניתן להוציא את כל התמונות מקבצי עיבוד התמלילים, הגיליונות האלקטרוניים, המצגות, עם בסיס הקוד ללא שינוי. מה אתה צריך לשנות? רק נתיב מסמך המקור וסיומת הקובץ הנכונה.

Parser parser = new Parser("path/document.docx") // Word Document
// Parser parser = new Parser("path/document.xlsx") // Excel Spreadsheet
// Parser parser = new Parser("path/document.pptx") // PowerPoint Presentation
// Parser parser = new Parser("path/document.pdf") // PDF Document

חילוץ תמונה מדף מסמך ספציפי ב-Java

אם אתה לא רוצה לחלץ את כל התמונות מכל המסמך אלא מדף מסוים. הקוד שלהלן מדגים כיצד אנו יכולים לחלץ תמונות מעמוד מסוים של המסמך ב-Java.

// חלץ תמונות מדף ספציפי של Word, Excel, PowerPoint, PDF ב-Java באמצעות GroupDocs.Parser
try (Parser parser = new Parser("path/document.pdf"")) {
	// קבל את פרטי המסמך
	IDocumentInfo documentInfo = parser.getDocumentInfo();

	// צור את האפשרויות לשמירת תמונות בפורמט PNG
	ImageOptions options = new ImageOptions(ImageFormat.Jpeg);
	int imageNumber = 0;

	// חזרה על דפים
	for (int pageIndex = 0; pageIndex < documentInfo.getPageCount(); pageIndex++) {
		// הדפס מספרי עמודים
		System.out.println(String.format("Page %d/%d", pageIndex + 1, documentInfo.getPageCount()));

		// חזרה על תמונות - התעלמות מבדיקת NULL בדוגמאות
		for (PageImageArea image : parser.getImages(pageIndex)) {
			// הדפס מידע תמונה ושמור קובץ
			System.out.println(String.format("R: %s, Text: %s", image.getRectangle(), image.getFileType()));
			image.save(String.format("filesPath/image_%d.jpeg", imageNumber), options);
			imageNumber++;
		}
	}
}

סיכום

היום, למדנו כיצד לחלץ תמונות מכל המסמך, ומהדף הספציפי של מסמכי עיבוד תמלילים, גיליונות אלקטרוניים, מצגות ו-PDF ב-Java. אין הבדל בקוד אם עלינו לחלץ תמונות מהקבצים בפורמטים שונים של קבצים. אנחנו רק צריכים לעבור את הדרך והשם הנכונים. זהו זה.

ראה גם