A relatively simple way is to use a templating system such as jinja2 and iterate over a mkiv template. Calling context with subprocess and you got the result.
Le jeu. 16 avr. 2020 à 15:52, Hans Hagen <j.ha...@xs4all.nl> a écrit : > On 4/16/2020 4:38 PM, Mojca Miklavec wrote: > > On Thu, 16 Apr 2020 at 11:29, Taco Hoekwater wrote: > >>> On 16 Apr 2020, at 11:12, Mojca Miklavec wrote: > >>> > >>> I have been asked to create a few thousand PDF documents from a CSV > >>> "database" today > >> > >> In CPU cycles, the fastest way is to do a single context —once > >> run generating all the pages as a single document, then using > >> mutool merge to split it into separate documents using a (shell) > >> loop. > > > > Just to make it clear: I don't really need to optimize on the CPU end, > > as the bottleneck is on the other side of the keyboard, so as long as > > the CPU can process 5k pages today, I'm fine with it :) :) :) > > 5K is nothing ... so that will work > > >>> One option is that I quickly draft a python script that creates a few > >>> thousand TeX documents and compiles them individually, but it might be > >>> easier if there was a way to just create a single template document > >>> and then run something like > >>> context --some-params --N=42 --output=document-0042.pdf > template.tex > >>> or something along those lines. > >> > >> If you want to go this route (and you may have to if not each record > >> fits exactly within a single page), > > > > I do have one page per document. The more annoying part is having > > strange document names that need more attention when mapping page > > number -> name (I'm not saying this is not doable). > > so, don't make files: > > - write a tex file foo.tex > - process it: context --batch --result=1 --once foo > > etc ... so, use --result for the target name and use the same input name > > (I won't bother you with the template system in context that no one > knows of.) > > Hans > > ----------------------------------------------------------------- > Hans Hagen | PRAGMA ADE > Ridderstraat 27 | 8061 GH Hasselt | The Netherlands > tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl > ----------------------------------------------------------------- > > ___________________________________________________________________________________ > If your question is of interest to others as well, please add an entry to > the Wiki! > > maillist : ntg-context@ntg.nl / > http://www.ntg.nl/mailman/listinfo/ntg-context > webpage : http://www.pragma-ade.nl / http://context.aanhet.net > archive : https://bitbucket.org/phg/context-mirror/commits/ > wiki : http://contextgarden.net > > ___________________________________________________________________________________ >
___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://context.aanhet.net archive : https://bitbucket.org/phg/context-mirror/commits/ wiki : http://contextgarden.net ___________________________________________________________________________________