מחרוזת Base64 מציגה נתונים בפורמט ASCII. זה פופולרי להטמעת תמונות מוטבעות ומידע אחר בדפי אינטרנט או בגיליונות סגנונות של HTML. במאמר זה, נלמד כיצד להמיר את המחרוזת Base64 ל-PDF, JPG ו-PNG באמצעות Java.
Java Base64 to 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 הבאים:
המר את מחרוזת Base64 לתמונת JPG או PNG באמצעות Java
JPG, PNG וסוגים אחרים של תמונות מקודדים לפעמים למחרוזת Base64 לתקשורת והעברת נתונים בטוחים ואמינים. יתרה מכך, לפני שנחקור המרת PDF, עלינו ללמוד על המרה של מחרוזת Base64 לתמונות JPG או PNG באמצעות Java. לכן, עליך לבצע את השלבים הבאים להמרה:
- שמור את הנתונים בקובץ TXT בגלל מחרוזת ארוכה
- קרא את ערך המחרוזת
- החלף את הקידומות
- שמור מחרוזת 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:
- הסר קידומות של Base64 String
- המר מחרוזת Base64 לתמונת PNG או JPG
- לאחר מכן המר את תמונת הפלט ל-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 ופורמטים רבים אחרים. מעוניינים לבחון אפשרויות אחרות? אל תהססו לדון בכך איתנו דרך פורומי תמיכה בחינם.