hilfdirselbst.ch
Facebook Twitter gamper-media

Publishing-Events

Wolfgang Reszel  M 
Beiträge: 4170
24. Mai 2004, 09:55
Beitrag #1 von 15
Bewertung:
(4538 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo,

mal ein paar Fragen:

Was passiert eigentlich bei PDFs, wo z.B. die Kurvenflachheit, oder wie man das auch immer auf deutsch nennt, auf 5 eingestellt ist, wenn man diese mit 1000% ausdruckt? Ergibt sich dann ein Wert von 50 oder bleibt es bei 5? Bei EPS-Dateien aus Illustrator 10 und drunter wäre das ja so der Fall. Ich frage mich nur was der Distiller aus den auflösungsabhängigen Flatness-Werten macht. Bleiben die auflösungsabhängig oder werden sie durch die Umrechnung auflösungsUNabhängig?

Gibt es eine Prolog-Datei, um den auflösungsabhängigen Wert außer Kraft zu setzen?

Wolfgang Top
 
X
Robert Zacherl p
Beiträge: 4153
24. Mai 2004, 10:29
Beitrag #2 von 15
Beitrag ID: #86876
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo Herr Reszel,

der sog. flatness Wert (ich würde ihn als Kurvennäherungs-Wert bezeichnen), ist immer geräteabhängig. Somit ist Ihre Frage im Grunde genommen auch schon beantwortet.

Der flatness Wert gibt an, wie genau eine im PostScript-Code bzw. in der PDF-Datei definierte Bezierkurve auf dem jeweiligen Ausgabegerät reproduziert wird. Aufgrund der Tatsache, dass wir über Geräte mit einer beschränkten physikalischen Auflösung sprechen und aufgrund der Tatsache, dass PostScript zu einer Zeit entstand, in der die CPUs noch recht schwach auf der Brust waren, müßte Adobe den Trick anwenden, Bezierkurven in kleine Geradenstückchen zu zerlegen, was vorallem den Prozeß der sog. Scanline-Konvertierung, also dem Auffinden der Außenkanten eines zu füllenden Objekts wesentlich vereinfachte und somit effizienter machte.

Der flatness Wert steuert nun, wie groß maximal die Abweichung so eines Geradenstückchens von der idealen Kurvenform sein darf. Der Wert wird in Gerätepixeln angegeben. Jetzt sollte auch klar, sein, dass der Wert geräteabhängig ist, da jedes PostScript-Ausgabegerät eine andere physikalische Auflösung hat und somit das Ausgabeergebnis doch stark variiert. 5 Pixel auf einem 300 dpi Laserdrucker ist um Welten deutlicher sichtbar als auf einem 2400 dpi Film- oder Plattenbelichter.

Wenn nun ein Layout vergrößert ausgegeben wird, dann bedeutet dies natürlich nicht, dass der flattness Wert mitskaliert wird. Er bleibt gleich. Somit werden einfach mehr Geradenstückchen bei der Ausgabe generiert (weil die wiederzugebene Strecke länger wird), die, jedes für sich, wieder maximal um die Anzahl von Gerätepixeln die im flatness Wert definiert ist, von der Idealform abweichen.

Die Creo Distiller Assistant Stratup-Datei für Acrobat Distiller setzt den flatness Wert standardmässig auf 1/5 des originalen, in der PostScript-Datei bzw. dem Ausgabegerät als Standard definierten Wert.

Mit freundlichen Grüßen

Robert Zacherl

************************
IMPRESSED GmbH
http://www.impressed.de
als Antwort auf: [#86872] Top
 
Wolfgang Reszel  M 
Beiträge: 4170
24. Mai 2004, 11:11
Beitrag #3 von 15
Beitrag ID: #86885
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo Herr Zacherl,

Ihr geschilderter Zusammenhang war mir schon klar, doch leider ist das bei Illustrator-Dateien (bis 10 einschließlich) anders, die wird nämlich die Kurvennäherung nicht bei der Ausgabe bestimmt, sondern Illustrator schreibt einen festen Wert bzw. eine Umrechnung in die PS-Datei, der sich nicht auf die Ausgabeauflösung des Geräts bezieht, sondern auf die in den Illustrator-Dokumentformat-Einstellungen festgelegte Ausgabeauflösung. Beim Standardwert 800 dpi ergibt sich damit bei einer auf 1000% vergrößerten Datei der Wert 80 dpi was dann z.B. auf einem Belichter mit 2540 dpi eine Kurvennäherung von 31,75 Gerätepixeln ergibt. Das Problem Abhängigkeit ist seit Illustrator CS gelöst und lies sich bei älteren Versionen mit dem mitgelieferten Riders-Plugin umgehen. Naja, gelöst ist wohl falsch ausgedrückt, endlich habe die Programmierer ein fragwürdiges Feature entfernt.

Die Startup-Datei werde ich mir mal runterladen.

Danke!

Wolfgang
als Antwort auf: [#86872] Top
 
Robert Zacherl p
Beiträge: 4153
24. Mai 2004, 12:37
Beitrag #4 von 15
Beitrag ID: #86908
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo Herr Reszel,

ich kann Ihren Überlegungen nicht ganz folgen.
Was hat der flatness Wert mit der Skalierung der EPS-Grafiken zu tun? Er bleibt davon unberührt, weil sich ja weder der Auflösungswert der beim Einrichten des Illustrator-Files festgelegt wurde (AI 8, 9 und 10), noch die Geräteauflösung dadurch ändern. Somit bleiben die beiden Parameter, die bei der Berechnung des flatness Werts herangezogen werden unangetastet und somit auch der resultierende Wert.

Es ist übrigens definitiv nicht richtig, dass im PostScript-Code von Adobe Illustrator die momentane Interpreter-Auflösung nicht bei der Berechnung des flatness-Werts Berücksichtigung findet. Hier der entsprechende PostScript-Code aus einer AI 10 EPS-Datei:

/path_rez
{
dup 0 ne{
AGMCORE_deviceDPI exch div
dup 1 lt{
pop 1
}if
setflat
}{
pop
}ifelse
}def

Die Variable AGMCORE_deviceDPI beinhaltet die aktuelle Interpreter-Auflösung und wird so zuvor definiert:

/AGMCORE_deviceDPI 72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt def

wird also über den Satz des Pythagoras aus der vertikalen und horizontalen Geräteauflösung berechnet.

Somit wird der Wert nach unten hin auf minimal 1.0 begrenzt. Nach oben hin ist das Verhältnis zwischen Interpreterauflösung und Dokument-Auflösungswert (in AI 8, 9 und 10 standardmässig 800 dpi) entscheidend. Wenn ich meinen Acrobat Distiller z.B. mit 2400 dpi betreibe, erhalte ich einen flatness Wert von 3.0 (2400 dpi / 800 dpi).

Mit freundlichen Grüßen

Robert Zacherl

************************
IMPRESSED GmbH
http://www.impressed.de
als Antwort auf: [#86872] Top
 
Wolfgang Reszel  M 
Beiträge: 4170
28. Mai 2004, 01:51
Beitrag #5 von 15
Beitrag ID: #87745
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo Herr Zacherl,

> Was hat der flatness Wert mit der Skalierung der EPS-Grafiken zu tun?

Eine Frage die man sich eigentlich nie stellen bräuchte, es sei den man nutzt Illustrator ohne Riders-Plugin.

> Es ist übrigens definitiv nicht richtig, dass im PostScript-Code von Adobe Illustrator die momentane Interpreter-Auflösung nicht bei der Berechnung des flatness-Werts Berücksichtigung findet.

Ok, da habe ich wohl falsch vermutet.

Fakt ist jedenfalls, dass ohne das Riders-Plugin eine EPS-Datei mit 800dpi bei einigen RIPs sozusagen zu einer 80dpi-Datei wird, wenn die EPS zu 1000% in ein Dokument eingesetzt wurde. Das können dir sicher einige bestätigen die mit Großformatdrucken zu tun haben. Mit Ghostscript kann man das übrigens auch nachvollziehen.

Die Creo-Datei funktioniert übrigens wunderbar, vielen Dank für den Tipp.

Wolfgang
als Antwort auf: [#86872] Top
 
boskop  M  p
Beiträge: 3453
28. Mai 2004, 07:22
Beitrag #6 von 15
Beitrag ID: #87754
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo Wolfgang, hallo Herr Zacherl
das ist tatsächlich so: wird die Ausgabeauflösung in Illu (bis 10) auf 800 belassen werden kurven (speziell sichtbar bei gepfadeten Fonts) aus gut sichtbaren Geraden gedruckt. Beim Grossformatplotting hatten wir oft damit zu kämpfen (jedes (platzierte) Illu-EPS nochmals öffnen und Wert hochsetzen, bei älteren Versionen hat es genügt, das File im Texteditor zu öffnen und den Wert zu erhöhen)
Gruss und Dank
Urs
http://www.designersfactory.com
als Antwort auf: [#86872] Top
 
Robert Zacherl p
Beiträge: 4153
28. Mai 2004, 10:02
Beitrag #7 von 15
Beitrag ID: #87778
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo Urs,

in welcher Auflösung werden die Großformat-Plotter angesteuert bzw. in welcher Auflösung werden die RIPs die diese ansteuern betrieben?

Ich schrieb ja bereits, dass in Illustrator 8, 9 und 10 auch die Interpreterauflösung neben der Dokumentenauflösung (standardmässig 800 dpi) bei der Ermittlung des flatness Werts herangezogen wird. Je größer die Interpreterauflösung in Bezug auf die Dokumentenauflösung ist, desto gröber wird der berechnete flatness-Wert, da dieser als Quotient aus Interpreterauflösung und Dokumentauflösung gebildet wird.
Werden die 800 dpi z.B. innerhalb Illustrator beibehalten und die Datei auf ein Belichter-RIP mit 2400 dpi geschickt, dann ergibt sich ein flatness Wert von 3.0.

Dieses Verhalten ist absolut unabhängig vom Skalierungsfaktor.
Egal ob ich von einem solchen Layout, in dem die selbe Illustrator 10 EPS-Datei einmal in 100% Originalgröße und einmal in 1000% Vergrößerung eingebaut ist, eine PDF-Datei erstelle und prüfe oder ob ich dieses Layout auf einem Belichter-RIP schicke, in keinem der Fälle kann ich einen Unterschied zwischen dem original großen und dem vergrößerten EPS feststellen. Der zum Einsatz kommende PostScript-Code läßt auch gar keinen anderen Schluß zu.

Es würde mich also schon sehr interessieren mit welchen Systemen Sie arbeiten und wie es bei Ihnen zu einem solchen Effekt kommen kann.

Mit freundlichen Grüßen

Robert Zacherl

************************
IMPRESSED GmbH
http://www.impressed.de
als Antwort auf: [#86872] Top
 
boskop  M  p
Beiträge: 3453
28. Mai 2004, 12:57
Beitrag #8 von 15
Beitrag ID: #87823
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo Robert
es ist schon einige Zeit her, dass ich mit diesen Geräten arbeitete.
Das war ein XeroxXpress54-Inkjetplotter(600dpi) mit Splash-Rip und ein Xerox Elektrostatplotter(400dpi) mit Rasterserve-Rip. Die Eps wurden in Posterworks4 auf Endgrösse platziert (die Software ermöglicht Tiling und Schnittzeichen etc.). Bei Skalierungsfaktoren >=10 tritt der Effekt auf und bei mir damals ausschliesslich an gepfadeten Fonts. Erhöhen der Ausgabeauflösung auf 3600dpi behob das Problem.
Gruss
Urs
http://www.designersfactory.com
als Antwort auf: [#86872] Top
 
Wolfgang Reszel  M 
Beiträge: 4170
28. Mai 2004, 16:01
Beitrag #9 von 15
Beitrag ID: #87866
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo,

hier mal ein Beleg:

- recht altes Logo, welches 800 dpi eingestellt hat
- in Indesign CS platziert und 2mal vergrößert dupliziert
- als EPS exportiert
- mit Distiller zu einer PDF gewandelt, es ist keine Startup-Datei aktiv

Hier die PDF:
http://www.rumborak.de/hds/flatness.pdf

Hier die Preflight-Einstellung, um die Flatness-Wert aufzulisten:
http://www.rumborak.de/hds/flatness.kfp

Pitstop 6.1 zeigt in der Info-Palette bei mir überall und immer 0.02 als Flatness-Wert an, da kann man sich also nicht 'drauf verlassen.

Vor dem Logo habe ich mal mit einem kleinen Kreis getestet und da bestätigten sich Herr Zacherls Aussagen. Die Datei war wohl nicht komplex genug. ;-) In der Theorie scheint Herr Zacherl recht zu haben, aber leider zählt die Praxis.

Wolfgang
als Antwort auf: [#86872] Top
 
Robert Zacherl p
Beiträge: 4153
28. Mai 2004, 16:10
Beitrag #10 von 15
Beitrag ID: #87869
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo Herr Reszel,

sehr beeindruckendes Beispiel ;-)

Würden Sie mir auch mal die als Ausgangsbasis dienende Illustrator EPS-Datei zukommen lassen?
Der Link zum Prüfprofil funktioniert übrigens nicht.
Dem PitStop Inspektor können Sie übrigens schon trauen nur nicht den Übersetzern, die die deutsche Version lokalisiert haben. Denn das was dem Anwender da als "flatness" verkauft wird ist in Wirklichkeit "smoothness" also die Glättungsfaktor von smooth shadings.

Mit freundlichen Grüßen

Robert Zacherl

************************
IMPRESSED GmbH
http://www.impressed.de
als Antwort auf: [#86872]
(Dieser Beitrag wurde von Robert Zacherl am 28. Mai 2004, 17:13 geändert)
Top
 
Uwe Laubender S
Beiträge: 3882
28. Mai 2004, 16:35
Beitrag #11 von 15
Beitrag ID: #87875
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo, Herr Zacherl!

"Dem PitStop Inspektor können Sie übrigens schon trauen nur den Übersetzern, die die deutsche Version lokalisiert haben. Denn das was dem Anwender da als "flatness" verkauft wird ist in Wirklichkeit "smoothness" also die Glättungsfaktor von smooth shadings."

Aus jenem Grunde rate ich davon ab in PitStop Professional mit die Sprache Deutsch einzustellen. Darüberhinaus ist im Enfocus-Forum ja auch Englisch als Sprache "bevorzugt". Tips und Tricks lassen sich so ohne Verwechslungsgefahr besser international austauschen.

Gruß,

Uwe Laubender

als Antwort auf: [#86872] Top
 
Wolfgang Reszel  M 
Beiträge: 4170
29. Mai 2004, 02:49
Beitrag #12 von 15
Beitrag ID: #87958
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo Herr Zacherl,

der Link geht jetzt, war aber eh nicht so wichtig, sie wissen ja mit den Programmen umzugehen. Das Logo kann ich nicht rausschicken, aber ich habe etwas experimentiert und womöglich das Problem lokalisiert. Das Logo ist schon älter und somit stammt es nicht aus Illustrator 10. Nun habe ich mal ganz simple Kreise als EPS10 und EPS8 gesichert und siehe da mit EPS im 8er-Format lässt sich das Problem reproduzieren. Da ich hier kein Acrobat habe, konnte ich das allerdings nur in Ghostscript prüfen.

Hier mal die Dateien:
http://www.rumborak.de/hds/flattest8.eps
http://www.rumborak.de/hds/flattest10.eps
http://www.rumborak.de/...est_distillemich.eps

Letztere Datei müssen sie durch den Distiller jagen (ohne Creo Startup).

Wolfgang
als Antwort auf: [#86872] Top
 
Robert Zacherl p
Beiträge: 4153
29. Mai 2004, 12:21
Beitrag #13 von 15
Beitrag ID: #87968
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo Herr Reszel,

da stellen Sie mir ja Aufgaben ;-)

Ein Blick in den Code der Illustrator 8 EPS-Datei offenbart recht schnell was hier schief läuft (meiner Meinung nach ein klassischer Denkfehler der/des Entwickler(s)):

Illustrator 8 ermittelte mit dieser Routine den flatness Wert:

/Ar
{
72 exch div
0 dtransform dup mul exch dup mul add sqrt
dup 1 lt
{
pop 1
} if
setflat
} def

Wie man sieht, arbeitet man mit der Funktion dtransform (delta transform) welche einen übergebenen x- und y-Vektor mit Hilfe der aktuellen PostScript Transformation Matrix (CTM) umrechnet. Diese Funktion ist damit selbstverständlich skalierungsabhängig, da die Skalierung der EPS-Datei ein Änderung der CTM bewirkt.
Somit ist der errechnete flatness Wert u.a. skalierungsabhängig.
Böser Fehler!

Ein Blick in den Code von Illustrator 10 (und höchstwahrscheinlich ist es bei Version 9 ebenso) zeigt dagegen diese Funktion zur Bestimmung des flatness Werts:

/path_rez
{
dup 0 ne{
72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt exch div
dup 1 lt{
pop 1
}if
setflat
}{
pop
}ifelse
}def

Der kleine aber feine Unterschied ist, dass nun nicht die CTM als Basis für die "Delta Transformation" Verwendung findet, sondern die PostScript Default Matrix, welche absolut skalierungsunabhängig ist.

Somit resultiert hier immer der selbe flatness Wert, der ausschließlich von der Interpreter-Auflösung abhängig ist.

Man kann noch eine andere interessante "Kleinigkeit" entdecken:
Wenn die im Illustrator 10 Dokument definierte Dokumentauflösung 0 dpi ist, dann wird die Berechnung des flatness Werts gänzlich übersprungen und somit kommt der aktuelle flatness Wert des PostScript Interpreters zum Einsatz. Dieser ist in den meisten Fällen standardmässig 1.0 (zu prüfen mit dem Einzeiler "currentflat ="). Allerdings läuft man Gefahr, dass der flatness Wert zuvor schon durch ein schlecht programmiertes EPS oder ähnliches verbogen wurde. Deshalb würde ich diesen Trick mit 0 dpi eher nicht anwenden.


Fazit:
Der flatness Wert ist wie bereits mehrfach geschrieben skalierungsunabhängig, außer man hat es mit fehlerhaft programmierten Layoutprogrammen wie z.B. Adobe Illustrator 8 zu tun.

Falsche, also zu grobe flatness-Werte lassen sich wunderbar mit Hilfe der kostenlosen Creo Distiller Assistant Startup-Datei im PDF-Workflow geradebiegen.

Mit freundlichen Grüßen

Robert Zacherl

************************
IMPRESSED GmbH
http://www.impressed.de
als Antwort auf: [#86872] Top
 
Wolfgang Reszel  M 
Beiträge: 4170
1. Jun 2004, 11:15
Beitrag #14 von 15
Beitrag ID: #88258
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo Herr Zacherl,

das Problem ist ja nicht nur Illustrator 8, sondern auch noch Illustrator 10 wenn man runterspeichert als 8 oder niedriger, was bei uns z.B. in der Vergangenheit häufiger vorkam. Und es werden ja leider nicht nur PDFs rausgegeben, da es immer noch Dienstleister gibt, die EPS wollen. Vielen Mediengestaltern ist das Problem nicht mal bekannt oder es wird konsequent ignoriert.

Wolfgang
als Antwort auf: [#86872] Top
 
Uwe Laubender S
Beiträge: 3882
1. Jun 2004, 15:29
Beitrag #15 von 15
Beitrag ID: #88305
Bewertung:
(4535 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Kurvengenauigkeit (Flattness)


Hallo, Wolfgang!

Es gibt auch z.B. einen Patch für Ausgabesysteme. Mir ist ein solcher für Agfa Apogee Series 2 bekannt. Die Entwickler sind sich dessen also bewußt, daß da ein "dicker Hund" sein Unwesen treibt.

Gruß,

Uwe Laubender
als Antwort auf: [#86872] Top
 
X