HTML करने के लिए छवियों के बजाय के रूप मेंFeemarker लेखन
<img src="${pathToPortalImage}
नोट लिंक देने के freemarker में छवि लिखने के लिए वैसे भी है: नहीं कर सकते हम otputstream या freemarker में कुछ का उपयोग करें?
HTML करने के लिए छवियों के बजाय के रूप मेंFeemarker लेखन
<img src="${pathToPortalImage}
नोट लिंक देने के freemarker में छवि लिखने के लिए वैसे भी है: नहीं कर सकते हम otputstream या freemarker में कुछ का उपयोग करें?
आप छवि को सीधे HTML img
टैग के अंदर बेस 64 के रूप में एम्बेड कर सकते हैं।
किसी छवि को बेस 64 में बदलने के लिए आप Apache Commons (codec) का उपयोग कर सकते हैं।
File img = new File("file.png");
byte[] imgBytes = IOUtils.toByteArray(new FileInputStream(img));
byte[] imgBytesAsBase64 = Base64.encodeBase64(imgBytes);
String imgDataAsBase64 = new String(imgBytesAsBase64);
String imgAsBase64 = "data:image/png;base64," + imgDataAsBase64;
तब चर imgAsBase64
Freemarker संदर्भ में पारित, और इस तरह इसका इस्तेमाल:
यहाँ (लेकिन आप अगर आप चाहते हैं के बिना कर सकते हैं) एक समाधान अपाचे कॉमन्स आईओ + कोडेक उपयोग कर रहा है
<img alt="My image" src="${imgAsBase64}" />
मैं मेल की सामग्री के रूप में निर्मित प्रारूप भेज रहा हूं, थंडरबर्ड में यह ठीक काम कर रहा है और छवि ठीक लोड हो रहा है लेकिन एमएस आउटलुक छवि में – Janith
लोड नहीं हो रहा है आपको पता होना चाहिए कि "डेटा" यूआरआई योजना हर जगह समर्थित नहीं है। उदाहरण के लिए आईई 7 इसे नहीं जानता है। अद्यतन: मुझे लगता है कि आपने अभी महसूस किया है कि यह Outlook के साथ भी काम नहीं करता है। सौभाग्य से, चूंकि यह एक ईमेल है, आप छवियों को संलग्न कर सकते हैं। लेकिन निश्चित रूप से, यह फ्रीमार्कर के साथ नहीं किया गया है लेकिन जावामेल एपीआई के साथ किया गया है। – ddekany
यह मेरे लिए काम किया जाता है, टीक्यू –
ऊपर एक महान उदाहरण है। लेकिन जावा 8 के साथ हम कुछ इस तरह कर सकते हैं:
Path path = Paths.get("image.png");
byte[] data = Files.readAllBytes(path);
byte[] encoded = Base64.getEncoder().encode(data);
String imgDataAsBase64 = new String(encoded);
String imgAsBase64 = "data:image/png;base64," + imgDataAsBase64;
freemarker सिर्फ एक टेम्पलेट, और छवि छवि किया जा रहा है, तो आप स्थानीय फ़ाइल यूआरएल के वेब यूआरएल या तो अपने URL प्रदान करना होगा। – Ankit
मुझे इस तरह की कुछ चाहिए http://www.conandalton.net/2008/10/sending-binary-data-from-freemarker.html – Janith