رشته Base64 داده ها را در قالب ASCII نشان می دهد. برای جاسازی تصاویر درون خطی و سایر اطلاعات در صفحات وب HTML یا شیوه نامه ها محبوب است. در این مقاله، نحوه تبدیل رشته Base64 به PDF، JPG و PNG را با استفاده از جاوا یاد خواهیم گرفت.

Java Base64 به PDF Converter API - نصب

می‌توانید فایل‌های JAR Aspose.PDF for Java API را از بخش Releases یا با استفاده از تنظیمات Maven زیر دانلود کنید:

مخزن:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository

وابستگی:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>20.7</version>
</dependency>

بنابراین Aspose.PDF برای Java API پیکربندی شده است. قبل از اینکه برای تبدیل رشته Base64 اقدام کنیم، اجازه دهید نگاهی به داده های نمونه بیندازیم:

رشته مثال برای تبدیل Base64

می توانید رشته Base64 را از اینجا دانلود کنید.

پیش نمایش رشته مثال Base64

Base64 به PNG JPG

حال، اجازه دهید به سناریوهای تبدیل رشته Base64 زیر ادامه دهیم:

با استفاده از جاوا، رشته Base64 را به تصویر JPG یا PNG تبدیل کنید

JPG، PNG، و انواع دیگر تصاویر گاهی اوقات برای ارتباط و انتقال داده ایمن و مطمئن در رشته Base64 کدگذاری می شوند. علاوه بر این، قبل از بررسی تبدیل PDF، باید در مورد تبدیل یک رشته Base64 به تصاویر JPG یا PNG با استفاده از جاوا بیاموزیم. بنابراین، برای تبدیل باید مراحل زیر را دنبال کنید:

  1. داده ها را در یک فایل TXT به دلیل یک رشته طولانی ذخیره کنید
  2. مقدار رشته را بخوانید
  3. پیشوندها را جایگزین کنید
  4. رشته Base64 را در تصویر JPG یا PNG ذخیره کنید

قطعه کد زیر نحوه تبدیل رشته Base64 را با استفاده از جاوا به تصویر JPG یا PNG نشان می دهد:

// رشته base64 را در فایل TXT ذخیره کنید زیرا رشته طولانی است
FileInputStream fis = new FileInputStream(dataDir + "base64.txt");
String base64 = IOUtils.toString(fis, "UTF-8");
String base64ImageString = base64.replace("data:image/png;base64,", "");
byte[] imageBytes = javax.xml.bind.DatatypeConverter.parseBase64Binary(base64ImageString);

// تصویر Base64 را به JPG یا PNG تبدیل کنید
FileOutputStream fos = new FileOutputStream(dataDir + "Base64 to Image.jpg");
//FileOutputStream fos = FileOutputStream جدید (dataDir + "Base64 to Image.png");
try {
    fos.write(imageBytes);
}
finally {
    fos.close();
}

تبدیل Base64 به PDF با استفاده از جاوا

ما با تبدیل تصاویر Base64 به PNG یا JPG آشنا شده ایم. این در واقع یک مرحله میانی برای تبدیل Base64 به فایل PDF است. اجازه دهید یک قدم دیگر جلوتر برویم. هنگامی که رشته به عنوان یک تصویر شطرنجی ذخیره می شود، می توانید به راحتی آن را به PDF تبدیل کنید. برای تبدیل رشته Base64 به PDF می توانید مراحل زیر را دنبال کنید:

  1. پیشوندهای رشته Base64 را حذف کنید
  2. رشته Base64 را به تصویر PNG یا JPG تبدیل کنید
  3. سپس تصویر خروجی را به PDF تبدیل کنید

بنابراین قطعه کد زیر نحوه تبدیل Base64 String به PDF را با استفاده از زبان جاوا نشان می دهد:

// رشته base64 را در فایل TXT ذخیره کنید زیرا رشته طولانی است
FileInputStream fis = new FileInputStream(dataDir + "base64.txt");
String base64 = IOUtils.toString(fis, "UTF-8");
String base64ImageString = base64.replace("data:image/png;base64,", "");
byte[] imageBytes = javax.xml.bind.DatatypeConverter.parseBase64Binary(base64ImageString);
String path = dataDir + "Base64 to Image.png";

// تصویر Base64 را به PNG یا JPG تبدیل کنید
FileOutputStream fos = new FileOutputStream(path);
try {
    fos.write(imageBytes);
}
finally {
    fos.close();
}

BufferedImage readImage = null;
try {
	readImage = ImageIO.read(new File(path));
	int h = readImage.getHeight();
	int w = readImage.getWidth();
		
	com.aspose.pdf.Document doc = new com.aspose.pdf.Document();
	com.aspose.pdf.Page page = doc.getPages().add();
	com.aspose.pdf.Image image = new com.aspose.pdf.Image();
	image.setFile(path);
	page.getPageInfo().setHeight(h);
	page.getPageInfo().setWidth(w);
	page.getPageInfo().getMargin().setBottom(0);
	page.getPageInfo().getMargin().setTop(0);
	page.getPageInfo().getMargin().setRight(0);
	page.getPageInfo().getMargin().setLeft(0);
	page.getParagraphs().add(image);
	doc.save(dataDir + "Base64-to-PDF.pdf");
} catch (Exception e) {
	readImage = null;
}

نتیجه

به طور خلاصه، نحوه تبدیل رشته Base64 به تصاویر PDF، PNG و JPG را بررسی کرده ایم. با استفاده از جاوا علاوه بر این، تولید یک فایل PDF گزینه های بیشتری را برای تبدیل بیشتر باز می کند. مانند یک فایل PDF را می توان به SVG، XPS، DOCX، و بسیاری از فرمت های دیگر تبدیل کرد. علاقه مند به بررسی احتمالات دیگر هستید؟ در گفتگو با ما از طریق انجمن پشتیبانی رایگان دریغ نکنید.

همچنین ببینید