Hacker News new | past | comments | ask | show | jobs | submit | vortex_ape's comments login

Hey! Camelot maintainer here. You can check out this doc for details on how Camelot extracts tables from PDFs: https://camelot-py.readthedocs.io/en/master/user/how-it-work...

As pointed out in this thread, right now it only works with text-based PDFs. But there's a PR[1] which will add OCR support (using EasyOCR) for image-based PDFs in some time.

[1] https://github.com/camelot-dev/camelot/pull/209


Yes I need to work on that PR, haven't been getting a lot of free time these days. It adds OCR support using EasyOCR, which I found on HN some time ago!


That's awesome to hear!


Location: Delhi, India

Remote: Yes (onsite also works)

Willing to relocate: Yes

Technologies: Python, Flask, Celery, Airflow, Docker, Kubernetes, Git, some experience with C, Rust, JavaScript, HTML, CSS, Spark

Résumé/CV: https://vinayak.io/files/vinayakmehta_resume.pdf

Email: vmehta94 at gmail dot com


Can you elaborate a bit on what COM was? (or link a resource) I couldn't find its mention on the Windows 3.1 Wikipedia page.


https://en.wikipedia.org/wiki/Component_Object_Model

which is an elaboration of

https://en.wikipedia.org/wiki/Dynamic_Data_Exchange

A common use of COM was scripting with Visual Basic in the 1990s, for instance, ask Excel what is in cell B7, or dynamically load a GUI component out of a DLL and script it into a Visual Basic application.

This blends the boundaries between applications in that you might have a Word document that has an Excel spreadsheet embedded in it, and it really does boot up Excel and has Excel render itself in a rectangle inside the Word document.


This use didn't go away after the 1990s - Office still uses Visual Basic which still uses COM.


So basically what Amiga OS had with ARexx in the 1980s.

Edit: I misremembered, that was the 90s as well because it was a later development in the Amiga ecosystem.


Thank you for the links!

> A common use of COM was scripting with Visual Basic in the 1990s ...

This sounds nifty!


It is used for a lot more.

Want to integrate Windows Explorer in your application? COM.

Custom property pages in Windows Explorer? COM.

Custom folder view ala zip folder? COM.

Want Windows Explorer to be able to extract metadata from your custom file format, or Windows Search to search it? COM.

Want to play or manipulate video using the installed codecs? COM.

Want users to be able to drag an attachment from Outlook and drop it into your custom application? COM.

Just some examples. COM is a bit clunky, but it's a great enabler on the desktop.

https://docs.microsoft.com/en-us/windows/win32/shell/intro

https://docs.microsoft.com/en-us/windows/win32/properties/pr...

https://docs.microsoft.com/en-us/windows/win32/directshow/di...

https://docs.microsoft.com/en-us/windows/win32/shell/dragdro...


COM is still used a lot in audio (at least the COM ABI) because it allows to share objects between programs/shared libraries and manage their destruction. It also has a nice way to add functionality.


I'd also add:

Want to play video games? DirectX is a COM API too.


It was! Then the malware came. Those links opened a million security holes that were effectively untestable.


Nowadays you still interface with COM through PowerShell scripting, and it is pretty nifty.


It's a language agnostic binary interface. It's kind of hard to explain without getting into the technical details of how it works. For many years it was the only stable ABI on windows.


It is the only blessed API for all new APIs since 2000, I think.


Thanks for adding the repl.it badge!


Termgraphics looks awesome, I'll try it out this week!


I love how DeckSet looks but it only works on macOS :\


Thanks for posting, this is such a cool and informative talk! I love the typewriter animation :D


I used https://github.com/phw/peek but I plan on trying asciinema / terminalizer soon.

I was able to record `present` with asciinema, just need to see how nicely it renders into a GIF!


You may be interested in https://nbedos.github.io/termtosvg/ - it can take asciinema recordings and turn them into animated SVGs.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: