{"id":4114,"date":"2012-06-14T15:16:36","date_gmt":"2012-06-14T22:16:36","guid":{"rendered":"http:\/\/www.rorohiko.com\/wordpress\/?page_id=4114"},"modified":"2014-05-21T15:32:42","modified_gmt":"2014-05-21T22:32:42","slug":"fixed-layout-epub-assistant-in-indesign-epubcrawler","status":"publish","type":"page","link":"https:\/\/rorohiko.com\/wordpress\/manuals\/fixed-layout-epub-assistant-in-indesign-epubcrawler\/","title":{"rendered":"Fixed Layout EPUB Assistant In InDesign: ePubCrawler"},"content":{"rendered":"<h2><a name=\"download\"><\/a>Downloading<\/h2>\n<p>eCanCrusher, the EPUB zip\/unzipper is now available separately from ePubCrawler. Visit\u00a0<a href=\"http:\/\/www.docdataflow.com\/ecancrusher\">http:\/\/www.DocDataFlow.com\/eCanCrusher<\/a>\u00a0for more info.<\/p>\n<p>As of December 27, 2013, ePubCrawler has ceased to be donation-ware. It will remain available as-is (see below), but there won&#8217;t be any more updates.<\/p>\n<p>Over the course of 2014, it will be gradually superseded by Rorohiko&#8217;s new Crawler product and its FL-EPUB personality. More info on this work-in-progress:\u00a0<a href=\"http:\/\/www.docdataflow.com\">http:\/\/www.DocDataFlow.com<\/a><\/p>\n<p>People who donated US$50 or more for ePubCrawler before December, 27, 2013 will be entitled to a free license of the Crawler+FL-EPUB product if and when it becomes available.<\/p>\n<h3>ePubCrawler<\/h3>\n<p>Click the link below to download a zip file with the software (currently version 0.2.5. Supports InDesign CS3 and higher).<\/p>\n<p>Please read the documentation further down this page. This is not a point-and-click software!<\/p>\n<p><a href=\"https:\/\/www.rorohiko.com\/downloads\/ePubCrawler.0.2.5.zip\">https:\/\/www.rorohiko.com\/downloads\/ePubCrawler.0.2.5.zip<\/a><\/p>\n<h3>History<\/h3>\n<p>For info on what changed in <em>ePubCrawler<\/em> since the last version, please check out the &#8216;<a href=\"#history\">History<\/a>&#8216; near the end of this page. Download links to older versions can also be found near the history.<\/p>\n<h2>Take your time<\/h2>\n<p>We understand you might be rushed and eager to get started, and you might get a fair way without reading any instructions.<\/p>\n<p>However, we strongly recommend that you take some time to read up on\u00a0<em>ePubCrawler<\/em>.\u00a0With great power comes great responsibility!<\/p>\n<p>Before you dive in, make sure to check the &#8216;<a href=\"#links\">Essential Links<\/a>&#8216; section with required reading and viewing material.<\/p>\n<p>If you don&#8217;t like reading, go to the <em>ePubCrawler<\/em> &#8216;<a href=\"#video\">Videos<\/a>&#8216; section.<\/p>\n<p><em>ePubCrawler<\/em> is very flexible and can be reconfigured to generate a wide range of possible fixed-layout EPUB variants. If you don&#8217;t like what it does, you can change things.<\/p>\n<p>This web page changes frequently as we are continuously improving\u00a0<em>ePubCrawler\u00a0<\/em>and the documentation to go with it.<\/p>\n<p><strong>IMPORTANT<\/strong>: you need to be aware of the <em>ePubStyle<\/em> setting inside the <em>config.ini<\/em>\u00a0file, which is located in the\u00a0<em>ePubCrawler<\/em>\u00a0folder. Open config.ini\u00a0in a text editor for more info &#8211; the file is heavily commented.<\/p>\n<p>By changing the <em>ePubStyle<\/em>\u00a0setting you can generate wildly different EPUBs, simply by selecting one of a number of pre-configured EPUB styles.<\/p>\n<p>You can also add and use your own EPUB styles (see <a href=\"#custom\">&#8216;Customizing <em>ePubCrawler<\/em>&#8216;<\/a>).<\/p>\n<p>Make sure to read up on <em>ePubStyle<\/em>, and set <em>ePubStyle<\/em>\u00a0to something that suits you best &#8211; for example use\u00a0<em>percentages<\/em>\u00a0instead of\u00a0<em>default<\/em>\u00a0to select using\u00a0 CSS &#8216;%&#8217; measurements vs. &#8216;px&#8217; measurements.<\/p>\n<p>If you want to try out the (still very incomplete)\u00a0read-aloud functionality, set\u00a0<em>ePubStyle<\/em><em>\u00a0<\/em>to<em>\u00a0readaloud.<\/em><\/p>\n<p>For more advanced control over the generated EPUB, you can tweak the various templates and snippet files.<\/p>\n<p>For installation instructions, go to the &#8216;<a href=\"#installation\">Installation<\/a>&#8216; section.<\/p>\n<p>Please let us know about any bugs, improvements, ideas, kudos &#8211; e-mail us at\u00a0<a href=\"mailto:support@rorohiko.com\">support@rorohiko.com<\/a><\/p>\n<h2>What is it?<\/h2>\n<p><em>ePubCrawler<\/em> takes an InDesign document, and converts it to a collection of XHTML and CSS files. There is also\u00a0<em>eCanCrusher, <\/em>which\u00a0comes with\u00a0<em>ePubCrawler<\/em>.<\/p>\n<p>You can then drag-drop an EPUB folder onto the\u00a0<em>eCanCrusher<\/em>\u00a0application icon, and it will convert the folder into an .epub file.<\/p>\n<p>The resulting EPUBs are not beautiful, and need some &#8216;Tender Love and Care&#8217;, but they are usable. For best results, further fine tuning is needed, but <em>ePubCrawler<\/em> does a lot of the necessary work for you.<\/p>\n<p><em>ePubCrawler<\/em> is fully CSS\/XHTML template driven. You feed an InDesign file + CSS\/XHTML templates in one end, and an EPUB comes out at the other end.<\/p>\n<p>The underlying philosophy is: &#8216;power to the user&#8217;.<\/p>\n<p><em>ePubCrawler<\/em> is extremely configurable. Maximizing that power can take an investment of time and effort on your part, as building and fine-tuning your own CSS\/XHTML templates can get pretty intricate.<\/p>\n<p>Of course, you can use <em>ePubCrawler<\/em> &#8216;as-is&#8217;, without knowing much about EPUB,\u00a0and just point and click and use the sample EPUB styles that come with the tool.<\/p>\n<p>The CSS\/XHTML templates are user-adjustable, so you can easily tweak the output. And because it&#8217;s template-driven,\u00a0<em>ePubCrawler<\/em> is not tied into any particular type or version of EPUB standard.<\/p>\n<p>Depending on the type of template you feed into it, different EPUB styles can pop out at the other end. You are encouraged to create your own EPUB styles.<\/p>\n<p><em>ePubCrawler<\/em> is work-in-progress: there is still a lot of work to be done, but even in its rudimentary shape, it is quite powerful.<\/p>\n<p>The download link is at the\u00a0<a href=\"#download\">top of this page<\/a>. Installation\u00a0instructions can be found in the\u00a0\u00a0&#8216;<a href=\"#installation\">Installation<\/a>&#8216; section.<\/p>\n<h2>How it works.<\/h2>\n<p><em>ePubCrawler<\/em> will merge two different sources of information and spit out an EPUB folder.<\/p>\n<p>First of all, it will inspect your current InDesign document, and harvest information: the positioning of individual frames, their contents, linked images, all the words and their formatting&#8230;<\/p>\n<p>Second, it will use the contents of a folder called <em>ePubCrawlerTemplate<\/em> which contains configuration information and a skeleton EPUB structure, and a slew of template and template snippet files.<\/p>\n<p>Most of the text files in this skeleton EPUB structure contain a smattering of special placeholders (e.g. <em>$$PAGE_WIDTH$$<\/em>).<\/p>\n<p>Placeholders are wedged between <em>$$<\/em> and <em>$$<\/em> or between <em>$($<\/em> and <em>$)$<\/em>.<\/p>\n<p><em>ePubCrawler<\/em> will replace all such placeholders with real data, harvested from the InDesign document when it merges the InDesign information with the skeleton EPUB structure from the <em>ePubCrawlerTemplate <\/em>folder.<\/p>\n<p>The merged result is then stored in a folder next to your InDesign document.<\/p>\n<p>This folder&#8217;s name will be based on the name of your InDesign document.<\/p>\n<p>If your InDesign document is called <em>MyDoc.indd<\/em>\u00a0then the merged EPUB folder will be called <em>MyDoc<\/em>.<\/p>\n<p><em>ePubCrawler<\/em> will not overwrite any existing folders, so if there is already a folder called <em>MyDoc,<\/em>\u00a0it will create a folder\u00a0<em>MyDoc_1<\/em> instead. And if in turn <em>MyDoc_1<\/em> already exists, it will instead create <em>MyDoc_2<\/em>, and so on.<\/p>\n<p>That means that if you run <em>ePubCrawler<\/em> a few times in a row, you&#8217;ll end up with a multitude of EPUB folders next to your document, and the one with the highest number appended to the name will be the latest.<\/p>\n<p>Included with <em>ePubCrawler<\/em> is a small drag-and-drop utility called <em>eCanCrusher<\/em>.<\/p>\n<p>Both Mac and Windows versions are provided. See the\u00a0&#8216;<a href=\"#installation\">Installation<\/a>&#8216; section for more info on how to install it.<\/p>\n<p>You can drag any of the folders created by <em>ePubCrawler<\/em> onto the <em>eCanCrusher<\/em> icon to create an .epub file.<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz5.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-4171\" title=\"ScreenSnapz\" src=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz5.png\" alt=\"\" width=\"129\" height=\"182\" srcset=\"https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz5.png 215w, https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz5-212x300.png 212w\" sizes=\"auto, (max-width: 129px) 100vw, 129px\" \/><\/a><a href=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz21.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-4172\" title=\"ScreenSnapz2\" src=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz21.png\" alt=\"\" width=\"132\" height=\"234\" srcset=\"https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz21.png 220w, https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz21-169x300.png 169w\" sizes=\"auto, (max-width: 132px) 100vw, 132px\" \/><\/a><\/p>\n<h2>Running <em>ePubCrawler<\/em><\/h2>\n<p>Once <em>ePubCrawler<\/em> is installed (see further), you&#8217;ll open an InDesign document, and bring up the scripts palette (<em>Window &#8211; Utilities &#8211; Scripts <\/em>menu).<\/p>\n<p>Then look for <em>ePubCrawler\u00a0<\/em>or\u00a0<em>ePubCrawler.jsxbin<\/em> on the <em>Scripts<\/em>\u00a0palette and double-click it.<\/p>\n<p>For smaller documents, it&#8217;ll only need a split second to do its work.<\/p>\n<p>Switch to the <em>Finder<\/em> or <em>Explorer<\/em>, and look for a folder that should have appeared next to your <em>.indd<\/em> file.<\/p>\n<p>For example, if your document is <em>MyDoc.indd<\/em>, look for a folder called\u00a0<em>MyDoc<\/em> (or <em>MyDoc_1, MyDoc_2&#8230;<\/em>).<\/p>\n<p>This folder contains the EPUB structure, which can be used as-is. But in most cases, you will want to further fine-tune it.<\/p>\n<p>The <em>template.css<\/em> file will list entries for each paragraph and character style in the document.<\/p>\n<p>These entries will be defined with rudimentary CSS style info. They will work, but for optimal results, you&#8217;ll need to adjust their definitions; the default <em>font-family<\/em> information that is generated will most probably be incorrect.<\/p>\n<p>To help you adjust the definitions, <em>ePubCrawler<\/em> puts comments into the <em>template.css<\/em> file, showing the InDesign style definitions.<\/p>\n<p>The most important bit of information in these comment blocks is the\u00a0<em>fontMatchString<\/em> &#8211; this is the string that will be matched against the optional font mapping information you can define in your <em>config.ini<\/em> file.<\/p>\n<p>To help <em>ePubCrawler<\/em> with the conversion, you should also spend some effort preparing your InDesign document.<\/p>\n<p>Convert any images that are not JPEG or PNG into JPEG or PNG, and place the converted files instead.<\/p>\n<p>Then also &#8216;flatten out&#8217; any complex transformation (e.g. image rotations). <em>ePubCrawler<\/em> does not currently know how to cope well with complex image transformations. It can currently handle some scaling, shifting, rotating, but not skewing, etc&#8230;<\/p>\n<h2><a name=\"custom\"><\/a>Customizing <em>ePubCrawler<\/em><\/h2>\n<p>The main\u00a0<em>config.ini<\/em> file residing inside the <em>OEBPS<\/em> folder is a text file; you can open it in a text editor.<\/p>\n<p>(<em>Sublime Text 2 <\/em>on both Mac and Windows, or <em>TextWrangler<\/em> on Mac, and\u00a0<em>NotePad++<\/em> on Windows are what I tend to use for text editing).<\/p>\n<p><em>config.ini<\/em> uses the INI file format which is an easy-to-grasp, text-based, human-readable format.<\/p>\n<p><a href=\"http:\/\/en.wikipedia.org\/wiki\/INI_file\">http:\/\/en.wikipedia.org\/wiki\/INI_file<\/a><\/p>\n<p>Various settings can be activated, deactivated or modified by editing the <em>config.ini<\/em> file and re-saving it.<\/p>\n<p>Future versions will have a more user-friendly approach, but for now, you need to open the <em>config.ini<\/em> in a text editor.<\/p>\n<pre>...\r\n# **************** MAIN SECTION ************************\r\n\r\n[main]\r\n\r\n#\r\n# ePubStyle: select one of the available ePub styles (i.e. the name of a folder that\r\n# can be found in the ePubCrawlerTemplate\\ePubStyles folder). This is the only setting\r\n# you cannot override from a config.ini inside a specific ePub style folder.\r\n\r\n#\r\nePubStyle = plainpixels\r\n\r\n#\r\n# What DPI to use for exporting images. 144 dpi makes ePubCrawler export twice as\r\n# many pixels as needed (144\/72 = 1), so allows for more zooming\r\n#\r\nimageExportDPI = 144\r\n\r\n#\r\n# Set generateCompactCode to 1 to reduce the amount of white space in the\r\n# generated code\r\n#\r\ngenerateCompactCode = 0<\/pre>\n<p>The settings that might be of most interest are listed here; for more info, consult the <em>config.ini<\/em> file inside the OEBPS folder.<\/p>\n<h3>ePubStyle<\/h3>\n<p>Inside the <em>ePubCrawlerTemplate<\/em> folder you&#8217;ll find a folder <em>ePubStyles<\/em>. This folder contains a number of subfolders.<\/p>\n<p>Their folder names are <em>plainpercentages<\/em>, <em>plainpixels<\/em>, <em>scaledpixels<\/em>,&#8230;<\/p>\n<p>Each of them contains a set snippets of XHTML or CSS to be used for generating a certain &#8216;style&#8217; of EPUB.<\/p>\n<p>For example, if you wanted to generate CSS that uses % values instead of <em>px<\/em> values, set\u00a0<em>ePubStyle<\/em>\u00a0to\u00a0<em>plainpercentages<\/em>.<\/p>\n<p>The e<em>PubStyle<\/em>\u00a0setting inside the\u00a0<em>config.ini<\/em>\u00a0should refer to one of the folders you find inside the\u00a0<em>ePubStyles<\/em>\u00a0folder.<\/p>\n<p>Feel free to add, copy, edit additional folders and prepare your own snippets.<\/p>\n<p>A common approach is to copy one of the existing folders, and then rename the copy; e.g. copy <em>plainpixels<\/em> to <em>myplainpixels<\/em>.<\/p>\n<p>Simply by doing that you&#8217;ve made available\u00a0a new ePubStyle called <em>myplainpixels<\/em>.<\/p>\n<p>Then you would add to and edit the contents of <em>myplainpixels\u00a0<\/em>as desired.<\/p>\n<p>If you want to change some of the standard behavior that&#8217;s driven by files that reside in <em>OEBPS<\/em>, you&#8217;ll also want to copy <em>config.ini<\/em> and some the templates from <em>OEBPS<\/em> to your customized\u00a0<em>myplainpixels<\/em> folder, and then modify them to suit.<\/p>\n<p>The idea is that the files in the <em>OEBPS<\/em> folder define your &#8216;baseline&#8217; behavior, and the files inside the selected <em>ePubStyle<\/em> subfolder can then modify or override this baseline behavior, as needed.<\/p>\n<p>For example, you could create an empty folder called <em>baseline<\/em> inside <em>ePubStyles<\/em>. That would automatically make a new <em>ePubStyle<\/em> called <em>baseline<\/em> available, and it would be driven only by the contents of the <em>OEBPS<\/em> folder, without overriding any of the baseline behavior.<\/p>\n<h3>imageExportDPI<\/h3>\n<p>When using one of the styles\u00a0<em>plainpixels<\/em> or <em>plainpercentages<\/em>, any images encountered in the InDesign file are cropped and re-exported to a certain pre-set resolution.<\/p>\n<p>The <em>scaledpixels<\/em> EPUB style instead attempts to use unmodified copies of the original image files. If you&#8217;d select\u00a0<em>scaledpixels<\/em>\u00a0as your EPUB style,<em>\u00a0<\/em>manipulating <em>imageExportDPI<\/em> would have no effect.<\/p>\n<p>The higher this value, the more pixels will be exported and the larger the image files, but in return the images are better quality, and the user could zoom in further without losing quality.<\/p>\n<h3>generateCompactCode<\/h3>\n<p>Change the zero into a one to generate more compact CSS and HTML code (less comments and white space).<\/p>\n<h3>allowMultipleOutputFolders<\/h3>\n<p>Set this to a zero (0) to avoid generating more than one EPUB folder per document. <em>ePubCrawler<\/em> will refuse to re-generate the EPUB folder unless you first delete it.<\/p>\n<h3>useFirstPageAsCover<\/h3>\n<p>Set this to a zero (0) if you don&#8217;t want the first page to be used as the cover. You&#8217;ll need to take care of the cover image yourself in that case.<\/p>\n<h3>excludeFirstPageFromBook<\/h3>\n<p>Set this to a one (1) if you don&#8217;t want the first page to be part of the EPUB. When used together with <em>useFirstPageAsCover<\/em> you can get the first page to be used as a cover without appearing in the EPUB as as page as well.<\/p>\n<h3>[fonts]<\/h3>\n<p>Further down in the config.ini you can find the fonts section, where you can define a font mapping. By adding one or more lines here you can map one or more InDesign font faces to specific CSS fonts.<\/p>\n<p>The entries in the <em>[fonts]<\/em> section consist of a regular expression (regexp) and the info that any matching font needs to be mapped to &#8211; a comma-separated list of the CSS <em>font-family<\/em>, the <em>font-weight<\/em>, the <em>font-style<\/em>, and the <em>font-size<\/em>.<\/p>\n<p>For more info, see the &#8216;<a href=\"#fonts\">Font Mapping<\/a>&#8216; chapter.<\/p>\n<h2>The Template Folder<\/h2>\n<p>You don&#8217;t need to read this chapter about the <em>ePubCrawlerTemplate\u00a0<\/em>in order to effectively use <em>ePubCrawler<\/em>. There is quite a bit to take in, and you might want to avoid the &#8216;information overload&#8217; till later.<\/p>\n<p>However, if you do read this chapter, you&#8217;ll be able to make <em>ePubCrawler<\/em>\u00a0do much more.<\/p>\n<p>The contents of the <em>ePubCrawlerTemplate<\/em>\u00a0folder determine how the merged result looks. You&#8217;re free to tamper with this folder &#8211; any files or folders you add to it will be reflected in the merged result.<\/p>\n<p>A placeholder is any combination of upper-case letters, underscores and digits, wedged between two dollar signs.<\/p>\n<p><em>ePubCrawler<\/em> makes extensive use of placeholders in many of the text files inside the <em>ePubCrawlerTemplate <\/em>folder.<\/p>\n<p>You&#8217;re allowed to invent your own placeholders; e.g. you could use a placeholder <em>$$MY_GREAT_PLACEHOLDER$$ <\/em>in your .xhtml files.<\/p>\n<p>Many placeholders are pre-defined for use with <em>ePubCrawler<\/em>, but you&#8217;re welcome to add your own.<\/p>\n<p>You can change any of the template *.<em>xhtml<\/em> or <em>*.css<\/em> files inside <em>ePubCrawlerTemplate\u00a0<\/em>to your liking. Whatever you change in them will be reflected in the resulting EPUB.<\/p>\n<p>Some of the files and folders you&#8217;ll find in <em>ePubCrawlerTemplate <\/em>will get special treatment.<\/p>\n<p>Special folders are: <em>OEBPS<\/em>, <em>images.\u00a0<\/em><\/p>\n<p>Special files are: <em>config.ini<\/em>,\u00a0<em>content.opf, $$PAGE_NAME$$.xhtml, $$PAGE_NAME$$.css, *.ncx, *.css, *.opf, *.xml, *.xhtml<\/em><\/p>\n<p>Many of the special files (e.g. any file with a <em>.css<\/em> file name extension) will be inspected for placeholders by <em>ePubCrawler<\/em>, and any such placeholders will be replaced by some (possibly empty) text while the file is being processed.<\/p>\n<h3>OEBPS:<\/h3>\n<p>Any file that gets copied into the subfolder called <em>OEBPS <\/em>\u00a0will affect the contents of the manifest for the EPUB.\u00a0<em>ePubCrawler<\/em> will automatically keep track of any of the files it adds into the destination\u00a0<em>OEBPS<\/em> folder\u00a0as it builds the EPUB,\u00a0and it will adjust the EPUB manifest accordingly.<\/p>\n<p><em>OEBPS<\/em>\u00a0also contains the baseline <em>config.ini<\/em> and template files and template snippet files (e.g. <em>$$PAGE_NAME$$.css<\/em>, <em>$$PAGE_NAME$$.xhtml<\/em>, <em>$$WORD$$.xhtml.snippet<\/em>&#8230;).<\/p>\n<p>Nor the <em>config.ini<\/em>, not these dollar-named files are not copied over to the destination <em>OEBPS<\/em> folder. Instead, they serve as templates for the XHTML and CSS output of <em>ePubCrawler<\/em>.<\/p>\n<p><em>ePubCrawler<\/em> will always first look in the selected <em>ePubStyles<\/em> subfolder for template files, snippets and an additional <em>config.ini<\/em> file.<\/p>\n<p>You can configure the selected <em>ePubStyles<\/em>\u00a0subfolder via the\u00a0<em>ePubStyle<\/em> configuration from the <em>config.ini<\/em>.<\/p>\n<p>When <em>ePubCrawler<\/em> cannot find a needed file in the selected subfolder, it will consult <em>OEBPS<\/em> as a fallback.<\/p>\n<p>For example, most of the sample EPUB styles provided in the <em>ePubStyles<\/em> subfolder don&#8217;t have a <em>$$WORD$$.xhtml.snippet<\/em> file.<\/p>\n<p>For all of those styles, the <em>$$WORD$$.xhtml.snippet<\/em> from <em>OEPBS<\/em> will be used.<\/p>\n<h3>images:<\/h3>\n<p>If there is a folder called\u00a0<em>images<\/em> then it will be used to store all the collected images.<\/p>\n<p>While copying images across, <em>ePubCrawler<\/em>\u00a0will rename the image files in order to make sure there are no possible clashes between same-name images.<\/p>\n<p>For example, you might be linking to two totally different images both called <em>Logo.jpg<\/em> in your InDesign file, with original image each stored in a different folder. <em>ePubCrawler<\/em> will rename both files with a unique name as it copies them to the\u00a0<em>images\u00a0<\/em>folder.<\/p>\n<p>If the <em>images<\/em> folder is missing, the images will be copied straight into the <em>OEBPS<\/em> folder instead.<\/p>\n<h3>content.opf\u00a0:<\/h3>\n<p>The <em>content.opf<\/em> file is copied into the OEBPS folder. It is not listed in the manifest itself, as it contains the manifest. If you open the file <em>content.opf<\/em> inside the <em>ePubCrawlerTemplate<\/em>\u00a0folder with a text editor, you&#8217;ll find some text:<\/p>\n<pre>...\r\n &lt;manifest&gt;\r\n $$MANIFEST$$\r\n &lt;\/manifest&gt;\r\n &lt;spine toc=\"ncx\"&gt;\r\n $$SPINE$$\r\n &lt;\/spine&gt;\r\n...<\/pre>\n<p>The two placeholders <em>$$MANIFEST$$<\/em> and <em>$$SPINE$$<\/em> will be replaced by the manifest and the spine info calculated by <em>ePubCrawler<\/em>.<\/p>\n<h3><em>$$PAGE_NAME$$.xhtml, $$PAGE_NAME$$.css:<\/em><\/h3>\n<p>These files are the templates for the individual page files &#8211; each page in your InDesign document will be converted to an <em>xhtml<\/em> and a <em>css<\/em> file.<\/p>\n<p>The <em>$$PAGE_NAME$$<\/em> placeholder is replaced by the file name for the page: p1, p2, p3&#8230;<\/p>\n<p>By adjusting these files, you can affect the generated pages. Feel free to add boilerplate stuff to either of these.<\/p>\n<p><em>$$PAGE_NAME$$.css<\/em> looks pretty much empty, except for a placeholder\u00a0<em>$$PAGE_CSS$$<\/em>.<\/p>\n<p>This placeholder will be replaced by the page-related CSS information generated by <em>ePubCrawler<\/em> &#8211; each frame on the InDesign page will become an entry inside the <em>$$PAGE_CSS$$<\/em> block.<\/p>\n<p><em>$$PAGE_NAME$$.xhtml<\/em> has a bit more &#8216;meat&#8217; to it &#8211; it looks almost like proper .xhtml, but also has a few scattered placeholders:\u00a0<em>$$PAGE_TITLE$$, \u00a0$$PAGE_NAME$$,\u00a0$$PAGE_HTML$$, \u00a0$$PAGE_WIDTH$$, \u00a0$$PAGE_HEIGHT$$<\/em>. These are all replaced by information extracted from the InDesign file.<\/p>\n<h3>*.ncx, *.css, *.opf, *.xml, *.xhtml:<\/h3>\n<p>Any files with these file name extensions are treated as text files, and are searched for placeholders that can be replaced.<\/p>\n<h3>ePubStyles:<\/h3>\n<p>This folder contains subfolders &#8211; one subfolder for each &#8216;style&#8217; of EPUB that can be generated. Each of the subfolders contains a set of one or more snippets. Optionally, you can also have additional <em>config.ini<\/em> files in these subfolders.<\/p>\n<p>Currently the following snippet files are supported:<\/p>\n<p><em>$$CHARSTYLE$$.css.snippet<\/em><br \/>\n<em> $$IMAGE_FRAME$$.css.snippet<\/em><br \/>\n<em> $$IMAGE_FRAME$$.xhtml.snippet<\/em><br \/>\n<em> $$PAGE_NAME$$.css<\/em><br \/>\n<em> $$PAGE_NAME$$.xhtml<\/em><br \/>\n<em> $$PARASTYLE$$.css.snippet<\/em><br \/>\n<em> $$TEXT_FRAME$$.css.snippet<\/em><br \/>\n<em> $$TEXT_FRAME$$.xhtml.snippet<\/em><br \/>\n<em> $$WORD$$.xhtml.snippet<\/em><\/p>\n<h3>Placeholders:<\/h3>\n<p>You can override the default values for the various placeholders shown below by adding properly labeled text frames to the pasteboard.<\/p>\n<p>For example, if you want to override the default value of the\u00a0<em>$$AUTHOR$$<\/em> string, you should create a text frame on the pasteboard, and assign it the script label <em>META:AUTHOR<\/em>.<\/p>\n<p>The contents of this text frame will take precedence over the author information that was extracted from the XMP metadata assigned to the InDesign document.<\/p>\n<p>Below a non-comprehensive list of placeholders that are automatically handled by\u00a0<em>ePubCrawler. <\/em><\/p>\n<p>There are additional placeholders that have not yet been documented here. Consult the comments in the <em>ePubCrawler.jsxbin<\/em> script for a more up-to-date list.<\/p>\n<h4>$$AUTHOR$$<\/h4>\n<p>The name of the author as extracted from the XMP info (see\u00a0<em>File &#8211; File Info&#8230;<\/em>\u00a0menu in InDesign).<\/p>\n<h4>$$CREATOR$$<\/h4>\n<p>The creator of the file as extracted from the XMP info (see\u00a0<em>File &#8211; File Info&#8230;<\/em>\u00a0menu in InDesign).<\/p>\n<h4>$$DATE$$<\/h4>\n<p>The date of the file (YYYY-MM-DD) as extracted from the XMP modification date info (see\u00a0<em>File &#8211; File Info&#8230;<\/em>\u00a0menu in InDesign).<\/p>\n<h4>$$DESCRIPTION$$<\/h4>\n<p>The description of the file as extracted from the XMP info (see\u00a0<em>File &#8211; File Info&#8230;<\/em>\u00a0menu in InDesign).<\/p>\n<h4>$$MANIFEST$$<\/h4>\n<p>This is replaced by the manifest (i.e. a list of all the files that went into the\u00a0<em>OEBPS<\/em>\u00a0folder, excluding the\u00a0<em>content.opf<\/em>\u00a0file).<\/p>\n<p>Something like:<\/p>\n<pre>&lt;item id=\"template\" href=\"template.css\" mediaType=\"text\/css\"\/&gt;\r\n&lt;item id=\"ncx\" href=\"toc.ncx\" mediaType=\"application\/x-dtbncx+xml\"\/&gt;\r\n&lt;item id=\"DSC_0050a\" href=\"images\/DSC_0050a.jpg\" mediaType=\"image\/jpeg\"\/&gt;\r\n&lt;item id=\"DSC_0122\" href=\"images\/DSC_0122.jpg\" mediaType=\"image\/jpeg\"\/&gt;\r\n&lt;item id=\"cssp1\" href=\"p1.css\" mediaType=\"text\/css\"\/&gt;\r\n&lt;item id=\"p1\" href=\"p1.xhtml\" mediaType=\"application\/xhtml+xml\"\/&gt;\r\n&lt;item id=\"cssp2\" href=\"p2.css\" mediaType=\"text\/css\"\/&gt;\r\n&lt;item id=\"p2\" href=\"p2.xhtml\" mediaType=\"application\/xhtml+xml\"\/&gt;\r\n&lt;item id=\"cssp3\" href=\"p3.css\" mediaType=\"text\/css\"\/&gt;\r\n&lt;item id=\"p3\" href=\"p3.xhtml\" mediaType=\"application\/xhtml+xml\"\/&gt;<\/pre>\n<h4>$$NAVMAP$$<\/h4>\n<p>This placeholder is replaced by a navigation map; it is currently used in the\u00a0<em>toc.ncx<\/em>\u00a0file. Something like this:<\/p>\n<pre> &lt;navPoint id=\"p1\" playOrder=\"1\"&gt;\r\n &lt;navLabel&gt;\r\n &lt;text&gt;My Great Title&lt;\/text&gt;\r\n &lt;\/navLabel&gt;\r\n &lt;content src = \"p1.xhtml\"\/&gt;\r\n &lt;\/navPoint&gt;\r\n &lt;navPoint id=\"p2\" playOrder=\"2\"&gt;\r\n &lt;navLabel&gt;\r\n &lt;text&gt;My Great Title&lt;\/text&gt;\r\n &lt;\/navLabel&gt;\r\n &lt;content src = \"p2.xhtml\"\/&gt;\r\n &lt;\/navPoint&gt;\r\n &lt;navPoint id=\"p3\" playOrder=\"3\"&gt;\r\n &lt;navLabel&gt;\r\n &lt;text&gt;Another Great Title&lt;\/text&gt;\r\n &lt;\/navLabel&gt;\r\n &lt;content src = \"p3.xhtml\"\/&gt;\r\n &lt;\/navPoint&gt;<\/pre>\n<h4>$$PAGECOUNT$$<\/h4>\n<p>Total number of pages in the InDesign document<\/p>\n<h4>$$PAGE_HEIGHT$$<\/h4>\n<p>The height of the current page in pixels. Depends on the InDesign document setup.<\/p>\n<h4>$$PAGE_CSS$$<\/h4>\n<p>CSS content for the current page. Each frame on the page is reflected by a CSS entry. If you want to determine what CSS ids should be used for each frame, you can assign script labels to individual frames. Any script labels that start with a &#8216;#&#8217; are interpreted as CSS ids to be used by <em>ePubCrawler<\/em>.<\/p>\n<p><em>ePubCrawler<\/em> will auto-generate CSS ids for frames that don&#8217;t have such a script label.<\/p>\n<p>In order to manager CSS ids in InDesign I&#8217;d like to recommend\u00a0<em>FrameReporter<\/em>:<br \/>\n<a href=\"https:\/\/www.rorohiko.com\/wordpress\/indesign-downloads\/framereporter\/\">https:\/\/www.rorohiko.com\/FrameReporter<\/a><\/p>\n<p>With <em>FrameReporter<\/em>, you can see all assigned script labels on the page in one go instead of having to click frame by frame and look at the <em>Script Label<\/em> palette (<em>Window &#8211; Utilities &#8211; Script Label<\/em>\u00a0menu) &#8211; the screenshot below shows two images frames which have been assigned CSS id <em>#ducks<\/em> and <em>#ducks_too:<\/em><\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/Screen-Shot-2012-06-15-at-9.42.18-AM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-4115\" title=\"Screen Shot 2012-06-15 at 9.42.18 AM\" src=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/Screen-Shot-2012-06-15-at-9.42.18-AM.png\" alt=\"\" width=\"428\" height=\"540\" srcset=\"https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/Screen-Shot-2012-06-15-at-9.42.18-AM.png 611w, https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/Screen-Shot-2012-06-15-at-9.42.18-AM-237x300.png 237w\" sizes=\"auto, (max-width: 428px) 100vw, 428px\" \/><\/a><\/p>\n<h4>$$PAGE_HTML$$<\/h4>\n<p>The HTML &#8216;meat&#8217; for the current page. <em>ePubCrawler<\/em> will try to set up the generated HTML so it approximates the philosophy behind InDesign styles, where one style can be &#8216;based on&#8217; another.<\/p>\n<p>InDesign paragraphs translate into &lt;p&gt;&#8230;&lt;\/p&gt; tags.<\/p>\n<p>InDesign line breaks translate into &lt;br\/&gt; tags.<\/p>\n<p>Within the text between a set of &lt;p&gt;&#8230;&lt;\/p&gt; tags, there might be some &lt;span&gt;&#8230;&lt;\/span&gt; tags, to reflect InDesign styles assigned to the text.<\/p>\n<p>Paragraph styles\u00a0will be the outermost &lt;span&gt;.\u00a0The corresponding CSS classes are provided in the\u00a0<em>$$SHARED_CSS$$.<\/em><\/p>\n<p>If a paragraph style is using the &#8216;based on&#8217; approach then nested &lt;span&gt; will be used to reflect this hierarchy. The innermost span will correspond to the actual paragraph style, and zero or more outer spans will reflect the &#8216;based on&#8217; hierarchy of the styles in InDesign.<\/p>\n<p>Within the paragraph text, any assigned character styles are also wrapped in nested spans. Again, the innermost span will correspond to the actual character style, and zero or more outer spans will reflect the &#8216;based on&#8217; hierarchy for the character styles.<\/p>\n<h4>$$PAGE_NAME$$<\/h4>\n<p>The name of the current page (e.g. p1, p2, p3&#8230;)<\/p>\n<h4>$$PAGE_TITLE$$<\/h4>\n<p>The page title. The default is an empty string, but <em>ePubCrawler<\/em> will try the following in order to get a page title:<\/p>\n<p>First, if there is a text frame with a CSS id of <em>#title\u00a0<\/em>then the contents of that frame will be used as the page title.<\/p>\n<p>If no <em>#title<\/em> can be found, then <em>ePubCrawler<\/em> will look for a text frame with a script label <em>META:PAGE_TITLE\u00a0<\/em>and if that frame can be found, its contents will be used for the page title.<\/p>\n<p>It is allowed to have more than one text frame with the script label\u00a0<em>META:PAGE_TITLE \u00a0<\/em>on a single spread: you can put such a text frame on the pasteboard above or below each separate page, and <em>ePubCrawler<\/em> will pick it up.<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/Screen-Shot-2012-06-15-at-9.53.15-AM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"wp-image-4116 alignnone\" title=\"Screen Shot 2012-06-15 at 9.53.15 AM\" src=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/Screen-Shot-2012-06-15-at-9.53.15-AM.png\" alt=\"\" width=\"1047\" height=\"431\" srcset=\"https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/Screen-Shot-2012-06-15-at-9.53.15-AM.png 1496w, https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/Screen-Shot-2012-06-15-at-9.53.15-AM-300x123.png 300w, https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/Screen-Shot-2012-06-15-at-9.53.15-AM-1024x421.png 1024w\" sizes=\"auto, (max-width: 1047px) 100vw, 1047px\" \/><\/a><\/p>\n<h4>$$PAGE_WIDTH$$<\/h4>\n<p>The width of the current page in pixels. Depends on the InDesign document setup.<\/p>\n<h4>$$PAGE_WORD_LIST$$<\/h4>\n<p>A complete list of all <em>$$WORD$$<\/em> and <em>$$WORD_ID$$<\/em> that occur in the page being generated. See the sample inside<\/p>\n<pre>ePubCrawlerTemplate\/ePubStyles\/scaledpixelsreadaloud\/$$WORD$$.xhtml.snippet<\/pre>\n<h4>$$RIGHTS$$<\/h4>\n<p>The copyright notice of the file as extracted from the XMP info (see\u00a0<em>File &#8211; File Info&#8230;<\/em>\u00a0menu in InDesign).<\/p>\n<h4>$$SHARED_CSS$$<\/h4>\n<p>Shared CSS content. A CSS style for each of the paragraph styles and character styles in the document.<\/p>\n<p>The &#8216;look and feel&#8217; of the generated style sheets are determined by the <em>$$PARASTYLE$$.css.snippet<\/em> and <em>$$CHARSTYLE$$.css.snippet<\/em> files.<\/p>\n<p>Paragraph styles have a CSS class name based on the InDesign paragraph style name, with a &#8220;P&#8221; appended.<\/p>\n<p>Character styles have a CSS class name based on the InDesign character style name, with a &#8220;C&#8221; appended.<\/p>\n<p>This placeholder is used in the default\u00a0<em>template.css<\/em>\u00a0file<\/p>\n<p><em>$$SHARED_CSS$$<\/em> is a concatenation of <em>$$SHARED_PARASTYLE_CSS$$<\/em> and <em>$$SHARED_CHARSTYLE_CSS$$<\/em><\/p>\n<h4>$$SHARED_CHARSTYLE_CSS$$<\/h4>\n<p>A CSS style for each of the character styles in the document.<\/p>\n<p>The &#8216;look and feel&#8217; of the generated style sheets are determined by the\u00a0<em>$$CHARSTYLE$$.css.snippet<\/em>\u00a0file.<\/p>\n<p>Character styles have a CSS class name based on the InDesign paragraph style name, with a &#8220;C&#8221; appended.<\/p>\n<p><em>$$SHARED_CSS$$<\/em>\u00a0is a concatenation of\u00a0<em>$$SHARED_PARASTYLE_CSS$$<\/em>\u00a0and\u00a0<em>$$SHARED_CHARSTYLE_CSS$$<\/em><\/p>\n<h4>$$SHARED_PARASTYLE_CSS$$<\/h4>\n<p>A CSS style for each of the paragraph styles in the document.<\/p>\n<p>The &#8216;look and feel&#8217; of the generated style sheets are determined by the\u00a0<em>$$PARASTYLE$$.css.snippet<\/em>\u00a0file.<\/p>\n<p>Paragraph styles have a CSS class name based on the InDesign paragraph style name, with a &#8220;P&#8221; appended.<\/p>\n<p><em>$$SHARED_CSS$$<\/em>\u00a0is a concatenation of\u00a0<em>$$SHARED_PARASTYLE_CSS$$<\/em>\u00a0and\u00a0<em>$$SHARED_CHARSTYLE_CSS$$<\/em><\/p>\n<h4>$$SOFTWARE$$<\/h4>\n<p>The name of the script currently running (i.e.\u00a0<em>ePubCrawler<\/em>)<\/p>\n<h4>$$SPINE$$<\/h4>\n<p>This is replaced by the spine info (i.e. a list of all the pages); e.g. something like:<\/p>\n<pre> &lt;itemref idref=\"p1\"\/&gt;\r\n &lt;itemref idref=\"p2\"\/&gt;\r\n &lt;itemref idref=\"p3\"\/&gt;<\/pre>\n<h4>$$SUBJECT$$<\/h4>\n<p>The title\u00a0of the file as extracted from the XMP info (see\u00a0<em>File &#8211; File Info&#8230;<\/em>\u00a0menu in InDesign).\u00a0Currently synonymous with <em>$$TITLE$$.<\/em><\/p>\n<h4>$$TITLE$$<\/h4>\n<p>The title of the file as extracted from the XMP info (see\u00a0<em>File &#8211; File Info&#8230;<\/em>\u00a0menu in InDesign).<\/p>\n<h4>$$VERSION$$<\/h4>\n<p>The version of the script currently running.<\/p>\n<h4>$$WORD$$<\/h4>\n<p>For use in the <em>$$WORD$$.xhtml.snippet<\/em> file. <em>$$WORD$$<\/em> is repeated over and over, and replaced by the consecutive words from the text. It can be used in conjunction with the <em>$$WORD_ID$$<\/em> placeholder, which contains a unique CSS id for each word. For example by setting the contents of the <em>$$WORD$$.xhtml.snippet<\/em> file to<\/p>\n<pre>&lt;span id=\"$$WORD_ID$$\"&gt;$$WORD$$&lt;\/span&gt;<\/pre>\n<p>every word will be wrapped in a separate &lt;span&gt; with a unique ID assigned. Also see <em>$$WORD_ID$$<\/em> and <em>$$PAGE_WORD_LIST$$<\/em><\/p>\n<h4>$$WORD_ID$$<\/h4>\n<p>For use in the <em>$$WORD$$.xhtml.snippet<\/em> file. The <em>$$WORD_ID$$<\/em> placeholder contains a unique CSS id for each word. For example by setting the contents of the <em>$$WORD$$.xhtml.snippet<\/em> file to<\/p>\n<pre>&lt;span id=\"$$WORD_ID$$\"&gt;$$WORD$$&lt;\/span&gt;<\/pre>\n<p>every word will be wrapped in a separate &lt;span&gt; with a unique ID assigned. Also see <em>$$WORD$$<\/em> and <em>$$PAGE_WORD_LIST$$<\/em><\/p>\n<h4>Other placeholders<\/h4>\n<p>Any other placeholders are replaced by the content of a text frame on the InDesign document&#8217;s pasteboard.<\/p>\n<p>For example, the placeholder <em>$$TITLE$$<\/em> is replaced by the contents of a text frame with the script label <em>META:TITLE<\/em>.<\/p>\n<p>Similar, <em>$$PAGE_TITLE$$<\/em> is replaced by the contents of a text frame <em>META:PAGE_TITLE<\/em>.<\/p>\n<p>In order to stash meaningful information into placeholders like <em>$$TITLE$$, $$AUTHOR$$<\/em>&#8230; you&#8217;ll need to create additional text frames in your InDesign document.<\/p>\n<p>Put these additional text frames somewhere on the pasteboard, and assign them a script label that starts with the prefix <em>META:<\/em>, followed by the placeholder.<\/p>\n<p>Don&#8217;t add any spaces to the script label.<\/p>\n<p>This mechanism also works for your own placeholders. If you have used a placeholder <em>$$MY_OWN_PLACEHOLDER$$<\/em> somewhere in one of the template text files, it will be replaced by the contents of the text frame labeled <em>META:MY_OWN_PLACEHOLDER<\/em>.<\/p>\n<h4>Formulas<\/h4>\n<p>For advanced users, there is also support for formulas. Unlike placeholders, which are wedged between <em>$$<\/em> and <em>$$<\/em>, formulas are wedged between <em>$($<\/em> and <em>$)$<\/em>.<\/p>\n<p>Many of the sample snippets rely on formulas to do their magic.<\/p>\n<p>For example, the sample EPUB style <em>plainpercentages<\/em> uses formulas to calculate the CSS position and size percentages.<\/p>\n<p>Another example: the sample\u00a0<em>$$TEXT_FRAME$$.css.snippet<\/em> files all use formulas to account for the text inset applied to text frames in InDesign.<\/p>\n<p>Between those two \u00a0<em>$($<\/em>\u00a0and\u00a0<em>$)$\u00a0<\/em>&#8216;markers&#8217; you can use any ExtendScript formula, and also refer to any of the placeholders.<\/p>\n<p>You could have a CSS snippet in <em>$$IMAGE_FRAME$$.css.snippet<\/em> that said:<\/p>\n<pre>...\r\nleft: $($ FRAME_XPOS_PIXELS + 10 $)$px;\r\n...<\/pre>\n<p>and that would take the frame x position in pixels, and add 10.<\/p>\n<p>You can also use formulas to access ExtendScript info &#8211; for example, the formula<\/p>\n<pre>$($ (new Date()).toString() $)$<\/pre>\n<p>is replaced by the current date and time.<\/p>\n<p>Have a look at the sample <em>$$IMAGE_FRAME$$.css.snippet<\/em> in the <em>plainpercentages<\/em> subfolder of the <em>ePubStyles<\/em> folder.<\/p>\n<p>You&#8217;ll see things like:<\/p>\n<pre>left: $($ Math.round(100.0 * FRAME_XPOS_PIXELS \/ PAGE_WIDTH + 0.5) $)$%;<\/pre>\n<p>which is a formula that calculates a percentage from the frame&#8217;s x-position and the page width. <em>Math.round()<\/em> is a JavaScript function used for rounding.<\/p>\n<p>If, for a certain frame, <em>FRAME_XPOS_PIXELS<\/em> were 60, and <em>PAGE_WIDTH<\/em> were 200, then the above expression will cause the following output:<\/p>\n<pre>left: 30%;<\/pre>\n<p>for that particular frame.<\/p>\n<p>There are more examples in the various snippet files.<\/p>\n<h2><a name=\"fonts\"><\/a>Font Mapping<\/h2>\n<p><em>ePubCrawler<\/em> has a font mapping mechanism. By default, nothing is mapped.<\/p>\n<p>That means that the contents of the <em>template.css<\/em> file will be incorrect: the <em>font-family<\/em> names are straight copies of the InDesign font names, and probably won&#8217;t make sense in CSS.<\/p>\n<p>To help with setting up some sensible font info in the CSS, <em>ePubCrawler<\/em> allows you to set up a font mapping.<\/p>\n<p>First, you&#8217;ll do a dry run: convert your InDesign document to an EPUB folder, after setting the desired configuration options in the <em>config.ini<\/em><\/p>\n<p>Open the output folder, go into the <em>OEBPS<\/em> folder, and open <em>template.css<\/em> in a text editor.<\/p>\n<p>Now inspect this file, and take note of all the various <em>fontMatchString<\/em> you see in the comment blocks inserted in each CSS style.<\/p>\n<pre>...\r\nfontMatchString: Mister Pablo Regular,12\r\n...\r\nfontMatchString: Adelaide Regular\r\n...<\/pre>\n<p>These <em>fontMatchString<\/em> are calculated by <em>ePubCrawler<\/em> from the font information it is given by InDesign.<\/p>\n<p>This font information is quite variable in quality and quantity, and depends on the font type, the info available in the font file, and other factors. For some fonts, <em>ePubCrawler<\/em>\u00a0has access to a lot of info. For other fonts there is very little info.<\/p>\n<p><em>ePubCrawler<\/em> will make do with whatever info it gets from InDesign and it will do its best to calculate some identifying font name. It will then append a comma and the point size (if that it is applicable and available), and the result is used as the <em>fontMatchString<\/em>.<\/p>\n<p>These <em>fontMatchString<\/em>\u00a0can then be mapped onto CSS font info via entries in the <em>config.ini<\/em> file.<\/p>\n<p>You could add these mapping strings to the global <em>config.ini<\/em> file in the <em>OEBPS<\/em> folder if you wanted to.<\/p>\n<p>However, it is better to create a new EPUB style and put a small <em>config.ini<\/em> file inside the corresponding\u00a0<em>ePubStyles<\/em> subfolder, so the mapping can be made specific to one particular EPUB style.<\/p>\n<p>Open a text editor, and either create a new file called <em>config.ini<\/em> (to be stored inside the ePubStyles subfolder) or open the global <em>config.ini<\/em> file from the OEBPS folder.<\/p>\n<p>Make sure the config.ini has a [fonts] section &#8211; if necessary start by adding a [fonts] line into the file.<\/p>\n<p>Below the [fonts] line, you will add one or more lines for mapping fonts. Each of the lines is of the form:<\/p>\n<p>&lt;&lt;regexp&gt;&gt;=&lt;&lt;css font info&gt;&gt;<\/p>\n<p>The <em>&lt;&lt;regexp&gt;&gt;<\/em> stands for a regular expression that will be matched against the various\u00a0<em>fontMatchString\u00a0<\/em>you found in the\u00a0<em>template.css<\/em> file.<\/p>\n<p>The <em>&lt;&lt;css font info&gt;&gt;<\/em>\u00a0stands for set of up to four comma-separated entries: a <em>font-family<\/em>, optionally followed by a <em>font-weight<\/em> (either <em>bold<\/em> or <em>normal<\/em>), optionally followed by a <em>font-style<\/em> (either <em>italic<\/em> or <em>normal<\/em>), optionally followed by a <em>font-size<\/em> (with a CSS unit appended &#8211; e.g. <em>12px<\/em>).<\/p>\n<p>For example, the following mapping:<\/p>\n<pre>.*=Times<\/pre>\n<p>would map any font string to a <em>font-family<\/em> <em>Times<\/em><\/p>\n<p>A mapping like<\/p>\n<pre>Mister Pablo Regular,12=Arial,bold,normal,14px<\/pre>\n<p>would map the\u00a0<em>fontMatchString\u00a0<\/em>&#8220;Mister Pablo Regular,12&#8221; onto a <em>font-family<\/em> of <em>Arial<\/em>, with a <em>font-weight<\/em> of <em>bold<\/em>, a <em>font-style<\/em> of <em>normal<\/em>, and a <em>font-size<\/em> of <em>14px<\/em>.<\/p>\n<p>If you wanted to map all fontMatchString \u00a0irrespective of point size, you&#8217;d instead write:<\/p>\n<pre>Mister Pablo Regular.*=Arial,bold,normal<\/pre>\n<p>i.e. use a regular expression to match any point size.<\/p>\n<p>Font mappings are processed top-to-bottom, until a match is found. That means that you can add a &#8216;catch-all&#8217; regular expression to the bottom of the list which catches all not-yet-mapped <em>fontMatchString<\/em>.<\/p>\n<p>Below a sample <em>config.ini<\/em> that you could put into an <em>ePubStyles<\/em> subfolder:<\/p>\n<pre>[fonts]\r\nMister Pablo Regular,12=Arial,normal,normal,14px\r\nMister Pablo Regular.*=Arial,bold,normal\r\n.*=times,serif<\/pre>\n<p>This little table would map all occurrences of &#8220;Mister Pablo Regular&#8221;, 12pt onto &#8220;Arial&#8221;, 14px. Any other size of &#8220;Mister Pablo Regular&#8221; is mapped onto &#8220;Arial&#8221;, bold. Any other fonts are mapped to &#8220;times,serif&#8221;.<\/p>\n<h2><a name=\"installation\"><\/a>Installation<\/h2>\n<p>In addition to the written info here, we also have some more info in the &#8216;<a href=\"#video\">Videos<\/a>&#8216; section.<\/p>\n<p>First, download the .zip file with the script (see <a href=\"#download\">top of this page<\/a>).<\/p>\n<p>Put the downloaded file on your desktop first.<\/p>\n<p>Then extract the contents of the .zip file.<\/p>\n<p>On Macs, the file might auto-decompress. If not, double-click the\u00a0<em>ePubCrawler&#8230;.zip<\/em>\u00a0file.<\/p>\n<p>On most Windows installations, you can right-click\u00a0<em>ePubCrawler&#8230;.zip<\/em>\u00a0and select\u00a0<em>Extract All\u2026<\/em>\u00a0from the contextual menu.<\/p>\n<p>Inside the folder <em>ePubCrawler.x.x.x<\/em>, where x.x.x is one or other version number you should find the <em>ePubCrawler.jsxbin<\/em> file.<\/p>\n<p>Also look for a folder called <em>eCanCrusher<\/em>. This <em>eCanCrusher<\/em> folder does not need to be installed into your InDesign folder (but no harm would be done if you happen to copy it along).<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/Screen-Shot-2012-07-12-at-10.08.06-AM.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-4220\" title=\"Screen Shot 2012-07-12 at 10.08.06 AM\" src=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/Screen-Shot-2012-07-12-at-10.08.06-AM.png\" alt=\"\" width=\"469\" height=\"284\" srcset=\"https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/Screen-Shot-2012-07-12-at-10.08.06-AM.png 670w, https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/Screen-Shot-2012-07-12-at-10.08.06-AM-300x181.png 300w\" sizes=\"auto, (max-width: 469px) 100vw, 469px\" \/><\/a><\/p>\n<p>Open the <em>eCanCrusher<\/em> folder and unzip either <em>Mac.zip<\/em> or <em>Win.zip<\/em>. The contents of these zip files is a small drag\/drop utility that converts a naked EPUB folder into an .epub file. You can move the contents of the unzipped <em>eCanCrusher<\/em> application to your desktop for easy access.<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s1.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-4221\" title=\"s1\" src=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s1.png\" alt=\"\" width=\"470\" height=\"284\" srcset=\"https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s1.png 672w, https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s1-300x180.png 300w\" sizes=\"auto, (max-width: 470px) 100vw, 470px\" \/><\/a><\/p>\n<p>On Windows you need to move both the <em>eCanCrusher.exe<\/em> and the <em>eCanCrusher Libs<\/em> folder that sits alongside it.<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-4169\" title=\"ScreenSnapz\" src=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz3.png\" alt=\"\" width=\"463\" height=\"306\" srcset=\"https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz3.png 945w, https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz3-300x198.png 300w\" sizes=\"auto, (max-width: 463px) 100vw, 463px\" \/><\/a><\/p>\n<p>Now go back to the <em>ePubCrawler.x.x.x<\/em> folder and find the file called\u00a0<em>ePubCrawler.jsxbin.<\/em><\/p>\n<p>Depending on how your workstation is configured, you might or might not see the\u00a0<em>.jsxbin<\/em>\u00a0file name extension.<\/p>\n<p>Once you\u2019ve located the\u00a0<em>ePubCrawler.jsxbin<\/em>\u00a0file, make sure you also notice a folder <em>ePubCrawlerTemplate<\/em> right next to it.<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s2.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-4225\" title=\"s2\" src=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s2.png\" alt=\"\" width=\"455\" height=\"362\" srcset=\"https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s2.png 650w, https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s2-300x238.png 300w\" sizes=\"auto, (max-width: 455px) 100vw, 455px\" \/><\/a><\/p>\n<p>You can now start InDesign, and bring up the\u00a0<em>Scripts<\/em>\u00a0palette via the\u00a0<em>Window \u2013 Utilities \u2013 Scripts<\/em>\u00a0menu item. Right-click (or option-click on Mac) the\u00a0<em>User<\/em>\u00a0entry on the palette to bring up the contextual menu.<\/p>\n<p>If you have sufficient administrative privileges on your computer, you could just as well select the\u00a0<em>Application<\/em>\u00a0entry. If you\u2019re unsure, pick\u00a0<em>User<\/em>\u00a0instead; that should work for everyone.<\/p>\n<p><a href=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/InDesignScreenSnapz017.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" title=\"InDesignScreenSnapz017\" src=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/InDesignScreenSnapz017.png\" alt=\"\" width=\"171\" height=\"162\" \/><\/a><\/p>\n<p>Select the contextual menu item\u00a0<em>Reveal in Explorer<\/em>\u00a0(Windows) or\u00a0<em>Reveal in Finder<\/em>\u00a0(Mac).<\/p>\n<p>A folder should open in Explorer or the Finder. Double-click the folder named\u00a0<em>Scripts Panel<\/em>\u00a0to open it.<\/p>\n<p><a href=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/FinderScreenSnapz001.png\"><img loading=\"lazy\" decoding=\"async\" title=\"FinderScreenSnapz001\" src=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/FinderScreenSnapz001.png\" alt=\"\" width=\"319\" height=\"165\" \/><\/a><\/p>\n<p>Once you have the\u00a0<em>Scripts Panel<\/em>\u00a0folder open, you can drag the\u00a0<em>ePubCrawler.jsxbin<\/em>\u00a0file AS WELL AS the <em>ePubCrawlerTemplate<\/em> folder into this\u00a0<em>Scripts Panel<\/em>\u00a0folder. Make sure to drag over TWO items!<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s3.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-4226\" title=\"s3\" src=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s3.png\" alt=\"\" width=\"603\" height=\"330\" srcset=\"https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s3.png 861w, https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s3-300x164.png 300w\" sizes=\"auto, (max-width: 603px) 100vw, 603px\" \/><\/a><\/p>\n<p>Close the windows afterwards.<\/p>\n<p>Switch back to InDesign. If you did it right, the script should now appear on the\u00a0<em>Scripts<\/em>\u00a0palette, under the entry\u00a0you picked (either\u00a0<em>User<\/em>\u00a0or\u00a0<em>Application<\/em>). You might need to click the disclosure triangle to open it up.<\/p>\n<p>Double-click the\u00a0<em>ePubCrawler.jsxbin<\/em>\u00a0entry to run the script.<\/p>\n<p style=\"text-align: center;\"><a href=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s4.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter  wp-image-4227\" title=\"s4\" src=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s4.png\" alt=\"\" width=\"550\" height=\"438\" srcset=\"https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s4.png 786w, https:\/\/rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/s4-300x238.png 300w\" sizes=\"auto, (max-width: 550px) 100vw, 550px\" \/><\/a><\/p>\n<p>That\u2019s it! The script is now installed and ready for use! Have fun!<\/p>\n<p>Please send feedback and bug reports to <a href=\"mailto:support@rorohiko.com\">support@rorohiko.com<\/a>, and follow @zwettemaan on twitter &#8211; there will be regular updates with improvements, so you want to stay tuned in.<\/p>\n<h2><a name=\"video\"><\/a>Videos<\/h2>\n<p>I&#8217;ve started recording some videos to help getting started with <em>ePubCrawler<\/em>: click the links a little further below to open the video pages.<\/p>\n<p>I also highly recommend Anne-Marie Concepci\u00f3n&#8217;s\u00a0&#8216;Creating a Fixed-Layout EPUB&#8217; on Lynda.com.<\/p>\n<p><a href=\"http:\/\/www.lynda.com\/tutorial\/94249\">http:\/\/www.lynda.com\/tutorial\/94249<\/a><\/p>\n<p>Anne-Marie&#8217;s tutorial will give you the knowledge you need to finish the rough-and-ready EPUB generated by <em>ePubCrawler<\/em>.<\/p>\n<p>The YouTube videos below are work-in-progress: I&#8217;ll try to gradually extend this collection. Also keep in mind that some of these have been recorded with earlier versions of <em>ePubCrawler<\/em>, and things might have slightly changed since.<\/p>\n<p><a title=\"Installing ePubCrawler\" href=\"https:\/\/www.rorohiko.com\/ePubCrawlerMovies\/Resources\/Installing.html\" target=\"_blank\">1. Installing <em>ePubCrawler<\/em><\/a><\/p>\n<p><a title=\"Running ePubCrawler\" href=\"http:\/\/www.youtube.com\/watch?v=-LNE1GIlSes\" target=\"_blank\">2. Running <em>ePubCrawler<\/em><\/a><\/p>\n<p><a title=\"Configuring ePubCrawler\" href=\"http:\/\/www.youtube.com\/watch?v=qSTLlMl9FQk\" target=\"_blank\">3. Configuring\u00a0<em>ePubCrawler<\/em><\/a><\/p>\n<p><a title=\"Font Mapping with ePubCrawler\" href=\"http:\/\/www.youtube.com\/watch?v=sAKo83NsCr8\" target=\"_blank\">4. Font mapping with\u00a0<em>ePubCrawler<\/em><\/a><\/p>\n<p><a title=\"Font Mapping with ePubCrawler\" href=\"http:\/\/www.youtube.com\/watch?v=KbJ_gBKrdQE\" target=\"_blank\">5. Using Templates and Snippets with\u00a0<em>ePubCrawler<\/em><\/a><\/p>\n<p><a href=\"http:\/\/www.youtube.com\/watch?v=feZLEq0gbLc\" target=\"_blank\">6. ePubStyles in ePubCrawler<\/a><\/p>\n<h2><a name=\"links\"><\/a>Essential Links<\/h2>\n<p>Liz Castro&#8217;s blog. Liz&#8217;s books on EPUB are required lecture &#8211; you&#8217;ll find links to them on her blog:<br \/>\n<a href=\"http:\/\/www.pigsgourdsandwikis.com\/\">http:\/\/www.pigsgourdsandwikis.com\/<\/a><\/p>\n<p>Anne-Marie Concepci\u00f3n&#8217;s Lynda tutorials:<br \/>\n<a href=\"http:\/\/www.lynda.com\/tutorial\/94249 \">http:\/\/www.lynda.com\/tutorial\/94249\u00a0<\/a><\/p>\n<p>ePubSecrets:<br \/>\n<a href=\"http:\/\/epubsecrets.com\/ \">http:\/\/epubsecrets.com\/\u00a0<\/a><\/p>\n<h2><a name=\"donate\"><\/a>Donations\/Licensing\/Support<\/h2>\n<p>This software has been distributed as donationware over the course of 2012 and 2013. It is currently available on an as-is basis. It is free to use, but there won&#8217;t be any more updates, as it is being superseded by Crawler+EPUB (<a href=\"http:\/\/www.docdataflow.com\">http:\/\/www.docdataflow.com<\/a>)<\/p>\n<p>If you need any help with setting up or customizing\u00a0<em>ePubCrawler<\/em> to match your workflow, feel free to inquire about hiring me to help you or train you;\u00a0contact\u00a0<a href=\"mailto:training@rorohiko.com\">training@rorohiko.com<\/a><\/p>\n<h3>License<\/h3>\n<p>There is a licensing limitation &#8211; here&#8217;s the deal: when using <em>ePubCrawler<\/em> you <em>must<\/em> leave the comments like<\/p>\n<pre>&lt;!-- Generated by ePubCrawler 0.1.1 \r\n(https:\/\/www.rorohiko.com\/ePubCrawler) on Tue Jun 26 2012 23:46:56 GMT+1200 --&gt;<\/pre>\n<p>or<\/p>\n<pre>\/* Generated by ePubCrawler 0.1.1 \r\n(https:\/\/www.rorohiko.com\/ePubCrawler) on Tue Jun 26 2012 23:46:56 GMT+1200 *\/<\/pre>\n<p>in the CSS and HTML. You&#8217;re not allowed to take them away.<\/p>\n<p>Also, when you build your own <em>ePubCrawler<\/em> templates, I ask that you make sure these comments get added to the generated e-book. You can copy the necessary bits of code from the sample templates.<\/p>\n<p>Using <em>ePubCrawler<\/em> to generate EPUB that are <em>not<\/em> marked with such comments is considered a breach of the licensing agreement.<\/p>\n<h2><a name=\"history\"><\/a>History<\/h2>\n<p><strong>December 27, 2014<\/strong>: The donation-ware program has been stopped for lack of buy-in. ePubCrawler will be superseded by a new commercial product called Crawler, which will have a FL-EPUB export personality. More info will become available at <a href=\"http:\/\/www.docdataflow.com\">http:\/\/www.docdataflow.com<\/a>.<\/p>\n<p><a name=\"v000205\"><\/a><strong>Version 0.2.5:<\/strong>\u00a0Released December 13, 2012.<\/p>\n<p><a href=\"https:\/\/www.rorohiko.com\/downloads\/ePubCrawler.0.2.5.zip\">https:\/\/www.rorohiko.com\/downloads\/ePubCrawler.0.2.5.zip<\/a><\/p>\n<p>&#8211; Fixed bug where special characters were not correctly translated in CS5 and higher.<br \/>\n&#8211; Fixed bug where hyperlinks in the text that had a style applied ended up with the &lt;\/a&gt; and &lt;\/span&gt; swapped, resulting in invalid XHTML.<\/p>\n<p><strong>Version 0.2.4:<\/strong>\u00a0Released December 11, 2012. Sincere thanks to JC (<a href=\"https:\/\/twitter.com\/jctremblay\"><em>@jctremblay<\/em><\/a>) and Brani (<a href=\"https:\/\/twitter.com\/branislavmilic\"><em>@branislavmilic<\/em><\/a>)\u00a0for the extensive testing and bug reports!<\/p>\n<p><a href=\"https:\/\/www.rorohiko.com\/downloads\/ePubCrawler.0.2.4.zip\">https:\/\/www.rorohiko.com\/downloads\/ePubCrawler.0.2.4.zip<\/a><\/p>\n<p>&#8211; Now handles current page number markers.<br \/>\n&#8211; Fixes a bug in 0.2.3 where &#8216;[Paper]&#8217; was mapped to black instead of &#8216;no color&#8217;<br \/>\n&#8211;\u00a0Fixes a bug in 0.2.3 where the last pages of a document with an even number of pages got muddled up.<br \/>\n&#8211; Added a new script label &#8216;tag&#8217;: if you add a line with the word <em>bitmap\u00a0<\/em>to the script label of a text frame, then that frame will be exported as a JPEG instead of text.<br \/>\n&#8211; Script labels with multiple lines are now properly interpreted (e.g. you can provide a CSS #id on one line, and the word <em>bitmap\u00a0<\/em>or <em>ignore<\/em> on a second line&#8230;)<br \/>\n&#8211; While <em>ePubCrawler<\/em> is processing, the output folder is temporarily renamed to\u00a0<em>ePubCrawler_IN_PROGRESS<\/em>, and renamed once processing is complete. This remedies the issue where some users &#8216;grabbed&#8217; the output folder before <em>ePubCrawler<\/em> was finished processing, leading to an incomplete epub folder.<br \/>\n&#8211; Added support for the &lt;guide&gt; section in the <em>content.opf.\u00a0<\/em>Add two lines to a page item&#8217;s script label: <em>guidetype:&#8230;<\/em>\u00a0and <em>guidetitle:&#8230;\u00a0<\/em>(e.g. a sample script label could look like this:<\/p>\n<pre>#MyOwnID\r\nbitmap\r\nguidetype:toc\r\nguidetitle:The Table Of Contents<\/pre>\n<p>This would enforce a CSS id of #MyOwnID for the frame, force bitmap export of the textframe, and make this into a &lt;guide&gt; entry in the <em>content.opf.<br \/>\n<\/em>&#8211; Snippetize <em>content.opf<\/em>, <em>toc.ncx<\/em> and a whole host of &#8216;inner&#8217; XHTML. Apart from some minor elements, all XHTML output is now driven by template snippets that are user-adjustable.<br \/>\n&#8211; Save before, revert afterwards: version 0.2.3 and earlier kept track of any changes they made, and reverted them after the process finished. Version 0.2.4 instead will only work when the document is saved before the process starts, and it will revert at the end of the process. This allows 0.2.4 to make destructive changes to the document with relative impunity, as all these changes vanish when the document is reverted at the end.<br \/>\n&#8211; <em>ePubStyles<\/em>\u00a0subfolders have been restructured, and now have &#8216;OEBPS&#8217; and &#8216;META-INF&#8217; subfolders, and these can be used to &#8216;override&#8217; or add to the default info<br \/>\n&#8211; Improved a lot of the paragraph formatting (e.g. margins).<br \/>\n&#8211; Fixed issue where punctuation at the end of paragraph was forced into a separate &lt;span&gt;<br \/>\n&#8211; Added rounding to various <em>formulas.jsx<\/em> files. This hopefully remedies unrounded pixel values.<br \/>\n&#8211; Empty text frames should now be better handled.<br \/>\n&#8211; Now should handle &#8216;external&#8217; hyperlinks (http:, mailto:).<br \/>\n&#8211; There is a new option <em>addSoftHyphens <\/em>in config.ini. Default is 0 (off). Set this to 1, and ePubCrawler will find all hyphenation points in the text and export them as discretionary (soft) hyphens. The XHTML text becomes less readable, but will have a nicer &#8216;fit&#8217; because of the potential hyphenations.<br \/>\n&#8211; Cleaned up a number of issues in CS3 &#8211; 0.2.4 should work better with CS3 than previous versions. However, CS5 or higher is recommended. CS3 is a &#8216;best effort&#8217;, but it&#8217;s becoming clear that eventually some features won&#8217;t be supportable in CS3.<br \/>\n&#8211; Many other small fixes.<\/p>\n<p><a name=\"v000203\"><\/a><strong>Version 0.2.3:<\/strong>\u00a0Released November 7, 2012. Sincere thanks to JC (IDUG Montreal) for the extensive testing and bug reports!<\/p>\n<p><a href=\"https:\/\/www.rorohiko.com\/downloads\/ePubCrawler.0.2.3.zip\">https:\/\/www.rorohiko.com\/downloads\/ePubCrawler.0.2.3.zip<\/a><\/p>\n<p>&#8211; Changed behavior of\u00a0<em>$$PAGE_TITLE$$<\/em> placeholder, so information now &#8216;cascades&#8217; down. First, it will look near or on the page for a text frame with script label <em>$$PAGE_TITLE$$<\/em>, and use its content for the HTML page title (between &lt;title&gt;&#8230;&lt;\/title&gt;).<br \/>\nIf that cannot be found, it will use the XMP document title info instead.<br \/>\nIf that is empty, it will use the InDesign page name instead (section name + page number).<br \/>\n<em>$$PAGE_TITLE$$<\/em> is used in the <em>&lt;title&gt;<\/em> tag on the default page snippets provided.<br \/>\n&#8211; Changed <em>metaInfoLabelPrefix\/<em>metaInfoLabelSuffix<\/em><\/em>\u00a0in the <em>config.ini<\/em> from &#8220;META:&#8221;\/&#8221;&#8221; to &#8220;$$&#8221;\/&#8221;$$&#8221;, so InDesign script labels assigned to text frames whose contents provide meta-info now look more related to the placeholders they determine in the snippets.<br \/>\nFor example, the text content of a text frame with an InDesign script label <em>$$PAGE_TITLE$$<\/em> will now automatically determine the value for the <em>$$PAGE_TITLE$$<\/em> placeholder.<br \/>\n&#8211; The InDesign color <em>[Black]<\/em> is now special-cased so it maps to CSS\u00a0<em>#000000<\/em>. Other colors are converted through InDesign&#8217;s color mapping mechanisms in order to map from non-RGB to the RGB color model.<br \/>\n&#8211; Unused paragraph and character styles are not exported to the EPUB any more.<br \/>\n&#8211; InDesign&#8217;s <em>leading<\/em> is converted to CSS <em>line-height<\/em>.<br \/>\nA new setting, <em>adjustForLeadingChanges,<\/em>\u00a0is now available in the <em>config.ini<\/em>.<br \/>\nSetting it to 1 makes <em>ePubCrawler<\/em> attempt to preserve the &#8216;look and feel&#8217; of the InDesign text by manipulating the <em>margin-top<\/em> of some paragraphs.<br \/>\nCSS distributes the extra white space from the leading evenly above and below the text, whereas InDesign moves all the extra white space above the text, which makes the text shift on conversion from InDesign to HTML+CSS.<br \/>\nWith\u00a0<em>adjustForLeadingChanges ePubCrawler<\/em> will attempt to compensate for this difference in handling of leading.<br \/>\n&#8211; &#8216;White space&#8217; (empty) paragraphs in InDesign are now translated to <em>&lt;p&#8230;&gt;&amp;nbsp;&lt;\/p&gt;<\/em> in HTML.<br \/>\n&#8211; Cleaned up superfluous <em>&lt;span&gt;<\/em> in the generated HTML text.<br \/>\n&#8211; Now nested InDesign para styles are mapped to a list of space-separated classes applied to the <em>&lt;p&gt;<\/em> tag instead of using a <em>&lt;p&gt;<\/em> with nested <em>&lt;span&gt;<\/em>.<br \/>\n&#8211; Converted InDesign frame rotation angle into a <em>-webkit-transform: rotate(&#8230;).\u00a0<\/em><br \/>\nIf you don&#8217;t want this you need to adjust the frame CSS snippets and remove this entry.<br \/>\n<em>ePubCrawler<\/em> does not yet support any other transformations &#8211; only rotation is currently converted over.<br \/>\n&#8211; Added support for &#8216;<em>first line indent&#8217;<\/em>.<br \/>\n&#8211; Justified InDesign text now maps correctly to justified CSS text. There is no differentiation between left, right or center-justified text &#8211; all three map to CSS justified text.<br \/>\n&#8211; Added support for space after\/space before para attribute.<br \/>\n&#8211; Preserve InDesign soft hyphens and non-breaking spaces as <em>&amp;shy;<\/em> and <em>&amp;nbsp;<\/em><br \/>\n&#8211; Corrected error where overflowed text was appearing on the background image.<br \/>\n&#8211; Corrected script crash when anchored objects were present. There is no real support to do anything sensible with anchored objects yet, but at least, they won&#8217;t cause a script crash any more.<br \/>\n&#8211; Corrected calculation errors in the mapping of border width, text inset.<br \/>\n&#8211; Changed line endings in various text files to Windows CRLF so the files can be viewed with Notepad on Windows.<\/p>\n<p><strong>Version 0.2.2:<\/strong>\u00a0Released October 25, 2012<\/p>\n<p><a href=\"https:\/\/www.rorohiko.com\/downloads\/ePubCrawler.0.2.2.zip\">https:\/\/www.rorohiko.com\/downloads\/ePubCrawler.0.2.2.zip<\/a><\/p>\n<p>&#8211; Added progress dialog<br \/>\n&#8211; Added <em>imageHandling=4<\/em>, where text is exported twice: once as a bitmap on the background (for visual accuracy) and a second time\u00a0in hidden overlayed text frames (&#8216;visibility: hidden&#8217;). This is an attempt to combine accurate text rendering with searcheability.<br \/>\n&#8211; Fixed bug causing swatch <em>[Paper]<\/em>\u00a0to show up as black.<br \/>\n&#8211; Partial support for back-to-front priority: z-index for background image is now -1, z-index for other elements is now 0.<br \/>\n&#8211; Added extra newline in CSS comments after first \/* to resolve issue with some readers<br \/>\n&#8211; Added ePubStyle <em>percentagesbkg<\/em> to help with KF8 Fixed Layout<br \/>\n&#8211; Fixed issue where % values in <em>percentages<\/em> ePubStyle had 1 added to them (e.g. 0% was shown as 1%, 100% was shown as 101%).<br \/>\n&#8211; Added <em>body{&#8230;}<\/em> entry to <em>template.css<\/em><br \/>\n&#8211; Removed superfluous &#8220;.\/&#8221; from image paths<br \/>\n&#8211; Added <em>ignoreLayers<\/em> setting to <em>config.ini<\/em>. It is a GREP expression to suppress layers by name.<br \/>\n&#8211; Added <em>ignoreInvisibleLayers<\/em> setting to <em>config.ini<\/em>. Default is 1; setting it to 0 causes <em>ePubCrawler<\/em> to also export content on invisible layers.<br \/>\n&#8211; Added double quotes around <em>font-family<\/em> names in CSS.<br \/>\n&#8211; Fixed issue with the CSS mapping of character styles that have only style info, and no associated font.<br \/>\n&#8211; Fixed: <em>singleCSSFile<\/em> = 1 was erroneously adding references \u00a0to non-existent page-based CSS files\u00a0to the xhtml pages.<br \/>\n&#8211; Fixed small issues in various snippets and templates<\/p>\n<p><strong>Version 0.2.1:<\/strong>\u00a0Released August 6, 2012<\/p>\n<p><a href=\"https:\/\/www.rorohiko.com\/downloads\/ePubCrawler.0.2.1.zip\">https:\/\/www.rorohiko.com\/downloads\/ePubCrawler.0.2.1.zip<\/a><\/p>\n<p>&#8211; Added support for colors (applied to text, frames, frame borders).<br \/>\n&#8211; Renamed the ePubStyles provided\u00a0to better describe what they do.<br \/>\n&#8211; The <em>config.ini<\/em> file can now reside next to the <em>ePubCrawler.jsxbin<\/em> file so you don&#8217;t need to &#8216;dig&#8217; into the OEBPS folder to find it.<br \/>\n&#8211; Added a new setting <em>singleCSSFile<\/em> to the <em>config.ini<\/em>. Setting this to 1 forces ePubCrawler to combine all CSS into a single file (instead of generating a separate CSS file for each page).<br \/>\n&#8211; This version avoids CSS constructs that caused Adobe Digital Editions to crash on the generated EPUB.<br \/>\n&#8211; Changed the <em>default<\/em> ePubStyle so it puts the images in &lt;img&gt; tags inside a &lt;div&gt; tag instead of using CSS background images. Switch to the\u00a0<em>imagesbkg<\/em> ePubStyle to make images appear as CSS backgrounds.<\/p>\n<p><strong>Version 0.2.0:<\/strong>\u00a0Released July 29, 2012<\/p>\n<p>&#8211; Fixed issues with spaces in font file names<br \/>\n&#8211; Fixed EPUB verification issue with &lt;p&gt; inside &lt;span&gt;<\/p>\n<p><strong>Version 0.1.9:<\/strong>\u00a0Released July 29, 2012<\/p>\n<p>&#8211; <em>ePubCrawler<\/em> now honors &#8216;manual&#8217; style overrides (i.e. style overrides that are not part of a named character or paragraph style). This behavior can be influenced by changing the\u00a0<em>ignoreInlineStyling<\/em> and\u00a0<em>ignoreOverrideParaStyling<\/em> settings in the <em>config.ini<\/em> file.<\/p>\n<p>You&#8217;ll get better results (i.e. less complexity in the XHTML files) if you clear up any manual overrides in InDesign and then set both\u00a0<em>ignoreInlineStyling <\/em>and\u00a0<em>ignoreOverrideParaStyling<\/em><em>\u00a0<\/em>to 0.<\/p>\n<p>&#8211; <em>ePubCrawler<\/em>\u00a0 will now copy .ttf and .otf font files into the EPUB if it is able to. It will add the corresponding <em>@fontface<\/em> CSS entries to the <em>templace.css<\/em> file. It will also add the the necessary entries in to the manifest in the\u00a0<em>content.opf<\/em> file.<\/p>\n<p>This behavior is controlled by the setting\u00a0<em>copyAllFonts<\/em> in the config.ini file.<\/p>\n<p>Alternatively, for a more controlled set-up, you can set <em>copyAllFonts<\/em>\u00a0to 0.<\/p>\n<p>Then create or copy a custom subfolder inside the <em>ePubStyles<\/em> folder<\/p>\n<p>Let&#8217;s say you call the folder\u00a0<em>mycustomstyle<\/em>. Create a\u00a0<em>fonts\u00a0<\/em>folder inside the\u00a0<em>mycustomstyle<\/em> subfolder. Finally, set <em>ePubStyle<\/em>\u00a0in <em>config.ini<\/em> to the name of the folder, i.e.\u00a0<em>mycustomstyle<\/em>.<\/p>\n<p>Any fonts in this ePubStyle-specific\u00a0<em>fonts\u00a0<\/em>folder will be copied across to the <em>OEBPS\/fonts<\/em> folder in the EPUB.<\/p>\n<p>Make sure you respect the font licensing restrictions of the fonts you have available.<\/p>\n<p>&#8211; <em>ePubCrawler<\/em> now sets the text-align: CSS attribute.<\/p>\n<p><strong>Version 0.1.8:<\/strong>\u00a0Released July 21, 2012<\/p>\n<p>&#8211; New option in config.ini:\u00a0<em>imageHandling.\u00a0<\/em>This option replaces\u00a0<em>reuseImages.<\/em><br \/>\nSetting this to 0 (zero) will make <em>ePubCrawler<\/em> attempt to use any linked JPEG files as-is instead\u00a0of exporting their visible areas from the various InDesign frames. <em>imageHandling<\/em> = 0 will\u00a0generate less linked files when a single image is placed multiple times in an InDesign document.<br \/>\nSetting <em>imageHandling<\/em>\u00a0to 1 will make <em>ePubCrawler<\/em> export images to JPEG on a frame-by-frame basis. Possibly there is more than one\u00a0exported image file per frame when an image spans multiple pages on a spread.<br \/>\nSetting <em>imageHandling<\/em>\u00a0to 2 will make <em>ePubCrawler<\/em> export whole pages to JPEG, after removing all text,\u00a0so there is one big &#8216;background&#8217; JPEG per page. This can be helpful when trying to convert image effects\u00a0from InDesign to EPUB as it will retain any special effects (e.g. drop shadows, blends) that have been applied in InDesign.<br \/>\nSetting <em>imageHandling<\/em>\u00a0to 3 will make ePubCrawler do both frame-by-frame and whole page backgrounds (i.e. it is a combination of settings 1 and 2). This gives you more freedom during the editing phase of the EPUB.<\/p>\n<p><strong>Version 0.1.7:<\/strong>\u00a0Released July 21, 2012<\/p>\n<p>&#8211; New options in config.ini:<br \/>\n<em>pageNamePrefix<\/em> (affects the generated page names, used for naming .xhtml files and generating CSS ids).<br \/>\n<em>reuseImages<\/em> (can force ePubCrawler to use linked JPEG files as-is instead of re-exporting the images from the InDesign document).<br \/>\n<em>extraComments<\/em> (add extra info into the generated output, explaining the what and how of particular constructs).<br \/>\n<em>flattenedStyles<\/em> (disable the mechanism <em>ePubCrawler<\/em> uses to mimic the &#8216;based on&#8217; feature for InDesign paragraph and character styles).<br \/>\n<em>paraIdPrefix<\/em> (prefix to use for the unique paragraph CSS ids\u00a0&#8211; see ePubStyle\u00a0<em>plainpixelsreadaloud<\/em>)<br \/>\n<em>lineIdPrefix<\/em> (prefix to use for the unique line CSS ids\u00a0&#8211; see ePubStyle\u00a0<em>plainpixelsreadaloud<\/em>)<br \/>\n<em>wordIdPrefix<\/em> (prefix to use for the unique word CSS ids &#8211; see ePubStyle <em>plainpixelsreadaloud<\/em>)<br \/>\nFor more info: view the <em>config.ini<\/em> from the <em>OEBPS<\/em> folder in a text editor.<\/p>\n<p>&#8211; Added support for writing your own custom ExtendScript formulas by means of a <em>formulas.jsx<\/em> file. Check <em>formulas.jsx<\/em> in the <em>OEBPS<\/em> folder for an example (e.g. amongst others, it defines a new placeholder<em> $$TODAYS_DATE$$<\/em>).<\/p>\n<p><strong>Version 0.1.6:<\/strong>\u00a0Released July 14, 2012<\/p>\n<p>&#8211; Added an option <em>usePageNames<\/em>\u00a0to <em>config.ini<\/em> to use InDesign page names instead of page indices for the various page identifiers. For example, if you use roman numerals to number pages, you can now opt to get file names like <em>xii.xhtml<\/em>\u00a0instead of <em>p12.xhtml.\u00a0<\/em>Also allows easier merging of EPUB folders if your book is spread over multiple .indd documents.<br \/>\n&#8211; Fixed bug that caused many special characters (e.g. em-dash, en-dash) to disappear from the output.<\/p>\n<p><strong>Version 0.1.5:<\/strong>\u00a0Released July 13, 2012<\/p>\n<p>&#8211; Bug fix related to fonts<\/p>\n<p><strong>Version 0.1.4:<\/strong>\u00a0Released July 11, 2012<\/p>\n<p>&#8211; Bug fix related to fonts<\/p>\n<p><strong>Version 0.1.3:<\/strong>\u00a0Released July 11, 2012<br \/>\n&#8211; <em>ePubCrawler<\/em> is now to be configured through one or more <em>config.ini<\/em> files.<\/p>\n<p>The main <em>config.ini<\/em> file is located in the <em>OEBPS<\/em> folder in the <em>ePubCrawlerTemplate<\/em> folder. This main <em>config.ini<\/em> has many settings, including the name of the <em>ePubStyle<\/em> to use.<\/p>\n<p>Individual <em>ePubStyle<\/em>\u00a0subfolders can have additional, smaller\u00a0<em>config.ini<\/em> files which override zero or more settings in the main <em>config.ini\u00a0<\/em>on a per-ePubStyle basis.<\/p>\n<p>Open the <em>config.ini<\/em> file in <em>OEBPS<\/em> in a text editor for more info; the file is heavily commented.<\/p>\n<p>For more info, see\u00a0\u00a0<a href=\"#custom\">&#8216;Customizing\u00a0<em>ePubCrawler<\/em>&#8216;<\/a>.<\/p>\n<p>&#8211; <em>ePubCrawler<\/em> now has a font mapping mechanism that allows you to predefine how various InDesign fonts should be mapped to CSS.<\/p>\n<p>The mechanism uses regular expressions, so it is possible to map multiple font variants in a single line of the <em>config.ini<\/em>. You can inspect the <em>config.ini<\/em> inside <em>OEBPS<\/em> for more info.\u00a0For more info, see the &#8216;<a href=\"#fonts\">Font Mapping<\/a>&#8216; chapter.<\/p>\n<p>&#8211; Converted from .jsx to .jsxbin format. Donations are very thin, to put it mildly, so I am gradually starting to protect the code as a preparation for converting to a &#8216;payware&#8217; product.<\/p>\n<p><strong>Version 0.1.2:<\/strong>\u00a0Released July 3, 2012<\/p>\n<p>&#8211; Added new image handling option which greatly improves the usefulness for the\u00a0<em>plainpixels<\/em>\u00a0and\u00a0<em>plainpercentages<\/em>\u00a0EPUB styles.<br \/>\nImages can now be resampled to a pre-set resolution. Images that &#8216;saddle&#8217; two pages are exported as two separate image files.<br \/>\n&#8211; Fixed issues in CS3.<\/p>\n<p><strong>Version 0.1.1:<\/strong>\u00a0Released June 26, 2012<br \/>\n&#8211; Fixed problem with interpretation of certain fonts.<br \/>\n&#8211; Corrected issues with InDesign to CSS style mapping.<br \/>\n&#8211; Converted &#8216;magical&#8217; placeholders used in previous versions (e.g.\u00a0<em>$$FRAME_XPOS_PERCENT$$)<\/em> into <em>$($ &#8230;formula&#8230; $)$<\/em>. The snippets become a bit more complex, but also much more flexible.<\/p>\n<p><strong>Version 0.1.0:<\/strong>\u00a0Released June 26, 2012<br \/>\n&#8211; Fixed bug in <em>eCanCrusher<\/em> that caused it to generate incorrect EPUBs (it was compressing the mimetype file instead of leaving it uncompressed).<\/p>\n<p><strong>Version 0.0.9:<\/strong>\u00a0Released June 25, 2012<br \/>\n&#8211; Continuing to templatize. Now <em>ePubCrawler<\/em> has placeholder-based templates for all of the InDesign paragraph and character style sheets translations.<br \/>\n&#8211; Added support for formulas in placeholders. Instead of <em>$$PLACEHOLDER$$<\/em> you can now also use formulas wedged between <em>$($<\/em> and <em>$)$<\/em> &#8211; e.g. <em>$($ FRAME_XPOS_PIXELS + 10 $)$.\u00a0<\/em>If you know ExtendScript or JavaScript: you can also use expressions from those realms (e.g. <em>$($ (new Date()).toString() $)$<\/em> is allowed).<strong><br \/>\n<\/strong><\/p>\n<p><strong>Version 0.0.8:<\/strong>\u00a0Released June 23, 2012<br \/>\n&#8211;\u00a0<em>ePubCrawler<\/em>\u00a0now also includes <em>eCanCrusher<\/em> &#8211; a small drag\/drop tool that converts an EPUB folder into an .epub file. No more command line acrobatics with zip!<br \/>\n&#8211; Continued to templatize. Now <em>ePubCrawler<\/em> has placeholder-based templates for individual frame XHTML and CSS, and even for individual words, so with the proper template you can assign individual CSS ids to each word.<br \/>\n&#8211; Fixed a problem that could cause InDesign to crash.<br \/>\n&#8211; Better handling of multi-frame text stories.<br \/>\n&#8211; Started on support for read aloud eBooks. This is not complete yet!<\/p>\n<p><strong>Version 0.0.7:<\/strong>\u00a0Released June 15, 2012<br \/>\n&#8211;\u00a0<em>ePubCrawler<\/em>\u00a0now consults the XMP metadata and extract info like author, title,&#8230; and use it for the corresponding placeholders like <em>$$TITLE$$<\/em>, <em>$$AUTHOR$$<\/em> and so on.<br \/>\n&#8211; Can use a JPEG export of the first page of the document as a cover image.<br \/>\n&#8211; Generated EPUB folder now passes validation with\u00a0<a href=\"http:\/\/code.google.com\/p\/epubcheck\/\">epubcheck-3.0b5<\/a>.<strong><br \/>\n<\/strong><\/p>\n<p><strong>Version 0.0.6:<\/strong>\u00a0Released June 15, 2012<br \/>\n&#8211; Properly translate &lt;, &gt;, &amp; into\u00a0<em>&amp;lt;<\/em>, \u00a0<em>&amp;gt;<\/em>,\u00a0<em>&amp;amp;<\/em><br \/>\n&#8211; Fixed various small but lethal issues in template files which made the resulting output to be invalid for EPUB.<br \/>\n&#8211; Widened support: now works with InDesign CS3 and upwards.<br \/>\n<strong>Planned enhancements:<br \/>\n<\/strong>&#8211;\u00a0<em>ePubCrawler<\/em>\u00a0should consult the XMP metadata and extract info like author, title,&#8230; and use it for the corresponding placeholders like $$TITLE$$, $$AUTHOR$$ and so on.<strong>\u00a0<\/strong><\/p>\n<p><strong>Version 0.0.5:<\/strong> Released June 14, 2012<br \/>\n&#8211; Fixed issue with char\/para style translations.<br \/>\n&#8211; Now properly translates paragraph returns (&lt;p&gt;&lt;\/p&gt;) and line breaks (&lt;br\/&gt;).<br \/>\n&#8211; Image names now include the name of the page they appear on first (e.g. p1_DSC_0531.jpg first appears on p1.xhtml).<br \/>\n&#8211; META-INF folder was broken in 0.0.4 &#8211; now fixed.<br \/>\n<strong>Known issues in this version:<br \/>\n<\/strong>&#8211; Currently,\u00a0<em>ePubCrawler<\/em>\u00a0does not properly handle special characters like &lt;, &gt;, &amp; in the text of the document. Next version will properly convert these to <em>&amp;lt;<\/em>, \u00a0<em>&amp;gt;<\/em>, <em>&amp;amp;<\/em> etc&#8230;<\/p>\n<p><strong>Version 0.0.4:<\/strong> Released June 14, 2012<br \/>\n&#8211; First &#8216;official&#8217; release.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Downloading eCanCrusher, the EPUB zip\/unzipper is now available separately from ePubCrawler. Visit\u00a0http:\/\/www.DocDataFlow.com\/eCanCrusher\u00a0for more info. As of December 27, 2013, ePubCrawler has ceased to be donation-ware. It will remain available as-is (see below), but there won&#8217;t be any more updates. Over &hellip; <a href=\"https:\/\/rorohiko.com\/wordpress\/manuals\/fixed-layout-epub-assistant-in-indesign-epubcrawler\/\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":143,"featured_media":0,"parent":3698,"menu_order":0,"comment_status":"open","ping_status":"open","template":"","meta":{"footnotes":""},"class_list":["post-4114","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Fixed Layout EPUB from InDesign<\/title>\n<meta name=\"description\" content=\"Convert InDesign files to Fixed Layout EPUB\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/rorohiko.com\/wordpress\/manuals\/fixed-layout-epub-assistant-in-indesign-epubcrawler\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Fixed Layout EPUB from InDesign\" \/>\n<meta property=\"og:description\" content=\"Convert InDesign files to Fixed Layout EPUB\" \/>\n<meta property=\"og:url\" content=\"https:\/\/rorohiko.com\/wordpress\/manuals\/fixed-layout-epub-assistant-in-indesign-epubcrawler\/\" \/>\n<meta property=\"og:site_name\" content=\"Rorohiko Workflow Resources\" \/>\n<meta property=\"article:modified_time\" content=\"2014-05-21T22:32:42+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz5.png\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"47 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/manuals\\\/fixed-layout-epub-assistant-in-indesign-epubcrawler\\\/\",\"url\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/manuals\\\/fixed-layout-epub-assistant-in-indesign-epubcrawler\\\/\",\"name\":\"Fixed Layout EPUB from InDesign\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/manuals\\\/fixed-layout-epub-assistant-in-indesign-epubcrawler\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/manuals\\\/fixed-layout-epub-assistant-in-indesign-epubcrawler\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.rorohiko.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2012\\\/06\\\/ScreenSnapz5.png\",\"datePublished\":\"2012-06-14T22:16:36+00:00\",\"dateModified\":\"2014-05-21T22:32:42+00:00\",\"description\":\"Convert InDesign files to Fixed Layout EPUB\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/manuals\\\/fixed-layout-epub-assistant-in-indesign-epubcrawler\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/manuals\\\/fixed-layout-epub-assistant-in-indesign-epubcrawler\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/manuals\\\/fixed-layout-epub-assistant-in-indesign-epubcrawler\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.rorohiko.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2012\\\/06\\\/ScreenSnapz5.png\",\"contentUrl\":\"https:\\\/\\\/www.rorohiko.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2012\\\/06\\\/ScreenSnapz5.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/manuals\\\/fixed-layout-epub-assistant-in-indesign-epubcrawler\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Manuals\",\"item\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/manuals\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Fixed Layout EPUB Assistant In InDesign: ePubCrawler\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/#website\",\"url\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/\",\"name\":\"Rorohiko Workflow Resources\",\"description\":\"Custom InDesign Development\",\"publisher\":{\"@id\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/#organization\",\"name\":\"Rorohiko Ltd.\",\"url\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.rorohiko.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2018\\\/03\\\/roro-logo-3d-v2.png\",\"contentUrl\":\"https:\\\/\\\/www.rorohiko.com\\\/wordpress\\\/wp-content\\\/uploads\\\/2018\\\/03\\\/roro-logo-3d-v2.png\",\"width\":207,\"height\":200,\"caption\":\"Rorohiko Ltd.\"},\"image\":{\"@id\":\"https:\\\/\\\/rorohiko.com\\\/wordpress\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/zwettemaan\",\"https:\\\/\\\/www.instagram.com\\\/kriscoppieters\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/in\\\/kristiaan\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Fixed Layout EPUB from InDesign","description":"Convert InDesign files to Fixed Layout EPUB","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/rorohiko.com\/wordpress\/manuals\/fixed-layout-epub-assistant-in-indesign-epubcrawler\/","og_locale":"en_US","og_type":"article","og_title":"Fixed Layout EPUB from InDesign","og_description":"Convert InDesign files to Fixed Layout EPUB","og_url":"https:\/\/rorohiko.com\/wordpress\/manuals\/fixed-layout-epub-assistant-in-indesign-epubcrawler\/","og_site_name":"Rorohiko Workflow Resources","article_modified_time":"2014-05-21T22:32:42+00:00","og_image":[{"url":"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz5.png","type":"","width":"","height":""}],"twitter_misc":{"Est. reading time":"47 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/rorohiko.com\/wordpress\/manuals\/fixed-layout-epub-assistant-in-indesign-epubcrawler\/","url":"https:\/\/rorohiko.com\/wordpress\/manuals\/fixed-layout-epub-assistant-in-indesign-epubcrawler\/","name":"Fixed Layout EPUB from InDesign","isPartOf":{"@id":"https:\/\/rorohiko.com\/wordpress\/#website"},"primaryImageOfPage":{"@id":"https:\/\/rorohiko.com\/wordpress\/manuals\/fixed-layout-epub-assistant-in-indesign-epubcrawler\/#primaryimage"},"image":{"@id":"https:\/\/rorohiko.com\/wordpress\/manuals\/fixed-layout-epub-assistant-in-indesign-epubcrawler\/#primaryimage"},"thumbnailUrl":"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz5.png","datePublished":"2012-06-14T22:16:36+00:00","dateModified":"2014-05-21T22:32:42+00:00","description":"Convert InDesign files to Fixed Layout EPUB","breadcrumb":{"@id":"https:\/\/rorohiko.com\/wordpress\/manuals\/fixed-layout-epub-assistant-in-indesign-epubcrawler\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/rorohiko.com\/wordpress\/manuals\/fixed-layout-epub-assistant-in-indesign-epubcrawler\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/rorohiko.com\/wordpress\/manuals\/fixed-layout-epub-assistant-in-indesign-epubcrawler\/#primaryimage","url":"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz5.png","contentUrl":"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2012\/06\/ScreenSnapz5.png"},{"@type":"BreadcrumbList","@id":"https:\/\/rorohiko.com\/wordpress\/manuals\/fixed-layout-epub-assistant-in-indesign-epubcrawler\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/rorohiko.com\/wordpress\/"},{"@type":"ListItem","position":2,"name":"Manuals","item":"https:\/\/rorohiko.com\/wordpress\/manuals\/"},{"@type":"ListItem","position":3,"name":"Fixed Layout EPUB Assistant In InDesign: ePubCrawler"}]},{"@type":"WebSite","@id":"https:\/\/rorohiko.com\/wordpress\/#website","url":"https:\/\/rorohiko.com\/wordpress\/","name":"Rorohiko Workflow Resources","description":"Custom InDesign Development","publisher":{"@id":"https:\/\/rorohiko.com\/wordpress\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/rorohiko.com\/wordpress\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/rorohiko.com\/wordpress\/#organization","name":"Rorohiko Ltd.","url":"https:\/\/rorohiko.com\/wordpress\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/rorohiko.com\/wordpress\/#\/schema\/logo\/image\/","url":"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2018\/03\/roro-logo-3d-v2.png","contentUrl":"https:\/\/www.rorohiko.com\/wordpress\/wp-content\/uploads\/2018\/03\/roro-logo-3d-v2.png","width":207,"height":200,"caption":"Rorohiko Ltd."},"image":{"@id":"https:\/\/rorohiko.com\/wordpress\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/zwettemaan","https:\/\/www.instagram.com\/kriscoppieters\/","https:\/\/www.linkedin.com\/in\/kristiaan"]}]}},"_links":{"self":[{"href":"https:\/\/rorohiko.com\/wordpress\/wp-json\/wp\/v2\/pages\/4114","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rorohiko.com\/wordpress\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/rorohiko.com\/wordpress\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/rorohiko.com\/wordpress\/wp-json\/wp\/v2\/users\/143"}],"replies":[{"embeddable":true,"href":"https:\/\/rorohiko.com\/wordpress\/wp-json\/wp\/v2\/comments?post=4114"}],"version-history":[{"count":138,"href":"https:\/\/rorohiko.com\/wordpress\/wp-json\/wp\/v2\/pages\/4114\/revisions"}],"predecessor-version":[{"id":5027,"href":"https:\/\/rorohiko.com\/wordpress\/wp-json\/wp\/v2\/pages\/4114\/revisions\/5027"}],"up":[{"embeddable":true,"href":"https:\/\/rorohiko.com\/wordpress\/wp-json\/wp\/v2\/pages\/3698"}],"wp:attachment":[{"href":"https:\/\/rorohiko.com\/wordpress\/wp-json\/wp\/v2\/media?parent=4114"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}