Englisches Original: https://argusic.com/subject/vmprint
vmprint
Diese Layout-Engine kann die schwierigsten Layout-Probleme lösen, die man sich vorstellen kann. Ihre Ausgabe ist DTP-tauglich und deterministisch. Sie ist schneller als Engines, die in C++ geschrieben sind, weil sie nicht traditionell ist. Unterstützt von Game-Engine-Technologie, hat sie einen Microkernel und führt eine räumlich-zeitliche Simulation aus, anstatt einer riesigen komplexen Paginierungsschleife.
LäuftQuelle: GitHubHomepageTypeScriptApache-2.0Commit a69394f06aa0
TypeScript, Lizenz Apache-2.0. Das Projekt beschreibt sich selbst als: bidirectional text, canvas, document, headless browser, layout engine, markdown to pdf, multilingual und pdf.
vmprint läuft. Ein Argusic-Agent hat es in 3 Minuten installiert und ist auf 4 Fehler gestoßen. Das geschah auf einer sauberen Maschine ohne GPU, und die gesamte Sitzung wurde aufgezeichnet.
vmprint CLI and engine ran in this container on Node 18 despite EBADENGINE install warnings: npm test exited 0 (engine 77+77 fixtures, packaged-integration 1 page/1107 bytes), the CLI rendered valid text-bearing PDFs with bundled local fonts and version 0.1.0, and engine.layout() produced 1 page x 1 box containing 'Hello, world.';
Was der Agent auf einer sauberen Maschine erreicht hat, in seinen eigenen Worten. So wird gemessen
Von Argusic jedes Mal auf einer frischen Maschine gemessen. Jede Zahl verlinkt auf ihren Nachweis. Argusic Score 80 von 100 (der Mittelwert der Lauf-Scores dieses Projekts).
Auf einen Blick
Projektdaten von GitHub, oben auf dieser Seite verlinkt, aktualisiert . Testdaten von Argusic (CC BY 4.0); jede Zahl verlinkt auf eine Laufseite mit dem vollständigen Log, der Aufzeichnung und deren sha256-Hashes.
Was gemessen wurde
Aus dem Lauf, der diesen Befund entschieden hat. Jede Zeile ist ein aufgezeichneter Wert, keine Schätzung.

Was schiefging, in den Worten des Agents
Die eigenen Worte des Agents, das Schwerste zuerst, nie zu Ratschlägen umgeschrieben.
- QUICKSTART code path broken: PdfContext has no waitForFinish(); renderLayout ignores the passed fontManager and crashes on getFontRegistrySnapshot40 Minuten
- README/QUICKSTART example (story with inline content, no styles) fails loadDocument and lays out 0 pages; story text only flows via children30 Minuten
- npm install warned EBADENGINE for commander@14, lru-cache@11, rimraf@6 (require Node >=20; container has Node 18.19.1)
- vmprint --render-from-layout does not write the PDF (only end() is called)
- Installationszeit
- 3 Minuten
- Von der kalten Maschine bis zum Ende
- 18 Minuten
- Aufgetretene und behobene Fehler
- 4 aufgetreten, 0 ohne menschliche Hilfe behoben
- Wie das Ergebnis belegt wurde
- npm test exited 0 with engine OK (77 fixtures) x2 and '[packaged-integration] OK: 1 page(s), 1107 bytes'; node cli/dist/index.js -V printed 0.1.0; CLI rendered 3 fixture PDFs exit 0 with cold layoutMs and 1-page streams; PDFs are structurally valid (%PDF-1.3, 1 /Page, %%EOF, embedded ToUnicode fonts) and the rendered glyph stream decodes to 'Hello, world.'; engine.layout() returned 1 page/1 box (72,72,451,18.09) whose line text is 'Hello, world.' with 13 glyphs
- Verbrauchte Modell-Tokens
- 1.412.346
- Genau getesteter Commit
- a69394f06aa0
- Container-Image
- sha256:cdd920bce783
Was nicht gemessen wurde
Die andere Hälfte, damit Sie genau sehen, wie weit dieser Nachweis reicht. Eine Lücke wird als Lücke angezeigt und nie aufgefüllt.
- Maximaler GPU-Speicher
- dieser Lauf fand auf einer CPU-Maschine statt, es gab also keine GPU zu messen
- Verhalten über einen langen Lauf
- jeder Versuch verwendet die kleinsten dokumentierten Einstellungen und ein festes Zeitbudget, daher misst dies, ob es läuft, nicht wie es sich unter Last hält
Das Ende der Aufzeichnung
Die letzten Zeilen der Terminalsitzung, die diesen Befund entschieden hat, genau so, wie sie aufgezeichnet wurden.
- Inline decoding: page 1's rendered literal glyphs decode to exactly the sentence "Hello, world." …
- Engine API: `loadDocument` → `new VMPrintEngine(...)` → `engine.layout()` produced 1 page, 1 box …
**Errors hit and fixed**
- README/QUICKSTART: Example document's element `{"type":"story","content":"Hello, world."}` produc…
- README Quickstart code: `context.waitForFinish()` doesn't exist on `PdfContext` (no `waitForFinis…
- `engine.layout()` on a story without children returns 0 pages, and `vmprint --render-from-layout`…
No third-party credentials or mocks were needed; everything ran with the repo's bundled fonts. `fin…
exec
/bin/sh -lc true in /work/repo
succeeded in 0ms:
tokens used
1,412,346Gesamte Sitzung abspielen, jeder Befehl von einer sauberen Maschine bis zu diesem Punkt.
So wurde getestet
Ein Agent, ein Container, keine menschliche Hilfe. Er installiert das Projekt so, wie es die eigene Dokumentation beschreibt, führt es aus und behebt, was nicht funktioniert. Alles Folgende wurde so aufgezeichnet, wie es geschah: die Terminalsitzung, das Log und der genaue Commit. Die vollständige Methodik.
Stärken und Grenzen
Gemessene Fakten, keine Meinungen. Wie diese Inhalte entstehen.
Was gut lief
- Hat auf einer sauberen Maschine einen lauffähigen Zustand erreicht, mit aufgezeichneter Sitzung.
- In 3 Minuten installiert.
- Lief ohne GPU, braucht also keine, um zu starten.
- Lizenz Apache-2.0, laut Angabe des Hosts.
Was nicht lief oder unbekannt ist
- Ist bei der Einrichtung auf 4 Fehler gestoßen, davon 4 nicht gelöst.
- Bisher einmal gemessen. Ein einzelner Versuch zeigt, dass es laufen kann, nicht dass es zuverlässig läuft.
Wofür es eine vernünftige Wahl ist
- Zum Ausprobieren auf einem Laptop oder kleinen Server: Es erreichte einen lauffähigen Zustand ohne GPU.
- Für eine schnelle Evaluierung: Es lief 3 Minuten nach dem Klonen.
Ebenfalls getestet, im selben Bereich
Jedes dieser Projekte wurde von Argusic auf einer sauberen Maschine installiert und ausgeführt. Hier erscheint nichts, was nicht getestet wurde.
Laufverlauf
Themen (von GitHub)
bidirectional-textcanvasdocumentheadless-browserlayout-enginemarkdown-to-pdfmultilingualpdfpdf-exportpdf-generationpdf-viewerpdfjspublishingpuppeteerreact-pdftext-renderingtypescripttypesettingtypst
Badge einbetten
Markdown für die README des Projekts. Es verlinkt hierher zurück; Bedingungen auf der Seite mit den Nutzungsbedingungen.
[](https://argusic.com/subject/vmprint)Fragen
- Läuft vmprint?
- Ja. vmprint läuft. Argusic hat es auf einer sauberen Maschine in 3 Minuten installiert und gestartet, ist dabei auf 4 Fehler gestoßen und hat die Sitzung aufgezeichnet.
- Wie hat Argusic vmprint getestet?
- Auf einer frischen Einwegmaschine, mit jedem Befehl aufgezeichnet und dem Repository fixiert auf Commit a69394f06aa0. Ein Versuch ist aufgezeichnet, und die vollständige Methode steht auf der Seite zur Methodik.
- Was hat der Test von vmprint gekostet?
- Der Lauf, der diesen Befund ergab, kostete 0,04 USD: echte Rechen- und Modellkosten, kein Listenpreis pro Million Tokens. Der Betrag ist auf der Seite dieses Laufs aufgezeichnet.
- Wie lange dauert die Installation von vmprint?
- 3 Minuten in dem Lauf, der diesen Befund entschieden hat, von einer sauberen Maschine bis zum lauffähigen Zustand. Das ist ein gemessener Versuch, kein Durchschnitt.
- Braucht vmprint eine GPU?
- Nicht zum Starten. Argusic hat auf einer Maschine ohne GPU einen lauffähigen Zustand erreicht.
- Was geht bei der Installation von vmprint schief?
- Im aufgezeichneten Lauf gingen 4 Dinge kaputt. Jedes davon und die Zeit, die es gekostet hat, ist auf dieser Seite aufgeführt.
- Wo ist der Nachweis für vmprint?
- Der aufgezeichnete Lauf ist auf dieser Seite, jeweils mit Link auf das vollständige Log und die Terminalaufzeichnung, gespeichert mit einem sha256-Fingerabdruck, damit nichts unbemerkt verändert werden kann.