Rendering multiple webpages into a pdf using PhantomJS - html

I want to use phantomjs to render html pages into pdf.
Here is my sample code.
var page = require('webpage').create();
page.open('http://google.com', function() {
page.render('google.pdf');
phantom.exit();
});
Is there a way I can take multiple webpages and render it into the same pdf using phantomjs?
Thanks!

you can do this from inside phantom if you want, but it's a bit complex.
here is the psudocode you need to follow
for each webpage you want to render
load the page
add the value of page.content to a pageHtmls list
create a new WebPage object, and set page.content=pageHtmls.join() (you might have to scrub out the <html> and <body> tags though)
render the page as a PDF

Related

Rendering a pdf file from an html view to display it on a web page as a image preview

I need to create a pdf preview that should be displayed on a web page as an image. The pdf file is just a simple report build on almost plain HTML. Essentially I had a problem with displaying checkboxes, now I replaced them with pics of checkboxes but the issue remains the same.
Here how I create the pdf report from my HTML view with help of groovy and grails:
def html = htmlRenderService.getReport(info)
ByteArrayOutputStream out = new ByteArrayOutputStream()
HtmlImageGenerator htmlImageGenerator = new HtmlImageGenerator()
htmlImageGenerator.loadHtml(html)
BufferedImage bi = htmlImageGenerator.bufferedImage
ImageIO.write(bi, "PNG", out)
byte[] bytes = out.toByteArray()
String base64bytes = encoder.encodeToString(bytes)
String src = "data:image/png;base64," + base64bytes
out.flush()
def getReport(Info info) {
return groovyPageRenderer.render(view: REPORT_VIEW,
model: [info: info])
}
Then I send the src string to my view and render it as:<img src="${src}" alt=""/>
Then my checkbox pic looks like this: <div style="/*style stuff*/ background-image: url(data:image/png;base64,LINK_TO_THE_IMAGE"></div>
In the end, I received a picture of my pdf report rendered pretty well displaying as an image on my page, BUT without checkboxes. Here is the picture of one part of it:
And here is the same part but from the pdf document which I rendered all the same way, but just downloaded directed from my webapp:
Here is an example where I combined both options(input checkbox and image checkbox) and rendered it as an image:
So what could cause this issue? Thank you in advance.
UPDATE: I came across today to this comment under another issue with HtmlImageGenerator:
HtmlImageGenerator seems to use a JEditorPane for rendering the HTML. Swing HTML support does not extend to the ability to render data images. It might be possible by digging into the HTMLEditorKit and changing the image loading element to support data images, but then you'd need to find a way to get HtmlImageGenerator to use the altered editor pane.
Seems that HtmlImageGenerator doesn't work well with images inside HTML files, but it's still unclear why it doesn't render checkbox inputs as well.
Without seeing the code you end up with after page load, check the chrome dev tools panel to see if the image has actually loaded correctly to the page which will tell you it's at least accessible to use. Then check if the url is output correctly to the div as the background-image. If it looks correct and there aren't related errors in the console, it is likely a css setting.
With background images, your container will need to contain content or else you will need to specify:
width
height
a display setting
background-position, and a
background-size
If you can upload more info, I might be able to be more specific.

Convert Dynamic HTML to PDF

I am using jsp to display html and css3. When I display my html page, I will have a pdf icon, if that is clicked then I need to convert the html page to pdf and download it.
I have tried using XMLWorker, but there I need to send my html link through URL. But its saying this exception, "RuntimeWorkerException: Invalid nested tag head found, expected closing tag script.". I cant hard code my html.
Is there any easy way where I just click the button, so that all the html content from page can be downloaded as pdf? As I am new to programming I couldn't fix this issue. I went through other question but there were no clear explanation regarding this.
You can use jsPDF to convert HTML to PDF online, just using JavaScript on the client side.
The initialisation code is very simple:
// You'll need to make your image into a Data URL
// Use http://dataurl.net/#dataurlmaker
var imgData = 'data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/4ge4SUNDX1BST0ZJTEUAAQEAAAeoYXBwbAIgAABtbnRyUkdCIFhZWiAH2QACABkACwAaAAthY3NwQVBQTAAAAABhcHBsAAAAAAAAAAAAAAAAAAAAAAAA9tYAAQAAAADTLWFwcGwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAtkZXNjAAABCAAAAG9kc2NtAAABeAAABWxjcHJ0AAAG5AAAADh3dHB0AAAHHAAAABRyWFlaAAAHMAAAABRnWFlaAAAHRAAAABRiWFlaAAAHWAAAABRyVFJDAAAHbAAAAA5jaGFkAAAHfAAAACxiVFJDAAAHbAAAAA5nVFJDAAAHbAAAAA5kZXNjAAAAAAAAABRHZW5lcmljIFJHQiBQcm9maWxlAAAAAAAAAAAAAAAUR2VuZXJpYyBSR0IgUHJvZmlsZQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbWx1YwAAAAAAAAAeAAAADHNrU0sAAAAoAAABeGhySFIAAAAoAAABoGNhRVMAAAAkAAAByHB0QlIAAAAmAAAB7HVrVUEAAAAqAAACEmZyRlUAAAAoAAACPHpoVFcAAAAWAAACZGl0SVQAAAAoAAACem5iTk8AAAAmAAAComtvS1IAAAAWAAACyGNzQ1oAAAAiAAAC3mhlSUwAAAAeAAADAGRlREUAAAAsAAADHmh1SFUAAAAoAAADSnN2U0UAAAAmAAAConpoQ04AAAAWAAADcmphSlAAAAAaAAADiHJvUk8AAAAkAAADomVsR1IAAAAiAAADxnB0UE8AAAAmAAAD6G5sTkwAAAAoAAAEDmVzRVMAAAAmAAAD6HRoVEgAAAAkAAAENnRyVFIAAAAiAAAEWmZpRkkAAAAoAAAEfHBsUEwAAAAsAAAEpHJ1UlUAAAAiAAAE0GFyRUcAAAAmAAAE8mVuVVMAAAAmAAAFGGRhREsAAAAuAAAFPgBWAWEAZQBvAGIAZQBjAG4A/QAgAFIARwBCACAAcAByAG8AZgBpAGwARwBlAG4AZQByAGkBDQBrAGkAIABSAEcAQgAgAHAAcgBvAGYAaQBsAFAAZQByAGYAaQBsACAAUgBHAEIAIABnAGUAbgDoAHIAaQBjAFAAZQByAGYAaQBsACAAUgBHAEIAIABHAGUAbgDpAHIAaQBjAG8EFwQwBDMEMAQ7BEwEPQQ4BDkAIAQ/BEAEPgREBDAEOQQ7ACAAUgBHAEIAUAByAG8AZgBpAGwAIABnAOkAbgDpAHIAaQBxAHUAZQAgAFIAVgBCkBp1KAAgAFIARwBCACCCcl9pY8+P8ABQAHIAbwBmAGkAbABvACAAUgBHAEIAIABnAGUAbgBlAHIAaQBjAG8ARwBlAG4AZQByAGkAcwBrACAAUgBHAEIALQBwAHIAbwBmAGkAbMd8vBgAIABSAEcAQgAg1QS4XNMMx3wATwBiAGUAYwBuAP0AIABSAEcAQgAgAHAAcgBvAGYAaQBsBeQF6AXVBeQF2QXcACAAUgBHAEIAIAXbBdwF3AXZAEEAbABsAGcAZQBtAGUAaQBuAGUAcwAgAFIARwBCAC0AUAByAG8AZgBpAGwAwQBsAHQAYQBsAOEAbgBvAHMAIABSAEcAQgAgAHAAcgBvAGYAaQBsZm6QGgAgAFIARwBCACBjz4/wZYdO9k4AgiwAIABSAEcAQgAgMNcw7TDVMKEwpDDrAFAAcgBvAGYAaQBsACAAUgBHAEIAIABnAGUAbgBlAHIAaQBjA5MDtQO9A7kDugPMACADwAPBA78DxgOvA7sAIABSAEcAQgBQAGUAcgBmAGkAbAAgAFIARwBCACAAZwBlAG4A6QByAGkAYwBvAEEAbABnAGUAbQBlAGUAbgAgAFIARwBCAC0AcAByAG8AZgBpAGUAbA5CDhsOIw5EDh8OJQ5MACAAUgBHAEIAIA4XDjEOSA4nDkQOGwBHAGUAbgBlAGwAIABSAEcAQgAgAFAAcgBvAGYAaQBsAGkAWQBsAGUAaQBuAGUAbgAgAFIARwBCAC0AcAByAG8AZgBpAGkAbABpAFUAbgBpAHcAZQByAHMAYQBsAG4AeQAgAHAAcgBvAGYAaQBsACAAUgBHAEIEHgQxBEkEOAQ5ACAEPwRABD4ERAQ4BDsETAAgAFIARwBCBkUGRAZBACAGKgY5BjEGSgZBACAAUgBHAEIAIAYnBkQGOQYnBkUARwBlAG4AZQByAGkAYwAgAFIARwBCACAAUAByAG8AZgBpAGwAZQBHAGUAbgBlAHIAZQBsACAAUgBHAEIALQBiAGUAcwBrAHIAaQB2AGUAbABzAGV0ZXh0AAAAAENvcHlyaWdodCAyMDA3IEFwcGxlIEluYy4sIGFsbCByaWdodHMgcmVzZXJ2ZWQuAFhZWiAAAAAAAADzUgABAAAAARbPWFlaIAAAAAAAAHRNAAA97gAAA9BYWVogAAAAAAAAWnUAAKxzAAAXNFhZWiAAAAAAAAAoGgAAFZ8AALg2Y3VydgAAAAAAAAABAc0AAHNmMzIAAAAAAAEMQgAABd7///MmAAAHkgAA/ZH///ui///9owAAA9wAAMBs/+EAgEV4aWYAAE1NACoAAAAIAAUBEgADAAAAAQABAAABGgAFAAAAAQAAAEoBGwAFAAAAAQAAAFIBKAADAAAAAQACAACHaQAEAAAAAQAAAFoAAAAAAAAASAAAAAEAAABIAAAAAQACoAIABAAAAAEAAAH0oAMABAAAAAEAAAH0AAAAAP/bAEMAAgEBAgEBAgIBAgICAgIDBQMDAwMDBgQEAwUHBgcHBwYGBgcICwkHCAoIBgYJDQkKCwsMDAwHCQ0ODQwOCwwMC//bAEMBAgICAwIDBQMDBQsIBggLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLCwsLC//AABEIAfQB9AMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/APzLooor+sD8nCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKK4z4yfFb/hWOl2zWUMVxe3jkRpISFVQOWOOepUfjXJj8dRy2hLE4h2hHf8vzNqFCeJqKnTV2zs6K+bm/aQ8VliReW4z2FsnH6VLaftL+KLaQNNLZXAB+7JbgA/98kGvjI+I+Vt2cZr5L/5I9l8OYpdY/e/8j6Morx3QP2sY3ZV8UaUyDPMltJu/wDHGx/6FXo/hX4jaL40Uf8ACPahBNKRnySdso/4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ON9ddfe3uz5bGUMHXqyqVYzu/J2007HWf8NL+F/+et7/AOA5/wAaP+Gl/C//AD1vf/Ac/wCNYlr+z54LvmxZa7dzHGcJewMcfglXk/ZX8OSKGS+1lgeQRNEQf/Ide9TxPFNVXgqL9Hf9TglTyqPxOf8AXyNWP9ovwm7gNqEqA9zbSYH5LV62+N3hW6AMWs2wz/fV0/8AQgK5SX9lDSWX9zqeoq3qwRh+WBVG6/ZJjYf6FrrqeeHtA2fTkOMVf17iynvhacvR2/8AbxewymW1WS+X/wBqekR/Evw7KgZde0cA+t5GD+RNFeUP+ybqAc+Xq9mV7ExMD/Oij+3OI1vl6/ayaKTSluAUUUUwCiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooA//2Q==';
var doc = new jsPDF();
doc.setFontSize(40);
doc.text(35, 25, "Octonyan loves jsPDF");
doc.addImage(imgData, 'JPEG', 15, 40, 180, 180);
This is a HTML5 client-side solution for generating PDFs.

dynamically rendering plain .html page on webmatrix

I'm trying to render a .html webpage using #Renderpage() method in Webmatrix but the .html extension is not supported by the method. I guess the method only supports cshtml extensions. Is there a way I can render html pages dynamically on my site (Webmatrix). I dont want to use an iframe because I'll definitely have issues with my jquery files.
I attempted something i feel is safe yet feels unsafe. I resolved to read the html file and inject it to the DOM manually using:
Array html = null;
var mypage = Server.MapPath(page);
if(File.Exists(mypage)){
html = File.ReadAllLines(mypage);
}
After reading the file.....i injected it to the DOM
<div class="s_content s fontfix left s_content2 downdown">
#foreach (var data in html) {
<text>#Html.Raw(data)</text>
}
</div>
All this runs on compilation time before the page is created for rendering.....I attempted some security measures by attempting to inject server-side C# code in the HTML file but was useless. Makes me feel safe atleast. Is this risky? What is the possible threat to this alternative. i wish i can still have an alternative proper solution from the house. Thanks though.
Assuming #Renderpage() doesn't support HTML files, why don't you try Jquery.load or Ajax. There are lots of tutorials based on dynamic loading of html content.
I do something similar but I don't use #Renderpage or an html file. Instead I am using the "onclick" event and a javascript function which opens a cshtml file. You just put this and the java script function in your main cshtml file in the hmtl section. It will open a file in the current directory called my_window.cshtml when clicked
<a onclick=openWin("my_window",700,850);>Open when clicked</a>
<script type="text/javascript">
function openWin(url, width, height)
{
myWindow=window.open(url,'_blank','width='+width+',height='+height);
myWindow.focus();
}
Hope this helps!

Embed DWG file in HTML

I want to ask how to embed DWG file in HTML Page.
I have tried using tag with Volo Viewer but this solution run only in IE not in Firefox and Chrome.
Dwgview-x can do that, but it will need to be installed as a plug-in on client computers so that anyone can view the dwg file that you embed online.
There may be third party ActiveX controls that you could use, but I think ultimately you will find that it's not practical for drawing files of even average complexity. I recommend to create DWF (if you need vector format) or PNG files on demand (using e.g. the free DWG TrueView from http://usa.autodesk.com/design-review/ ) and embed those instead.
I use DWG Browser. Its a stand alone program that is used for reporting and categorizing drawings with previews. It saves exports in html too.
They have a free demo download available.
http://www.graytechnical.com/software/dwg-browser/
You'll find what I think is the latest information on Autodesk's labs site here: http://labs.blogs.com/its_alive_in_the_lab/2014/01/share-your-autodesk-360-designs-on-company-web-sites.html
It looks like a DWG can be embeded there is an example on this page, but clearly DWF is the way to go.
You can embed DWG file's content in an HTML page by rendering the file's pages as HTML pages or images. If you find it an attractive solution then you can do it using GroupDocs.Viewer API that allows you to render the document pages as HTML pages, images, or a PDF document as a whole. You can then include the rendered HTML/image pages or whole PDF document in your HTML page.
Using C#
ViewerConfig config = new ViewerConfig();
config.StoragePath = "D:\\storage\\";
// Create HTML handler (or ViewerImageHandler for rendering document as image)
ViewerHtmlHandler htmlHandler = new ViewerHtmlHandler(config);
// Guid implies that unique document name
string guid = "sample.dwg";
// Get document pages in html form
List<PageHtml> pages = htmlHandler.GetPages(guid);
// Or Get document pages in image form using image handler
//List<PageImage> pages = imageHandler.GetPages(guid);
foreach (PageHtml page in pages)
{
// Get HTML content of each page using page.HtmlContent
}
Using Java
// Setup GroupDocs.Viewer config
ViewerConfig config = new ViewerConfig();
// Set storage path
config.setStoragePath("D:\\storage\\");
// Create HTML handler (or ViewerImageHandler for rendering document as image)
ViewerHtmlHandler htmlHandler = new ViewerHtmlHandler(config);
String guid = "Sample.dwg"
// Get document pages in HTML form
List<PageHtml> pages = htmlHandler.getPages(guid);
for (PageHtml page : pages) {
// Get HTML content of each page using page.getHtmlContent
}
Disclosure: I work as a Developer Evangelist at GroupDocs.

What is the best way to display HTML content on a Windows Form?

I want to display an HTML formatted content in my application preferably inside a Web Browser control.
I could create an HTML document first and then load it in the Web Browser control, but that is just too clumsy.
Is there any way I can load a string that contains HTML code directly into the Web Browser?
String = "<b>Hello</b> World"
Expected output: Hello World
I'm using Visual Basic 9 (VS2008).
You can do this by dragging a WebBrowser control onto your application and then adding the following code:
webBrowser1.DocumentText = "<b>Hello</b> World";
You can open the document object in the Web Browser control then:-
document.write("<b>Hello</b> World");