Farbigkeit eines PDF ermitteln

Diskussionen und Austausch über die von FPDF bereitgestellten Methoden, Problemen bei der Anwendung etc.
ibh
Benutzer
Beiträge: 7
Registriert: Mo 10. Sep 2018, 15:20

Farbigkeit eines PDF ermitteln

Beitragvon ibh » Mo 10. Sep 2018, 15:25

Wir benutzen das fpdf-System Version 1.7 in unserer PHP-Plattform plotit.de z.Zt. lediglich um die Größe einer Kundenzeichnung zu ermitteln.
Wie können wir feststellen, ob die Kundenzeichnung farbig oder schwarz/weiß ist?
Schon mal Danke für die Hilfe.

Benutzeravatar
Wirus!
Beiträge: 1523
Registriert: Do 22. Jun 2006, 18:23

Re: Farbigkeit eines PDF ermitteln

Beitragvon Wirus! » Di 11. Sep 2018, 07:42

Als Denkansatz (nicht getestet): PDF in PNG/JPG o.ä. umwandeln, z.B. mit Image Magick und dann dieFarben zählen mit imagecolorstotal().

ibh
Benutzer
Beiträge: 7
Registriert: Mo 10. Sep 2018, 15:20

Re: Farbigkeit eines PDF ermitteln

Beitragvon ibh » Di 11. Sep 2018, 11:41

Erst mal Danke natürlich.
Erscheint mir jedoch aus Performancegründen nicht gut.
Die Kunden meines Kunden (Architekten) laden täglich viele große PDFs hoch, die automatisiert geprüft werden müssen.

Benutzeravatar
Wirus!
Beiträge: 1523
Registriert: Do 22. Jun 2006, 18:23

Re: Farbigkeit eines PDF ermitteln

Beitragvon Wirus! » Di 11. Sep 2018, 18:08

Erscheint mir jedoch aus Performancegründen nicht gut.


Bevor Du Dir über die Performance Gedanken machst, sollte die Frage stehen, ob es überhaupt einen anderen Lösungsansatz gibt.
Da PDF eine Art Containerformat ist, das alle möglichen Arten von Vektor- und Bitmap-Formaten enthalten kann und das keinen zentralen Header hat, der über die Inhalte Auskunft gibt, kommt IMHO als Alternative nur das zerpflücken des PDF und die Einzelanalyse in Frage.
Das hat im Gegensatz zur Bildumwandlung noch niemand gemacht (soweit ich weiß).

Oder man fragt denjenigen, der die Datei hochlädt, was er denn gerne hätte. Farbdruck oder SW-Druck ist ja auch preislich ein Unterschied.

ibh
Benutzer
Beiträge: 7
Registriert: Mo 10. Sep 2018, 15:20

Re: Farbigkeit eines PDF ermitteln

Beitragvon ibh » Mi 12. Sep 2018, 13:25

Noch mal danke.
Bisher ermitteln wir mittels fpdf die Zeichnungsgröße und die pdf-Version um automatisiert den Plot-Preis zu errechnen und lassen den Kunden zwischen farbigem und s/w-Plot entscheiden.
Leider vergessen das manche Kunden (unserer Kunden), belassen die Einstellung auf dem Defaultwert (s/w) und unsere Kunden (der Plotservice) stellt dann beim Prüfen der Kundenzeichnungen fest, dass sie doch farbig sind und muss telefonisch nachfragen . . .

Benutzeravatar
Wirus!
Beiträge: 1523
Registriert: Do 22. Jun 2006, 18:23

Re: Farbigkeit eines PDF ermitteln

Beitragvon Wirus! » Mi 12. Sep 2018, 20:39

.... belassen die Einstellung auf dem Defaultwert (s/w) ....


Da stellt sich mir sofort die Frage, warum es einen Defaultwert gibt.

... lassen den Kunden zwischen farbigem und s/w-Plot entscheiden.


Wenn der Kunde keine Vorgabe hat, aber eine der beiden Möglichkeiten wählen muß, damit es weitergeht, wird die Rückfrage bereits im Formular erledigt.

Allerdings umgeht das die Frage nach der Farbigkeit nur und löst sie nicht.

ibh
Benutzer
Beiträge: 7
Registriert: Mo 10. Sep 2018, 15:20

Re: Farbigkeit eines PDF ermitteln

Beitragvon ibh » Di 18. Sep 2018, 09:40

. . . sonst niemand eine Idee?
Gibt es nicht so etwas wie früher, eine Belegungsliste für das Karussell der Plotstifte o.ä.?
(Ich weiß, das ist sehr lange her.)
Ggf. eingebettete Bitmaps interessieren dabei nicht.

Benutzeravatar
Wirus!
Beiträge: 1523
Registriert: Do 22. Jun 2006, 18:23

Re: Farbigkeit eines PDF ermitteln

Beitragvon Wirus! » Di 18. Sep 2018, 10:58

Gibt es nicht so etwas wie früher, eine Belegungsliste für das Karussell der Plotstifte o.ä.?


Du gehst offensichtlich davon aus, daß PDF ein Bildformat ist. Dem ist aber nicht so. PDF ist ein Container, der verschiedenste Bildformate enthalten kann. Das sind sowohl Bitmap- als auch Vektorformate. Zusätzlich können mit der PDF-Syntax auch noch direkt grafische Elemente eingefügt werden.

Die Feststellung, ob ein Dokument Farben enthält muss für alle [relevanten] Elemente einzeln durchgeführt werden und ist daher alles andere als trivial.

ibh
Benutzer
Beiträge: 7
Registriert: Mo 10. Sep 2018, 15:20

Re: Farbigkeit eines PDF ermitteln

Beitragvon ibh » Di 18. Sep 2018, 17:03

Weil jetzt die "Berufsehre" eines gestandenen, sehr erfahrenen, seit über 4 Jahrzehnten sich mit "den Dingen" beschäftigenden Programmierers berührt wird, doch noch Folgendes:

Wie ich bereits schrieb interessieren ggf. Bitmapanteile in den PDFs nicht, sondern nur die Vektorgraphikanteile wie sie von den bei den Kunden dahinterstehenden CAD-Systemen generiert werden.
Früher (ok, vor 30 Jahren) wurden solche Vektorgraphiken mit "echten" Plottern mit Schrittmotoren und Farbstiften, die vom Plotter aus einem Stiftvorrat entnommen wurden, zu Papier gebracht.
Eine PDF aus dieser Zeit enthielt also eine Information, über die vom Plotter bereitzuhaltenden Farbstifte - für die Vektorgraphik(!).

Schlussendlich: wenn das von uns seinerzeit gekaufte (und umfangreich umgearbeitete) FPDF (und seine weiteren Systemdateien) keine Möglichkeit der Extraktion der Farbinformation der Vektoranteile(!) enthält, werde ich das unseren Kunden (den Plotservices für Architekten) mitteilen und die erklärenden Hilfstexte in unserer Plattform (plotit.de) entsprechend erweitern/verdeutlichen . . .

Nochmals vielen Dank für die Kommentierung und nichts für ungut . . .

Benutzeravatar
Wirus!
Beiträge: 1523
Registriert: Do 22. Jun 2006, 18:23

Re: Farbigkeit eines PDF ermitteln

Beitragvon Wirus! » Mi 19. Sep 2018, 07:46

Jetzt wird es komisch.

Früher (ok, vor 30 Jahren) ...Eine PDF aus dieser Zeit


PDF gibt es seit 1993, ist also gerade mal 25 Jahre alt. Eine 30 Jahre alte PDF ist daher unmöglich. Vermutlich ist etwas anderes gemeint

Schlussendlich: wenn das von uns seinerzeit gekaufte (und umfangreich umgearbeitete) FPDF


FPDF kann man nicht kaufen, FPDF ist Freeware im besten Sinne. Vermutlich ist daher ein anderes Programm gemeint (PDFlib?)

(und seine weiteren Systemdateien)


FPDF ist ein reines PHP-Skript und hat dadurch bedingt keine Systemdateien.

Zum Thema:

Eine PDF aus dieser Zeit enthielt also eine Information, über die vom Plotter bereitzuhaltenden Farbstifte - für die Vektorgraphik(!).


Das ist auch heute noch so. Das Problem ist - wie mehrfach geschrieben - an die Information der eingebetteten Vektorgrafik zu kommen. FPDF kann das nicht.

Nachtrag: Da FPDF ein System zum Erzeugen von PDFs ist, sind Analysen eines vorhandenen PDF damit erst mal nicht möglich. Auch das im Eingangspost erwähnte Feststellen der Größe ist damit nicht machbar. Folglich wurde schon dafür ein anderes Programm oder ein Addon für FPDF verwendet.
In Frage kommt da FPDI, das auch in einer käuflichen, erweiterten Version verfügbar ist. Wenn es sich um FPDI handelt, kannst Du bei Jan (liest IMHO hier mit) von setasign.de mal nachfragen, vielleicht sieht er eine Möglichkeit.


Zurück zu „Programmierung“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 13 Gäste