PDF seitenweise in Graustufen umwandeln
Vier Seiten mit den Angaben Farbe, Graustufen, CMYK und Graustufen kommen als vier Graustufenseiten zurück, und die Zählung zeigt, dass nur 2 geändert werden mussten. So planen Sie eine Umwandlung oder finden gemischte Dateien. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- Seiten
- color, grayscale, CMYK, grayscale
- Seiten
- grayscale, grayscale, grayscale, grayscale
- Seitenanzahl
- 4
- Geänderte Seiten
- 2
Wandeln Sie ein PDF bereits auf der Ebene der Seitenmetadaten mit einem kleinen, deterministischen Vorgang in Graustufen um. Geben Sie den aktuellen Farbmodus jeder Seite in Dokumentreihenfolge an. Sie erhalten eine gleich lange Liste, in der jede Seite als grayscale markiert ist. Das Ergebnis nennt außerdem die Gesamtzahl der Seiten und die genaue Zahl der geänderten Modi. So unterscheiden Sie eine vollständige Umstellung von einem Dokument, das bereits vorbereitet war. Leere Dokumente werden mit einem verständlichen Eingabefehler abgewiesen.
Bilden Sie das PDF als geordnete Folge von Seitenmodi ab
Diese Fähigkeit verarbeitet die Farbmodusangaben pro Seite, die eine vorherige PDF-Prüfung oder Verarbeitungsstufe erzeugt hat. Geben Sie für jede Seite eine nicht leere Zeichenfolge an und behalten Sie dabei die Reihenfolge des Dokuments bei. Ein dreiseitiges PDF lässt sich beispielsweise mit color, grayscale und cmyk beschreiben.
Die Ausgabe enthält dieselben drei Positionen in derselben Reihenfolge, setzt jedoch alle auf grayscale. Da der Vorgang Seitendeskriptoren statt hochgeladener Binärdaten verarbeitet, ist er vorhersehbar, schnell und leicht zwischen PDF-Analyse und einer späteren Rendering- oder Exportstufe einzusetzen. Die Eingabe muss mindestens eine Seite enthalten.
Fehlt das Feld pages, ist die Liste leer, liegt keine Liste vor oder enthält ein Modus keinen Text, wird die Anfrage zurückgewiesen und nicht als gültiges Dokument mit null Seiten behandelt. Diese strenge Prüfung macht Fehler in der Verarbeitungskette sichtbar und verhindert, dass ein fehlendes Parser-Ergebnis wie eine erfolgreiche Umwandlung aussieht. Die Seitenfolge wird weder sortiert noch dedupliziert oder anderweitig verändert.
Verstehen Sie die Anzahl geänderter Seiten
Jeder gültige Eingabewert wird zum exakten kanonischen Wert grayscale. Dagegen werden color, rgb, cmyk, monochrome und jeder andere nicht leere Modus als Änderung gezählt. Diese Unterscheidung hilft, wenn eine Umwandlung schon in einer vorgelagerten Stufe stattgefunden hat oder gemischte Dokumente aus mehreren Quellen eintreffen.
Zwischenwerte kennzeichnen Dokumente mit gemischten Modi. Die Berechnung nutzt weder Netzwerk, Uhrzeit, Zufall, regionale Regeln noch veränderlichen Zustand.
Nutzen Sie das Ergebnis in Ihrer PDF-Verarbeitung
Das Ergebnis eignet sich für Abläufe, die PDF-Prüfung, Transformationsplanung und Dateidarstellung voneinander trennen. Zunächst ermittelt ein Parser oder Dokumentensystem den aktuellen Modus jeder Seite. Danach vereinheitlicht diese Fähigkeit den Plan und meldet, wie viele Seitendeskriptoren geändert werden müssen.
Die Fähigkeit öffnet, rastert und färbt kein PDF um und gibt auch keine binäre PDF-Datei zurück; sie transformiert die von Ihnen gelieferte Seitenbeschreibung. Diese klare Grenze ermöglicht die Nutzung im Browser und in deterministischen Automatisierungen. Für tatsächliche Pixeländerungen müssen Sie den Plan dennoch an einen geeigneten PDF-Renderer übergeben.
Die Anzahl kann eine Vorschau wie „12 von 30 Seiten werden geändert“ speisen, prüfen, ob ein angeblich konvertiertes Dokument noch Farbmodi enthält, oder unerwartete gemischte Quelldateien kennzeichnen.
Anwendungsfälle
Einen Umwandlungsplan vorbereiten
Vereinheitlichen Sie erkannte Modi, bevor Sie eine geordnete Graustufen-Zielliste an den PDF-Renderer übergeben.
Dokumente mit gemischten Modi prüfen
Zählen Sie, wie viele Seiten eines eingehenden PDFs noch nicht als grayscale markiert sind.
Eine vorgelagerte Umwandlung bestätigen
Prüfen Sie ohne Akzeptanz eines leeren Ergebnisses, ob ein verarbeitetes Dokument keine weiteren Änderungen benötigt.
Häufige Fragen
Erhalte ich eine umgewandelte PDF-Datei?
Nein. Die gelieferten Farbmodusdeskriptoren werden vereinheitlicht. Ein nachgelagerter PDF-Renderer muss den Zielmodus auf Pixel und Ressourcen anwenden.
Ändert sich die Reihenfolge der Seiten?
Nein. Das ausgegebene Array pages bewahrt exakt die Länge und Reihenfolge der Eingabe.
Zählt eine Seite mit GRAYSCALE oder zusätzlichen Leerzeichen als geändert?
Nein. Groß- und Kleinschreibung sowie Leerzeichen um den Wert werden ignoriert, solche Seiten gelten also bereits als Graustufen. Nur Angaben wie color, rgb, cmyk oder monochrome zählen als Änderung.
Was bedeutet ein Ergebnis mit null geänderten Seiten?
Dass die Liste gültig war und alle Seiten bereits in Graustufen vorlagen, es also nichts zu ändern gab. Es bedeutet nie ein leeres Dokument: Eine leere Liste wird mit einer klaren Meldung abgelehnt.
Wofür kann ich die Zahl der geänderten Seiten nutzen?
Für eine Vorschau wie „12 von 30 Seiten werden geändert“, um zu prüfen, ob ein bereits umgewandeltes Dokument keine Farbseiten mehr enthält, oder um Dateien mit gemischten Farb- und Graustufenseiten zu markieren.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/pdf/grayscale \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"pages":["color","grayscale","cmyk"]}'const res = await fetch("https://api.kit.forhosting.com/pdf/grayscale", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"pages": [
"color",
"grayscale",
"cmyk"
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/pdf/grayscale",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"pages": [
"color",
"grayscale",
"cmyk"
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/pdf/grayscale", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"pages":["color","grayscale","cmyk"]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"pages":["color","grayscale","cmyk"]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/pdf/grayscale", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"pages": [
"color",
"grayscale",
"cmyk"
]
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "pdf.grayscale",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Limits
max_mb | 25 |
max_pages | 200 |
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
Verstehen Sie die Anzahl geänderter Seiten
Das Feld pages_changed zählt nur Modi, die nach dem Entfernen umgebender Leerzeichen und bei einer Prüfung ohne Beachtung der Großschreibung noch nicht grayscale waren. Daher gelten grayscale, GRAYSCALE und derselbe Begriff mit Leerzeichen bereits als passend. Das Feld page_count entspricht stets der Zahl der gelieferten Einträge, und das zurückgegebene Array pages behält genau diese Länge. pages_changed gleich null bedeutet, dass die Anfrage gültig war, aber keine Seite geändert werden musste; es steht nicht für eine leere Eingabe. Entspricht der Wert page_count, wurden alle Seiten geändert. Gleiche Eingaben erzeugen deshalb immer dasselbe JSON.
Nutzen Sie das Ergebnis in Ihrer PDF-Verarbeitung
Anschließend kann eine PDF-Engine die geordnete Ergebnisliste als Zielmodus verwenden und pages_changed für Berichte, Validierungen oder Betriebskennzahlen protokollieren. Automatisierte Nutzung kostet $0.002 je Anfrage; ein zusätzlicher Seitenpreis ist für diese Fähigkeit nicht vorgesehen.
Technische Fragen
Was zählt pages_changed?
Gezählt wird jede gültige Seite, deren bereinigter Wert ohne Beachtung der Großschreibung noch nicht grayscale war.
Was geschieht, wenn alle Seiten bereits Graustufen verwenden?
Die Anfrage ist erfolgreich, alle ausgegebenen Seiten bleiben grayscale und pages_changed beträgt null.
Darf das Array pages leer sein?
Nein. Eine PDF-Beschreibung braucht mindestens einen Seitenmodus; eine leere oder fehlende Eingabe liefert invalid_input.
Was kostet eine automatisierte Anfrage?
Der veröffentlichte Preis beträgt $0.002 je Anfrage, ohne zusätzlichen Preis pro Seite.