Difference between revisions of "Research/all-in-one publishing"
Arjensuijker (talk | contribs) |
Arjensuijker (talk | contribs) |
||
Line 27: | Line 27: | ||
=== From Word to HTML === | === From Word to HTML === | ||
In word, there are basically two methods to style a document: using styles or by manually changing the font properties for every heading and paragraph. The first method results in html files with a great structure, because the styles can directly translated to HTML tags. The second method creates very messy HTML files that require lots of cleaning | At this stage, we encountered very little problems. Pandoc proved easy to install and worked flawlessly. | ||
=== Cleaning up the HTML === | |||
In word, there are basically two methods to style a document: using styles or by manually changing the font properties for every heading and paragraph. The first method results in html files with a great structure, because the styles can directly translated to HTML tags. The second method creates very messy HTML files that require lots of cleaning because the HTML is littered with unnecessary styling information. The documents that we used as the source were somewhere in between: most styling was done correctly, but a lot of manual cleaning was still needed. Additionally, most figures had to be extracted manually. | |||
=== Adding semantic structure and classes === | |||
Before we started adding this information to the HTML, we walked through the publication. Together we decided what would be the correct semantic structure and added this as annotations to the file. We could then work in a parallel fashion, individually implementing the structure in the html files. An issue we encountered while defining the structure is that most semantic HTML elements are aimed at the web, so deciding on a suitable semantic structure for both print and web was often a matter of compromise. Because we knew what design we were aiming at, it was easier for us to decide what elements should have classes and which should not. If the design is not ready yet, this may be more of a challenge and will probably change during the course of the project. | |||
=== Creating the CSS === | |||
This was by far the most challenging part of this project, so we will discuss the challenges separately for every output format. | |||
==== Web CSS ==== | |||
For the website, the whole design of the book had to be reimagined. Pages do not exist, information doesn't have to be lineair and many interactive posibilities open up. We decided to keep the website largely lineair because seemed to fit the content well. Some interactivity was added: the index was redesigned to become a navigation menu and the tooltips were made into toolips. Because the font (Metric) was not licensed for online use, we had to find a font that was similair. This proved to be very difficult, so we had to compromise. We tried to avoid using javascript when possible, because this can decrease compatibility and increase the complexity of the code. The only exception we made was for the footnotes, because this was simply not possible in CSS. Numbering of figures, footnotes, pages and tables was also done in CSS. This turned out to work out quite well, although browser support is somewhat limited. | |||
== Suggestions for the ‘regular’ website == | == Suggestions for the ‘regular’ website == |
Revision as of 11:06, 18 June 2015
Introduction
The core of our research is developing a workflow in which HTML and CSS is used as the source for a publication. This publication is than available for print, epub and for a responsive website. This approach was chosen because it could potentially improve the publication workflow for the following reasons:
- Both the design and the content can be updated at any time, fully independently of each other.
- Every update in content or design is automatically exported to every available publication medium.
- HTML and CSS are very widespread transparent file formats that have been used for decades without much change, and will remain this way for years to come. This makes them much more suitable for digital archiving than most proprietary formats.
- For larely the same reasons, the resulting publication is very suitable for (collaborative) reuse and redesign.
About the process
For this research, we have chosen to take an existing publication and explore how it could be rebuilt from scratch using our newly developed workflow. The original publication was only designed for print. Our goals was to replicate this design as closely as possible with our new print version, and adapt the design to also fit the other media.
The global process consisted of the following steps:
1. The original Word documents with the contents of the publication were converted to html files using pandoc conversion software. 2. These html files were 'cleaned up', deleting everything design-related and only leaving structural information. 3. Additional HTML was added to improve semantic value and facilitate CSS styling. 4. CSS stylesheets were created for every output format. 5. The outputs were created using Pandoc (for epub), Prince (for pdf), Chrome (for reposponsive web) and Firefox (for direct browser print) and checked for consistency.
Of course the process wasn't as lineair as it appears here. The process can be better described as being iterative, looping through the steps continuously.
Challenges
Because we are off the beaten tracks for the duration of this research, we encountered many challenges that didn't have readily available solutions. We will discuss the challenges for every step of our process:
From Word to HTML
At this stage, we encountered very little problems. Pandoc proved easy to install and worked flawlessly.
Cleaning up the HTML
In word, there are basically two methods to style a document: using styles or by manually changing the font properties for every heading and paragraph. The first method results in html files with a great structure, because the styles can directly translated to HTML tags. The second method creates very messy HTML files that require lots of cleaning because the HTML is littered with unnecessary styling information. The documents that we used as the source were somewhere in between: most styling was done correctly, but a lot of manual cleaning was still needed. Additionally, most figures had to be extracted manually.
Adding semantic structure and classes
Before we started adding this information to the HTML, we walked through the publication. Together we decided what would be the correct semantic structure and added this as annotations to the file. We could then work in a parallel fashion, individually implementing the structure in the html files. An issue we encountered while defining the structure is that most semantic HTML elements are aimed at the web, so deciding on a suitable semantic structure for both print and web was often a matter of compromise. Because we knew what design we were aiming at, it was easier for us to decide what elements should have classes and which should not. If the design is not ready yet, this may be more of a challenge and will probably change during the course of the project.
Creating the CSS
This was by far the most challenging part of this project, so we will discuss the challenges separately for every output format.
Web CSS
For the website, the whole design of the book had to be reimagined. Pages do not exist, information doesn't have to be lineair and many interactive posibilities open up. We decided to keep the website largely lineair because seemed to fit the content well. Some interactivity was added: the index was redesigned to become a navigation menu and the tooltips were made into toolips. Because the font (Metric) was not licensed for online use, we had to find a font that was similair. This proved to be very difficult, so we had to compromise. We tried to avoid using javascript when possible, because this can decrease compatibility and increase the complexity of the code. The only exception we made was for the footnotes, because this was simply not possible in CSS. Numbering of figures, footnotes, pages and tables was also done in CSS. This turned out to work out quite well, although browser support is somewhat limited.
Suggestions for the ‘regular’ website
- Keep the html structure as logical and semantic as possible
- Use relative positioning and measurements (% and em)
- There are no pages! How do you deal with this? What do you do with the cover?
- It doesn’t have to be linear anymore
- Use a ‘reset.css’
- Limit text-width (60-120 characters)
- Create a menu from the index using anchor tags
- Select fonts with proper online license and readability
- Add interactive elements like tooltip footnotes <- be creative!
Suggestions for making it responsive
- Set the default viewport (<meta name="viewport" content="width=device-width, initial-scale=1.0" />
- Add media queries for several widths, test at what width your design breaks.
- Use a browser with device emulation for testing (Chrome for example)
- In most cases, the width of your content should be 100% on smaller screens
- Make buttons for thumbs, not cursors. Hovers work differently!
- Don’t imitate apple or android specific interfaces, but do use apps as inspiration. If the interaction with your site feels as ‘snappy’ on smartphones as a well-made native app, you did a good job.
- Optimise screen space, hide what is not essential
- If it is possible ask authors to write short abstracts for every chapter, so that users can choose when they want to read more or not.
- Test on several real devices! Browsers may be able to imitate the looks of mobile devices, but how it actually ‘feels’ may be very different!
A preview of the website can be found here: [1]
A preview of the epub can be found here: File:All-in-one-publishing-epub.zip