<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>pdf image extraction on Document Processing REST APIs | GroupDocs Cloud</title>
    <link>https://blog-qa.groupdocs.cloud/id/tag/pdf-image-extraction/</link>
    <description>Recent content in pdf image extraction on Document Processing REST APIs | GroupDocs Cloud</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>id</language>
    <lastBuildDate>Mon, 12 Oct 2026 17:04:44 +0000</lastBuildDate><atom:link href="https://blog-qa.groupdocs.cloud/id/tag/pdf-image-extraction/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Ekstrak Gambar dari Dokumen PDF dalam C#</title>
      <link>https://blog-qa.groupdocs.cloud/id/parser/extract-images-from-pdf-documents-in-csharp/</link>
      <pubDate>Mon, 12 Oct 2026 17:04:44 +0000</pubDate>
      
      <guid>https://blog-qa.groupdocs.cloud/id/parser/extract-images-from-pdf-documents-in-csharp/</guid>
      <description>Pelajari cara mengekstrak gambar dari dokumen PDF dalam C# menggunakan GroupDocs.Parser Cloud SDK for .NET. Ikuti panduan langkah demi langkah ini dengan kode, cURL, dan tips.</description>
      <content:encoded><![CDATA[<p>Mengekstrak gambar dari dokumen <a href="https://docs.fileformat.com/pdf">PDF</a> adalah kebutuhan yang sering muncul saat membangun pipeline pemrosesan dokumen, terutama untuk membuat thumbnail atau menggunakan kembali grafik di tempat lain. <a href="https://products.groupdocs.cloud/parser/net/">GroupDocs.Parser Cloud SDK for .NET</a> menyediakan API yang kuat yang membuat tugas ini menjadi mudah dalam C#. Dalam panduan ini Anda akan belajar cara mengunggah PDF, mengambil semua gambar yang disematkan, menyimpannya secara lokal, dan secara opsional membersihkan file remote, dengan contoh kode lengkap dan contoh REST.</p>
<h2 id="langkah-langkah-untuk-mengekstrak-gambar-dari-dokumen-pdf-di-c">Langkah-langkah untuk Mengekstrak Gambar dari Dokumen PDF di C#</h2>
<ol>
<li><strong>Upload PDF ke penyimpanan GroupDocs Cloud</strong>: Gunakan <code>StorageApi.UploadFile</code> untuk menempatkan PDF sumber di cloud.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-csharp" data-lang="csharp"><span style="display:flex;"><span><span style="color:#66d9ef">var</span> uploadRequest = <span style="color:#66d9ef">new</span> UploadFileRequest(remotePdfPath, File.ReadAllBytes(localPdfPath));
</span></span><span style="display:flex;"><span>storageApi.UploadFile(uploadRequest);
</span></span></code></pre></div><p>Pemanggilan ini memastikan file dapat diakses untuk diparsing.</p>
<ol start="2">
<li><strong>Minta gambar dokumen</strong>: Panggil <code>ParserApi.GetDocumentImages</code> dengan <code>GetDocumentImagesRequest</code>.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-csharp" data-lang="csharp"><span style="display:flex;"><span><span style="color:#66d9ef">var</span> imagesRequest = <span style="color:#66d9ef">new</span> GetDocumentImagesRequest(remotePdfPath);
</span></span><span style="display:flex;"><span>ImagesResult imagesResult = parserApi.GetDocumentImages(imagesRequest);
</span></span></code></pre></div><p>Respons berisi koleksi objek <code>ImageInfo</code>, masing-masing menyimpan data Base64 dan metadata. Lihat <a href="https://reference.groupdocs.cloud/parser/">referensi API</a> untuk detail lengkap.</p>
<ol start="3">
<li><strong>Dekode dan simpan setiap gambar</strong>: Iterasi melalui <code>imagesResult.Images</code>, konversi string Base64 menjadi array byte, dan tulis file ke disk.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-csharp" data-lang="csharp"><span style="display:flex;"><span><span style="color:#66d9ef">foreach</span> (ImageInfo imgInfo <span style="color:#66d9ef">in</span> imagesResult.Images)
</span></span><span style="display:flex;"><span>{
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">byte</span>[] imageBytes = Convert.FromBase64String(imgInfo.Base64Data);
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">string</span> extension = imgInfo.FileExtension?.TrimStart(<span style="color:#e6db74">&#39;.&#39;</span>).ToLower() ?? <span style="color:#e6db74">&#34;bin&#34;</span>;
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">string</span> fileName = <span style="color:#e6db74">$&#34;extracted_page{imgInfo.PageNumber}_img{imgInfo.ImageIndex}_{imageCounter}.{extension}&#34;</span>;
</span></span><span style="display:flex;"><span>    File.WriteAllBytes(fileName, imageBytes);
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><p>Konsol mencatat nama file yang disimpan, dimensi, dan DPI untuk verifikasi.</p>
<ol start="4">
<li><strong>(Opsional) Bersihkan PDF remote</strong>: Setelah ekstraksi, Anda dapat menghapus file yang diunggah untuk menjaga penyimpanan tetap rapi.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-csharp" data-lang="csharp"><span style="display:flex;"><span><span style="color:#66d9ef">var</span> deleteRequest = <span style="color:#66d9ef">new</span> DeleteFileRequest(remotePdfPath);
</span></span><span style="display:flex;"><span>storageApi.DeleteFile(deleteRequest);
</span></span></code></pre></div><p>Langkah ini dibungkus dalam blok try‑catch untuk mengabaikan kesalahan pembersihan apa pun.</p>
<ol start="5">
<li><strong>Tinjau output</strong>: Konsol akan menampilkan ringkasan seperti <code>Total images extracted: 12</code>, mengonfirmasi ekstraksi berhasil.</li>
</ol>
<h2 id="contoh-kode-lengkap-ekstrak-gambar-dari-dokumen-pdf-dengan-groupdocsparser">Contoh Kode Lengkap: Ekstrak Gambar dari Dokumen PDF dengan GroupDocs.Parser</h2>
<p>Contoh berikut menunjukkan alur kerja lengkap yang dijelaskan di atas. Ini mencakup konfigurasi, unggah, ekstraksi gambar, penyimpanan, dan pembersihan opsional.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-csharp" data-lang="csharp"><span style="display:flex;"><span><span style="color:#66d9ef">using</span> System;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">using</span> System.IO;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">using</span> System.Collections.Generic;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">using</span> GroupDocs.Parser.Cloud.Sdk.Api;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">using</span> GroupDocs.Parser.Cloud.Sdk.Client;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">using</span> GroupDocs.Parser.Cloud.Sdk.Model;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">using</span> GroupDocs.Parser.Cloud.Sdk.Model.Requests;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">namespace</span> ExtractImagesFromPdf
</span></span><span style="display:flex;"><span>{
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">class</span> <span style="color:#a6e22e">Program</span>
</span></span><span style="display:flex;"><span>    {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">static</span> <span style="color:#66d9ef">void</span> Main(<span style="color:#66d9ef">string</span>[] args)
</span></span><span style="display:flex;"><span>        {
</span></span><span style="display:flex;"><span>            <span style="color:#75715e">// Configuration – replace with your actual credentials</span>
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">var</span> config = <span style="color:#66d9ef">new</span> Configuration
</span></span><span style="display:flex;"><span>            {
</span></span><span style="display:flex;"><span>                ClientId = <span style="color:#e6db74">&#34;YOUR_CLIENT_ID&#34;</span>,
</span></span><span style="display:flex;"><span>                ClientSecret = <span style="color:#e6db74">&#34;YOUR_CLIENT_SECRET&#34;</span>
</span></span><span style="display:flex;"><span>            };
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// APIs</span>
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">var</span> storageApi = <span style="color:#66d9ef">new</span> StorageApi(config);
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">var</span> parserApi = <span style="color:#66d9ef">new</span> ParserApi(config);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Input PDF path (local) and remote name in storage</span>
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">const</span> <span style="color:#66d9ef">string</span> localPdfPath = <span style="color:#e6db74">&#34;input.pdf&#34;</span>;
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">const</span> <span style="color:#66d9ef">string</span> remotePdfPath = <span style="color:#e6db74">&#34;input.pdf&#34;</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">try</span>
</span></span><span style="display:flex;"><span>            {
</span></span><span style="display:flex;"><span>                <span style="color:#75715e">// -------------------------------------------------</span>
</span></span><span style="display:flex;"><span>                <span style="color:#75715e">// 1. Upload PDF to GroupDocs Cloud storage (if not already there)</span>
</span></span><span style="display:flex;"><span>                <span style="color:#75715e">// -------------------------------------------------</span>
</span></span><span style="display:flex;"><span>                <span style="color:#66d9ef">if</span> (!File.Exists(localPdfPath))
</span></span><span style="display:flex;"><span>                    <span style="color:#66d9ef">throw</span> <span style="color:#66d9ef">new</span> FileNotFoundException(<span style="color:#e6db74">$&#34;Local file not found: {localPdfPath}&#34;</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">var</span> uploadRequest = <span style="color:#66d9ef">new</span> UploadFileRequest(remotePdfPath, File.ReadAllBytes(localPdfPath));
</span></span><span style="display:flex;"><span>                storageApi.UploadFile(uploadRequest);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// -------------------------------------------------</span>
</span></span><span style="display:flex;"><span>                <span style="color:#75715e">// 2. Retrieve document images (all pages)</span>
</span></span><span style="display:flex;"><span>                <span style="color:#75715e">// -------------------------------------------------</span>
</span></span><span style="display:flex;"><span>                <span style="color:#66d9ef">var</span> imagesRequest = <span style="color:#66d9ef">new</span> GetDocumentImagesRequest(remotePdfPath);
</span></span><span style="display:flex;"><span>                ImagesResult imagesResult = parserApi.GetDocumentImages(imagesRequest);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// -------------------------------------------------</span>
</span></span><span style="display:flex;"><span>                <span style="color:#75715e">// 3. Save each extracted image to disk</span>
</span></span><span style="display:flex;"><span>                <span style="color:#75715e">// -------------------------------------------------</span>
</span></span><span style="display:flex;"><span>                <span style="color:#66d9ef">int</span> imageCounter = <span style="color:#ae81ff">0</span>;
</span></span><span style="display:flex;"><span>                <span style="color:#66d9ef">foreach</span> (ImageInfo imgInfo <span style="color:#66d9ef">in</span> imagesResult.Images)
</span></span><span style="display:flex;"><span>                {
</span></span><span style="display:flex;"><span>                    <span style="color:#75715e">// Image data is returned as Base64 string</span>
</span></span><span style="display:flex;"><span>                    <span style="color:#66d9ef">byte</span>[] imageBytes = Convert.FromBase64String(imgInfo.Base64Data);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Build a descriptive file name</span>
</span></span><span style="display:flex;"><span>                    <span style="color:#66d9ef">string</span> extension = imgInfo.FileExtension?.TrimStart(<span style="color:#e6db74">&#39;.&#39;</span>).ToLower() ?? <span style="color:#e6db74">&#34;bin&#34;</span>;
</span></span><span style="display:flex;"><span>                    <span style="color:#66d9ef">string</span> fileName = <span style="color:#e6db74">$&#34;extracted_page{imgInfo.PageNumber}_img{imgInfo.ImageIndex}_{imageCounter}.{extension}&#34;</span>;
</span></span><span style="display:flex;"><span>                    File.WriteAllBytes(fileName, imageBytes);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>Console.WriteLine(<span style="color:#e6db74">$&#34;Saved: {fileName} ({imgInfo.Width}x{imgInfo.Height} px, {imgInfo.Resolution} DPI)&#34;</span>);
</span></span><span style="display:flex;"><span>                    imageCounter++;
</span></span><span style="display:flex;"><span>                }
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>Console.WriteLine(<span style="color:#e6db74">$&#34;Total images extracted: {imageCounter}&#34;</span>);
</span></span><span style="display:flex;"><span>            }
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">catch</span> (ApiException apiEx)
</span></span><span style="display:flex;"><span>            {
</span></span><span style="display:flex;"><span>                Console.Error.WriteLine(<span style="color:#e6db74">$&#34;GroupDocs API error: {apiEx.ErrorCode} - {apiEx.Message}&#34;</span>);
</span></span><span style="display:flex;"><span>            }
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">catch</span> (Exception ex)
</span></span><span style="display:flex;"><span>            {
</span></span><span style="display:flex;"><span>                Console.Error.WriteLine(<span style="color:#e6db74">$&#34;Unexpected error: {ex.Message}&#34;</span>);
</span></span><span style="display:flex;"><span>            }
</span></span><span style="display:flex;"><span>            <span style="color:#66d9ef">finally</span>
</span></span><span style="display:flex;"><span>            {
</span></span><span style="display:flex;"><span>                <span style="color:#75715e">// -------------------------------------------------</span>
</span></span><span style="display:flex;"><span>                <span style="color:#75715e">// 4. Optional cleanup – delete the uploaded PDF from storage</span>
</span></span><span style="display:flex;"><span>                <span style="color:#75715e">// -------------------------------------------------</span>
</span></span><span style="display:flex;"><span>                <span style="color:#66d9ef">try</span>
</span></span><span style="display:flex;"><span>                {
</span></span><span style="display:flex;"><span>                    <span style="color:#66d9ef">var</span> deleteRequest = <span style="color:#66d9ef">new</span> DeleteFileRequest(remotePdfPath);
</span></span><span style="display:flex;"><span>                    storageApi.DeleteFile(deleteRequest);
</span></span><span style="display:flex;"><span>                }
</span></span><span style="display:flex;"><span>                <span style="color:#66d9ef">catch</span>
</span></span><span style="display:flex;"><span>                {
</span></span><span style="display:flex;"><span>                    <span style="color:#75715e">// Ignored – cleanup is optional</span>
</span></span><span style="display:flex;"><span>                }
</span></span><span style="display:flex;"><span>            }
</span></span><span style="display:flex;"><span>        }
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><blockquote>
<p><strong>Catatan:</strong> Contoh kode ini menunjukkan fungsi inti. Sebelum menggunakannya dalam proyek Anda, pastikan untuk memperbarui semua jalur file dan nilai konfigurasi agar sesuai dengan lingkungan Anda yang sebenarnya, verifikasi bahwa semua dependensi yang diperlukan telah terpasang dengan benar, dan uji secara menyeluruh di lingkungan pengembangan Anda. Jika Anda menemukan masalah, silakan merujuk ke <a href="https://docs.groupdocs.cloud/parser/">dokumentasi resmi</a> atau hubungi <a href="https://forum.groupdocs.cloud/c/parser/19">tim dukungan</a> untuk bantuan.</p>
</blockquote>
<h2 id="ekstrak-gambar-melalui-rest-api-menggunakan-curl">Ekstrak Gambar melalui REST API Menggunakan cURL</h2>
<p>Operasi yang sama dapat dilakukan dengan panggilan REST langsung. Di bawah ini adalah alur kerja cURL minimal.</p>
<ol>
<li><strong>Dapatkan token akses</strong> (OAuth 2.0 client credentials grant).</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/oauth2/token&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Content-Type: application/x-www-form-urlencoded&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -d <span style="color:#e6db74">&#34;grant_type=client_credentials&amp;client_id=YOUR_CLIENT_ID&amp;client_secret=YOUR_CLIENT_SECRET&#34;</span>
</span></span></code></pre></div><p>Respons berisi <code>access_token</code>.</p>
<ol start="2">
<li><strong>Unggah PDF</strong> ke penyimpanan cloud.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X PUT <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/input.pdf&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Content-Type: application/pdf&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     --data-binary <span style="color:#e6db74">&#34;@input.pdf&#34;</span>
</span></span></code></pre></div><ol start="3">
<li><strong>Minta gambar</strong> untuk dokumen yang diunggah.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X GET <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/parser/input.pdf/images&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span>
</span></span></code></pre></div><p>Respon <a href="https://docs.fileformat.com/web/json/">JSON</a> mencakup array gambar dengan <code>base64Data</code>, <code>fileExtension</code>, <code>pageNumber</code>, dll.</p>
<ol start="4">
<li><strong>Simpan setiap gambar</strong> secara lokal (contoh menggunakan <code>jq</code> dan <code>base64</code>).</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X GET <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/parser/input.pdf/images&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> | <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     jq -r <span style="color:#e6db74">&#39;.images[] | &#34;\(.pageNumber)_\(.imageIndex).\(.fileExtension) \(.base64Data)&#34;&#39;</span> | <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     <span style="color:#66d9ef">while</span> read filename b64; <span style="color:#66d9ef">do</span>
</span></span><span style="display:flex;"><span>         echo <span style="color:#e6db74">&#34;</span>$b64<span style="color:#e6db74">&#34;</span> | base64 -d &gt; <span style="color:#e6db74">&#34;</span>$filename<span style="color:#e6db74">&#34;</span>
</span></span><span style="display:flex;"><span>     <span style="color:#66d9ef">done</span>
</span></span></code></pre></div><p>Untuk detail lebih lanjut tentang endpoint dan parameter, lihat <a href="https://docs.groupdocs.cloud/parser/">dokumentasi API resmi</a>.</p>
<h2 id="menyiapkan-lingkungan">Menyiapkan Lingkungan</h2>
<ol>
<li>Instal pustaka klien .NET melalui NuGet:</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>dotnet add package GroupDocs.Parser-Cloud
</span></span></code></pre></div><p>Paket tersedia dari <a href="https://releases.groupdocs.cloud/parser/net/">halaman unduhan resmi</a>.</p>
<ol start="2">
<li>
<p>Pastikan Anda memiliki .NET 6.0 atau yang lebih baru terinstal serta akun GroupDocs Cloud yang valid dengan kredensial klien.</p>
</li>
<li>
<p>(Opsional) Klon repositori contoh untuk referensi:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>git clone https://github.com/groupdocs-parser-cloud/groupdocs-parser-cloud-dotnet.git
</span></span></code></pre></div></li>
</ol>
<h2 id="apa-yang-membuat-groupdocsparser-cocok-untuk-ekstraksi-gambar">Apa yang Membuat GroupDocs.Parser Cocok untuk Ekstraksi Gambar</h2>
<ul>
<li><strong>Pengambilan gambar langsung</strong>: Panggilan <code>GetDocumentImages</code> mengembalikan gambar dalam format aslinya tanpa langkah konversi tambahan.</li>
<li><strong>Pengiriman Base64</strong>: Gambar disediakan sebagai string Base64, memudahkan dekripsi dalam bahasa apa pun.</li>
<li><strong>Metadata tingkat halaman</strong>: Setiap <code>ImageInfo</code> mencakup nomor halaman, dimensi, resolusi, dan indeks, yang membantu mengatur aset yang diekstrak.</li>
<li><strong>Dukungan untuk semua format raster umum</strong>: <a href="https://docs.fileformat.com/image/png/">PNG</a>, <a href="https://docs.fileformat.com/image/jpeg/">JPEG</a>, <a href="https://docs.fileformat.com/image/bmp/">BMP</a>, <a href="https://docs.fileformat.com/image/gif/">GIF</a>, <a href="https://docs.fileformat.com/image/tiff/">TIFF</a> dan lainnya dipertahankan persis seperti yang disimpan dalam PDF.</li>
<li><strong>Pemrosesan cloud yang dapat diskalakan</strong>: PDF besar diproses di server GroupDocs, mengurangi beban memori pada aplikasi Anda.</li>
</ul>
<h2 id="mengonfigurasi-opsi-ekstraksi-gambar">Mengonfigurasi Opsi Ekstraksi Gambar</h2>
<p>Sementara contoh dasar berfungsi langsung, Anda dapat menyesuaikan permintaan secara detail:</p>
<ul>
<li><strong>Tentukan rentang halaman</strong>: Tambahkan <code>pages = &quot;1-5&quot;</code> ke <code>GetDocumentImagesRequest</code> untuk membatasi ekstraksi.</li>
<li><strong>Atur kualitas gambar</strong>: Gunakan parameter <code>imageQuality</code> (0‑100) jika Anda memerlukan output <a href="https://docs.fileformat.com/web/compressed/">compressed</a>.</li>
<li><strong>Filter berdasarkan format</strong>: Berikan <code>fileExtensions = [&quot;png&quot;,&quot;jpeg&quot;]</code> untuk menerima hanya format yang dipilih.</li>
</ul>
<p>Opsi-opsi ini didokumentasikan dalam <a href="https://reference.groupdocs.cloud/parser/">referensi API</a>.</p>
<h2 id="kesimpulan">Kesimpulan</h2>
<p>Mengekstrak gambar dari dokumen PDF di C# menjadi proses yang sederhana dan andal ketika Anda memanfaatkan <a href="https://products.groupdocs.cloud/parser/net/">GroupDocs.Parser Cloud SDK for .NET</a>. SDK menangani pengunggahan, parsing, dan konversi Base64, memungkinkan Anda fokus pada penyimpanan file dan mengintegrasikannya ke dalam alur kerja Anda. Ingatlah untuk mengamankan kredensial klien Anda, menghormati ketentuan lisensi, dan pertimbangkan lisensi sementara untuk evaluasi di <a href="https://purchase.groupdocs.cloud/temporary-license/">halaman lisensi sementara</a>. Dengan kode dan contoh REST yang disediakan, Anda siap menambahkan ekstraksi gambar PDF yang kuat ke aplikasi .NET apa pun.</p>
<h2 id="faqs">FAQs</h2>
<p><strong>Bagaimana cara mengekstrak gambar dari dokumen PDF menggunakan C#?</strong><br>
Gunakan metode <code>GetDocumentImages</code> dari Parser API setelah mengunggah PDF dengan <code>StorageApi.UploadFile</code>. Dekode string Base64 yang dikembalikan dan tulis ke disk, seperti yang ditunjukkan dalam contoh kode.</p>
<p><strong>Bagaimana jika PDF dilindungi kata sandi?</strong><br>
Sertakan kata sandi dalam model permintaan. SDK akan mendekripsi file sebelum mengekstrak gambar. Lihat <a href="https://docs.groupdocs.cloud/parser/">dokumentasi</a> untuk nama properti yang tepat.</p>
<p><strong>Bisakah saya membatasi ekstraksi ke halaman tertentu?</strong><br>
Ya, atur properti <code>pages</code> pada <code>GetDocumentImagesRequest</code> ke daftar yang dipisahkan koma atau rentang (mis., <code>&quot;1-3,5&quot;</code>). API akan mengembalikan gambar hanya dari halaman tersebut.</p>
<p><strong>Apakah ada batas ukuran untuk gambar yang diekstrak?</strong><br>
SDK mengembalikan data gambar asli tanpa mengubah ukuran. Jika Anda membutuhkan file yang lebih kecil, proses lanjutan gambar yang disimpan menggunakan perpustakaan pemrosesan gambar apa pun.</p>
<h2 id="baca-selengkapnya">Baca Selengkapnya</h2>
<ul>
<li><a href="https://blog.groupdocs.cloud/id/parser/extract-images-from-pdf-using-csharp/">Ekstrak Gambar dari PDF dalam C# .NET | API Ekstraktor Gambar PDF</a></li>
<li><a href="https://blog.groupdocs.cloud/id/parser/extract-images-from-pdf-documents-in-java/">Ekstrak Gambar dari Dokumen PDF dalam Java</a></li>
<li><a href="https://blog.groupdocs.cloud/id/parser/extract-text-from-word-document-csharp/">Ekstrak Teks dari PDF Menggunakan .NET REST API | Konverter Dokumen ke Teks</a></li>
</ul>
]]></content:encoded>
    </item>
    
    <item>
      <title>Ekstrak Gambar dari Dokumen PDF dalam Java</title>
      <link>https://blog-qa.groupdocs.cloud/id/parser/extract-images-from-pdf-documents-in-java/</link>
      <pubDate>Fri, 02 Oct 2026 10:36:06 +0000</pubDate>
      
      <guid>https://blog-qa.groupdocs.cloud/id/parser/extract-images-from-pdf-documents-in-java/</guid>
      <description>Pelajari cara mengekstrak gambar dari dokumen PDF dalam Java menggunakan GroupDocs.Parser Cloud SDK. Panduan mencakup pengaturan, contoh kode, panggilan cURL, dan praktik terbaik.</description>
      <content:encoded><![CDATA[<p>Mengekstrak gambar dari <a href="https://docs.fileformat.com/pdf">PDF</a> adalah kebutuhan yang sering muncul saat membangun pipeline pemrosesan dokumen, terutama ketika Anda perlu menggunakan kembali grafik untuk thumbnail, laporan, atau analisis lebih lanjut. <a href="https://products.groupdocs.cloud/parser/java/">GroupDocs.Parser Cloud SDK for Java</a> menyediakan API yang sederhana yang memungkinkan Anda mengambil setiap gambar yang disematkan dalam PDF hanya dengan beberapa baris kode. Panduan ini memandu Anda melalui konfigurasi SDK, menjalankan contoh kode lengkap, menggunakan cURL untuk tugas yang sama, dan menerapkan praktik terbaik untuk memastikan ekstraksi gambar PDF yang andal.</p>
<h2 id="ekstrak-gambar-dari-dokumen-pdf-di-java-dalam-5-langkah">Ekstrak Gambar dari Dokumen PDF di Java dalam 5 Langkah</h2>
<ol>
<li><strong>Konfigurasikan kredensial API</strong>: Buat objek <code>Configuration</code> dan atur client ID serta secret Anda.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>Configuration config <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> Configuration<span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>config<span style="color:#f92672">.</span><span style="color:#a6e22e">setClientId</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;YOUR_CLIENT_ID&#34;</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>config<span style="color:#f92672">.</span><span style="color:#a6e22e">setClientSecret</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;YOUR_CLIENT_SECRET&#34;</span><span style="color:#f92672">);</span>
</span></span></code></pre></div><ol start="2">
<li><strong>Inisialisasi Parser API</strong>: Bangun sebuah <code>ApiClient</code> dengan konfigurasi dan buat instance <code>ParserApi</code>.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>ApiClient apiClient <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> ApiClient<span style="color:#f92672">(</span>config<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>ParserApi parserApi <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> ParserApi<span style="color:#f92672">(</span>apiClient<span style="color:#f92672">);</span>
</span></span></code></pre></div><ol start="3">
<li><strong>Bangun permintaan ekstraksi gambar</strong>: Tentukan jalur file PDF menggunakan <code>FileInfo</code> dan buat sebuah <code>ExtractImagesRequest</code>.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>String inputFilePath <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;input.pdf&#34;</span><span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>ExtractImagesRequest request <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> ExtractImagesRequest<span style="color:#f92672">()</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">.</span><span style="color:#a6e22e">setFileInfo</span><span style="color:#f92672">(</span><span style="color:#66d9ef">new</span> FileInfo<span style="color:#f92672">().</span><span style="color:#a6e22e">setFilePath</span><span style="color:#f92672">(</span>inputFilePath<span style="color:#f92672">));</span>
</span></span></code></pre></div><ol start="4">
<li><strong>Eksekusi ekstraksi dan ambil gambar</strong>: Panggil <code>extractImages</code> dan dapatkan daftar objek <code>Image</code>.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>ImagesResult imagesResult <span style="color:#f92672">=</span> parserApi<span style="color:#f92672">.</span><span style="color:#a6e22e">extractImages</span><span style="color:#f92672">(</span>request<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>List<span style="color:#f92672">&lt;</span>Image<span style="color:#f92672">&gt;</span> images <span style="color:#f92672">=</span> imagesResult<span style="color:#f92672">.</span><span style="color:#a6e22e">getImages</span><span style="color:#f92672">();</span>
</span></span></code></pre></div><ol start="5">
<li><strong>Simpan setiap gambar ke penyimpanan lokal</strong>: Loop melalui koleksi dan tulis data biner ke file.</li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span><span style="color:#66d9ef">for</span> <span style="color:#f92672">(</span><span style="color:#66d9ef">int</span> i <span style="color:#f92672">=</span> 0<span style="color:#f92672">;</span> i <span style="color:#f92672">&lt;</span> images<span style="color:#f92672">.</span><span style="color:#a6e22e">size</span><span style="color:#f92672">();</span> i<span style="color:#f92672">++)</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>    Image img <span style="color:#f92672">=</span> images<span style="color:#f92672">.</span><span style="color:#a6e22e">get</span><span style="color:#f92672">(</span>i<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>    String outputFileName <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;extracted_image_&#34;</span> <span style="color:#f92672">+</span> <span style="color:#f92672">(</span>i <span style="color:#f92672">+</span> 1<span style="color:#f92672">)</span> <span style="color:#f92672">+</span> <span style="color:#e6db74">&#34;_&#34;</span> <span style="color:#f92672">+</span> img<span style="color:#f92672">.</span><span style="color:#a6e22e">getFileName</span><span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">try</span> <span style="color:#f92672">(</span>FileOutputStream fos <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> FileOutputStream<span style="color:#f92672">(</span>outputFileName<span style="color:#f92672">))</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>        fos<span style="color:#f92672">.</span><span style="color:#a6e22e">write</span><span style="color:#f92672">(</span>img<span style="color:#f92672">.</span><span style="color:#a6e22e">getData</span><span style="color:#f92672">());</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">}</span>
</span></span><span style="display:flex;"><span>    System<span style="color:#f92672">.</span><span style="color:#a6e22e">out</span><span style="color:#f92672">.</span><span style="color:#a6e22e">println</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;Saved image: &#34;</span> <span style="color:#f92672">+</span> outputFileName<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">}</span>
</span></span></code></pre></div><p>Untuk detail lebih lanjut tentang setiap kelas, lihat <a href="https://reference.groupdocs.cloud/parser/">referensi API resmi</a>.</p>
<h2 id="contoh-kode-lengkap-ekstrak-gambar-dari-dokumen-pdf-di-java-menggunakan-groupdocsparser">Contoh Kode Lengkap: Ekstrak Gambar dari Dokumen PDF di Java Menggunakan GroupDocs.Parser</h2>
<p>Contoh berikut menunjukkan alur kerja lengkap mulai dari penyiapan kredensial hingga penyimpanan gambar.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.parser.cloud.ApiClient<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.parser.cloud.Configuration<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.parser.cloud.api.ParserApi<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.parser.cloud.model.FileInfo<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.parser.cloud.model.Image<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.parser.cloud.model.ImagesResult<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.parser.cloud.model.requests.ExtractImagesRequest<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> java.io.FileOutputStream<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> java.util.List<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">public</span> <span style="color:#66d9ef">class</span> <span style="color:#a6e22e">ExtractImagesFromPdf</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">public</span> <span style="color:#66d9ef">static</span> <span style="color:#66d9ef">void</span> <span style="color:#a6e22e">main</span><span style="color:#f92672">(</span>String<span style="color:#f92672">[]</span> args<span style="color:#f92672">)</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>        <span style="color:#75715e">// Configure API credentials
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        Configuration config <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> Configuration<span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>        config<span style="color:#f92672">.</span><span style="color:#a6e22e">setClientId</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;YOUR_CLIENT_ID&#34;</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>        config<span style="color:#f92672">.</span><span style="color:#a6e22e">setClientSecret</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;YOUR_CLIENT_SECRET&#34;</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>        <span style="color:#75715e">// config.setBaseUrl(&#34;https://api.groupdocs.cloud&#34;); // optional, if needed
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Initialize API client and Parser API
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        ApiClient apiClient <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> ApiClient<span style="color:#f92672">(</span>config<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>        ParserApi parserApi <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> ParserApi<span style="color:#f92672">(</span>apiClient<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Path to the PDF file stored in GroupDocs Cloud storage
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        String inputFilePath <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;input.pdf&#34;</span><span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Build request for image extraction
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        ExtractImagesRequest request <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> ExtractImagesRequest<span style="color:#f92672">()</span>
</span></span><span style="display:flex;"><span>                <span style="color:#f92672">.</span><span style="color:#a6e22e">setFileInfo</span><span style="color:#f92672">(</span><span style="color:#66d9ef">new</span> FileInfo<span style="color:#f92672">().</span><span style="color:#a6e22e">setFilePath</span><span style="color:#f92672">(</span>inputFilePath<span style="color:#f92672">));</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">try</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>            <span style="color:#75715e">// Perform extraction
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            ImagesResult imagesResult <span style="color:#f92672">=</span> parserApi<span style="color:#f92672">.</span><span style="color:#a6e22e">extractImages</span><span style="color:#f92672">(</span>request<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>            List<span style="color:#f92672">&lt;</span>Image<span style="color:#f92672">&gt;</span> images <span style="color:#f92672">=</span> imagesResult<span style="color:#f92672">.</span><span style="color:#a6e22e">getImages</span><span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Save each extracted image to local disk
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            <span style="color:#66d9ef">for</span> <span style="color:#f92672">(</span><span style="color:#66d9ef">int</span> i <span style="color:#f92672">=</span> 0<span style="color:#f92672">;</span> i <span style="color:#f92672">&lt;</span> images<span style="color:#f92672">.</span><span style="color:#a6e22e">size</span><span style="color:#f92672">();</span> i<span style="color:#f92672">++)</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>                Image img <span style="color:#f92672">=</span> images<span style="color:#f92672">.</span><span style="color:#a6e22e">get</span><span style="color:#f92672">(</span>i<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>                String outputFileName <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;extracted_image_&#34;</span> <span style="color:#f92672">+</span> <span style="color:#f92672">(</span>i <span style="color:#f92672">+</span> 1<span style="color:#f92672">)</span> <span style="color:#f92672">+</span> <span style="color:#e6db74">&#34;_&#34;</span> <span style="color:#f92672">+</span> img<span style="color:#f92672">.</span><span style="color:#a6e22e">getFileName</span><span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>                <span style="color:#66d9ef">try</span> <span style="color:#f92672">(</span>FileOutputStream fos <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> FileOutputStream<span style="color:#f92672">(</span>outputFileName<span style="color:#f92672">))</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>                    fos<span style="color:#f92672">.</span><span style="color:#a6e22e">write</span><span style="color:#f92672">(</span>img<span style="color:#f92672">.</span><span style="color:#a6e22e">getData</span><span style="color:#f92672">());</span>
</span></span><span style="display:flex;"><span>                <span style="color:#f92672">}</span>
</span></span><span style="display:flex;"><span>                System<span style="color:#f92672">.</span><span style="color:#a6e22e">out</span><span style="color:#f92672">.</span><span style="color:#a6e22e">println</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;Saved image: &#34;</span> <span style="color:#f92672">+</span> outputFileName<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>            <span style="color:#f92672">}</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">}</span> <span style="color:#66d9ef">catch</span> <span style="color:#f92672">(</span>Exception e<span style="color:#f92672">)</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>            e<span style="color:#f92672">.</span><span style="color:#a6e22e">printStackTrace</span><span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">}</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">}</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">}</span>
</span></span></code></pre></div><blockquote>
<p><strong>Catatan:</strong> Contoh kode ini menunjukkan fungsi inti. Sebelum menggunakannya dalam proyek Anda, pastikan untuk memperbarui semua jalur file dan nilai konfigurasi agar sesuai dengan lingkungan Anda yang sebenarnya, verifikasi bahwa semua dependensi yang diperlukan telah terinstal dengan benar, dan uji secara menyeluruh di lingkungan pengembangan Anda. Jika Anda menemukan masalah, silakan merujuk ke <a href="https://docs.groupdocs.cloud/parser/">dokumentasi resmi</a> atau hubungi <a href="https://forum.groupdocs.cloud/c/parser/19">tim dukungan</a> untuk bantuan.</p>
</blockquote>
<h2 id="ekstraksi-gambar-pdf-via-curl-dan-rest-api">Ekstraksi Gambar PDF via cURL dan REST API</h2>
<p>Anda dapat mencapai hasil yang sama tanpa menulis kode Java dengan memanggil endpoint REST GroupDocs.Parser Cloud secara langsung.</p>
<ol>
<li><strong>Dapatkan token akses</strong></li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/connect/token&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>        -H <span style="color:#e6db74">&#34;Content-Type: application/x-www-form-urlencoded&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>        -d <span style="color:#e6db74">&#34;grant_type=client_credentials&amp;client_id=YOUR_CLIENT_ID&amp;client_secret=YOUR_CLIENT_SECRET&#34;</span>
</span></span></code></pre></div><ol start="2">
<li><strong>Unggah file PDF</strong></li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/upload?path=input.pdf&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>        -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>        -F <span style="color:#e6db74">&#34;file=@/path/to/input.pdf&#34;</span>
</span></span></code></pre></div><ol start="3">
<li><strong>Minta ekstraksi gambar</strong></li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/parser/extractImages&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Content-Type: application/json&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -d <span style="color:#e6db74">&#39;{&#34;fileInfo&#34;: {&#34;filePath&#34;: &#34;input.pdf&#34;}}&#39;</span>
</span></span></code></pre></div><ol start="4">
<li><strong>Unduh gambar yang diekstrak</strong> (respons berisi data base64; Anda dapat mendekodenya secara lokal)</li>
</ol>
<p>Untuk daftar lengkap parameter, lihat <a href="https://reference.groupdocs.cloud/parser/">dokumentasi API resmi</a>.</p>
<h2 id="menginstal-dan-mengonfigurasi-groupdocsparser-cloud-sdk-for-java">Menginstal dan Mengonfigurasi GroupDocs.Parser Cloud SDK for Java</h2>
<p>Tambahkan dependensi Maven ke <code>pom.xml</code> Anda (atau potongan Gradle yang setara).</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-xml" data-lang="xml"><span style="display:flex;"><span><span style="color:#f92672">&lt;dependency&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;groupId&gt;</span>com.groupdocs<span style="color:#f92672">&lt;/groupId&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;artifactId&gt;</span>groupdocs-parser-cloud<span style="color:#f92672">&lt;/artifactId&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;version&gt;</span>26.2<span style="color:#f92672">&lt;/version&gt;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">&lt;/dependency&gt;</span>
</span></span></code></pre></div><p>SDK disediakan sebagai pustaka cloud; tidak diperlukan binary lokal. Unduh paket terbaru dari <a href="https://releases.groupdocs.cloud/parser/java/">halaman rilis</a>. Pastikan Anda memiliki Java 8 atau lebih tinggi dan akun GroupDocs Cloud yang valid dengan client ID dan secret.</p>
<h2 id="groupdocsparser-cloud-sdk-for-java-fitur-yang-memungkinkan-pengambilan-gambar">GroupDocs.Parser Cloud SDK for Java Fitur yang Memungkinkan Pengambilan Gambar</h2>
<ul>
<li><strong>Ekstraksi gambar PDF lengkap</strong> - Mengambil setiap gambar raster dan vektor yang disematkan dalam dokumen.</li>
<li><strong>Metadata untuk setiap gambar</strong> - Mengembalikan nama file, ukuran, format, dan nomor halaman.</li>
<li><strong>Dukungan untuk semua format gambar umum</strong> - <a href="https://docs.fileformat.com/image/png/">PNG</a>, <a href="https://docs.fileformat.com/image/jpg/">JPG</a>, <a href="https://docs.fileformat.com/image/bmp/">BMP</a>, <a href="https://docs.fileformat.com/image/gif/">GIF</a>, <a href="https://docs.fileformat.com/image/tiff/">TIFF</a>, dan lainnya.</li>
<li><strong>Integrasi penyimpanan cloud</strong> - Bekerja langsung dengan file yang disimpan di GroupDocs Cloud tanpa harus mengunduhnya terlebih dahulu.</li>
<li><strong>Pemrosesan berbasis REST yang dapat diskalakan</strong> - Menangani PDF besar dan beban kerja volume tinggi melalui API cloud.</li>
</ul>
<h2 id="pengaturan-penyempurnaan-ekstraksi-gambar">Pengaturan Penyempurnaan Ekstraksi Gambar</h2>
<p>Meskipun permintaan dasar sudah berfungsi langsung, Anda dapat menyesuaikan opsi seperti:</p>
<ul>
<li><strong>Proteksi kata sandi</strong> - Setel properti <code>password</code> pada <code>FileInfo</code> untuk PDF yang terenkripsi.</li>
<li><strong>Rentang halaman</strong> - Batasi ekstraksi ke halaman tertentu dengan menambahkan array <code>pages</code> ke JSON permintaan.</li>
<li><strong>Konversi format gambar</strong> - Minta konversi ke format lain dengan menentukan jenis output yang diinginkan dalam permintaan (lihat <a href="https://reference.groupdocs.cloud/parser/">referensi API</a> untuk bidang yang tepat).</li>
</ul>
<p>Contoh mengatur kata sandi (diambil dari kode utama):</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>FileInfo fileInfo <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> FileInfo<span style="color:#f92672">()</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">.</span><span style="color:#a6e22e">setFilePath</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;protected.pdf&#34;</span><span style="color:#f92672">)</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">.</span><span style="color:#a6e22e">setPassword</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;mySecret&#34;</span><span style="color:#f92672">);</span>
</span></span></code></pre></div><h2 id="tips-praktis-untuk-ekstraksi-gambar-pdf-yang-efisien">Tips Praktis untuk Ekstraksi Gambar PDF yang Efisien</h2>
<ul>
<li><strong>Validasi keberadaan file</strong> sebelum mengirim permintaan untuk menghindari panggilan API yang tidak perlu.</li>
<li><strong>Proses gambar dalam aliran</strong> saat menangani file besar untuk mengurangi konsumsi memori.</li>
<li><strong>Gunakan paginasi</strong> jika Anda hanya membutuhkan gambar dari halaman tertentu; ini mempercepat respons.</li>
<li><strong>Tangani batas kecepatan API</strong> dengan menerapkan penundaan eksponensial pada respons HTTP 429.</li>
<li><strong>Catat nama setiap file yang disimpan</strong> untuk mempermudah pemecahan masalah dan jejak audit.</li>
</ul>
<h2 id="kesimpulan">Kesimpulan</h2>
<p>Men­ek­strak gambar dari dokumen PDF di Java menjadi tugas yang sederhana dan dapat diandalkan ketika Anda memanfaatkan kekuatan <a href="https://products.groupdocs.cloud/parser/java/">GroupDocs.Parser Cloud SDK for Java</a>. SDK menangani manajemen kredensial, interaksi penyimpanan cloud, dan decoding gambar, memungkinkan Anda fokus pada logika aplikasi Anda. Untuk penyebaran produksi, beli lisensi yang tepat di <a href="https://purchase.groupdocs.cloud/temporary-license/">halaman harga</a> atau dapatkan lisensi sementara untuk evaluasi. Dengan contoh kode, panduan cURL, dan rekomendasi praktik terbaik dalam artikel ini, Anda siap mengintegrasikan ekstraksi gambar PDF ke dalam solusi berbasis Java apa pun.</p>
<h2 id="faq">FAQ</h2>
<ul>
<li>
<p><strong>Format apa yang dapat diekstrak dari PDF?</strong><br>
SDK mengekstrak format raster seperti PNG, JPG, BMP, GIF, dan TIFF, serta grafik vektor ketika disimpan sebagai gambar.</p>
</li>
<li>
<p><strong>Apakah saya perlu mengunduh PDF sebelum mengekstrak gambar?</strong><br>
Tidak. SDK bekerja langsung dengan file yang disimpan di penyimpanan GroupDocs Cloud, menghilangkan kebutuhan untuk mengunduh secara lokal.</p>
</li>
<li>
<p><strong>Bagaimana SDK menangani PDF besar?</strong><br>
Ekstraksi dilakukan di sisi server, sehingga penggunaan memori pada mesin Anda tetap rendah. Anda juga dapat membatasi ekstraksi ke halaman tertentu untuk meningkatkan kinerja.</p>
</li>
<li>
<p><strong>Apakah ada cara untuk menguji ekstraksi tanpa menulis kode?</strong><br>
Ya, Anda dapat menggunakan perintah cURL yang disediakan di atas atau mencoba konsol API interaktif di halaman produk.</p>
</li>
</ul>
<h2 id="baca-selengkapnya">Baca Selengkapnya</h2>
<ul>
<li><a href="https://blog.groupdocs.cloud/id/parser/extract-images-from-pdf-files-in-java-using-rest-api/">Ekstrak Gambar dari File PDF di Java menggunakan REST API</a></li>
<li><a href="https://blog.groupdocs.cloud/id/parser/extract-images-from-word-documents-programmatically-in-java/">Ekstrak Gambar dari Dokumen Word secara Programatis di Java</a></li>
<li><a href="https://blog.groupdocs.cloud/id/parser/extract-images-from-pdf-documents-using-python/">Ekstrak Gambar dari Dokumen PDF menggunakan Python</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
