تعرض سلسلة Base64 البيانات بتنسيق ASCII. من الشائع تضمين الصور المضمنة والمعلومات الأخرى في صفحات الويب بتنسيق HTML أو أوراق الأنماط. في هذه المقالة ، سنتعلم كيفية تحويل سلسلة Base64 إلى PDF و JPG و PNG باستخدام Java.

Java Base64 to PDF Converter API - التثبيت

يمكنك تنزيل ملفات JAR من Aspose.PDF for Java API من قسم الإصدارات ، أو باستخدام تكوينات 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 for Java API. قبل الشروع في تحويل سلسلة Base64 ، دعونا نلقي نظرة على عينة من البيانات:

سلسلة المثال للتحويل Base64

يمكنك تنزيل سلسلة Base64 من هنا.

معاينة سلسلة مثال Base64

Base64 إلى PNG JPG

الآن ، دعنا ننتقل إلى سيناريوهات تحويل سلسلة Base64 التالية:

تحويل Base64 String إلى JPG أو PNG Image باستخدام Java

أحيانًا يتم تشفير JPG و PNG وأنواع أخرى من الصور إلى سلسلة Base64 من أجل اتصال ونقل بيانات آمن وموثوق. علاوة على ذلك ، قبل أن نستكشف تحويل PDF ، نحتاج إلى التعرف على تحويل سلسلة Base64 إلى صور JPG أو PNG باستخدام Java. لذلك ، عليك اتباع هذه الخطوات للتحويل:

  1. احفظ البيانات في ملف TXT بسبب سلسلة طويلة
  2. اقرأ قيمة السلسلة
  3. استبدل البادئات
  4. احفظ سلسلة Base64 في صورة JPG أو PNG

يوضح مقتطف الشفرة التالي كيفية تحويل سلسلة Base64 إلى صورة JPG أو PNG باستخدام Java:

// احفظ سلسلة 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 = new FileOutputStream (dataDir + "Base64 to Image.png")؛
try {
    fos.write(imageBytes);
}
finally {
    fos.close();
}

قم بتحويل Base64 إلى PDF باستخدام Java

لقد تعلمنا عن تحويل Base64 إلى صور PNG أو JPG. هذه في الواقع خطوة وسيطة لتحويل Base64 إلى ملف PDF. دعونا نتحرك خطوة أخرى إلى الأمام. بمجرد حفظ السلسلة كصورة نقطية ، يمكنك بسهولة تحويلها إلى PDF. يمكنك اتباع الخطوات التالية لتحويل سلسلة Base64 إلى PDF:

  1. إزالة بادئات Base64 String
  2. تحويل سلسلة Base64 إلى صورة PNG أو JPG
  3. ثم قم بتحويل الصورة الناتجة إلى PDF

لذا يوضح مقتطف الشفرة أدناه كيفية تحويل Base64 String إلى PDF باستخدام لغة Java:

// احفظ سلسلة 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. باستخدام Java علاوة على ذلك ، سيؤدي إنشاء ملف PDF إلى فتح المزيد من الخيارات لمزيد من التحويل. مثل ملف PDF يمكن تحويله إلى SVG و XPS و DOCX والعديد من التنسيقات الأخرى. هل أنت مهتم باستكشاف الاحتمالات الأخرى؟ لا تتردد في مناقشة هذا معنا عبر منتديات الدعم المجانية.

أنظر أيضا