Regularnie korzystamy z plików PDF, ponieważ zapewniają one niesamowite wsparcie dla treści tekstowych i graficznych. Po umieszczeniu tych elementów w dokumencie, układ pliku jest zachowywany bez względu na platformę używaną do ich przeglądania. Ale możemy mieć wymóg wyodrębnienia obrazów PDF. Można to osiągnąć za pomocą aplikacji do przeglądania plików PDF, ale musisz ręcznie przeglądać każdą stronę i indywidualnie zapisywać każdy obraz. Co więcej, w innym scenariuszu, jeśli masz plik PDF oparty na obrazie i musisz wykonać OCR PDF, najpierw musisz wyodrębnić wszystkie obrazy, a następnie wykonać operację OCR. Staje się to naprawdę trudne, gdy masz duży zestaw dokumentów, ale rozwiązanie programistyczne może być niezawodnym i szybkim rozwiązaniem. Dlatego w tym artykule przyjrzymy się opcjom wyodrębniania obrazów z plików PDF za pomocą Java Cloud SDK
- Interfejs API konwersji plików PDF na JPG
- Wyodrębnij obrazy PDF w Javie
- Zapisz obrazy PDF za pomocą poleceń cURL
Interfejs API konwersji plików PDF na JPG
Aby przekonwertować plik PDF na JPG lub JPG na PDF w aplikacji Java, Aspose.PDF Cloud SDK for Java to niesamowity wybór. Jednocześnie umożliwia także wyodrębnianie obrazów z plików PDF, wyodrębnianie tekstu z plików PDF, wyodrębnianie załączników z plików PDF, a także zapewnia mnóstwo opcji manipulacji plikami PDF. Aby więc zaimplementować funkcję zapisywania obrazów PDF w aplikacji Java, najpierw musimy dodać odwołanie do Cloud SDK w naszym projekcie. Więc dodaj następujące szczegóły w pom.xml projektu typu kompilacji maven.
<repositories>
<repository>
<id>aspose-cloud</id>
<name>artifact.aspose-cloud-releases</name>
<url>http://artifact.aspose.cloud/repo</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf-cloud</artifactId>
<version>21.11.0</version>
</dependency>
</dependencies>
Po dodaniu referencji SDK i nie masz żadnego konta w Aspose Cloud, utwórz bezpłatne konto przy użyciu prawidłowego adresu e-mail. Następnie zaloguj się przy użyciu nowo utworzonego konta i wyszukaj/utwórz identyfikator klienta i klucz tajny klienta w Cloud Dashboard. Dane te są wymagane do celów uwierzytelniania w poniższych sekcjach.
Wyodrębnij obrazy PDF w Javie
Wykonaj poniższe czynności, aby wyodrębnić obrazy z pliku PDF, a po zakończeniu operacji obrazy zostaną zapisane w osobnym folderze w chmurze.
- Najpierw musimy utworzyć obiekt PdfApi, podając ClientID i Client secret jako argumenty
- Po drugie, załaduj wejściowy plik PDF za pomocą instancji File
- Prześlij wejściowy plik PDF do magazynu w chmurze za pomocą metody uploadFile(…).
- Zamierzamy również użyć opcjonalnego parametru do ustawienia szczegółów wysokości i szerokości dla wyodrębnionych obrazów
- Na koniec wywołaj metodę putImagesExtractAsJpeg(…), która pobiera nazwę pliku PDF, numer strony w celu wyodrębnienia obrazów, wymiary wyodrębnionych obrazów oraz nazwę folderu w chmurze w celu zapisania wyodrębnionych obrazów
try
{
// Uzyskaj ClientID i ClientSecret z https://dashboard.aspose.cloud/
String clientId = "bb959721-5780-4be6-be35-ff5c3a6aa4a2";
String clientSecret = "4d84d5f6584160cbd91dba1fe145db14";
// utwórz instancję PdfApi
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
// nazwa wejściowego dokumentu PDF
String inputFile = "marketing.pdf";
// przeczytaj zawartość wejściowego pliku PDF
File file = new File("//Users//"+inputFile);
// przesłać plik PDF do magazynu w chmurze
pdfApi.uploadFile("input.pdf", file, null);
// Strona pliku PDF do wyodrębniania obrazów
int pageNumber =1;
// szerokość wyodrębnionych obrazów
int width = 600;
// wysokość wyodrębnionych obrazów
int height = 800;
// folder, aby zapisać wyodrębnione obrazy
String folderName = "NewFolder";
// Wyodrębnij obrazy PDF i zapisz w Cloud Storage
pdfApi.putImagesExtractAsJpeg(inputFile, pageNumber, width, height, null, null, folderName);
// wydrukować komunikat o powodzeniu
System.out.println("PDF images Successsuly extracted !");
}catch(Exception ex)
{
System.out.println(ex);
}
Przykładowy plik PDF użyty w powyższym przykładzie można pobrać ze strony input.pdf.
Zapisz obrazy PDF za pomocą poleceń cURL
Teraz wywołamy API do ekstrakcji obrazów PDF za pomocą poleceń cURL. Teraz jako warunek wstępny dla tego podejścia, najpierw musimy wygenerować token dostępu JWT (na podstawie poświadczeń klienta) podczas wykonywania następującego polecenia.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Gdy już mamy token JWT, wykonaj następujące polecenie, aby zapisać obrazy PDF w osobnym folderze w chmurze.
curl -X PUT "https://api.aspose.cloud/v3.0/pdf/input_file.pdf/pages/1/images/extract/jpeg?width=0&height=0&destFolder=NewFolder" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"
Wniosek
Po przeczytaniu tego artykułu nauczyłeś się prostego, ale niezawodnego podejścia do wyodrębniania obrazów PDF za pomocą fragmentu kodu Java, a także za pomocą poleceń cURL. Jak zauważyliśmy, otrzymujemy dźwignię do wyodrębniania obrazów z określonej strony pliku PDF i zapewniamy większą kontrolę nad procesem ekstrakcji. Produkt Dokumentacja jest wzbogacony o szereg niesamowitych tematów, które dokładniej wyjaśniają możliwości tego API.
Ponadto, ponieważ wszystkie nasze Cloud SDK są publikowane na licencji MIT, możesz rozważyć pobranie pełnego kodu źródłowego z GitHub i zmodyfikowanie go zgodnie z własnymi wymaganiami. W przypadku jakichkolwiek problemów możesz rozważyć skontaktowanie się z nami w celu szybkiego rozwiązania za pośrednictwem bezpłatnego forum wsparcia produktu.
Powiązane artykuły
Odwiedź poniższe linki, aby dowiedzieć się więcej o: