{"id":26957208,"url":"https://github.com/l3nz/dockbooker","last_synced_at":"2025-04-03T03:38:46.354Z","repository":{"id":32473232,"uuid":"36053375","full_name":"l3nz/dockbooker","owner":"l3nz","description":"Create multi-format Asciidoc books from the command line - using Docker","archived":false,"fork":false,"pushed_at":"2020-11-11T16:17:00.000Z","size":710,"stargazers_count":11,"open_issues_count":4,"forks_count":2,"subscribers_count":3,"default_branch":"master","last_synced_at":"2023-03-12T08:54:29.703Z","etag":null,"topics":["asciidoc","docker","fop","pdf"],"latest_commit_sha":null,"homepage":"","language":"XSLT","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/l3nz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-05-22T05:10:01.000Z","updated_at":"2022-03-05T20:37:07.000Z","dependencies_parsed_at":"2022-08-28T12:50:20.765Z","dependency_job_id":null,"html_url":"https://github.com/l3nz/dockbooker","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/l3nz%2Fdockbooker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/l3nz%2Fdockbooker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/l3nz%2Fdockbooker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/l3nz%2Fdockbooker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/l3nz","download_url":"https://codeload.github.com/l3nz/dockbooker/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246933359,"owners_count":20857052,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["asciidoc","docker","fop","pdf"],"created_at":"2025-04-03T03:38:45.711Z","updated_at":"2025-04-03T03:38:46.331Z","avatar_url":"https://github.com/l3nz.png","language":"XSLT","funding_links":[],"categories":[],"sub_categories":[],"readme":"# dockbooker\n\nCreate multi-format eBooks from the command line - using Docker.\n\nRun a Docker image to transform your AsciiDoc documentation to:\n\n* Multipart HTML\n* PDF\n* EPUB\n\nIt also makes sure that your images fit, and reprocesses them according to your destination media (for\nexample, images for PDF are to be 150dpi, JPEGs have a defined compression ratio, etc.)\n\n## Getting started\n\nIf you have Docker installed, just clone the repo, then go to \"sample_book\" and run \"make\".\nThe sample document will be compiled to all formats - PDF, HTML and EPUB.\n\n## Using\n\nThe Docker image expects sources to be mounted as /in and output to be mounted as /out. Though the \ncontents of /in are read-only, it is perfectly acceptable to map /in and /out to the same folder.\n\nYou will run the Docker image as:\n\n     docker run -it --rm \\\n       -v $(readlink -m .):/in \\\n       -v $(readlink -m ./out):/out \\\n       lenz/dockbooker \\\n       /make/all\n\nThe first line runs the image and removes it when terminated. The second and third line\nmount volumes on /in and /out (note that we have to use readlink to make local paths absolute).\nThe last line runs the correct command \"/make/all\".\n\n# Creating books\n\nA book is created out of a folder containing an Asciidoc file, its images and a manifest\nfile dockbooker.json.\n\nThe manifest:\n\n* Defines what to compile and how to name the resulting file\n* Defines how you want your images processed\n\nThe idea is that you keep images in the simplest possibe format - be it text (for dotfiles) or\nhigh-resoution, full-color graphics.\n\nWhen rendering, dockbooker takes care of rendering the images with a size and a resolution\nthat looks good, but is usually compressed - for example, PNGs are reduced to 256 colors\nand packed. So for each image you can simply add to your repo the image as-is, without processing it,\nand dockbooker will process it.\n\nThe idea is that images can be either MAXI (full page), MIDI (about 2/3) and MINI (about 1/3 of the page).\n\n\n## Creating PDFs with covers\n\nIt is possible to customize PDFs by adding Docbook customization files. The one supplied lets you add\na picture on the cover page and a small logo on the footer of each page. \n\nIn theory, you can customize the appearance of Docbook books quite a lot. In practice, it's so \nabsurdly complex that any contribution on how to do this in practice is welcome.\n\nThe supplied XSLT file includes:\n\n* An image on the cover page, scaled to be 8.0 cm tall\n* An image in the footer, scaled to be 1.0 cm tall\n\nFeel free to improve it.\n\nSee also:\n\n* Tips on using fonts: http://www.simon-cozens.org/content/docbook-fop-fonts-and-multilingua\n* Preprocessing fonts: http://www.incenp.org/notes/2012/fop-ttf-fonts.html\n* A (long) list of FOP configuration parameters: http://docbook.sourceforge.net/release/xsl/1.77.0/doc/fo/\n* Fonts embedded in FOP: https://xmlgraphics.apache.org/fop/2.0/fonts.html\n\n\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fl3nz%2Fdockbooker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fl3nz%2Fdockbooker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fl3nz%2Fdockbooker/lists"}