LaTeX-on-HTTP: L A T EX as a cloud service for application - - PowerPoint PPT Presentation

latex on http l a t ex as a cloud service for application
SMART_READER_LITE
LIVE PREVIEW

LaTeX-on-HTTP: L A T EX as a cloud service for application - - PowerPoint PPT Presentation

LaTeX-on-HTTP: L A T EX as a cloud service for application developers TUG2020 Yoan Tournade July 26, 2020 Why are not PDFs from IT systems and applications more decently typesetted? (They are generally not) Of course... Because developers do


slide-1
SLIDE 1

LaTeX-on-HTTP: L

AT

EX as a cloud service for application developers

TUG2020

Yoan Tournade

July 26, 2020

slide-2
SLIDE 2

Why are not PDFs from IT systems and applications more decently typesetted?

(They are generally not)

slide-3
SLIDE 3

Of course...

Because developers do not use L

AT

EX

... in their applications

slide-4
SLIDE 4

Why then developers do not use L

AT

EX

for automating PDF edition?

slide-5
SLIDE 5

Reason #1: Customs

Cultural glass walls

L

A

T EX as the "academia thing"

◮ Known as the hegemonic paper tool ◮ But not thought as a solution for web developments L

A

T EX mental bucket: Webapps mental bucket:

slide-6
SLIDE 6

Reason #2: Technical barriers

Mainly runtime requirements

L

AT

EX runtime requirements are heavy and complex

◮ Who will argue with DevOps about adding several hundred megabytes (or several gigabytes) of dependencies for "some nice PDFs"?

slide-7
SLIDE 7

Reason #3: Knowledge

About documentation and lazyness

Developers love copy-pastable code to get started

◮ how to call L

A

T EX properly from the application? ◮ also how to manage CTAN packages? updates? ◮ missing Hello World and typical scenario code snippets

slide-8
SLIDE 8

If not L

A

T EX...

What developers (currently) use to edit PDFs

in their applications?

slide-9
SLIDE 9

HTML/CSS to PDF converters

Libraries: ... Cloud services: ... Sample:

import weasyprint weasyprint.HTML( "document.html" ).write_pdf( "output.pdf", stylesheets=[ weasyprint.CSS("document.css") ] )

slide-10
SLIDE 10

"Instruction-based" PDF generators

in the developer native languages

Libraries: ... Sample:

require(’fpdf/fpdf.php’); $pdf = new FPDF(); $pdf->AddPage(); $pdf->SetFont(’Arial’,’B’,16); $pdf->Cell(40,10, ’Hello World!’); $pdf->Output();

slide-11
SLIDE 11

Ok now...

What can we do

for developers to

(more frequently)

use L

AT

EX in their applications?

slide-12
SLIDE 12

LaTeX-on-HTTP

Putting L

A

T EX behind a developer-friendly

HTTP API

... with the convenience of modern cloud services

slide-13
SLIDE 13

Demo time

Access demo code on GitHub

Scenario:

We’re a web developer. Our boss asked us to integrate PDF edition in his freelancing platform. The aim is to create good-looking invoices and proposals. It’s Wednesday 2:30pm. It must be finished before next week.

slide-14
SLIDE 14

Fulfilling the promise

A project still in development

Future works:

◮ creating high-level documentations; ◮ presentation website for promotion; ◮ language libraries for easier integrations; ◮ also: addressing scaling, security, ...

slide-15
SLIDE 15

Acknowledgments

Jonathan Fine

for inviting me to talk

Inspirations:

◮ Andrey Lushnikov’s LaTeX.Online; ◮ ShareLaTeX/Overleaf CLSI.

slide-16
SLIDE 16

Read more, contribute and report issues github.com/YtoTech/latex-on-http Live interractive demo latex-http-demo.ytotech.com Feedbacks and cheering welcome y@yoantournade.com