KeenType
LaTeX-OCR
KeenType | LaTeX-OCR | |
---|---|---|
13 | 21 | |
104 | 10,860 | |
- | - | |
10.0 | 3.6 | |
8 months ago | about 1 month ago | |
Java | Python | |
GNU General Public License v3.0 or later | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
KeenType
-
LaTeX3: Programming in LaTeX with Ease
> modern languages like Markdown
Markdown was created in 2004. From the creator:
> ... the single biggest source of inspiration for Markdown’s syntax is the format of plain text email.
Email goes back to 1965, though I suspect Markdown's influence stems from the more widely adopted email usage from the 1990s.
> Part of LaTeX's success was the absolutely beautiful documents it can make with nothing but a personal computer.
I'd say that was TeX's success, with LaTeX bolted on later to greatly improve TeX's extensibility. Keep in mind, there are a number of TeX-centric implementations beyond LaTeX. For example, my fork of NTS, called KeenType, is a pure Java version of TeX that can typeset beautifully and has at its core Knuth's original TeX files.
https://github.com/DaveJarvis/KeenType/tree/main/tex/src/mai...
-
Expanding TeX's \Newif (2021)
My port of the New Typesetting System (NTS), called KeenType, whittles down the Java-based implementation to a few of Knuth's files. Namely, "plain.tex" and "hyphen.tex":
https://github.com/DaveJarvis/KeenType/tree/main/tex/src/mai...
Getting familiar with the fonts required understanding the difference between font metrics (TFM files) and the fonts themselves. To make matters a little less straightforward, Knuth created a special character mapping for indexes into the fonts. It was not easy to find a font that mapped those glyphs exactly. The closest font was BaKoMa:
https://github.com/DaveJarvis/KeenType/tree/main/tex/src/mai...
This required hard-coding a mapping between Knuth's code points and the actual code points in the target font:
https://github.com/DaveJarvis/KeenType/blob/989dbe26f68eda75...
-
The fastest math typesetting library for the web
A while ago I optimized KeenType, which although not JavaScript-based, generates SVG images, which can be embedded into web pages.
https://github.com/DaveJarvis/keentype
The following tutorial shows the real-time rendering speed of KeenType within my text editor, KeenWrite:
https://youtu.be/vgyYXwwF_lc?list=PLB-WIt1cZYLm1MMx2FBG9KWzP...
- Reducing code size in (Rust) librsvg by removing an unnecessary generic struct
- KeenType: Pure Java typesetting system
-
Different algorithms for converting binary to decimal floating-point numbers
In Java, many number-to-string implementations use NumberFormat. This is abysmally slow if the problem domain doesn't require internationalization, which is the case for machine-readable file formats, such as SVG. When I performance tested JMathTeX for rendering TeX, the bottleneck for converting TeX into SVG elements was JFreeSVG's use of NumberFormat[0]. Replacing NumberFormat with RyuDouble doubled the throughput[1]. (Reusing a StringBuilder for to concatenate strings yielded another doubling.)
For KeenType[2], a fork of the New Typesetting System (and more complete TeX implementation than JMathTeX), I added an SVG generator that converts numbers to string using a StackOverflow answer[3], instead of using Ryu[4]. The performance was even better and the algorithm vastly simpler.
Knuth was right: measure, then optimize.
[0]: https://github.com/jfree/jfreesvg
[1]: https://github.com/jfree/jfreesvg/pull/30
[2]: https://github.com/DaveJarvis/KeenType
[3]: https://stackoverflow.com/a/10554128/59087
[4]: https://github.com/DaveJarvis/KeenType/blob/fef005579021f394...
-
KeenWrite 3.2.0
KeenType, a modernized and optimized NTS fork, replaces KeenTeX.
LaTeX-OCR
- Detexify LaTeX Handwriting Symbol Recognition
- Pix2tex: Using a ViT to convert images of equations into LaTeX code
-
Why copyng a math formula gives me duplicated characters
I didn't know that such tools exists (completly new to LaTex). Thanks to your suggestion I looked for an open source althernative (to avoid anoyances of freemium) and I found pix2tex That works really like a charm.
- I have just started using LaTeX in my Physics and Math courses and I love it and want to learn all about it. Does anyone know any obscure (or well known that I just don't know about) things about LaTeX that are really cool and helpful?
-
Github packages/Apps that are must have for Physicists using Linux
I have recently discovered a few very helpful github packages which help me make notes while listening to lectures. These would be 1. pix2tex (allows you to scan an equation and convert it to latex) 2. pix2text (allows you to scan an equation with words in it and converts it to latex and text) 3. Tesseract (not really a physics related package, but it does allow me to copy notes from transcripts easily) 4. Mathpix an app that performs all the above mentioned operations better than the packages above, but one which ain't free.
-
The fastest math typesetting library for the web
This is also a great aid to learing LaTex. I wonder if anyone has ever tried to make an OCR system that generates the appropriate LaTex from an picture of an equation?
Turns out the answer is yes:
https://github.com/lukas-blecher/LaTeX-OCR
- A very useful package which I don't know to set up
- LaTeX AI
-
Any alternatives to Mathpix/Latex-OCR?
LaTeX-OCR
What are some alternatives?
Sentinel - A powerful flow control component enabling reliability, resilience and monitoring for microservices. (面向云原生微服务的高可用流控防护组件)
EasyOCR - Ready-to-use OCR with 80+ supported languages and all popular writing scripts including Latin, Chinese, Arabic, Devanagari, Cyrillic and etc.
asciimathml - A new home for asciimathml
transformer-pytorch - Transformer: PyTorch Implementation of "Attention Is All You Need"
awesome-typst - Awesome Typst Links
PaperTools - Tools for writing papers
latex-snippets - Vim + LaTeX snippets setup
SwinIR - SwinIR: Image Restoration Using Swin Transformer (official repository)
KmCaster - Capture keyboard and mouse events for screencasting
mmocr - OpenMMLab Text Detection, Recognition and Understanding Toolbox
jfreesvg - A fast, lightweight Java library for creating Scalable Vector Graphics (SVG) output.
rebiber - A simple tool to update bib entries with their official information (e.g., DBLP or the ACL anthology).