SlideShare una empresa de Scribd logo
1 de 34
Descargar para leer sin conexión
Automated Workflows for
Mathematical Equation
Processing and Rendering
EDUPUB 2013
October 29, 2013

Sanders Kleinfeld
O’Reilly Media, Inc.
Or:

b ! 4ac
!b ±
2a
2

≠
How should I
produce books with
complex
mathematical
content?
Publishers often
go one of two
routes for source
files…
Typeset with

AT
L

X!
E

section{Bayes's Theorem}
At this point we have everything we need to derive Bayes's
Theorem.
We'll start with the observation that conjunction is commutative;
that is
%
[ p{A AND B} = p{B AND A} ]
%
for any events $A$ and $B$.
index{Bayes's Theorem derivation}
index{conjunction}
Next, we write the probability of a conjunction:
%
[ p{A AND B} = p{A}~p{B|A} ]
%

(Source From Think Bayes [O’Reilly Media]:
http://code.google.com/p/thinkstats/source/browse/trunk/thinkbayes/
book.tex#634)
OR…
Just Embed Images!

(From Head First Algebra [O’Reilly Media])
Downsides of LATEX approach:
• 
• 

What if you don’t want to build a TEX
toolchain?
LATEX is great for PDF export, but
what about output to EPUB/Mobi?

Downsides of image approach:
• 
• 

Maintenance is a pain!
How to scale/optimize for different
output formats?
O’Reilly’s Solution:
Embed LATEX
in Standard ASC or DB Source
Instead, we start with a small congestion window and double it
for every roundtrip--i.e., exponential growth. As a result, the
time required to reach a specific throughput target is a function
(<<SS_TIME>>) of both the roundtrip time between the client and
server and the initial congestion window size.
[[SS_TIME]]
[latexmath]
.Time to reach the cwnd size of size N
++++
begin{aligned}
mathrm{Time} = mathrm{RTT} times leftlceil log_2 left
( frac{mathrm{N}}{mathrm{initial cwnd}} right) rightrceil
end{aligned}
++++

(From High Performance Browser Networking [O’Reilly Media])
BUT…
How do I render
AT X for
embedded L E
all my different
(e)book outputs?
What about MathML?
(http://www.w3.org/Math/)
MathML Rendered to PDF*

* With AntennaHouse Formatter
MathML in EPUB (iBooks)
MathML in EPUB (NOOK)
MathML in Mobi (Kindle Fire)
OK, what about SVG?
(http://www.w3.org/Graphics/SVG/)
SVG Rendered to PDF*

* With AntennaHouse Formatter
SVG in EPUB (iBooks)
SVG in Mobi (Kindle Paperwhite)
SVG in Mobi (Kindle “classic”)
Gah, what’s left?
JPEG or PNG?
Well, yes.
Only standard
bitmap image
formats work
reliably
everywhere
BUT…
Why do we need a
one-size-fits-all
solution?
Can’t we optimize
equation output
separately for
each format?
“Frustrated man at a desk” (by LaurMG; http://commons.wikimedia.org/wiki/File:Frustrated_man_at_a_desk_(cropped).jpg)
Don’t Worry!
Make an API!
O’Reilly Media’s Math Conversion API
(a.k.a. STIX)

EPUB Equation
LATEX Source
MathML Source

STIX

Mobi Equation
PDF Equation
Web Equation
STIX: Under the Hood
LATE X

tralics

MathML

(http://www-sop.inria.fr/marelle/tralics/)

MathML

SVGMath (http://sourceforge.net/projects/svgmath/)

SVG

rsvg

PNG
Source Format
Conversion Tool
Intermediate Format
Output Format

(https://developer.gnome.org/rsvg/stable/)
Equation Output Formats
Per Ebook Format
EBOOK Format

Equation Output Format

EPUB

PNG

Mobi

PNG

PDF

MathML (rendered by AntennaHouse Formatter*)

HTML (for Web)

LATEX or MathML (with MathJax** for rendering)

* http://www.antennahouse.com/
** http://www.mathjax.org/
Future Improvements
• 

MathJax-based engine for STIX
(à la svgtex)
https://github.com/agrbin/svgtex

• 

Improved Accessibility!
(alt text for PNG via ChromeVox)
http://kefletcher.blogspot.com/2013/07/next-stepsfrom-accessibility-sprint.html
Contact Me!
Email: sanders@oreilly.com
Twitter: @sandersk

Más contenido relacionado

Destacado

Destacado (7)

Mathematical content in documentation (DITA Europe 2008)
Mathematical content in documentation (DITA Europe 2008)Mathematical content in documentation (DITA Europe 2008)
Mathematical content in documentation (DITA Europe 2008)
 
Automated Equation Breaking: Making Equations Responsive
Automated Equation Breaking: Making Equations ResponsiveAutomated Equation Breaking: Making Equations Responsive
Automated Equation Breaking: Making Equations Responsive
 
Markup languages and warp-speed documentation
Markup languages and warp-speed documentationMarkup languages and warp-speed documentation
Markup languages and warp-speed documentation
 
From print textbook to MathML
From print textbook to MathMLFrom print textbook to MathML
From print textbook to MathML
 
Mogwaï: A Framework to Handle Complex Queries on Large Models
Mogwaï: A Framework to Handle Complex Queries on Large ModelsMogwaï: A Framework to Handle Complex Queries on Large Models
Mogwaï: A Framework to Handle Complex Queries on Large Models
 
Gui Input Tools for Math [UKMC09]
Gui Input Tools for Math [UKMC09]Gui Input Tools for Math [UKMC09]
Gui Input Tools for Math [UKMC09]
 
UMLtoGraphDB: Mapping Conceptual Schemas to Graph Databases
UMLtoGraphDB: Mapping Conceptual Schemas to Graph DatabasesUMLtoGraphDB: Mapping Conceptual Schemas to Graph Databases
UMLtoGraphDB: Mapping Conceptual Schemas to Graph Databases
 

Similar a Automated Equation Processing and Rendering Workflows for Publishers

Streaming Python on Hadoop
Streaming Python on HadoopStreaming Python on Hadoop
Streaming Python on Hadoop
Vivian S. Zhang
 
Behm Shah Pagerank
Behm Shah PagerankBehm Shah Pagerank
Behm Shah Pagerank
gothicane
 

Similar a Automated Equation Processing and Rendering Workflows for Publishers (20)

Aggregating In Accumulo
Aggregating In AccumuloAggregating In Accumulo
Aggregating In Accumulo
 
Streaming Python on Hadoop
Streaming Python on HadoopStreaming Python on Hadoop
Streaming Python on Hadoop
 
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...
Everyday I'm Shuffling - Tips for Writing Better Spark Programs, Strata San J...
 
Introduction to latex by Rouhollah Nabati
Introduction to latex by Rouhollah NabatiIntroduction to latex by Rouhollah Nabati
Introduction to latex by Rouhollah Nabati
 
Behm Shah Pagerank
Behm Shah PagerankBehm Shah Pagerank
Behm Shah Pagerank
 
Xxx treme aggregation
Xxx treme aggregationXxx treme aggregation
Xxx treme aggregation
 
Introduction To Algebird: Abstract algebra for analytics
Introduction To Algebird: Abstract algebra for analyticsIntroduction To Algebird: Abstract algebra for analytics
Introduction To Algebird: Abstract algebra for analytics
 
CPP Homework Help
CPP Homework HelpCPP Homework Help
CPP Homework Help
 
NVIDIA HPC ソフトウエア斜め読み
NVIDIA HPC ソフトウエア斜め読みNVIDIA HPC ソフトウエア斜め読み
NVIDIA HPC ソフトウエア斜め読み
 
Beyond Shuffling, Tips and Tricks for Scaling Apache Spark updated for Spark ...
Beyond Shuffling, Tips and Tricks for Scaling Apache Spark updated for Spark ...Beyond Shuffling, Tips and Tricks for Scaling Apache Spark updated for Spark ...
Beyond Shuffling, Tips and Tricks for Scaling Apache Spark updated for Spark ...
 
Introduction to LaTeX - Workshop Day 1
Introduction to LaTeX - Workshop Day 1Introduction to LaTeX - Workshop Day 1
Introduction to LaTeX - Workshop Day 1
 
Math in Plone
Math in PloneMath in Plone
Math in Plone
 
Word2vec and Friends
Word2vec and FriendsWord2vec and Friends
Word2vec and Friends
 
Matlab1
Matlab1Matlab1
Matlab1
 
Functional Design Explained (David Sankel CppCon 2015)
Functional Design Explained (David Sankel CppCon 2015)Functional Design Explained (David Sankel CppCon 2015)
Functional Design Explained (David Sankel CppCon 2015)
 
A Simple 3D Graphics Engine Written in Python and Allegro
A Simple 3D Graphics Engine Written in Python and AllegroA Simple 3D Graphics Engine Written in Python and Allegro
A Simple 3D Graphics Engine Written in Python and Allegro
 
R programming slides
R  programming slidesR  programming slides
R programming slides
 
Data Science for Number and Coding Theory
Data Science for Number and Coding TheoryData Science for Number and Coding Theory
Data Science for Number and Coding Theory
 
Big Data, a space adventure - Mario Cartia - Codemotion Milan 2014
Big Data, a space adventure - Mario Cartia -  Codemotion Milan 2014Big Data, a space adventure - Mario Cartia -  Codemotion Milan 2014
Big Data, a space adventure - Mario Cartia - Codemotion Milan 2014
 
Getting Started on Hadoop
Getting Started on HadoopGetting Started on Hadoop
Getting Started on Hadoop
 

Más de Sanders Kleinfeld

Más de Sanders Kleinfeld (6)

Is HTML5 the "Magic Bullet"?
Is HTML5 the "Magic Bullet"?Is HTML5 the "Magic Bullet"?
Is HTML5 the "Magic Bullet"?
 
XSLT for Web Developers
XSLT for Web DevelopersXSLT for Web Developers
XSLT for Web Developers
 
The Ebook Avant-Garde
The Ebook Avant-GardeThe Ebook Avant-Garde
The Ebook Avant-Garde
 
Open Source for Publishing
Open Source for PublishingOpen Source for Publishing
Open Source for Publishing
 
HTML5 Is the Future of Book Authorship
HTML5 Is the Future of Book AuthorshipHTML5 Is the Future of Book Authorship
HTML5 Is the Future of Book Authorship
 
The Case for Authoring and Producing Books in (X)HTML5
The Case for Authoring and Producing Books in (X)HTML5The Case for Authoring and Producing Books in (X)HTML5
The Case for Authoring and Producing Books in (X)HTML5
 

Último

Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 

Último (20)

Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
Asian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptxAsian American Pacific Islander Month DDSD 2024.pptx
Asian American Pacific Islander Month DDSD 2024.pptx
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
Magic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptxMagic bus Group work1and 2 (Team 3).pptx
Magic bus Group work1and 2 (Team 3).pptx
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 

Automated Equation Processing and Rendering Workflows for Publishers