Könnte Kreise ziehen
Christoph Zurnieden
- html
Hallo Zusammen,
um runde Ecken zu erzeugen, ist ja entweder eine CSS3 Unterstützung nötig oder Bildchen. CSS3 bietet außer Mozilla (und der auch nur sehr mariginal) eigentlich keiner. Bilder erhöhen die Ladezeiten und es zereißt einem auch das Design, wenn einer der Klienten die Graphikdarstellung ausgeschaltet hat.
Unangenehme Löcher gibt's dann ;-)
Da dachte ich mir: das geht doch auch mit reinem HTML.
Mit ein Paar DiVs und farbigem Hintergrund.
Das Problem ist das Klötzchenhafte. Antialiasing über Elementgrenzen hinaus dürfte wohl erstmal nicht zu erwarten sein, oder? ;-)
Ich habe das mal zur Anschauung mit Javascript generiert.(Aufgrund Math.round wird das sogar noch extremer mit den Klötzchen.). Bei den für runde Ecken üblichen Radien ist das übrigens dann auch von Hand zu machen, dann sieht es nicht ganz so schlimm aus, aber immer noch zuviel.
(Vorsicht! Resourcenfresser! Braucht bei mir mit Mozilla 0.9.8 satte 13 Sekunden. Aber gut, es ist ein uralter P200 ;-)
---snip---
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html lang="de" xml:lang="de">
<head>
<title>Kreis</title>
<meta http-equiv="content-type" lang="de" content="text/html; charset=ISO-8859-1" />
<script type="application/x-javascript">
<!--
//<![CDATA[
function setPoint(_x, _y) {
var x = _x + "px";
var y = _y + "px";
var Main = document.getElementById("main");
var newDot = document.createElement("div");
var Att = document.createAttribute("style");
Att.nodeValue = "position:absolute;\ top:50px;\ left:50px;\ width:2px;\ height:2px;\ background-color:green;";
newDot.setAttributeNode(Att);
Main.appendChild(newDot);
newDot.style.top = x;
newDot.style.left = y;
}
function makeOval (_radius, _top, _left, _hor, _ver, _degree, _clock) {
var Radius = _radius;
var Top = _top;
var Left = _left;
var Hor = _hor;
var Ver = _ver;
var Degree = (_degree * (Math.PI * 2));
var Clock = (_clock * (Math.PI * 2));
var Grad = 0.01;
var x = 0;
var y = 0;
while(Grad <= Degree){
x = Math.round(Top + ( (Radius + Ver) * Math.cos(Grad+Clock)));
y = Math.round(Left + ( (Radius + Hor) * Math.sin(Grad+Clock)));
setPoint(x, y);
Grad += 0.01;
}
}
function makeRoundEdges(){
makeOval(50, 150,150, 0,0 ,0.25, 0.5);
makeOval(50, 150,350, 0,0 ,0.25, 0.25);
makeOval(50, 350,350, 0,0 ,0.25, 0);
makeOval(50, 350,150, 0,0 ,0.25, 0.75)
}
//]]>
//-->
</script>
</head>
<body onload="javascript:makeRoundEdges()">
<div id="main">
</div>
<div style="position:absolute;top:150px;left:150px;width:200px;height:200px;background-color:#55CC55;" >
<div style="margin:40px">
Echt! <br />
Keine Bilder! <br />
Reines XHTML strict! <br />
Aber zugegeben: mit Javascript generiert ;-)
</div>
</div>
<div style="position:absolute;top:151px;left:100px;width:2px;height:200px;background-color:green;" >
</div>
<div style="position:absolute;top:150px;left:400px;width:2px;height:200px;background-color:green;" >
</div>
<div style="position:absolute;top:100px;left:150px;width:200px;height:2px;background-color:green;" >
</div>
<div style="position:absolute;top:400px;left:150px;width:200px;height:2px;background-color:green;" >
</div>
</body>
</html>
--snap---
Hat jemand eine Idee, wie man das sauber verlaufen lassen kann?
Auf beiden Seiten um ein Pixel versetzt eine hellere Farbe anlegen ist keine ganz so schlechte Idee, erhöht nur leider die Datenmenge um das dreifache.
Geht das evt innerhalb der DIVs?
Vorschläge?
so short
Christoph Zurnieden
hi,
du solltest dir dein schönes Beispiel mal mitm IE ankucken oder mit Opera :-(
Grüße aus Berlin
Christoph S.
Hallo,
du solltest dir dein schönes Beispiel mal mitm IE ankucken oder mit Opera :-(
Nix, ich hab frei! ;-)
Was macht denn Ärger? Javascript doch wahrscheinlich nur, oder?
Rest ist valide und nach aktuellem Standard.
Wärest Du evt und netterweise einmal so freundlich eine Screenshot anzubieten?
so short
Christoph Zurnieden
PS:
Wenn das nicht portabel ist, dann geht's eben nicht. Macht auch nix ;-)
CZ
hi,
du solltest dir dein schönes Beispiel mal mitm IE ankucken oder mit Opera :-(
Wärest Du evt und netterweise einmal so freundlich eine Screenshot anzubieten?
gerne. Ist unter http://home.arcor.de/schnauss/bilder/screen01.png zu finden - das ist der IE 6, und in Opera 6.x siehts genauso aus
Grüße aus Berlin
Christoph S.
Hallo,
du solltest dir dein schönes Beispiel mal mitm IE ankucken oder mit Opera :-(
Wärest Du evt und netterweise einmal so freundlich eine Screenshot anzubieten?
gerne. Ist unter http://home.arcor.de/schnauss/bilder/screen01.png zu finden - das ist der IE 6, und in Opera 6.x siehts genauso aus
Oh, ging aber flott!
Dankeschön!
Das das mit dem etwas extensiv genutztem DHTML *g* beim Opera nicht funktioniert habe ich eigentlich auch erwartet. (Kann auch ein Problem mit XHTML sein und der dadurch nötigen CDATA Angabe im Script. Normalerweise trenne ich immer strikt (CSS, JS, Markup), deshalb habe ich diesbezüglich keine Erfahrung)
Beim IE6 aber auch nicht?
Na gut, wenn die meinen.
Aber warum wird die Höhenangabe bei den beiden DIVs oben und unten nicht akzeptiert?
_Das_ wundert mich jetzt wirklich!
Habe ich mich irgendwo vertippelt?
Nein.
Doch, weiter oben bei "margin" fehlt das abschließende Semikolon. Aber sollte es das etwa gewesen sein?
so short
Christoph Zurnieden
hi,
Oh, ging aber flott!
Dankeschön!
was erwartest du denn von mir, wenn ich schonmal im Forum umherkrauche ;-)
Das das mit dem etwas extensiv genutztem DHTML *g* beim Opera nicht funktioniert habe ich eigentlich auch erwartet. (Kann auch ein Problem mit XHTML sein und der dadurch nötigen CDATA Angabe im Script
wahrscheinlich ist es das. Übrigens machts der Konqueror3 auch nicht korrekt (aber ich hab leider vergessen, nen screenshot zu machen und schalte heute nicht mehr um auf FreeBSD).
Aber warum wird die Höhenangabe bei den beiden DIVs oben und unten nicht akzeptiert?
_Das_ wundert mich jetzt wirklich!
Mich ebenfalls, vor allem, weil Opera, IE und Konqueror dassselbe gezeigt haben
Doch, weiter oben bei "margin" fehlt das abschließende Semikolon. Aber sollte es das etwa gewesen sein?
Das hatte ich ergänzt, hielt es für einen verzeihlichen Tippfehler im Forumsposting (Tippfehler in postings gibts bei mir ja auch gelegentlich)
Aber der Hinweis, "so etwas" künftig doch besser mit SVG zu machen, sollte beherzigt werden. Mit SVG gibts in mozilla (übrigens: warum nimmst du noch 0.9.8 ?), Netscape 6 und 7, IE6, Opera jeweils identische Anzeigen, für den Konqueror hab ich noch kein plugin
Grüße aus Berlin
Christoph S.
Hallo,
Verdammt nochmal, jetzt habe ich statt auf "Nachricht Senden" auf Reload gedrückt. Ist wohl noch zu früh für mich ;-)
Aber warum wird die Höhenangabe bei den beiden DIVs oben und unten nicht akzeptiert?
_Das_ wundert mich jetzt wirklich!
Mich ebenfalls, vor allem, weil Opera, IE und Konqueror dassselbe gezeigt haben
Ohne JS funktionierts. Zumindest im Konqueror 2.2.2.
(Mit wollte ich dem Konqueror sowieso nicht zumuten, der JS Interpreter da ist ziemlich lahm ;-)
Doch, weiter oben bei "margin" fehlt das abschließende Semikolon. Aber sollte es das etwa gewesen sein?
Das hatte ich ergänzt, hielt es für einen verzeihlichen Tippfehler im Forumsposting (Tippfehler in postings gibts bei mir ja auch gelegentlich)
Ja, ich habe noch keinen CSS Validator auf der Platte.
Aber ist trotzdem Schlampigkeit meinerseits, darf nicht passieren sowas! ;-)
Aber der Hinweis, "so etwas" künftig doch besser mit SVG zu machen, sollte beherzigt werden. Mit SVG gibts in mozilla (übrigens: warum nimmst du noch 0.9.8 ?)
Kann die Binaries nicht benutzen (GlibC zu alt, Pfade in den Binaries fest einkompiliert = zu viel Arbeit ,-) und die Quellen gibt es nur aus dem CVS, das ist mit einem Dialup Zugang etwas, ... äh ... lästig ;-)
»», Netscape 6 und 7, IE6, Opera jeweils identische Anzeigen, für den Konqueror hab ich noch kein plugin
Der Konqueror kann normalerweise die Plugins vom Netscape benutzen. Das Dingen von Adobe soll funktionieren.
so short
Christoph Zurnieden
Hallo,
Aber warum wird die Höhenangabe bei den beiden DIVs oben und unten nicht akzeptiert?
_Das_ wundert mich jetzt wirklich!
Mich ebenfalls, vor allem, weil Opera, IE und Konqueror dassselbe gezeigt haben
Ohne JS funktionierts. Zumindest im Konqueror 2.2.2.
(Mit wollte ich dem Konqueror sowieso nicht zumuten, der JS Interpreter da ist ziemlich lahm ;-)
Habe mich jetzt doch getraut:
Funktioniert tadellos!
Dauert allerdings fast doppelt so lange, wie beim Mozilla ;-)
Vielleicht hat es Dich auch irritiert, das das Rendering in Schritten erfolgt, die Kreise werden erst nach Erzeugung gerendert, alles andere schon vorher.
Aber die beiden waagerechten "Balken" sind auch nur 2px hoch, wie beabsichtigt.
Sieht alles _exakt_ so aus, wie im Mozilla, könnte man übereinanderlegen.
Wird immer merkwürdiger! ;-)
so short
Christoph Zurnieden
Hallo Christoph,
Hat jemand eine Idee, wie man das sauber verlaufen lassen kann?
Auf beiden Seiten um ein Pixel versetzt eine hellere Farbe anlegen ist keine ganz so schlechte Idee, erhöht nur leider die Datenmenge um das dreifache.
Wenn du schon so avandgardistisch arbeitest, dann steig doch lieber gleich auf SVG um und binde das SVG als <object> in HTML ein. Damit sparst du dir den ganzen umstaendlichen JS-Kram. Ob SVG auch schon so was wie Anti-Aliasing fuer weiche, pixelfreie Raender anbietet, weiss ich allerdings nicht.
viele Gruesse
Stefan Muenz
Hallo,
Hat jemand eine Idee, wie man das sauber verlaufen lassen kann?
Auf beiden Seiten um ein Pixel versetzt eine hellere Farbe anlegen ist keine ganz so schlechte Idee, erhöht nur leider die Datenmenge um das dreifache.
Wenn du schon so avandgardistisch arbeitest,
Wieso dieses?
Bin ich etwa der Erste, der auf so eine Schnapsidee kam? ;-)
dann steig doch lieber gleich auf SVG um und binde das SVG als <object> in HTML ein.
SVG habe ich in den Mozilla 0.9.8 nicht hineinkompiliert bekommen. (Hatte wohl die rechte Lib, nur an "falscher" Stelle. Hätte ich in den Autoconf Dateien rumfuhrwerken müssen und dabei bekomme ich nicht nur immer graue Haare sondern vor allem werden es dabei auch gleich immer weniger ;-)
Aber SVG ist da wohl doch der richtige Ansatz.
Damit sparst du dir den ganzen umstaendlichen JS-Kram. Ob SVG auch schon so was wie Anti-Aliasing fuer weiche, pixelfreie Raender anbietet, weiss ich allerdings nicht.
Meine ich sogar gesehen zu haben. Ob in dieser oder in der nächsten Version weiß ich aber nicht mehr.
Der JS Kram war übrigens nur zur Verdeutlichung. geht auch händisch, aber da hätte ich die ganzen Punkte auch händisch ausrechnen müssen, weil ich meinen 'bc' mal wieder kaputtgespielt habe ;-)
Bevor ich es wieder vergesse (Und bei Cheffe wäre es ja besonders peinlich ;-):
Besten Dank!
so short
Christoph Zurnieden
Hallo,
Aber SVG ist da wohl doch der richtige Ansatz.
Die "runden Ecken" sehen schon ganz passabel aus:
<svg>
<g transform="rotate(30)">
<rect x="100" y="50" width="100" height="50" rx="10" style="fill: #FFC; stroke: #00C; stroke-width: 1px"/>
<text x="115" y="80" style="fill: #F00; font-size: 14px; font-family: Arial, Helvetica, sans-serif">Hallo Welt!</text>
</g>
</svg>
Wenn ry fehlt, wird dessen Wert von rx uebernommen.
MfG, Thomas
Hallo,
Aber SVG ist da wohl doch der richtige Ansatz.
Die "runden Ecken" sehen schon ganz passabel aus:
<svg>
<g transform="rotate(30)">
<rect x="100" y="50" width="100" height="50" rx="10" style="fill: #FFC; stroke: #00C; stroke-width: 1px"/>
<text x="115" y="80" style="fill: #F00; font-size: 14px; font-family: Arial, Helvetica, sans-serif">Hallo Welt!</text>
</g>
</svg>
Wenn ry fehlt, wird dessen Wert von rx uebernommen.
Ja, so simpel hatte ich mir das auch vorgestellt ;-)
Aber welcher Renderer war es denn?
Und eingebunden als <object>, da eine Namespaceangabe fehlt, oder?
so short
Christoph Zurnieden
Hallo,
Ja, so simpel hatte ich mir das auch vorgestellt ;-)
Aber welcher Renderer war es denn?
Adobe SVG Viewer 3.0.
Und eingebunden als <object>, da eine Namespaceangabe fehlt, oder?
Das habe ich einfach nur schnell als test.svg in der IE-Adresszeile probiert. Meine sonstigen Beispiele sind natuerlich komplett ;-).
<object data="mein.svg" type="image/svg+xml">
Alternativinhalt
</object>
Kleiner Hinweis noch fuer Win-User mit Adobe Viewer: Der "SVG Browser" (Preview 0.99) von http://www.pcxsoftware.de ist ein praktisches Tool zum Anzeigen von SVG (ohne Browser), speziell des Knotenbaumes und der Elemente bzw. Attribute/Attributwerte sowie zur Validierung. Letztere wird erst moeglich, wenn man noch die svg10.dtd besorgt und in das Programmverzeichnis legt.
MfG, Thomas
Hallo,
Ja, so simpel hatte ich mir das auch vorgestellt ;-)
Aber welcher Renderer war es denn?
Adobe SVG Viewer 3.0.
Adobe?
Mmh...
Erfahrungen mit den freien Implementationen?
Und eingebunden als <object>, da eine Namespaceangabe fehlt, oder?
Das habe ich einfach nur schnell als test.svg in der IE-Adresszeile probiert. Meine sonstigen Beispiele sind natuerlich komplett ;-).
Geh ich mal von aus ;-)
<object data="mein.svg" type="image/svg+xml">
Alternativinhalt
</object>
Aha, ganz normal also.
Allerdings natürlich auch mit allen damit verbundenen Nachteilen.
Wie sieht es denn mit direktem Einbinden aus? Macht das der IE mit?
Muß ja zugeben, sehnsüchtig auf ordentliche Verbreitung von SVG zu warten ;-)
Nehme aber leider an, daß es wohl das gleiche Ende, wie Mathml nehmen wird.
Dachte eigentlich daß Konstrukte wie dieses:
<img src="formula101.png" alt="$\ip{A}{B} = \sum_{i} a_{i} b_{i}$" />
irgendwann einmal der Vergangenheit angehören würden.
Kleiner Hinweis noch fuer Win-User mit Adobe Viewer: Der "SVG Browser" (Preview 0.99) von http://www.pcxsoftware.de ist ein praktisches Tool zum Anzeigen von SVG (ohne Browser), speziell des Knotenbaumes und der Elemente bzw. Attribute/Attributwerte sowie zur Validierung. Letztere wird erst moeglich, wenn man noch die svg10.dtd besorgt und in das Programmverzeichnis legt.
Na, da weiß ich doch, warum ich auf Linux entwickel >;->
BTW: aktuell ist IMHO svg11.dtd, oder?
so short
Christoph Zurnieden
Hallo,
Adobe?
Mmh...
Das sind immerhin die Protagonisten von SVG und durch den SVG Viewer sorgen sie durchaus fuer die Verbreitung des Formates. Dass man sich funktionierende native Browser-Implementierungen wuenscht, ist wohl klar.
Erfahrungen mit den freien Implementationen?
Nicht ueber Versuche hinausgekommen, wobei in meinem Arbeitsumfeld (der Technischen Dokumentation) Client-seitig eher die <object>-Schiene gefahren wird.
Meine "freien Implementationen" sehen zurzeit so aus, dass ich Server-seitig z. B. in Datenbanken abgelegte Daten (MySQL) nach XML konvertiere und dann mittels XSLT nach SVG transformiere und letztlich den Browser via object beliefere. Wobei das eher Intranet-Anwendungen sind und dabei natuerlich das Browserproblem nicht auftritt.
BTW: Es handelt sich um die Generierung von Massenspektren in der chemischen Analytik, fuer mich auch ein Stueck back to the roots ;-).
Wie sieht es denn mit direktem Einbinden aus? Macht das der IE mit?
Kann man machen, wenn man den Namespace und den SVG Viewer referenziert und dann z. B. <svg:circle .../> verwendet, wobei mir bei dieser Konstellation die direkte Nutzung der object-Einbindung lieber ist.
BTW: aktuell ist IMHO svg11.dtd, oder?
1.1 ist erst Candidate Recommendation. Ich waere froh, wenn sich erstmal 1.0 richtig etablieren koennte ...
Mfg, Thomas
Hallo,
Adobe?
Mmh...
Das sind immerhin die Protagonisten von SVG und durch den SVG Viewer sorgen sie durchaus fuer die Verbreitung des Formates. Dass man sich funktionierende native Browser-Implementierungen wuenscht, ist wohl klar.
Das meinte ich weniger.
Spitzte auf eine zwar formaljuristisch korrekte aber moralisch verwerfliche Aktion.
Bis dahin hatte Adobe auf mich immer einen halbwegs korrekten Eindruck gemacht (Offenlegung der Standards von Postscript und PDF)
Erfahrungen mit den freien Implementationen?
Nicht ueber Versuche hinausgekommen, wobei in meinem Arbeitsumfeld (der Technischen Dokumentation) Client-seitig eher die <object>-Schiene gefahren wird.
Schade eigentlich.
Naja, "selbst ist der Mann" ;-)
Wäre vielleicht mal einen Artikel wert?
Ach nein, "Haltbarkeit" wäre wohl zu kurz ;-)
Meine "freien Implementationen" sehen zurzeit so aus, dass ich Server-seitig z. B. in Datenbanken abgelegte Daten (MySQL) nach XML konvertiere und dann mittels XSLT nach SVG transformiere und letztlich den Browser via object beliefere. Wobei das eher Intranet-Anwendungen sind und dabei natuerlich das Browserproblem nicht auftritt.
Für die automatisierte Produktion ist XML natürlich fast ideal. ("Fast" weil ich noch nie eine gänzlich ideale Lösung gefunden habe, aber die gibt es wahrscheinlich sowieso nicht ;-)
BTW: Es handelt sich um die Generierung von Massenspektren in der chemischen Analytik, fuer mich auch ein Stueck back to the roots ;-).
Für reine Peaks mit Beschriftung(?) hätte es doch HTML+CSS getan, oder? ;-)
Wie sieht es denn mit direktem Einbinden aus? Macht das der IE mit?
Kann man machen, wenn man den Namespace und den SVG Viewer referenziert und dann z. B. <svg:circle .../> verwendet,
Ja, genau das meinte ich mit "direktem Einbinden".
Aber warum muß ich den Viewer referenzieren? Kann doch gar nicht wissen, was und wo der ist, wenn überhaupt einer da ist?
wobei mir bei dieser Konstellation die direkte Nutzung der object-Einbindung lieber ist.
Hat einen gewissen Overhead bei der Einbindung der Datei.
Ist aber im Intranet natürlich egal.
BTW: aktuell ist IMHO svg11.dtd, oder?
1.1 ist erst Candidate Recommendation. Ich waere froh, wenn sich erstmal 1.0 richtig etablieren koennte ...
Au, das kommt davon, wenn man sich nicht richtig informiert ;-)
Es ist aber auch sowieso sehr unwahrscheinlich, das es irgendwann vollständig unterstützt wird.
Oder kennst Du einen Browser, der auch nur HTML 4.01 zu 100%(!) implementiert? ;-\
so short
Christoph Zurnieden
Hallo,
Für reine Peaks mit Beschriftung(?) hätte es doch HTML+CSS getan, oder? ;-)
Vor 10 Jahren habe ich dafuer noch WMF genommen ;-). Aber im Ernst, ich fand das ist eine ganz sinnvolle Anwendung, zumal ich in der Ausbildung immer nach anschaulichen und auch noch nachvollziehbaren Projekten suche, die verschiedene Techniken zusammen fuehren.
Falls es Dich interessiert, dann schau mal unter http://ktd.et.fh-merseburg.de/~tm/mspec/ nach, wobei zurzeit nur neuere Browser mit SVG PlugIn unterstuetzt werden. Es handelt sich wie gesagt um ein Intranet-Projekt (extern suchbar sind zwei Summenformeln).
Es ist aber auch sowieso sehr unwahrscheinlich, das es irgendwann vollständig unterstützt wird.
Oder kennst Du einen Browser, der auch nur HTML 4.01 zu 100%(!) implementiert? ;-\
Nach einem vor wenigen Stunden erst gehaltenen Vortrag zu SVG moechte ich nicht gerade jetzt frustriert in die SVG-Zukunft blicken ;-).
http://www.et.fh-merseburg.de/person/meinike/PDF/TdF2002_Meinike.pdf [oder .zip]
[Falls das jemand wieder als Werbung kritisieren moechte, dann bitte als private Mail an mich zum Ausdruck bringen. Ich sehe das eigentlich eher als Beitrag zur Verbereitung von Technologien.]
MfG, Thomas
Hallo,
Für reine Peaks mit Beschriftung(?) hätte es doch HTML+CSS getan, oder? ;-)
Vor 10 Jahren habe ich dafuer noch WMF genommen ;-). Aber im Ernst, ich fand das ist eine ganz sinnvolle Anwendung, zumal ich in der Ausbildung immer nach anschaulichen und auch noch nachvollziehbaren Projekten suche, die verschiedene Techniken zusammen fuehren.
Ausbildung? Gut, ist ein Argument, laß ich ausnahmsweise (! ;-) gelten.
Falls es Dich interessiert, dann schau mal unter http://ktd.et.fh-merseburg.de/~tm/mspec/ nach, wobei zurzeit nur neuere Browser mit SVG PlugIn unterstuetzt werden. Es handelt sich wie gesagt um ein Intranet-Projekt (extern suchbar sind zwei Summenformeln).
Gut, dann habe ich ja zumindest eine Adrese zum Testen, ob ich es endlich geschafft habe, dem Mozilla SVG einzuprü^H^H^Hkompilieren.
Es ist aber auch sowieso sehr unwahrscheinlich, das es irgendwann vollständig unterstützt wird.
Oder kennst Du einen Browser, der auch nur HTML 4.01 zu 100%(!) implementiert? ;-\
Nach einem vor wenigen Stunden erst gehaltenen Vortrag zu SVG moechte ich nicht gerade jetzt frustriert in die SVG-Zukunft blicken ;-).
Gut, in der stillen Hoffnung, daß Adobe da schon Werbung für betreiben wird ;-)
http://www.et.fh-merseburg.de/person/meinike/PDF/TdF2002_Meinike.pdf [oder .zip]
Nein, Zip funktioniert nicht, findet er nicht.
BTW:
--20:34:59-- http://www.et.fh-merseburg.de/person/meinike/PDF/TdF2002_Meinike.zip
=> TdF2002\_Meinike.zip' Connecting to www.et.fh-merseburg.de:80... connected! HTTP request sent, awaiting response... 302 Found Location: http://webserver.et.fh-merseburg.de/person/meinike/404.htm [following] \--20:34:59-- http://webserver.et.fh-merseburg.de/person/meinike/404.htm =>
404.htm'
Connecting to webserver.et.fh-merseburg.de:80... connected!
HTTP request sent, awaiting response... 200 OK
Length: 382 [text/html]
Was soll das denn, ha?
RFC 2616:
10.3.3 302 Found
The requested resource resides temporarily under a different URI.
Since the redirection might be altered on occasion, the client SHOULD
continue to use the Request-URI for future requests. This response
is only cacheable if indicated by a Cache-Control or Expires header
field.
The temporary URI SHOULD be given by the Location field in the
response. Unless the request method was HEAD, the entity of the
response SHOULD contain a short hypertext note with a hyperlink to
the new URI(s).
Sowie:
10.4.5 404 Not Found
The server has not found anything matching the Request-URI. No
indication is given of whether the condition is temporary or
permanent. The 410 (Gone) status code SHOULD be used if the server
knows, through some internally configurable mechanism, that an old
resource is permanently unavailable and has no forwarding address.
This status code is commonly used when the server does not wish to
reveal exactly why the request has been refused, or when no other
response is applicable.
Was läuft denn da?
bash-2.02$ httpdtype www.et.fh-merseburg.de
Apache-AdvancedExtranetServer/1.3.19 (Linux-Mandrake/3mdk) mod_ssl/2.8.2 OpenSSL/0.9.6 PHP/4.0.4pl1
Soso.
Ich befüchte, da mußt irgendjemand nochmal ran. ;-)
[Falls das jemand wieder als Werbung kritisieren moechte, dann bitte als private Mail an mich zum Ausdruck bringen. Ich sehe das eigentlich eher als Beitrag zur Verbereitung von Technologien.]
"Kopieren nicht erlaubt" sagt xpdf. Aha, da habe ich wohl vergessen den Patch auch in die neue Version einzuspielen ;-)
Da wollte ich gerade ein paar Kommentare dazu abgeben, aber wenn ich noch nicht einmal etwas rauskopieren darf zwecks Kommentierung (Wäre ein Verstoß gegen §202a StGB), geht mir auch der Rest am A... vorbei. Bin zu faul zum abtippeln.
Ich persönlich finde diese Verhalten bei einer öffentlichen Institution doch recht fragwürdig.
(Peinlich jetzt, wenn das nur ein Bug in XPDF war. Oh oh! ;-)
so short
Christoph Zurnieden
Hallo Christoph,
Ausbildung? Gut, ist ein Argument, laß ich ausnahmsweise (! ;-) gelten.
Ist doch eine IMHO sinnvolle Kombination: Studierende der Technischen Dokumentation lernen etwas im Bereich Single Source Publishing und im analytischen Praktikum koennen Studierende anderer Bereiche das Projekt ebenfalls nutzen.
Nein, Zip funktioniert nicht, findet er nicht.
Sorry, ist TdF2000.zip
HTTP request sent, awaiting response... 200 OK
Length: 382 [text/html]
Was soll das denn, ha?
Kann ich nur an die Admins weiterleiten.
Da wollte ich gerade ein paar Kommentare dazu abgeben, aber wenn ich noch nicht einmal etwas rauskopieren darf zwecks Kommentierung (Wäre ein Verstoß gegen §202a StGB), geht mir auch der Rest am A... vorbei. Bin zu faul zum abtippeln.
Ich persönlich finde diese Verhalten bei einer öffentlichen Institution doch recht fragwürdig.
Warum? [Oder "So what?" wie Philip Boa gestern abend mal wieder live toente ;-)].
Es handelt sich um zusaetzliches und voellig freiwillig zur Verfuegung gestelltes Material, welches druckbar ist und primaer als Handout dienen soll.
Ansonsten bin ich nicht der Typ, der die Ergebnisse seiner Arbeit anderen vorenthaelt.
Wenn Du magst, maile mich privat an und ich schicke Dir ein Package mit diversen SVG-Projekten der letzten Monate im Quellcode.
MfG, Thomas
Sorry, ist TdF2000.zip
Nee awer ooch, TdF2002.zip
MfG, Thomas
Hallo,
Ausbildung? Gut, ist ein Argument, laß ich ausnahmsweise (! ;-) gelten.
Ist doch eine IMHO sinnvolle Kombination: Studierende der Technischen Dokumentation lernen etwas im Bereich Single Source Publishing und im analytischen Praktikum koennen Studierende anderer Bereiche das Projekt ebenfalls nutzen.
Bei mir brauchst Du _dafür_ keine Werbung zu machen. Kann sowas nur unterstützen.
Nein, Zip funktioniert nicht, findet er nicht.
Sorry, ist TdF2000.zip
Nein, auch nicht ;-)
HTTP request sent, awaiting response... 200 OK
Length: 382 [text/html]
Was soll das denn, ha?
Kann ich nur an die Admins weiterleiten.
Ruhig mit meiner Adresse, stehe dazu.
Vor allem würde es mich interessieren, wenn es bestimmte Gründe gibt, die ein derartiges Verhalten erfordern würden. Ist ja schließlich möglich, auch wenn ich mir nichts vorstellen kann.
Da wollte ich gerade ein paar Kommentare dazu abgeben, aber wenn ich noch nicht einmal etwas rauskopieren darf zwecks Kommentierung (Wäre ein Verstoß gegen §202a StGB), geht mir auch der Rest am A... vorbei. Bin zu faul zum abtippeln.
Ich persönlich finde diese Verhalten bei einer öffentlichen Institution doch recht fragwürdig.
Warum? [Oder "So what?" wie Philip Boa gestern abend mal wieder live toente ;-)].
(Ach, der lebt auch noch? ;-)
Ich möchte mich hier für meine etwas harsche Reaktion entschuldigen, aber ich habe in der Richtung schon soviel erlebt, daß mein Blutdruck in Pawlowscher Manier automatisch in die Höhe schnellt, wenn ich auf Ähnliches treffe.
Es handelt sich um zusaetzliches und voellig freiwillig zur Verfuegung gestelltes Material, welches druckbar ist und primaer als Handout dienen soll.
Auch das würde mich normalerweise wieder aufregen: Lehrer ist Lehrer, ob an der Grund- oder Hochschule, es gibt einen allgemeinen Bildungsauftrag. Einen Unterschied zwischen "freiwillig" und "gezwungen" (welches ja schließlich das Gegenteil von "freiwillig" ist) zu machen halte ich für verfehlt.
Ansonsten bin ich nicht der Typ, der die Ergebnisse seiner Arbeit anderen vorenthaelt.
In Kenntnis der sozialen Struktur der Hochschullehrerschaft muß ich das wohl hoch anrechnen.
Oder besser gesagt: ungläubig staunen ;-)
Na gut, der war hart, aber Du weißt wohl, auf was ich anspiele und das das nicht persönlich gemeint ist, oder?
Wenn das nicht so derart kontraproduktiv wäre, könnte man über die professoralen Hackordnungen sogar noch schmunzeln. ;-)
Wenn Du magst, maile mich privat an und ich schicke Dir ein Package mit diversen SVG-Projekten der letzten Monate im Quellcode.
Das ist nett, muß aber nicht sein. C&P macht keinen Spaß ;-)
Nein, im Ernst: die Schwierigkeiten bei XML sind umgekehrt proportional zum Hype darüber. Konnte das innerhalb von ca 10 Std (allerdings mit SGML Vorkenntnissen ;-) erlernen. Rest steht in Selfhtml und den DTDs/Schemas ;-)
In einem Posting irgendwo oben beschwerte sich übrigens jemand bitterlich darüber, daß er doch HTML nicht in 2 Tagen lernen könne. 2 Tage = 16 Std. Das sollte doch reichen, um Grundkenntnisse zu erwerben, oder?
Rest steht dann ... na wo wohl? ;-)
so short
Christoph Zurnieden
Hallo,
Es handelt sich um zusaetzliches und voellig freiwillig zur Verfuegung gestelltes Material, welches druckbar ist und primaer als Handout dienen soll.
Auch das würde mich normalerweise wieder aufregen: Lehrer ist Lehrer, ob an der Grund- oder Hochschule, es gibt einen allgemeinen Bildungsauftrag. Einen Unterschied zwischen "freiwillig" und "gezwungen" (welches ja schließlich das Gegenteil von "freiwillig" ist) zu machen halte ich für verfehlt.
Ich mache da auch keinen Unterschied. Wo ist das eigentliche Problem? Das Material ist verfuegbar, kann angesehen und gedruckt werden. Nehmen wir an, es sollen Teile daraus anderweitig veroeffentlicht werden. Herauslesen der Inhalte via Cut&Paste ist daher nicht erwuenscht. Was sagt diese Entscheidung nun ueber Nichterfuellung eines Bildungsauftrages aus?
IMHO nichts und alles Weitere ggf. per privater Mail.
MfG, Thomas
Hallo Christoph,
mal abgeshen von den Aufbau und Ladezeiten und egal ob die Rundungen mit GIFs,SVG oder PHP erzeugt werden, Anti-Aliasing ist möglich, wenn man mehrere Layer übereinanderlegt und um ein Pixel verschiebt. Ist die Rundung z.B. schwarz, erhalten die darunterliegenden Layer die Farben dunkelgrau bis hellgrau, somit erhälst Du eine künstliche Unschärfe, die die Pixel-Ecken verschleiert. SVG ist ja eigentlich eine XML-Geschichte, daher ist das gleiche Prinzip hier auch möglich.
Meine Experiemente mit Clipping waren auch ganz amüsant, jedoch war hier ein Flimmern bei langsamen Rechnern zu sehen und auch nicht kompatible mit allen Browsern.
Im Übrigen sieht man die Pixel nicht so stark, wenn die Farbunterschiede (=Kontrast) nicht so hoch sind.
Aber:
Angesichts der weiten Verbreitung von Modems und nicht immer den aktuellsten Browsern sollte doch ein JPG-Bild eingesetzt werden.
Einfach den Web-Hintergrund fotografieren, die Rundung einfügen, und diese als kleinen Ausschnitt pixelgenau in die website einbauen.
Ich habe auch mal Zeichen übergross dargestellt, z.B. die Zahl 0 in Verdana:
<DIV style="position:absolute;top:20px;left:20px;font-size:200px;color:black;z-index:1;">0</DIV>
<DIV style="position:absolute;top:23px;left:24px;font-size:190px;color:blue;z-index:2;">0</DIV>
Auch mit Sonderzeichen lassen sich da tolle Effekte erzielen, aber auf Schriftdefinition in den Metatags achten und nicht eine Windows-Definition verwenden, sondern eine ISO oder UTF definieren, damit auch Linux und Mac-User (Amiga kommt ja auch wieder *g*) etwas davon haben.
Nur mal so als Idee ;-)
Sicher ein interessantes Experiment, wünsch Dir gutes Gelingen.
Gut wäre vielleicht die Möglichkeiten von PHP zu nutzen, Grafiken zu erzeugen.
idS liebe Grüsse vom Bodensee
Michael
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 //EN">
<HTML>
<HEAD>
<META NAME="author" CONTENT="MichelM">
<META NAME="generator" CONTENT="Ulli Meybohms HTML EDITOR">
<TITLE></TITLE>
</HEAD>
<BODY TEXT="#000000" BGCOLOR="#333333" >
<DIV style="position:absolute;visibility:inherit;top:70px;left:40px;font-size:200px;width:200px;background-color:blue;z-index:4;"> </DIV>
<DIV style="position:absolute;visibility:inherit;top:20px;left:20px;font-size:240px;color:black;z-index:1;">oo</DIV>
<DIV style="position:absolute;visibility:inherit;top:23px;left:24px;font-size:230px;color:blue;z-index:2;">oo</DIV>
</BODY>
Hallo, hier noch ein anderes beispiel, um das Anti-Aliasing ein wenig zu verdeutlichen. Kein GIF,kein SVG, nur CSS1.0 und Text.
Gute Nacht - ich geh jetzt schlafen :-( )
hi,
Hallo, hier noch ein anderes beispiel, um das Anti-Aliasing ein wenig zu verdeutlichen. Kein GIF,kein SVG, nur CSS1.0 und Text.
genial. Das haben jetzt bei mir mozilla, Opera, Netscape 6 und 7 und IE6 alle genauso gemacht
Gute Nacht - ich geh jetzt schlafen :-( )
na dann: angenehme Träume
Grüße aus Berlin
Christoph S.
Hallo Michael,
Hallo, hier noch ein anderes beispiel, um das Anti-Aliasing ein wenig zu verdeutlichen. Kein GIF,kein SVG, nur CSS1.0 und Text.
Sieht effektvoll aus - aber behaupte keinem Grafiker gegenueber, das sei Anti-Aliasing ;-)
viele Gruesse
Stefan Muenz
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 //EN">
<HTML>
<HEAD>
<META NAME="author" CONTENT="MichelM">
<META NAME="generator" CONTENT="Ulli Meybohms HTML EDITOR">
<TITLE></TITLE>
</HEAD>
<BODY TEXT="#000000" BGCOLOR="#333333" >
<DIV style="position:absolute;visibility:inherit;top:70px;left:40px;
font-size:200px;width:200px;background-color:blue;z-index:4;"> </DIV>
<DIV style="position:absolute;visibility:inherit;top:20px;left:20px;
font-size:240px;color:black;z-index:1;">oo</DIV>
<DIV style="position:absolute;visibility:inherit;top:23px;left:24px;
font-size:230px;color:blue;z-index:2;">oo</DIV>
</BODY>
Hallo, hier noch ein anderes beispiel, um das Anti-Aliasing ein wenig zu verdeutlichen. Kein GIF,kein SVG, nur CSS1.0 und Text.
Ja, das geht natürlich.
Ist dann aber Sache des X-Servers (Bei Win ist es IMHO automatisch eingeschaltet) Schriftenantialiasing zu betreiben. Hat wenig mit dem Browser oder gar offiziellen Standards zu tun und ist somit auch nicht portabel.
Aber trotzdem: schöne Idee!
Die Einfachen sind doch immer wieder die Besten!
Hast Dir hiermit das Siegel "kreativer Umgang mit Technik" redlich verdient ;-)))
so short
Christoph Zurnieden
Hi Christoph,
Auf beiden Seiten um ein Pixel versetzt eine hellere Farbe anlegen
ist keine ganz so schlechte Idee, erhöht nur leider die Datenmenge
um das dreifache.
dreimal fast dasselbe läßt sich aber phantastisch komprimieren.
(Und selbst ohne mod_gzip über Content Negotiation recht einfach
bedingt komprimiert ausliefern.)
Viele Grüße
Michael
(der gerade dabei ist, einen Komprimierer _ohne_ Apache-Modul "aus-
lieferungsfertig" zu bekommen - auf meinen Seiten läuft er schon)
Hallo,
Auf beiden Seiten um ein Pixel versetzt eine hellere Farbe anlegen
ist keine ganz so schlechte Idee, erhöht nur leider die Datenmenge
um das dreifache.
dreimal fast dasselbe läßt sich aber phantastisch komprimieren.
Ja, ist bekannt. Muß aber trotzdem geschrieben werden. Kostet also entweder Zeit ($SCRIPT) oder Arbeit (händisch) ;-)
(der gerade dabei ist, einen Komprimierer _ohne_ Apache-Modul "aus-
lieferungsfertig" zu bekommen - auf meinen Seiten läuft er schon)
Dabei fällt mir dann siedendheiß ein, daß ich ja immer noch mod_gzip kommentieren sollte.
Auha, wenn man ich nicht regelmäßig in den Hintern tritt ... ;-)
Hat sich das mittlerweile erledigt (wg: Apache 2 scheint (!) stabil)?
Das Wichtigste bald auch noch vergessen ;-)
Downloadlink?
so short
Christoph Zurnieden
Hallo Christoph,
dreimal fast dasselbe läßt sich aber phantastisch komprimieren.
Ja, ist bekannt. Muß aber trotzdem geschrieben werden.
Kostet also entweder Zeit ($SCRIPT) oder Arbeit (händisch) ;-)
Strg-C, Strg-V?
(der gerade dabei ist, einen Komprimierer _ohne_ Apache-Modul "aus-
lieferungsfertig" zu bekommen - auf meinen Seiten läuft er schon)
Das Wichtigste bald auch noch vergessen ;-)
Downloadlink?
Noch nicht fertig. :-(
Die Doku zu schreiben dauert ein Vielfaches gegenüber den paar Zeilen
Perl ... wahrscheinlich wird Dich ja überhaupt eher die nach C portierte
Version von Christian Kruse interessieren?
Dabei fällt mir dann siedendheiß ein, daß ich ja immer noch mod_gzip
kommentieren sollte.
Auha, wenn man ich nicht regelmäßig in den Hintern tritt ... ;-)
mod_gzip habe ich auch erst mal liegen gelassen ... da müßte ich auch
mal wieder weiter schreiben an meinen Seiten.
Das eigene Programm war irgendwie doch spannender ... vor allem, weil
mein eigener Provider es nicht gebacken kriegt, mod_gzip zu verwenden
(hat angeblich Angst vor der CPU-Belastung). Aber das ist jetzt kein
Argument mehr, hurra ...
Hat sich das mittlerweile erledigt (wg: Apache 2 scheint (!) stabil)?
Tja, wenn es von irgendwo ein offizielles mod_gzip 2.0.x geben würde.
Es gibt aber nur 2.0.26a, was natürlich Schutt und Asche ist.
Irgendwelche Leute haben parallel versucht, die API-Änderungen zwischen
Apache 2.0.26 und 2.0.35+ in mod_gzip einzubauen ... aber, hm ... ich
habe es jedenfalls noch nicht laufen sehen.
Viele Grüße
Michael
(kurz vor Urlaubsbeginn)
Hallo,
'tschuldige die etwas späte (frühe? ;-) Antwort, aber mich hat der plötzliche Lüftertod ereilt.
Warum "friert" das System eigentlich ein, wenn's dem Prozessor zu "warm" wird? ;-)))
dreimal fast dasselbe läßt sich aber phantastisch komprimieren.
Ja, ist bekannt. Muß aber trotzdem geschrieben werden.
Kostet also entweder Zeit ($SCRIPT) oder Arbeit (händisch) ;-)
Strg-C, Strg-V?
Man muß schon etwas haben, für C&P ;-)
(der gerade dabei ist, einen Komprimierer _ohne_ Apache-Modul "aus-
lieferungsfertig" zu bekommen - auf meinen Seiten läuft er schon)
Das Wichtigste bald auch noch vergessen ;-)
Downloadlink?
Noch nicht fertig. :-(
Ja und?
"Releas early and often!"
Die Doku zu schreiben dauert ein Vielfaches gegenüber den paar Zeilen
Perl ... wahrscheinlich wird Dich ja überhaupt eher die nach C portierte
Version von Christian Kruse interessieren?
Ja, doch.
Die verstehe ich dann wenigstens ;-)
Dabei fällt mir dann siedendheiß ein, daß ich ja immer noch mod_gzip
kommentieren sollte.
Auha, wenn man ich nicht regelmäßig in den Hintern tritt ... ;-)
mod_gzip habe ich auch erst mal liegen gelassen ... da müßte ich auch
mal wieder weiter schreiben an meinen Seiten.
Hab' ich also mal wieder Glück gehabt, was? ;-)
Das eigene Programm war irgendwie doch spannender ... vor allem, weil
mein eigener Provider es nicht gebacken kriegt, mod_gzip zu verwenden
(hat angeblich Angst vor der CPU-Belastung). Aber das ist jetzt kein
Argument mehr, hurra ...
Dafür ist wahrscheinlich die Prozessorlast jetzt höher, als mit mod_gzip, was?
Ach ja: Leute gibt es manchmal ... *sigh*
Scheint sich irgendwie noch nicht so ganz herumgesprochen zu haben, das die Transferkosten ein mehrfaches der Prozessorkosten ausmachen. Bei den heutigen Prozessorleitungen und Preisen zumindest.
Hat sich das mittlerweile erledigt (wg: Apache 2 scheint (!) stabil)?
Tja, wenn es von irgendwo ein offizielles mod_gzip 2.0.x geben würde.
Es gibt aber nur 2.0.26a, was natürlich Schutt und Asche ist.
Irgendwelche Leute haben parallel versucht, die API-Änderungen zwischen
Apache 2.0.26 und 2.0.35+ in mod_gzip einzubauen ... aber, hm ... ich
habe es jedenfalls noch nicht laufen sehen.
Sehr schade eigentlich.
Viele Grüße
Michael
(kurz vor Urlaubsbeginn)
Wie kurz? ;-)
so short
Christoph Zurnieden
Hi Christoph,
(der gerade dabei ist, einen Komprimierer _ohne_
Apache-Modul "auslieferungsfertig" zu bekommen -
auf meinen Seiten läuft er schon)
Das Wichtigste bald auch noch vergessen ;-)
Downloadlink?
Noch nicht fertig. :-(
Ja und?
"Releas early and often!"
Für _Dich_ würde der Quelltext reichen - aber für die Zielgruppe,
die mit Ach und Krach ein CGI-Skript installiert bekommt, muß es
_etwas_ mehr sein.
Perl ... wahrscheinlich wird Dich ja überhaupt eher die nach
C portierte Version von Christian Kruse interessieren?
Ja, doch.
Die verstehe ich dann wenigstens ;-)
Meine Perl-Version hat allerdings die übliche Kommentarzeilen-Quote
von 60+%.
(Ich habe mir extra ein Perl-Skript geschrieben, um das Perl-Skript
für den produktiven Einsatz von 25 auf 3.5 kb zu reduzieren ... ;-)
Das eigene Programm war irgendwie doch spannender ... vor allem,
weil mein eigener Provider es nicht gebacken kriegt, mod_gzip zu
verwenden (hat angeblich Angst vor der CPU-Belastung). Aber das
ist jetzt kein Argument mehr, hurra ...
Dafür ist wahrscheinlich die Prozessorlast jetzt höher, als mit
mod_gzip, was?
Wenn ich richtig liege, nein.
Das ist ja überhaupt der Trick dabei ... :-)
Scheint sich irgendwie noch nicht so ganz herumgesprochen zu haben,
das die Transferkosten ein mehrfaches der Prozessorkosten ausmachen.
Bei den heutigen Prozessorleitungen und Preisen zumindest.
Naja - das kommt immer auf den Einsatzfall an.
Der Self-Server bekommt beispielsweise den Traffic gesponsort, während
die CPU-Leitung gekauft wurde. So gesehen ist hier die CPU der Engpaß.
Andererseits würde ich es als unfair gegenüber Primekom empfinden, mit
dem Traffic verschwenderisch umzugehen.
Insofern bin ich mit
http://webalizer.teamone.de/selfhtml/
sehr zufrieden (im Mai schon mehr Seiten und Dateien als im Februar,
aber nur noch 45% der Kilobytes - monatliche Einsparung von >30 GB!).
Hat sich das mittlerweile erledigt (wg: Apache 2 scheint (!)
stabil)?
Tja, wenn es ein offizielles mod_gzip 2.0.x geben würde.
... ich habe es jedenfalls noch nicht laufen sehen.
Sehr schade eigentlich.
Im Juli werde ich das wohl mal versuchen.
(kurz vor Urlaubsbeginn)
Wie kurz? ;-)
Läuft schon. :-)
Viele Grüße
Michael
(geistig zwischen Japan/Südkorea und dem Schreiben von gzip-Dokus)
Hallo,
(der gerade dabei ist, einen Komprimierer _ohne_
Apache-Modul "auslieferungsfertig" zu bekommen -
auf meinen Seiten läuft er schon)
Das Wichtigste bald auch noch vergessen ;-)
Downloadlink?
Noch nicht fertig. :-(
Ja und?
"Releas early and often!"
Für _Dich_ würde der Quelltext reichen - aber für die Zielgruppe,
die mit Ach und Krach ein CGI-Skript installiert bekommt, muß es
_etwas_ mehr sein.
Na, _das_ ist aber mal eine _billige_ Entschuldigung!
Habe ich ja noch nie gehört!
Darf ich dann um einen Link bitten, Herr Kollege? ;-)
Perl ... wahrscheinlich wird Dich ja überhaupt eher die nach
C portierte Version von Christian Kruse interessieren?
Ja, doch.
Die verstehe ich dann wenigstens ;-)
Meine Perl-Version hat allerdings die übliche Kommentarzeilen-Quote
von 60+%.
C-Code kann ich meist recht flüssig lesen, wenn er ordentlich (im strukturellem Sinne) geschrieben wurde.
Bei Perl muß ich mich durchfummeln.
Ist zwar auch nicht gerade das Problem, aber bei meinem sehr ausgeprägtem Faulheitsgrad ... ;-)
(Ich habe mir extra ein Perl-Skript geschrieben, um das Perl-Skript
für den produktiven Einsatz von 25 auf 3.5 kb zu reduzieren ... ;-)
Naja, mal wieder mit Kanonen auf Spatzen, ha? ;-)
cat prog.pl | sed -e 's/#[^!]*$//g' > prog.pl~ && mv prog.pl~ prog.pl && rm prog.pl~
Würde ich zumindest machen.
Aber ich weiß, kann natürlich auch, insbesondere bei Perl, arg in's Auge gehen ;-)
Das eigene Programm war irgendwie doch spannender ... vor allem,
weil mein eigener Provider es nicht gebacken kriegt, mod_gzip zu
verwenden (hat angeblich Angst vor der CPU-Belastung). Aber das
ist jetzt kein Argument mehr, hurra ...
Dafür ist wahrscheinlich die Prozessorlast jetzt höher, als mit
mod_gzip, was?
Wenn ich richtig liege, nein.
Das ist ja überhaupt der Trick dabei ... :-)
Glaube ich Dir nicht!
Beweise auf den Tisch!
;->
Scheint sich irgendwie noch nicht so ganz herumgesprochen zu haben,
das die Transferkosten ein mehrfaches der Prozessorkosten ausmachen.
Bei den heutigen Prozessorleitungen und Preisen zumindest.
Naja - das kommt immer auf den Einsatzfall an.
Der Self-Server bekommt beispielsweise den Traffic gesponsort, während
die CPU-Leitung gekauft wurde. So gesehen ist hier die CPU der Engpaß.
Gut, da ist rein kaufmännisch natürlich ein Unterschied. Moralisch ethisch und auch politisch aber eigentlich keiner.
Wäre vielleicht mal ein Vorschlag für einen Verwendungszweck für einen Teil der Restgelder der Spender?
(Mein lieber Mann, habe ich wieder eine Grammatik drauf ;-)
Andererseits würde ich es als unfair gegenüber Primekom empfinden, mit
dem Traffic verschwenderisch umzugehen.
Insofern bin ich mit
http://webalizer.teamone.de/selfhtml/
sehr zufrieden (im Mai schon mehr Seiten und Dateien als im Februar,
aber nur noch 45% der Kilobytes - monatliche Einsparung von >30 GB!).
Ja, das läppert sich!
Man kann heute davon ausgehen, das so ein Prozessor ein Jahr hält, das wäre dann eine Einsparung von >360 GB. Was kostet das GB heutzutage? Um den Preis unter einen Euro/GB zu treiben muß man IMHO schon sehr große Margen einkaufen, was? ;-)
Dann auch noch ca 10 User auf der Maschine, jeder ungefähr den gleichen Durchsatz und gleichermaßen komprimierbar macht eine Einsparung von >3,6TB/Jahr!
Das wären selbst bei 0,1EUR/GB noch 360EUR im Jahr.
Zugegeben, das würde sich kaum lohnen, aber 10 Cent pro GB ist auch ein ziemlich utopischer Preis für so einen kleinen Durchsatz ;-)
Hat sich das mittlerweile erledigt (wg: Apache 2 scheint (!)
stabil)?
Tja, wenn es ein offizielles mod_gzip 2.0.x geben würde.
... ich habe es jedenfalls noch nicht laufen sehen.
Sehr schade eigentlich.
Im Juli werde ich das wohl mal versuchen.
Wenn man behilflich sein kann?
(kurz vor Urlaubsbeginn)
Wie kurz? ;-)
Läuft schon. :-)
Wäre ich doch glatt neidisch, wenn ich nicht selber auch frei hätte ;-)
(Der Unterschied zwische "Frei" und "Urlaub"? Bei "Urlaub" werde ich gefragt, wie ich denn im Notfall zu erreichen wäre. "Frei" würgt sowas schon im Keime ab ;-)
Viele Grüße
Michael
(geistig zwischen Japan/Südkorea und dem Schreiben von gzip-Dokus)
Würde Südkorea empfehlen, ist billiger. Braucht aber Malariaprophylaxe und einen weiteren Haken hat es auch noch:
Da läuft demnächst ein Teil der Fußball WM! >;->
so short
Christoph Zurnieden
Moin moin!
cat prog.pl | sed -e 's/#[^!]*$//g' > prog.pl~ && mv prog.pl~ prog.pl && rm prog.pl~
Würde ich zumindest machen.
Aber ich weiß, kann natürlich auch, insbesondere bei Perl, arg in's Auge gehen ;-)
*Ganz* arg ins Auge. ;-) Abgesehen davon ist das rm-Kommando sinnlos.
Ich verwende in Perl:
1 while ($files{'xren'} =~ s/$newline[\t\x20]*(?:#.*?)?$newline/$newline/g);
nachdem ich $newline mit dem physischen Zeilenumbruchzeichen bestueckt habe (see http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/xren/xren/package.pl?rev=1.4&content-type=text/vnd.viewcvs-markup for full script). Entfernt natuerlich keine Kommentare auf der Restzeile, also mit Programmcode davor, aber das geht in Perl imho nicht zuverlaessig, wenn man nicht nen gleich den Perl-Interpreter selbst darauf loslaesst.
So long
--
Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.
-- Rich Cook
Hallo,
cat prog.pl | sed -e 's/#[^!]*$//g' > prog.pl~ && mv prog.pl~ prog.pl && rm prog.pl~
Würde ich zumindest machen.
Aber ich weiß, kann natürlich auch, insbesondere bei Perl, arg in's Auge gehen ;-)
*Ganz* arg ins Auge. ;-)
Na, soooo schlimm auch wieder nicht ;-)
Habe gerade einmal die Probe auf's Exempel gemacht über die ersten 100 Perlscripte in /usr/local. Bis auf eine Ausnahme haben alle hinterher noch funktioniert.
Nein, muß mich berichtigen, die Ausnahme hat auch vorher nicht funktioniert ;-)
(Nur Syntaxtest mittels 'perl -c' und Rückgabe ungleich 0)
Abgesehen davon ist das rm-Kommando sinnlos.
Äh, nein. Je nach Dateisystem schmeißt das rm (oder besser gesagt, das unlink() Kommando) die Datei aus dem Journal. mv macht das je nach Version nicht unbedingt.
Ist aber dann ein Bug im Dateisystem, nicht in mv.
(Oder eine Fehlbedienung meinerseits. Ist natürlich auch nie auszuschließen ;-)
Aber hast schon Recht, normalerweise natürlich Blödsinn. Experimentiere gerade mit verschiedenen JFSs und Angewohnheiten wird man meist nur unter Schwierigkeiten wieder los, besonders die schlechten und unsinnigen ;-)
Ich verwende in Perl:
1 while ($files{'xren'} =~ s/$newline[\t\x20]*(?:#.*?)?$newline/$newline/g);
nachdem ich $newline mit dem physischen Zeilenumbruchzeichen bestueckt habe (see http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/xren/xren/package.pl?rev=1.4&content-type=text/vnd.viewcvs-markup for full script). Entfernt natuerlich keine Kommentare auf der Restzeile, also mit Programmcode davor, aber das geht in Perl imho nicht zuverlaessig, wenn man nicht nen gleich den Perl-Interpreter selbst darauf loslaesst.
Nunja, eigentlich ist die Dokumentation eindeutig:
(man perlsyn)
Text from a `"#"' character until the end of the line is a comment, and is ignored.
Allerdings gibt es natürlich trotzdem noch solche Dinger:
bash-2.02$ perl -e 'print " dies ist ein # Kommentar\n"; '
dies ist ein # Kommentar
bash-2.02$
Tja, böööse Falle ;-)
Allerdings muß ich dabei sagen, daß ich auch ganz genau wußte _wem_ ich so einen Vorschlag unterbreite und das da nichts passieren kann. Ich ziehe wohl gerne mal die Leute auf, achte aber immer darauf, was bei wem und wie.
Siehe auch den (wahrscheinlich völlig unverstandenen) Scherz weiter oben bei der Anfrage nach einem Texticker (Einen TeX-Ticker? Klar geht das! ;-)
so short
Christoph Zurnieden
Moin Christoph!
Habe gerade einmal die Probe auf's Exempel gemacht über die ersten 100 Perlscripte in /usr/local. Bis auf eine Ausnahme haben alle hinterher noch funktioniert.
Nein, muß mich berichtigen, die Ausnahme hat auch vorher nicht funktioniert ;-)
(Nur Syntaxtest mittels 'perl -c' und Rückgabe ungleich 0)
"Hey! It compiles! Ship it!"
Nee nee, nur weil es kompiliert wuerde ich gerade bei Perl noch lange nicht sagen, dass es noch genauso funktioniert.
Äh, nein. Je nach Dateisystem schmeißt das rm (oder besser gesagt, das unlink() Kommando) die Datei aus dem Journal. mv macht das je nach Version nicht unbedingt.
Ist aber dann ein Bug im Dateisystem, nicht in mv.
Kenne mich mit JFS's nicht aus, aber ich finde es schon komisch, eine Datei loeschen zu wollen, die es theoretisch gar nicht mehr geben sollte. Aber gut, den Sinn des Windows-Papierkorb hab ich auch nie verstanden. *g*
Nunja, eigentlich ist die Dokumentation eindeutig:
(man perlsyn)
Text from a `"#"' character until the end of the line is a comment, and is ignored.
So einfach ist die Perlwelt dann leider doch nicht.
Allerdings gibt es natürlich trotzdem noch solche Dinger:
bash-2.02$ perl -e 'print " dies ist ein # Kommentar\n"; '
dies ist ein # Kommentar
bash-2.02$
Das ist ja noch harmlos. Nimm dieses Beispiel:
$ perl -w
$x = "laber # tratsch";
$x =~ s###foo#g;
print $x;
^D
laber foo tratsch
$
Tja, böööse Falle ;-)
Ganz boese. ;-)
So long
--
Falscher oder fehlender Kaffee. Benutzer angehalten.
Hallo,
Habe gerade einmal die Probe auf's Exempel gemacht über die ersten 100 Perlscripte in /usr/local. Bis auf eine Ausnahme haben alle hinterher noch funktioniert.
Nein, muß mich berichtigen, die Ausnahme hat auch vorher nicht funktioniert ;-)
(Nur Syntaxtest mittels 'perl -c' und Rückgabe ungleich 0)
"Hey! It compiles! Ship it!"
Einige warten noch nicht einmal darauf ;-)
Nee nee, nur weil es kompiliert wuerde ich gerade bei Perl noch lange nicht sagen, dass es noch genauso funktioniert.
Nicht nur in Perl, Herr Kollege, nicht nur in Perl ;-)
Aber bei der Methode Inline-Kommentare zu entfernen, sollte auf jeden Fall ein Syntaxfehler kommen, wenn das in die Hose geht. Vielleicht nicht bei einem oder zweien, aber auf jeden Fall bei 100.
Mit Deinem Beispiel unten wundert es mich aber doch, daß es funktioniert hat. War wohl entweder Zufall, oder ich habe beim testen Murks gebaut.
Nein, Zufall, es gab gar keine Inline-Komentare/regex-stunts in den getesteten Dateien.
Mieser Test! ;-)
Äh, nein. Je nach Dateisystem schmeißt das rm (oder besser gesagt, das unlink() Kommando) die Datei aus dem Journal. mv macht das je nach Version nicht unbedingt.
Ist aber dann ein Bug im Dateisystem, nicht in mv.
Kenne mich mit JFS's nicht aus, aber ich finde es schon komisch, eine Datei loeschen zu wollen, die es theoretisch gar nicht mehr geben sollte. Aber gut, den Sinn des Windows-Papierkorb hab ich auch nie verstanden. *g*
Ja, war ein fieser Bug.
Vor allem so schlecht zu erkennen. ;-)
Ursache war übrigens "nur" ein Typo in einer Entwicklerversion.
Wenn Du Dich selber darin versuchen möchtest würde ich ReiserFS bzw ext3 empfehlen. Ext3 hat auch noch den Vorteil sehr flexibel zu sein und vor allem kompatibel zu Ext2. Die anderen sind noch zu instabil (War übrigens mal ein Test in der iX, IMHO Märzausgabe) wenn auch teilweise schneller/größer.
BTW:
bash-2.02$ man -k Windows-Papierkorb
Windows-Papierkorb: nothing appropriate.
Wollte ich jetzt nur mal nebenbei erwähnt haben ;-)))
Nunja, eigentlich ist die Dokumentation eindeutig:
(man perlsyn)
Text from a `"#"' character until the end of the line is a comment, and is ignored.
So einfach ist die Perlwelt dann leider doch nicht.
Ja, ich weiß, deshalb stand da ja auch "eigentlich" ;-)
Allerdings gibt es natürlich trotzdem noch solche Dinger:
bash-2.02$ perl -e 'print " dies ist ein # Kommentar\n"; '
dies ist ein # Kommentar
bash-2.02$
Das ist ja noch harmlos. Nimm dieses Beispiel:
$ perl -w
$x = "laber # tratsch";
$x =~ s###foo#g;
print $x;
^D
laber foo tratsch
$
Würde aber beides eine Syntaxfehler ergeben, wenn man mein Sedscript drauf los ließe.
Nunja, Perl ist aber eh eine schöne Sprache.
Mitunter läßt sich auf den ersten Blick kein großer Unterschied zwischen den Ausgaben von
cat perlscript
und
dd if=/dev/urandom bs=512 count=12 | sed -e 's/[[1]]*//g'
feststellen ;-)
Tja, böööse Falle ;-)
Ganz boese. ;-)
Multa viae baccam a Romam ducent ;-)
--
Falscher oder fehlender Kaffee. Benutzer angehalten.
Ja, das kommt davon, wenn man sich nicht an die RFCs hält. Insbesondere möchte ich hier RFC 2324 Abschnitt 2.2.2.1 sowie RFC 2325 in Gänze ans Herz legen ;-)
so short
Christoph Zurnieden
:print: ↩︎
Hi Calocybe,
Entfernt natuerlich keine Kommentare auf der Restzeile,
also mit Programmcode davor, aber das geht in Perl imho nicht
zuverlaessig, wenn man nicht nen gleich den Perl-Interpreter
selbst darauf loslaesst.
eben - diesem Problem bin ich durch Weglassen solcher Kommentare
im Original ausgewichen (ich bin ja faul ...).
Viele Grüße
Michael
Hi Christoph,
Darf ich dann um einen Link bitten, Herr Kollege? ;-)
Ich bin noch am Dokumentieren ... und in der Abschlußphase, beim
Schreiben des Benutzerhandbuchs, fällt mir am deutlichsten auf,
wo ich etwas so umständlich bedienbar gemacht habe, daß Code
reparieren doch einfach ist als dem Benutzer zu erklären, wie
es von hinten durch die Brust ins Auge geht ... und das will dann
aber erst mal wieder ausgetestet werden ... solange ich selbst
noch notwendige Änderungen sehe, release ich nichts. Nur die Ruhe ...
(Ich habe mir extra ein Perl-Skript geschrieben, um das Perl-
Skript für den produktiven Einsatz von 25 auf 3.5 kb zu
reduzieren ... ;-)
Naja, mal wieder mit Kanonen auf Spatzen, ha? ;-)
cat prog.pl | sed -e 's/#[^!]*$//g' > prog.pl~
&& mv prog.pl~ prog.pl && rm prog.pl~
Und damit kann ich also meine langen, sprechenden Variablennamen
abkürzen? ;-)
Dafür ist wahrscheinlich die Prozessorlast jetzt höher,
als mit mod_gzip, was?
Wenn ich richtig liege, nein.
Das ist ja überhaupt der Trick dabei ... :-)
Glaube ich Dir nicht!
Beweise auf den Tisch!
;->
Ich habe nicht behauptet, daß es genauso viel kann (beispielsweise
kann es keine dynamischen Seiten komprimieren, weil es kein Modul
ist). Aber dafür komprimiert es keine Seite öfter als notwendig ...
Im Juli werde ich das wohl mal versuchen.
Wenn man behilflich sein kann?
Nimm Dir ein mod_gzip 2.0.26a und passe es an die sich ständig
ändernden APIs von Apache 2.0.36+ an ... :-\
(geistig zwischen Japan/Südkorea und dem Schreiben von gzip-Dokus)
Würde Südkorea empfehlen, ist billiger. Braucht aber
Malariaprophylaxe und einen weiteren Haken hat es auch noch:
Da läuft demnächst ein Teil der Fußball WM! >;->
ich sagte doch "geistig" ... und letzteres ist doch gerade der Sinn
meines Urlaubs!
Viele Grüße
Michael
(begeistert von der Leistung der Senegalesen heute ... :-)
Hallo,
Darf ich dann um einen Link bitten, Herr Kollege? ;-)
Ich bin noch am Dokumentieren ... und in der Abschlußphase, beim
Schreiben des Benutzerhandbuchs, fällt mir am deutlichsten auf,
wo ich etwas so umständlich bedienbar gemacht habe, daß Code
reparieren doch einfach ist als dem Benutzer zu erklären, wie
es von hinten durch die Brust ins Auge geht ... und das will dann
aber erst mal wieder ausgetestet werden ... solange ich selbst
noch notwendige Änderungen sehe, release ich nichts. Nur die Ruhe ...
*an den Nägeln kau* ;-)
(Ich habe mir extra ein Perl-Skript geschrieben, um das Perl-
Skript für den produktiven Einsatz von 25 auf 3.5 kb zu
reduzieren ... ;-)
Naja, mal wieder mit Kanonen auf Spatzen, ha? ;-)
cat prog.pl | sed -e 's/#[^!]*$//g' > prog.pl~
&& mv prog.pl~ prog.pl && rm prog.pl~
Und damit kann ich also meine langen, sprechenden Variablennamen
abkürzen? ;-)
Eher weniger ;-)
Bringt übrigens nicht viel währende der Laufzeit, nur beim kompilieren ein wenig. Danach werden nur noch die Pointer angesprochen, da ist die Länge der Variablen dann egal.
Dafür ist wahrscheinlich die Prozessorlast jetzt höher,
als mit mod_gzip, was?
Wenn ich richtig liege, nein.
Das ist ja überhaupt der Trick dabei ... :-)
Glaube ich Dir nicht!
Beweise auf den Tisch!
;->
(Mit "Beweisen auf den Tisch" meinte ich den Link zum Paket, deshalb auch das entspr Grinsemännchen ;-)
Ich habe nicht behauptet, daß es genauso viel kann (beispielsweise
kann es keine dynamischen Seiten komprimieren, weil es kein Modul
ist). Aber dafür komprimiert es keine Seite öfter als notwendig ...
Klingt doch schon mal gut! ;-)
Aber keine dynamischen Seiten?
Wo/wie hast Du das denn eingebaut?
(Das könntest Du jetzt erklären oder den Code anbieten. Ja, so schnell gibt der Christoph nicht auf ;-)))
Im Juli werde ich das wohl mal versuchen.
Wenn man behilflich sein kann?
Nimm Dir ein mod_gzip 2.0.26a und passe es an die sich ständig
ändernden APIs von Apache 2.0.36+ an ... :-\
"ständig ändernd"?
Oh Herr!
Müßte sich aber mit einigen Präprozessordirektiven vereinfachen lassen, so daß pro Apacheversion nur der mod_gzip-header verändert werden muß.
Geht aber auch nur bis zu einer gewissen Grenze.
(geistig zwischen Japan/Südkorea und dem Schreiben von gzip-Dokus)
Würde Südkorea empfehlen, ist billiger. Braucht aber
Malariaprophylaxe und einen weiteren Haken hat es auch noch:
Da läuft demnächst ein Teil der Fußball WM! >;->
ich sagte doch "geistig" ... und letzteres ist doch gerade der Sinn
meines Urlaubs!
Nun ja, äh ..., Fußballimfernsehengucken hat aber doch recht wenig mit Geist zu tun, oder?
Höchstens im Promillebereich.
Har Har.
;->
so short
Christoph Zurnieden, bekennender Fußballhasser
Hi Christoph,
Aber keine dynamischen Seiten?
Wo/wie hast Du das denn eingebaut?
http://httpd.apache.org/docs/mod/mod_actions.html#action
Viele Grüße
Michael
Hallo,
Aber keine dynamischen Seiten?
Wo/wie hast Du das denn eingebaut?
Aha.
Dannn kann ich mir aber auch jetzt selber zusammenreimen, was Du da gemacht hast (zumindest das Prinzip) ;-)))
Ist wieder eine der Ideen, wo man sich mit der flachen Hand vor die Stirne haut, warum man da nicht selber drauf gekommen ist. Aber sind ja meist die Besten ;-)
so short
Christoph Zurnieden