Recently I faced one issue where i need to generate Barcode on the fly in VF and also render that as PDF. I searched on Net and community, found some people have done Barcode generation using Javascript. But in my case i need to render it as PDF and VF does not support Javascript when renderAs PDF. So i decided to go the way to generate Barcode image. The first thing came in my mind is PHP/GD way to generate Barcode image and use that url in VF to show image. Then i found this site useful and very useful PHP script which fits my need
http://www.sid6581.net/cs/php-scripts/barcode/I used this script, done some modification in this and hosted on my site And used in my VF page as below:-
<apex:image value="http://www.aslambari.com/barcode.php?barcode=CS1001&width=200&text=1&height=100" />
Here is some details about how you use the url and parameters to generate barcode:
URL: http://www.aslambari.com/barcode.php
Params:
barcode: [any text to render as barcode]
text: [0 or 1]
format: [jpeg/png/gif]
width: [the width you want]
height: [the height you want]
It works great if my VF render as normal HTML page, but as soon as i make it renderAs="PDF", VF again not works, it does not allow dynamic generated images. So again i got disappointed.
Then i thought again and did apex code to fetch the dynamic binary data generated my PHP site url and save it into attachment and use that url in my VF page. I was thinking this time i will win for sure, but again it did not work. HttpResponse does not allow Blob response, it always gives response as String and that mingled my image data. Disappointed again.
Then i thought again and did apex code to fetch the dynamic binary data generated my PHP site url and save it into attachment and use that url in my VF page. I was thinking this time i will win for sure, but again it did not work. HttpResponse does not allow Blob response, it always gives response as String and that mingled my image data. Disappointed again.
Then finally i have decided to create dynamic generated barcode on PHP and save as temprary images and use that url in my img tag and renderAs="PDF", this time i got success :)
Here is the working demo for my work:-
https://labsprojects-developer-edition.ap1.force.com/BarCodeSample
If you need complete code for above demo site, here is the link:
http://www.aslambari.com/SF_Barcode.zip
Enjoy barcoding :)
Thanks
Aslam Bari
30 comments:
Great......
Again great stuff from your side...
This is really great
Thanks Aslam ji, this is really a gr8 solution, i also like to discuss it in more detail.
:)
Previously we limited our apporach and suggesting the client to print the webpage itself, due to unsupportiveness of renderas pdf by salesforce. But now i think once we can generate barcode as image for a given code this can be simply used in pdf.
Thanks again!
- Deepak
Great post !
You r on roll!! Keeping the pace to break the limits..
Its a gr8 work around.
This is amazing really very good feature, you rock Aslam as always
Nandini
Hi Aslam,
Great post, i must say. There is a little problem here hope you can help. I have done just as you have suggested but on my own server. Here images get generated on my server and render well on vf page.
But when i try renderas="pdf" or getContentAsPDF() the images don't render. Funny party is images from your server render well on vf and pdf page. Its just my server that's causing some problem. Take a look at this image and please suggest a workaround:
http://www.beyondvision.biz/karim/aslam.jpg
Thanks and happy coding
Mustafa
@Mustafa: I think you must add your website url into Remote Site Setting. I can think only that problem.
Aslam,
I have done that but still it's not working. Any other idea?
Mustafa
thanks aslam... for this... bt i have an another query ... can you pls solve dat... i want to integrate barcode scanner with salesforce... i hope you have an idea for this...
Thankssss
Thank you for the idea. It's great!
I'm running into the same issue where dynamic images are not rendering when using renderAs="pdf". I've tried controller extentions and custom components to no avail. I urgently need to resolve this issue.
I've reviewed your demo and your PDF version doesn't seem to be rendering correctly? I've also noticed that the link to your demo code is no longer valid.
Thanks.
The url
http://www.aslambari.com/barcode.php
is working fine?
Have you added this in remote site setting as well (just to make sure that does not affect issue)
Hi Aslam,
I am not able to open http://www.aslambari.com/SF_Barcode.zip
Can you please check?
I need this code. It's urgent.
Can you please provide me on my mail npmane007@gmail.com ?
It seems you demo didn't work ok...could you please check it?
Hi Aslam,
Can you send me the original code to me david.lee@meginfo.com?
Hi David,
It seems i have removed the original code while maintanance of my external FTP site. I will send you once i found the original code. But if you try the steps given in post, you can do it yourself.
i want genarate barcode dynamically
can i autimatically save the barcode i generated using this script(http://www.sid6581.net/cs/php-scripts/barcode/barcode.phps)?
teach me master
Good work! Can you please send me code for the same on sumi.shingavi@gmail.com
hi Aslam, I am looking for barcode reader which can populate data in salesforce. Is there any such APU / java script available?
Really a wonder post and helpfull as well..
But i am having issues in showing barcode on Pdf. will you please send me the full code, as the Zipped code base is not available at the link.
My email address is vasishta.shruti@gmail.com
Thnx again ..
Thanks for putting this together -- any chance you can re-post the ZIP or email it to me?
jeff.may@misstheiceberg.com
Thanks!
Really a wonder post and helpfull as well..
But i am having issues in showing barcode on Pdf. will you please send me the full code, as the Zipped code base is not available at the link.
My email address is mahesh060708@gmail.com
A great post.......hi Aslam,can you please send me the code @ sanjeevsh15@gmail.com
great stuff..!!!
Can you please send the code to avirajten@gmail.com
Thanx
Hi Aslam,
I am also stuck with the renderAs and inserting it as an attachment. The PDF is showing blank. Can you please send me this code @ gopal026@gmail.com?
Thanks in advance.
Can i also have the code please? @ f.f2017@yahoo.com
Hi there is no code,i'm also having similar type of reqiurement ,please send code to email
venkatp187@gmail.com
can you please share the source to spprathap2003@gmail.com
Post a Comment