mirror of
https://github.com/jzillmann/pdf-to-markdown.git
synced 2025-06-24 11:33:49 +02:00
Correct test expectations
- Adapt the converter minimally
This commit is contained in:
parent
f0f9a3b896
commit
491e8c549a
File diff suppressed because it is too large
Load Diff
@ -3,16 +3,14 @@
|
|||||||
## 2te Überschrift
|
## 2te Überschrift
|
||||||
|
|
||||||
```
|
```
|
||||||
Dies ist eine Test-PDF^1.
|
Dies ist eine Test-PDF[^1].
|
||||||
Für’s Testen des Markdown Parsers.
|
Für’s Testen des Markdown Parsers.
|
||||||
```
|
```
|
||||||
(^1) In Deutsch.
|
[^1]: In Deutsch.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
## Paragraphen
|
## Paragraphen
|
||||||
|
|
||||||
Das ist ein Paragraph. Ein einfacher Paragraph mit Schrift in Normalgröße^2. Damit wir _sehen_ wie
|
Das ist ein Paragraph. Ein einfacher Paragraph mit Schrift in Normalgröße[^2]. Damit wir _sehen_ wie
|
||||||
sich Zeilenumbrüche verhalten, schreiben wir einfach ein bisschen mehr. So, dass sieht ja jetzt
|
sich Zeilenumbrüche verhalten, schreiben wir einfach ein bisschen mehr. So, dass sieht ja jetzt
|
||||||
schon gut aus!
|
schon gut aus!
|
||||||
Ohne Zwischenzeile, neu angesetzt.
|
Ohne Zwischenzeile, neu angesetzt.
|
||||||
@ -27,7 +25,7 @@ accumsan risus in purus facilisis interdum. Aliquam tincidunt condimentum est, s
|
|||||||
venenatis orci. Fusce neque nibh, dapibus et volutpat sit amet, consectetur ac quam. Sed pharetra
|
venenatis orci. Fusce neque nibh, dapibus et volutpat sit amet, consectetur ac quam. Sed pharetra
|
||||||
faucibus arcu, at interdum dui ornare ut. Aliquam sodales, magna et euismod congue, ipsum diam
|
faucibus arcu, at interdum dui ornare ut. Aliquam sodales, magna et euismod congue, ipsum diam
|
||||||
tempus sapien, vel aliquet tortor dolor ut purus. Aenean aliquet ut erat vitae dictum. Fusce eget
|
tempus sapien, vel aliquet tortor dolor ut purus. Aenean aliquet ut erat vitae dictum. Fusce eget
|
||||||
ultrices magna. Sed egestas mi nec rutrum iaculis. Phasellus condimentum^3 , urna sit amet sodales
|
ultrices magna. Sed egestas mi nec rutrum iaculis. Phasellus condimentum[^3] , urna sit amet sodales
|
||||||
accumsan, lacus risus cursus ipsum, et rhoncus ligula mi et nibh. In consequat a risus a
|
accumsan, lacus risus cursus ipsum, et rhoncus ligula mi et nibh. In consequat a risus a
|
||||||
accumsan. Pellentesque nec lacus sodales eros laoreet pretium non ac erat.
|
accumsan. Pellentesque nec lacus sodales eros laoreet pretium non ac erat.
|
||||||
|
|
||||||
@ -35,14 +33,14 @@ Und jetzt ein kleiner Text im block-format. Das erzeugt schöne doppelte Leerzei
|
|||||||
Wörtern. Wenn Markdown zu HTML gerendert wird, fällt das zwar nicht mehr auf. Aber in der puren
|
Wörtern. Wenn Markdown zu HTML gerendert wird, fällt das zwar nicht mehr auf. Aber in der puren
|
||||||
Text-Version ist es schon stark sichtbar!
|
Text-Version ist es schon stark sichtbar!
|
||||||
|
|
||||||
Und jetzt^4 einfach nochmal Text^5 um die Fussnoten in zweistellige Bereiche^6 vorranzutreiben!
|
Und jetzt[^4] einfach nochmal Text[^5] um die Fussnoten in zweistellige Bereiche[^6] vorranzutreiben!
|
||||||
|
|
||||||
(^2) Was immer auch ‘normal’ ist...
|
[^2]: Was immer auch ‘normal’ ist...
|
||||||
(^3) Nicht zu verwechseln mit ‘condimenta’. Meine Lateinkenntnisse sind zwar schon so alt das ich
|
[^3]: Nicht zu verwechseln mit ‘condimenta’. Meine Lateinkenntnisse sind zwar schon so alt das ich
|
||||||
überhaupt keine Ahnung hab, aber zumindest hab ich jetzt eine mehrzeilige Fussnote!
|
überhaupt keine Ahnung hab, aber zumindest hab ich jetzt eine mehrzeilige Fussnote!
|
||||||
(^4) Hier & Jetzt!
|
[^4]: Hier & Jetzt!
|
||||||
(^5) Nicht viel mehr als ein Satz.
|
[^5]: Nicht viel mehr als ein Satz.
|
||||||
(^6) Weil dann wird's komplizierter!
|
[^6]: Weil dann wird's komplizierter!
|
||||||
|
|
||||||
|
|
||||||
## Schriftschnitt
|
## Schriftschnitt
|
||||||
@ -71,7 +69,7 @@ Eine Liste mit unterschiedlich formatierten Wörtern
|
|||||||
|
|
||||||
- Etwas _Kursiv_
|
- Etwas _Kursiv_
|
||||||
- Etwas **Fett**
|
- Etwas **Fett**
|
||||||
- Etwas Unterstrichen^7
|
- Etwas Unterstrichen[^7]
|
||||||
- Etwas Durchgestrichen
|
- Etwas Durchgestrichen
|
||||||
- Und noch ein Link: [http://pdf2md.morethan.io](http://pdf2md.morethan.io)
|
- Und noch ein Link: [http://pdf2md.morethan.io](http://pdf2md.morethan.io)
|
||||||
|
|
||||||
@ -91,7 +89,7 @@ _Und ein folgender Absatz, auch kursiv!_
|
|||||||
|
|
||||||
_Und ein kursiver Setzt der einen eingeschlossen Link, nämlich [http://pdf2md.morethan.io,](http://pdf2md.morethan.io,) hat._
|
_Und ein kursiver Setzt der einen eingeschlossen Link, nämlich [http://pdf2md.morethan.io,](http://pdf2md.morethan.io,) hat._
|
||||||
|
|
||||||
(^7) Fussnote in einer Liste
|
[^7]: Fussnote in einer Liste
|
||||||
|
|
||||||
|
|
||||||
## Listen
|
## Listen
|
||||||
@ -180,7 +178,7 @@ der Parser das sauber trennen kann:
|
|||||||
Und danach kommt auch gleicht was.
|
Und danach kommt auch gleicht was.
|
||||||
|
|
||||||
|
|
||||||
## Quotes & Spezielle Einschübe^8
|
## Quotes & Spezielle Einschübe[^8]
|
||||||
|
|
||||||
Das hier ist wieder ein normaler Absatz. Das interessante ist der nachfolgende Teil, der
|
Das hier ist wieder ein normaler Absatz. Das interessante ist der nachfolgende Teil, der
|
||||||
eingeschoben ist, gewöhnlicher Weise sowas wie ein Zitat, oder Code, oder sonst was:
|
eingeschoben ist, gewöhnlicher Weise sowas wie ein Zitat, oder Code, oder sonst was:
|
||||||
@ -192,7 +190,7 @@ spiegelt dann ein leerer Schreibtisch wider? - Albert Einstein
|
|||||||
So, das war ja schonmal ein guter Anfang. Hier noch ein Einzeiler:
|
So, das war ja schonmal ein guter Anfang. Hier noch ein Einzeiler:
|
||||||
|
|
||||||
```
|
```
|
||||||
Phantasie ist wichtiger als Wissen , denn Wissen^9 ist begrenzt. - Albert Einstein^10
|
Phantasie ist wichtiger als Wissen , denn Wissen[^9] ist begrenzt. - Albert Einstein[^10]
|
||||||
```
|
```
|
||||||
Und nun mehrere Quotes hintereinander:
|
Und nun mehrere Quotes hintereinander:
|
||||||
|
|
||||||
@ -212,8 +210,8 @@ abc
|
|||||||
|
|
||||||
### Heading 2 II
|
### Heading 2 II
|
||||||
|
|
||||||
(^8) Eine Überschrifts-Fussnote... so was gibts auch!
|
[^8]: Eine Überschrifts-Fussnote... so was gibts auch!
|
||||||
(^9) Wisse, dass ist eine Fussnote in einem Zitat!
|
[^9]: Wisse, dass ist eine Fussnote in einem Zitat!
|
||||||
(^10) Der Albert Einstein (Fussnote im Zitat, am Ende der Zeile)
|
[^10]: Der Albert Einstein (Fussnote im Zitat, am Ende der Zeile)
|
||||||
|
|
||||||
|
|
||||||
|
@ -19,7 +19,7 @@ export default class MarkdownConverter implements Converter {
|
|||||||
const blockTypes: TextType[] = blockItems[0].data['types'] || [];
|
const blockTypes: TextType[] = blockItems[0].data['types'] || [];
|
||||||
let blockContent = '';
|
let blockContent = '';
|
||||||
groupByLine(blockItems).forEach((lineItems) => {
|
groupByLine(blockItems).forEach((lineItems) => {
|
||||||
blockContent += linesToText(lineItems, blockTypes.length > 0);
|
blockContent += lineToText(lineItems, blockTypes.length > 0);
|
||||||
blockContent += '\n';
|
blockContent += '\n';
|
||||||
});
|
});
|
||||||
content += elementToText(blockContent, blockTypes[0]);
|
content += elementToText(blockContent, blockTypes[0]);
|
||||||
@ -39,7 +39,9 @@ function elementToText(text: string, type: TextType) {
|
|||||||
case 'H6':
|
case 'H6':
|
||||||
return '#'.repeat(headlineLevel(type)) + ' ' + text + '\n';
|
return '#'.repeat(headlineLevel(type)) + ' ' + text + '\n';
|
||||||
case 'CODE':
|
case 'CODE':
|
||||||
return '```\n' + text + '\n```';
|
return '```\n' + text.trim() + '\n```\n';
|
||||||
|
case 'FOOTNOTES':
|
||||||
|
return text;
|
||||||
default:
|
default:
|
||||||
return text + '\n';
|
return text + '\n';
|
||||||
}
|
}
|
||||||
@ -49,7 +51,7 @@ function toWords(text: string): string[] {
|
|||||||
return text.split(' ').filter((string) => string.trim().length > 0);
|
return text.split(' ').filter((string) => string.trim().length > 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
export function linesToText(lineItems: Item[], disableInlineFormats: boolean = false) {
|
export function lineToText(lineItems: Item[], disableInlineFormats: boolean = false) {
|
||||||
let text = '';
|
let text = '';
|
||||||
let openFormat: TokenType;
|
let openFormat: TokenType;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user