Konvertieren PDF zu bearbeitbar PDF Verwendung OCR
PDF4me Konvertieren PDF zu bearbeitbar PDF Verwendung OCR ist ein REST Endpunkt, der gescannt wird PDFs Suchbar und bearbeitbar. POST A Base64 PDF Zu /api/v2/ConvertOcrPdfWählen Sie zwischen Entwurf und hoher Qualität, und die OCR Die Engine schreibt eine echte Textebene in das Dokument. Die Antwort liefert das fertige Dokument. PDF als Base64 JSONBereit zum Dekodieren und Speichern.
Nimmt ein bildbasiertes oder gescanntes Bild auf. PDF und gibt dasselbe Dokument mit erkanntem, auswählbarem Text zurück. qualityType wechselt zwischen einem schnellen Einzeldurchgang (Entwurf, 1 API Aufruf pro Datei) und seitenweise Erkennung (Hoch, 2 API Anrufe pro Seite), während ocrWhenNeeded überspringt pages die bereits durchsuchbar sind. Die Ausgabe erfolgt als Base64 docContent Feld in einem JSON Antwort oder über eine Location Umfrage URL auf 202.
Authentifizierung Ihres API Anfrage
Jeder PDF4me REST Der Anruf muss Ihre API Schlüssel im Authorization Header als Basic Auth. Ihren Schlüssel erhalten oder ändern Sie ihn im Entwickler-Dashboard.
Endpunkt
/api/v2/ConvertOcrPdfhttps://api.pdf4me.com/api/v2/ConvertOcrPdfWichtige Fakten, die Sie nicht verpassen sollten
ocrWhenNeeded Und outputFormat sind die STRINGS "WAHR" / "FALSCH", während isAsync Und mergeAllSheets Sind JSON Boolesche Werte. Dies entspricht den offiziellen Codebeispielen; eine Vermischung ist eine häufige Ursache für 400-Fehler.docName plus docContent, das fertige PDF als Base64 Zeichenkette.Dekodieren docContent Vor dem Speichern. Schreiben Sie den Antworttext nicht unverändert auf die Festplatte.ocrWhenNeeded: "WAHR" also bereits durchsuchbar pages werden übersprungen statt erneut verarbeitet.HTTP aufstellen
Verfahren: POST
URL: https://api.pdf4me.com/api/v2/ConvertOcrPdf
Inhaltstyp: application/json
Authorization: Basic <Ihre PDF4me API Schlüssel>
Schicken isAsync: WAHR im Körper. 200 Rückgaben JSON mit dem Base64 docContentDie 202 gibt ein zurück Location Überschrift mit einer Umfrage URL; GET Das URL mit dem gleichen Authorization Header bis es 200 mit dem JSON Ergebnis.
Wie erstellt man einen Scan? PDF durchsuchbar?
Ein gescannter PDF sind nur Bilder von pagesNichts ist auswählbar und nichts entspricht einer Textsuche. OCR (optische Zeichenerkennung, siehe Überblick darüber, wie OCR WerkeDas Programm liest jedes Seitenbild und schreibt die erkannten Wörter als echte Textebene in die Datei. Nach der Konvertierung verhält sich das Dokument wie ein digital erstelltes Dokument. PDF: Such-, Kopier- und Bildschirmlesefunktionen funktionieren alle, und es ist bereit für nachfolgende Schritte wie PDF/A Archivierung oder Suchen und Ersetzen.
| Draft vs High | Entwurf | Hoch |
|---|---|---|
| Am besten geeignet für | Normal PDFs die meistens eine Textebene haben | Gescannte oder bildbasierte Dokumente |
| Kosten | 1 API Anruf pro Datei | 2 API Anrufe pro Seite |
| Erkennung | Lichtdurchgang | Vollständiger Wert pro Seite OCR |
| Kombinieren Sie mit | ocrWhenNeeded: "true" zum Überspringen der Suchfunktion pages | language wenn der Text verstümmelt zurückkommt |
API Körperfelder
| Parameter | Erforderlich | Typ | Was es tut | Beispiel |
|---|---|---|---|---|
docContent | Required | string | Base64-encoded bytes of the source PDF. Strip any data:application/pdf;base64, prefix before posting. | JVBERi0xLjcK... |
docName | Required | string | Source filename including the .pdf extension. Used for the output docName. | scanned-contract.pdf |
qualityType | Required | string | Draft for normal PDFs (1 API call per file). High for scanned documents (2 API calls per page). | High |
ocrWhenNeeded | Required | string | The string "true" skips pages that already have a searchable text layer; "false" forces OCR on every page. | "true" |
outputFormat | Required | string | Output format flag, sent as the string "true" in the official samples. | "true" |
language | Conditional | string | Language of the source text (English, Spanish, French, German, and others). Set only when the recognized output is garbled; otherwise let the engine detect it. | English |
mergeAllSheets | Optional | boolean | JSON boolean carried by the official samples; relevant to sheet-based sources. | true |
isAsync | Optional | boolean | true enables the 202 + Location polling pattern, recommended for large scans. | true |
Beispielnutzlasten
Hoher Modus. Gescanntes Dokument mit OCR
{
"docContent": "JVBERi0xLjcKJcfsj6IKNSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZw...",
"docName": "scanned-contract.pdf",
"qualityType": "High",
"ocrWhenNeeded": "true",
"language": "English",
"outputFormat": "true",
"isAsync": true
}
Entwurfsmodus. Gemischtes Dokument, Suchfunktion überspringen pages
{
"docContent": "JVBERi0xLjcKJcfsj6IKNSAwIG9iago8PAovVHlwZSAvQ2F0YWxvZw...",
"docName": "mixed-report.pdf",
"qualityType": "Draft",
"ocrWhenNeeded": "true",
"outputFormat": "true",
"isAsync": true
}
Tipps zur Postboten-Abholung
curl-Beispiel
curl -X POST https://api.pdf4me.com/api/v2/ConvertOcrPdf \
-H "Content-Type: application/json" \
-H "Authorization: Basic YOUR_API_KEY" \
-d '{
"docContent": "'"$(base64 -w 0 scanned-contract.pdf)"'",
"docName": "scanned-contract.pdf",
"qualityType": "High",
"ocrWhenNeeded": "true",
"outputFormat": "true",
"isAsync": true
}' | python -c "import sys, json, base64; open('searchable.pdf','wb').write(base64.b64decode(json.load(sys.stdin)['docContent']))"
Was bedeutet das? API zurückkehren?
JSON, nicht die rohen Dateibytes. Dekodieren Sie die docContent Feld, um das fertige PDFDie
| Feld | Typ | Was es enthält |
|---|---|---|
| docName (HTTP 200) | String | The output PDF filename, derived from the docName you sent. |
| docContent (HTTP 200) | String (Base64) | The searchable, editable PDF encoded as Base64. Decode to bytes and save with a .pdf extension. |
| Location header (HTTP 202) | String (URL) | Poll URL for an async job that is still running. GET it with the same Authorization header; the official samples poll every 10 seconds, up to 20 retries. |
| Poll response (HTTP 200) | JSON | The same docName + docContent JSON, returned once processing completes. |
Codebeispiele
Funktionierende End-to-End-Implementierungen, jeweils mit einem gescannten Beispiel. PDF und die genaue Nutzlast von dieser Seite: