Wiki-to-print: Difference between revisions

From creative crowd wiki
Jump to navigation Jump to search
Tags: Reverted Visual edit
m (Reverted edits by Simoon (talk) to last revision by Manetta)
Tag: Rollback
Line 1: Line 1:
__TOC__
__TOC__


Wiki-to-print is a collaboratively publishing environment in which PDFs can be written, edited and designed by multiple people simultaneously.
==About wiki-to-print==
 
Wiki-to-print is a collective publishing environment based on MediaWiki software<ref>https://www.mediawiki.org</ref>, Paged Media CSS<ref>https://www.w3.org/TR/css-page-3/</ref> techniques and the JavaScript library Paged.js<ref>https://pagedjs.org</ref>, which renders a preview of the PDF in the browser. Using wiki-to-print allows us to work shoulder-to-shoulder as collaborative writers, editors, designers, developers, in a non-linear publishing workflow where design and content unfolds at the same time, allowing the one to shape the other.
Wikis are great for (a-sync) collaborative writing and editing, which is why the MediaWiki software is a part of wiki-to-print. Alongside this, concepts such as [https://www.mediawiki.org/wiki/Transclusion transclusion] are useful in allowing you to collate a publication from many differently authored pages. Simply put, transclusion is including a document into another one by hypertext reference, rather than copying it. Pages (or parts of them) can be transcluded into another wiki page, in this way:
 
<code>
<nowiki>{{:name of page to be transcluded}}</nowiki>
</code>
 
Transclusion is used in wiki-to-print to make one "unfolded" page that loads all the different pages of the PDF. Transclusion allows you to change the order of the texts quickly and add other elements such as a cover page or colophon. Furthermore, transclusion is useful for collaborative editing. Any changes that editors make to transcluded pages will automatically update wherever they are unfolded.
 
Wiki-to-print uses the <code>Pdf</code> namespace for these unfolded pages. Once you make a new wiki-to-print environment, a range of <span style="color: magenta;">pink</span> wiki-to-print buttons are added to the navigation bar, which add features for creating the layout.  


Below is a list of the wiki-to-print buttons:
Following the idea of "boilerplate code" which is written to be reused, we like to think of wiki-to-print as a boilerplate as well, instead of thinking of it as a product, platform or tool. The code that is running in the background is a version of previous ''wiki-printing'' instances, including:


===CSS!===
* the work on the Diversions<ref>https://diversions.constantvzw.org</ref> publications by Constant<ref>https://constantvzw.org</ref> and OSP<ref>https://osp.kitchen</ref>
* the book Volumetric Regimes<ref>http://data-browser.net/db08.html + https://volumetricregimes.xyz</ref> by Possible Bodies<ref>https://possiblebodies.constantvzw.org</ref> and Manetta Berends<ref>https://manettaberends.nl</ref>
* TITiPI's<ref>http://titipi.org</ref> ''wiki-to-pdf'' environments<ref>https://titipi.org/wiki/index.php/Wiki-to-pdf</ref> by Martino Morandi
* Hackers and Designers'<ref>https://hackersanddesigners.nl</ref> version ''wiki2print''<ref>https://github.com/hackersanddesigners/wiki2print</ref> that was produced for the book Making Matters<ref>https://hackersanddesigners.nl/s/Publishing/p/Making_Matters._A_Vocabulary_of_Collective_Arts</ref>


Here you can add the CSS styling rules for your layout.
So, wiki-to-print/wiki-to-pdf/wiki2print is not standalone, but part of a continuum of projects that see software as something to learn from, adapt, transform and change. The code that is used for making this journal is released as yet another version of this network of connected practices<ref>https://git.vvvvvvaria.org/varia/wiki-to-print</ref>.  


The Talk pages in the <code>Pdf</code> namespace are turned into CSS stylesheets for each particular wiki-to-print environment. So, once you have created a new wiki-to-print environment, an empty CSS stylesheet is made automatically.  
This wiki-to-print is hosted at CC<ref>https://cc.vvvvvvaria.org</ref> (''creative crowds''). While moving from ''cloud'' to ''crowds'', CC is a thinking device for us how to hand over ways of working and share a space for publishing experiments with others.


===Preview HTML===
<references />


Here you can preview the HTML and CSS of your page.
==Create a wiki-to-print environment==


This can be helpful to do when, for example, something unexpected happened in your layout and you want to figure out what is going on.
<br>
{{#createpage:Pdf||create|}}
<br>


===Preview PDF===
==Links to get started with==


Here you can preview your PDF in a new browser tab.
* [[Editing Guide]] (writing)
* [[How to work with wiki-to-print?]] (editing, layout making)
* [[How is wiki-to-print made?]] (developing)
* [[Running_wiki-to-print_on_the_server|How to run wiki-to-print on a server?]] (sysadmin)


Your content and the page layout you specified in your CSS are rendered by the JavaScript library Paged.js to look like a PDF. If you are satisfied with this, you can export the PDF from this browser tab simply by pressing <code>ctrl/command + p</code>.
==Wiki-to-print boilerplates==


==GOLDEN SWEATY TIPS==
* APRJA Boilerplate: [[Pdf:APRJA Boilerplate|Content page]], [[PdfCSS:APRJA Boilerplate|CSS]], [https://cc.vvvvvvaria.org/wiki-to-print/pdf/APRJA_Boilerplate PDF]
* Data Browser Boilerplate: [[Pdf:Data Browser Boilerplate|Content page]], [[PdfCSS:Data Browser Boilerplate|CSS]], [https://cc.vvvvvvaria.org/wiki-to-print/pdf/Data_Browser PDF]


===CSS===
==Created wiki-to-print environments==
* Use pixels in your stylesheet, this will (hopefully) avoid some Paged.js quirks that we have been fighting with, see: [[Error_log#Disappearing_sentences]]
* Use a pad to write the CSS and work on it together; you can import the pad using "@import" and the "/export/txt" export function: <code>@import url("https://pad.domainname.ext/mypad/export/txt");</code>
* You can manually force pages to break by creating a class that has the property "page-break-after: always;", and add it to the wiki pages wherever needed
* We often use one div to force extra page breaks: <code><div class="page-break"></div></code> and we copy/paste this when we need to add one
* The wiki adds id's to all the headers, which is super nice because it makes it possible to use Paged.js's target counters: https://pagedjs.org/documentation/-cross-references/#target-counter(); See this page for an example where this is used: https://cc.vvvvvvaria.org/wiki/Pdf:APRJA_Minor_Tech
* It depends on the layout, but often image sizes are best specified one-by-one, rather than globally. We often give exact pixel widths in the image element, for example <nowiki><code>[[File:image.jpeg|thumb|480px|image caption]]</code></nowiki>
* We don't try to go into micro-typography too much, it drives us crazy :) as it exponentially increases the workload
* Footnotes are rendered by the wiki with a small backlink-arrow, which is a super nice feature to keep in the PDF
* Fonts need to be hosted at the same server or domainname, to avoid cross-origin errors


===exporting===
These are some wiki-to-print environments that have been used so far:
* Different browsers (such as Chrome/Chromium, Firefox etc.) render PDFs differently, even if you're using the same version! For final final final versions, proof from PDFs, not from screen!
* Firefox renders images in low quality, the Paged.js developers recommend using Chrome/Chromium
* Your PDF will be saved in RGB, you can convert it to CMYK with Ghostscript. We use OSP's [http://osp.kitchen/tools/pdfutils/ PDFUtils repository]
* Zooming in/out in the browser may lead to suddenly disappearing lines; it's recommended to keep it 100 (percent) when working with Paged.js.
* Paged.js previews the PDF as double-page spreads, but the browser will save it as a single page document. You may also notice some slight differences in resolution and crispness of fonts between the browser and your PDF e-reader


===docs===
{{Special:AllPages/Pdf:}}
* The Paged.js documentation is pretty good: https://pagedjs.org/documentation/, you can find useful examples for using generated page numbers in toc's and other things
* The Coko Foundation's Mattermost has a dedicated Paged.js channel! You can find the makers and other users of Paged.js there, who may help you out in a pickle: https://mattermost.coko.foundation/coko/channels/pagedjs


===wiki-to-print===
==wiki-to-print log==
* More than one person editing a wiki page at the same time leads to version conflicts... And one of you loses their edits :|
* It's possible to use the <code>View HTML</code> button to make an HTML page. It's something that changes the scope of wiki-to-"print" into wiki-publishing, which we never tried but think is exciting :)


See the issue tracker of the git repository: https://git.vvvvvvaria.org/varia/wiki-to-print/issues


[[Category:Wiki-to-print]]
[[Category:Wiki-to-print]]

Revision as of 14:56, 22 August 2023

About wiki-to-print

Wiki-to-print is a collective publishing environment based on MediaWiki software[1], Paged Media CSS[2] techniques and the JavaScript library Paged.js[3], which renders a preview of the PDF in the browser. Using wiki-to-print allows us to work shoulder-to-shoulder as collaborative writers, editors, designers, developers, in a non-linear publishing workflow where design and content unfolds at the same time, allowing the one to shape the other.

Following the idea of "boilerplate code" which is written to be reused, we like to think of wiki-to-print as a boilerplate as well, instead of thinking of it as a product, platform or tool. The code that is running in the background is a version of previous wiki-printing instances, including:

  • the work on the Diversions[4] publications by Constant[5] and OSP[6]
  • the book Volumetric Regimes[7] by Possible Bodies[8] and Manetta Berends[9]
  • TITiPI's[10] wiki-to-pdf environments[11] by Martino Morandi
  • Hackers and Designers'[12] version wiki2print[13] that was produced for the book Making Matters[14]

So, wiki-to-print/wiki-to-pdf/wiki2print is not standalone, but part of a continuum of projects that see software as something to learn from, adapt, transform and change. The code that is used for making this journal is released as yet another version of this network of connected practices[15].

This wiki-to-print is hosted at CC[16] (creative crowds). While moving from cloud to crowds, CC is a thinking device for us how to hand over ways of working and share a space for publishing experiments with others.

Create a wiki-to-print environment


 


Links to get started with

Wiki-to-print boilerplates

Created wiki-to-print environments

These are some wiki-to-print environments that have been used so far:

wiki-to-print log

See the issue tracker of the git repository: https://git.vvvvvvaria.org/varia/wiki-to-print/issues