PDF to HTML5 conversion – No Even-Odd Winding Rule for filling shapes in...
When filling shapes in PDFs (and lots of other technologies) you get a choice between using the Even-Odd or the Non-Zero winding rule. For those of you already thinking to yourself “what the hell is he...
View ArticlePDF to HTML5 conversion – No Even-Odd Winding Rule for filling shapes in...
This is part 2 on this subject. If you haven’t already read it, please read part 1 to understand the winding problem. So to recap quickly: HTML5 only supports the Non-Zero winding rule, however PDF...
View ArticleWhy canvas is not a self closing HTML5 tag
While debugging a page produced by our PDF to HTML5 Converter, I noticed that Firefox was showing some of the tags in the HTML source in red. Specifically, there was a closing div tag. The solution I...
View ArticleSVG shapes not working in Firefox but fine in Chrome, Safari, IE & Opera?
After taking a sneak peak at upcoming PDF to SVG functionality for our Online Converter, I was disappointed to see that shapes were not appearing at all in Firefox, but appeared correctly in all other...
View ArticleHow to draw SVG on HTML 5 Canvas and why you might want to
One of the limitations of shapes in HTML 5 canvas is that only one fill rule is supported, which can lead to shapes not appearing correctly when you want to convert from another format that supports...
View ArticleNetBeans “Cannot locate java installation in specified jdkhome”?
[Article updated in January 2019] I recently came across this message when opening NetBeans after updating my Java version. Cannot locate Java installation in specified jdkhome: C:\Program...
View ArticleOptimising conversion from float to String in Java
Lets say you have a very specific use case – you want to convert a float to a String in Java, and if the float ends in .0, you want to chop it off. I have this use case, (I was investigating reducing...
View ArticleHow to convert from BufferedImage to JavaFX 2.2 Image
Until recently, if you wanted to load a BufferedImage in JavaFX you were out of luck – the only way to do it was to write out the BufferedImage to disk and then read it back in as a JavaFX Image. But,...
View ArticleJavaFX vs Java3D: First Impressions
One of the more ‘flashy’ features in our Java PDF Viewer is the ‘PageFlow’ mode. Java3D provides a nice reflective stage with the pages of the PDF file lined up, and you are able to smoothly scroll...
View ArticleHow to add a window resize listener to JavaFX scene
While converting the PageFlow mode from Java3D to JavaFX in our Java PDF Viewer, one of the things that I found unclear was how to listen out for window resizes. In awt, you are able to add a...
View ArticleHandling Threads & Concurrency in JavaFX
Recently, while converting the PageFlow mode from Java3D to JavaFX in our Java PDF Viewer, I came across some ConcurrentModificationException issues, so thought it worthwhile sharing what I have learnt...
View ArticleIntegrating JavaFX with Swing: The JFXPanel
If you want to use JavaFX, there are essentially two ways you can do so. The first is to create a standard JavaFX project that extends the Application class, and the second is to use the JFXPanel class...
View ArticleHow to set Z order of nodes in JavaFX
One of the problems that cropped up while converting our Java3D PageFlow PDF viewer mode to JavaFX was the issue of how to replicate the z positioning of Java3D’s 3D scene with JavaFX’s 2D scene....
View ArticleMouseEvents in JavaFX
I had a lot of fun playing with mouse events while building our PageFlow PDF Viewing mode in JavaFX, so thought it worth writing a quick tutorial and sharing what I have learned. To begin, there are a...
View ArticleWhy convert PDF magazines to HTML5?
In these articles, we talk about the advantages of converting your PDF documents to HTML5. Each point has a full supporting article with a more in depth discussion on that point. Don’t forget to check...
View ArticleWhy we are planning to remove Canvas in our PDF to HTML5 Converter…
Ever since we began writing our PDF to HTML5 converter a little over 2 years ago, we have chosen the HTML5 canvas as the way to present a PDF file as HTML5. It allows us to output PDF vector graphics...
View ArticleWhat size is 100% scaling in PDF?
As with the majority of the PDF specification, what determines the physical size of your PDF is very complicated but also very powerful, and done in the way that it is for very good reason – so that...
View ArticleWhat is the optimum number of lines of code written per day?
I recently spent a few days working on rewriting the way that settings get passed into one of our products. This was a slight deviation to my usual work – I can usually be found writing code that...
View ArticleHow does Image Aspect Ratio work in SVG
SVG is a fantastic technology that is becoming increasingly popular as our web browsers get increasingly more powerful. I actually think that SVG offers many advantages over Canvas. SVG is a vector...
View ArticleMeasure content performance with Analytics – Why convert PDF magazines to...
One of the things that all good content producers rely heavily on is analytics. Analytics give you the opportunity to see what is doing well (the stuff you need to do more of), and what isn’t doing...
View ArticleHow to fill shapes on HTML5 Canvas using EvenOdd winding rule with SVG
A little over a year ago, I wrote a short series of articles that talked about Canvas’ inability to fill shapes using the even-odd winding rule. Well, a lot has changed since then, so I wanted to...
View ArticleAdding Annotations to Web Content with Annotator.js
Annotator.js is an open-source (available on GitHub) JavaScript library created by the Open Knowledge Foundation that allows you to add annotations to web pages. Annotations can be personal (only seen...
View ArticleImage Optimisation: What PNGQuant is and why you should use it
What is PNGQuant? PNGQuant is a free to use, open source (available under a BSD-like license) command line utility and library for converting PNG files from 24/32-bit PNG images to 8-bit paletted PNG...
View ArticleAdding Fullscreen to WebApps using the JavaScript API
In addition to the standard (F11) full-screen modes in web browsers, there is now also a way to enable full screen using JavaScript, providing fullscreen functionality from within web apps. Browser...
View ArticleBeware JavaScript Layout Thrashing!
What is Layout Thrashing? Layout Thrashing is where a web browser has to reflow or repaint a web page many times before the page is ‘loaded’. In the days before JavaScript’s prevalence, websites were...
View ArticleImproving Image Output Performance in Java
A common complaint from Java developers when using ImageIO in Java is that it is both slow to write out images, and that the images it produces are not well optimised and have large file sizes. In this...
View Article6 Tips for Optimising SVG Files
SVG (Scalable Vector Graphics) has seen a rapid increase in usage in recent years since being included in the HTML5 specification as web browsers improve support, and more websites take advantage of...
View Article4 Reasons why Converting PDF to Responsive EPUB is Impossible
As the developers of a PDF to HTML5 Conversion tool (BuildVu), one of the topics we are regularly asked about is converting PDF to EPUB. The main problem with this task is that PDF is a fixed-layout...
View ArticleRemote debugging iOS Safari on OS X, Windows and Linux
Recently, I have been working on improving mobile support in the content produced by our PDF to HTML5 converter. One problem that I have encountered is how to debug iOS Safari, particularly if you are...
View ArticleUsing Trello as a tool to manage Sprints for Agile and Scrum
We are big fans of Trello at IDRSolutions and have several boards that we use for different purposes. One of the ways that we use Trello is to manage the release cycle (or sprint, for you agile folks)...
View ArticleWhat Chrome 45 dropping NPAPI Plug-in support means
What does it mean for you? With the recent news that Google has now killed off NPAPI plugins in Chrome 45, it has left many wondering exactly what NPAPI plugins are, and what impact this news will...
View ArticleMaking a Simple Basecamp Chatbot with NodeJS
Creating a chatbot is a fun way to integrate external tool functionality within Basecamp. I recently created one to call the Bitbucket API, allowing us to configure branch permissions on repositories...
View ArticleHow to covert PDF files to SVG
Why convert PDF to SVG? People usually convert PDF files to SVG in order to display within web browsers on mobile, tablet and desktop. Like PDF, SVG is a vector image format that makes it a good...
View ArticleWhat is a Microservice?
If the term Microservice is new to you then chances are that you’re thinking the same thing that went through my mind when I first heard the term. “Oh great, yet another new technology that I need to...
View ArticleHow to enable GZIP Compression in Tomcat, Jetty, GlassFish and Payara
GZIP Compression is a widely supported method of reducing the file size of the content hosted by your Java Application Server. This reduces bandwidth usage and improves load times. We recommend...
View ArticleHow to Enable SVG Gzip Compression on Apache and NGINX
Gzip compression is a widely supported method of reducing the size of the content sent from a web server in order to improve the load time. Effectively all browsers support gzip compression (IE6+,...
View ArticleUnderstanding the PDF File Format
We have been working with PDF files since 1999 and developed complex software to display PDF files. We have learnt a lot about the PDF file format in that time and share our knowledge in the articles...
View ArticleHow to git mirror Bitbucket to GitHub with all branches
Recently, I needed to sync a Bitbucket repo to GitHub. I wanted to use a tool that only integrates with GitHub, but our repository lives on Bitbucket! I found other tutorials that mirrored the...
View ArticleHow to Embed PDF files in HTML Web Pages
There are several HTML tags that can be used to view PDF files in HTML. The <embed>, <object> and <iframe> tags can all display a PDF file inside a web app. Each behaves similarly,...
View ArticleHow to set up PDF to HTML5 conversion to the Cloud
One of the big themes of 2019 was running software in the Cloud using technologies such as Docker. The most commonly asked support question we received was how to set up and run our software on Cloud...
View ArticleThe best way to convert PDF to HTML
In this blog post, we tell you the best way to convert PDF to HTML, looking at advantages and disadvantages for each method. PDF is a reliable and efficient way to view documents. However, converting...
View Article5 key features to find the best PDF to HTML converter
There are lots of PDF to HTML converters out there and each one has a different tunnel of features. Making sense of and understanding each and every feature can be difficult. So what is really...
View ArticleWhy convert PDF Documents to HTML
In this article I will be discussing the many reasons why you should convert your PDF documents into HTML. For instances HTML allows you to do the following: Smooth document display integration on both...
View ArticlePDF vs HTML for AI Web Apps
As AI integration in software products and services becomes more popular, the need for more dynamic and accessible documents has never been greater. For companies working with a large amount of...
View ArticlePDF.js Alternative for PDF Documents
Display Documents on Web Apps PDF.js is maintained by Mozilla for Firefox, but it works reasonably well with other browsers. It allows you to display PDF documents using HTML5 and WebAssembly as...
View Article