تبدیل صفحات وب به تصویرهای لحظه‌ای یک نیاز مکرر است وقتی داشبوردهای گزارش‌گیری، خبرنامه‌های ایمیلی یا آرشیوهای اسناد را می‌سازید. Aspose.OCR Cloud SDK for Java یک کتابخانه قدرتمند مبتنی بر ابر ارائه می‌دهد که به شما امکان می‌دهد محتویات HTML را به صورت برنامه‌نویسی به تصاویر با کیفیت بالا از نوع JPG تبدیل کنید. در این راهنما یاد خواهید گرفت چگونه HTML را به JPG در جاوا تبدیل کنید، شامل تبدیل تک‌فایلی، پردازش دسته‌ای و بهترین شیوه‌های عملکرد.

تبدیل HTML به JPG در Java - پیش‌نیازها و تنظیمات

قبل از شروع، مطمئن شوید که موارد زیر را دارید:

  • Java 8 یا بالاتر نصب شده باشد.
  • Maven یا Gradle برای مدیریت وابستگی‌ها.
  • یک حساب Aspose Cloud با APP SID و APP KEY برای خدمات OCR.
  • دسترسی شبکه به نقاط انتهایی Aspose OCR Cloud.

SDK را با استفاده از وابستگی Maven زیر به پروژه خود اضافه کنید. همان مختصات در صفحه دانلود موجود است.

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-ocr-cloud</artifactId>
    <version>25.9.0</version>
</dependency>

شما همچنین باید کلاس‌های مورد نیاز را وارد کنید و اعتبارنامه‌های خود را پیکربندی کنید، همان‌طور که در بخش اول کد نمونه نشان داده شده است.

تبدیل HTML به JPG در Java - راهنمای گام‌به‌گام

مرحله 1: بارگذاری سند منبع و پیکربندی اعتبارنامه‌ها

یک شیء Configuration ایجاد کنید و APP SID و APP KEY خود را تنظیم کنید. این کار کتابخانه را برای احراز هویت آماده می‌کند.

Configuration config = new Configuration();
config.setAppSid(APP_SID);
config.setAppKey(APP_KEY);

مرحله ۲: مقداردهی اولیه API OCR

یک نمونه از OcrApi را با پیکربندی ایجاد کنید. مرجع API در مرجع رسمی API موجود است.

OcrApi ocrApi = new OcrApi(config);

مرحله 3: ساخت درخواست تبدیل

یک ConvertDocumentRequest ایجاد کنید، فایل HTML را پیوست کنید و jpg را به عنوان قالب خروجی مشخص کنید.

ConvertDocumentRequest request = new ConvertDocumentRequest();
request.setFile(new File(inputHtmlPath));
request.setOutputFormat("jpg");

مرحله ۴: اجرای تبدیل

متد convertDocument را فراخوانی کنید تا تبدیل انجام شود. پاسخ شامل بایت‌های JPG است.

ConvertDocumentResponse response = ocrApi.convertDocument(request);

مرحله 5: نوشتن بایت‌های JPG به دیسک

آرایه بایت بازگشتی را با استفاده از FileOutputStream در یک فایل ذخیره کنید.

try (FileOutputStream fos = new FileOutputStream(outputJpgPath)) {
    fos.write(response.getFileData());
}

مرحله 6 (اختیاری): حلقه تبدیل دسته‌ای

برای پردازش دسته‌ای، تمام فایل‌های .HTML در یک پوشه را مرور کنید، مراحل 3‑5 را برای هر فایل تکرار کنید و نتیجه تبدیل را ثبت کنید.

for (Path htmlPath : htmlFiles) {
    // Build request, execute conversion, write output (same as above)
    System.out.println("Converted: " + htmlPath + " -> " + outputJpgPath);
}

تبدیل HTML به JPG در Java - مثال کامل کد

برنامه زیر هر دو تبدیل تک‑فایلی و دسته‌ای را با استفاده از Aspose.OCR Cloud SDK for Java نشان می‌دهد.

import com.aspose.ocr.cloud.ApiException;
import com.aspose.ocr.cloud.Configuration;
import com.aspose.ocr.cloud.api.OcrApi;
import com.aspose.ocr.cloud.model.ConvertDocumentRequest;
import com.aspose.ocr.cloud.model.ConvertDocumentResponse;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.file.*;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;

public class HtmlToJpgConverter {

// Replace with your actual Aspose OCR Cloud credentials
    private static final String APP_SID = "YOUR_APP_SID";
    private static final String APP_KEY = "YOUR_APP_KEY";

// Single conversion example
    private static void convertSingleHtml(String inputHtmlPath, String outputJpgPath) throws IOException, ApiException {
        // Prepare SDK configuration
        Configuration config = new Configuration();
        config.setAppSid(APP_SID);
        config.setAppKey(APP_KEY);

// Initialize API instance
        OcrApi ocrApi = new OcrApi(config);

// Build request
        ConvertDocumentRequest request = new ConvertDocumentRequest();
        request.setFile(new File(inputHtmlPath));
        request.setOutputFormat("jpg");

// Execute conversion
        ConvertDocumentResponse response = ocrApi.convertDocument(request);

// Write the resulting JPG bytes to file
        try (FileOutputStream fos = new FileOutputStream(outputJpgPath)) {
            fos.write(response.getFileData());
        }
    }

// Batch conversion example
    private static void convertBatchHtml(String inputFolder, String outputFolder) throws IOException, ApiException {
        // Prepare SDK configuration
        Configuration config = new Configuration();
        config.setAppSid(APP_SID);
        config.setAppKey(APP_KEY);

// Initialize API instance
        OcrApi ocrApi = new OcrApi(config);

// Ensure output directory exists
        Files.createDirectories(Paths.get(outputFolder));

// Collect all .html files from the input folder
        List<Path> htmlFiles;
        try (Stream<Path> walk = Files.walk(Paths.get(inputFolder))) {
            htmlFiles = walk.filter(Files::isRegularFile)
                    .filter(p -> p.toString().toLowerCase().endsWith(".html"))
                    .collect(Collectors.toList());
        }

// Process each file
        for (Path htmlPath : htmlFiles) {
            String fileNameWithoutExt = com.google.common.io.Files.getNameWithoutExtension(htmlPath.getFileName().toString());
            String outputJpgPath = Paths.get(outputFolder, fileNameWithoutExt + ".jpg").toString();

// Build request
            ConvertDocumentRequest request = new ConvertDocumentRequest();
            request.setFile(htmlPath.toFile());
            request.setOutputFormat("jpg");

// Execute conversion
            ConvertDocumentResponse response = ocrApi.convertDocument(request);

// Write JPG output
            try (FileOutputStream fos = new FileOutputStream(outputJpgPath)) {
                fos.write(response.getFileData());
            }

System.out.println("Converted: " + htmlPath + " -> " + outputJpgPath);
        }
    }

public static void main(String[] args) {
        try {
            // Example of single file conversion
            convertSingleHtml("sample.html", "sample.jpg");

// Example of batch conversion
            convertBatchHtml("input_html", "output_jpg");
        } catch (IOException | ApiException e) {
            e.printStackTrace();
        }
    }
}

نکته: این مثال کد عملکرد اصلی را نشان می‌دهد. قبل از استفاده از آن در پروژه خود، مطمئن شوید که مسیرهای فایل و مقادیر پیکربندی را به‌گونه‌ای به‌روزرسانی کنید که با محیط واقعی شما مطابقت داشته باشد، اطمینان حاصل کنید که تمام وابستگی‌های مورد نیاز به‌درستی نصب شده‌اند و به‌صورت کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به مستندات رسمی مراجعه کنید یا برای دریافت کمک با تیم پشتیبانی تماس بگیرید.

تبدیل HTML به JPG از طریق REST API با استفاده از cURL

اگر ترجیح می‌دهید از روش کاملاً REST استفاده کنید، همان تبدیل می‌تواند با دستورات cURL انجام شود. جریان کار شامل احراز هویت، بارگذاری فایل، درخواست تبدیل و دانلود نتیجه است.

1. احراز هویت و دریافت توکن دسترسی

YOUR_CLIENT_ID و YOUR_CLIENT_SECRET را با اعتبارهای خود جایگزین کنید.

curl -X POST "https://api.aspose.cloud/connect/token" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=client_credentials&client_id=YOUR_CLIENT_ID&client_secret=YOUR_CLIENT_SECRET"

پاسخ شامل یک access_token است که در تماس‌های بعدی استفاده خواهید کرد.

۲. بارگذاری فایل HTML منبع

فرض کنید توکن را در متغیری به نام $TOKEN ذخیره کرده‌اید.

curl -X POST "https://api.aspose.cloud/v4.0/ocr/upload" \
  -H "Authorization: Bearer $TOKEN" \
  -F "file=@sample.html"

بارگذاری یک fileId را برمی‌گرداند که سند ذخیره‌شده را شناسایی می‌کند.

3. اجرای تبدیل

درخواست تبدیل به JPG.

curl -X POST "https://api.aspose.cloud/v4.0/ocr/convert?outputFormat=jpg&fileId=$FILE_ID" \
  -H "Authorization: Bearer $TOKEN"

بدنهٔ پاسخ شامل داده‌های باینری JPG است.

4. دانلود فایل خروجی

جریان باینری را در یک فایل محلی ذخیره کنید.

curl -X GET "https://api.aspose.cloud/v4.0/ocr/download?fileId=$FILE_ID&format=jpg" \
  -H "Authorization: Bearer $TOKEN" \
  -o sample.jpg

برای جزئیات بیشتر در مورد پارامترهای درخواست و مدیریت خطا، به مستندات رسمی API مراجعه کنید.

نتیجه‌گیری

تبدیل HTML به JPG در Java به‌صورت ساده‌ای با Aspose.OCR Cloud SDK for Java امکان‌پذیر است. با دنبال کردن مراحل تنظیم، استفاده از نمونه‌های کد ارائه‌شده یا فراخوانی REST API با cURL، می‌توانید پیش‌نمایش‌های تصویری برای هر محتوای وب را به‌سرعت و به‌طور قابل اعتماد تولید کنید. به‌خاطر داشته باشید که برای استقرارهای تولیدی باید یک مجوز مناسب دریافت کنید؛ جزئیات قیمت‌گذاری در صفحه محصول موجود است و می‌توانید یک مجوز موقت از صفحهٔ مجوز موقت درخواست کنید. امروز شروع به ادغام تبدیل HTML‑to‑JPG کنید و تجربهٔ بصری برنامه‌های خود را ارتقا دهید.

پرسش‌های متداول

  • چگونه می‌توانم HTML را به JPG در Java تبدیل کنم بدون نوشتن کد زیاد؟
    از یک‌خطی نشان‌داده‌شده در راهنما استفاده کنید: یک ConvertDocumentRequest ایجاد کنید، فایل و outputFormat را به مقدار "jpg" تنظیم کنید، سپس ocrApi.convertDocument(request) را فراخوانی کنید. SDK رندر را مدیریت می‌کند و بایت‌های JPG را برمی‌گرداند.

  • آیا می‌توانم فایل‌های HTML را به صورت دسته‌ای به JPG در جاوا تبدیل کنم؟
    بله. متد convertBatchHtml در مثال یک دایرکتوری را پیمایش می‌کند، برای هر فایل .HTML یک درخواست ایجاد می‌کند و خروجی JPG را می‌نویسد. این رویکرد برای مجموعه‌های بزرگ به خوبی مقیاس‌پذیر است.

  • کد جاوا برای تبدیل HTML به JPG چیست؟
    مثال کامل کد بالا نشان می‌دهد که دقیقاً چه کد جاوا‌ای مورد نیاز است. این شامل پیکربندی اعتبارنامه‌ها، ساخت درخواست، اجرا و نوشتن فایل می‌شود.

  • آیا راهی برای آزمایش تبدیل قبل از خرید لایسنس وجود دارد؟
    می‌توانید برای ارزیابی کتابخانه بدون هزینه در طول توسعه، یک لایسنس موقت از صفحه لایسنس موقت دریافت کنید.

بیشتر بخوانید