Archiv verlassen und diese Seite im Standarddesign anzeigen : Bildergröße begrenzen?
Schorsch
05.12.2003, 23:51
moin,
wie kann ich die maximale Größe der Bilder die über [img][ /img] gepostet werden begrenzen?
Gruß,
Schorsch
Gar nicht, weil es keine Funktion dafür gibt.
Gibt es dazu eventuell keinen Hack?
So kann ja jedes Forendesign zerschossen werden... :(
http://www.vbulletin.org/forum/showthread.php?t=103915&highlight=size+img
Wie jetzt.. habe nämlich auch das gleiche Problem. Habe viele Bilder drin, auch große.
Das einfachste von der Welt, was jede kostenlose Forensoftware nutzt, wird von der kostenpflichtigen vB nicht unterstützt? :mad:
Jetzt verstehe ich die Welt nicht mehr.....
StGaensler
14.03.2006, 19:19
Da musst du genauer erklären, was du mit "was jede kostenlose Forensoftware nutzt" meinst. Ich kenne keine Forensoftware, wo die extern verlinkten Bilder geprüft werden, ob sie eine bestimmte Größe haben. Das wäre auch irgendwie sinnlos, denn jedes mal, wenn ein Post mit solch einem Bild angezeigt werden soll, müsste vBulletin das Bild erst selbst laden, und überprüfen, ob es noch innerhalb der Begrenzugen ist, oder ob es inzwischen ausgetauscht wurde. Das ist rein vom Traffic ein Unsinn, und ist wahrscheinlich auch nicht mit der begrenzten Ausführungszeit der php-Scripte machbar, insbesondere bei vielen Beiträgen mit großen Bildern.
Die Anhangs-Funktion von vBulletin prüft die Bilder natürlich auf die passende Größe.
Viele Grüße,
Stefan
Ich bin von SMF gewechselt zu vB und muss immer noch alles einrichten. Das dauert.
Im Adminbereich von SMF konnte ich die größe der Bilder, welche von irgendwoher geladen werden in der Größe begrenzen. Wenn nun ein Bild größer ist als die Begrenzung, wurde diese autom. angeglichen und ein Klick drauf, dann wurde das ganze Bild in voller Pracht gezeigt.
Jetz habe ich Bilder auf meinen eigenen Server zu liegen und will diese in Postings einarbeiten und bin fast vom Stuhl gefallen, als ich feststellte, dass das fehlt.
... kann ja wohl nicht sein. Das konnte sogar phpBB2. Und das hatte ich von Anfang an ;)
Und ich habe viele User, die bedingt durch das Forum, aktuelle Screens sehen wollen.
Die images wurden wie folgt autom. gespeichert:
http://www.XXXXXXXXX/BildXXXXX/Battlefield_2_Mortal_Combat/screens/battlex360-04.jpg
StGaensler
14.03.2006, 21:12
Das man auf diese Art die Größe der Bilder anpassen kann, könnte man in vBulletin auch noch realisieren - allerdings werden dann die Bilder, wenn sie ausgetauscht werden, u.U. falsch skaliert angezeigt, und eine Begrenzung der Dateigröße ist dadurch auch noch nicht gegeben. Soetwas finde ich nicht so sinnvoll.
Wenn die Bilder ausgetauscht werden, ist das klar. Damit kam smf, glaube ich, auch nicht klar.. hatte ich aber auch nicht getestet :) weil, wer tauscht schon Bilder aus.
Die Dateigröße sollte natürlich nicht begrenzt sein. Schließlich sollen die Screens ja in voller Pracht gezeigt werden, wenn man drauf klickt.
Wäre super, wenn Ihr da hinbekämet. Jetzt habe ich erst mal den Hack von oben eingebaut, aber so dolle ist das auch nicht.
Vielleicht könnte mir jemand ein Tipp geben, welcher von den vielen mit den Browsern am besten funzt? Jetzt habe ich , glaube ich, was mit einer Abfrage eingebaut, was den Seitenaufbau leider verlangsamt.
Soetwas finde ich nicht so sinnvoll.
Finde ich auch verzichtbar.
Nebenbei:
Schließlich verursachen die per IMG-Tag eingefügten den Traffic ja nicht im Forum, sondern an der Quelle (Stichwort "Traf****lau").
Finde ich auch verzichtbar.
Nebenbei:
Schließlich verursachen die per IMG-Tag eingefügten den Traffic ja nicht im Forum, sondern an der Quelle (Stichwort "Traf****lau").
Traf****lau... LoL.. von mein eigenen Server *gröhl... *
Schön dass Du es verzichtbar findest.. viele aber nicht. Oder willst Du Dein Forum zerschießen, wenn Bilder von 1080 x 890 dargestellt werden?
Etwa so (hab jetzt sogar ein kleineres genommen)? Und nun stell Dir mal vor, dass in jedem Thread solche Bilder auftauchen... tztztz....
http://www.xbox360gamertag.de/BilderForum/Battlefield_2_Mortal_Combat/screens/battlex360-09.jpg
Mich wundert's, dass die Programmierer noch nichts dagegen unternommen haben. Wie gesagt, elegant wäre es, wenn die Bilder in ein maximalen vordefinierten Wert in's Forum eingegliedert werden und beim Klick drauf sich ein neues Fenster öffnet mit dem vollen Screen... einfach cool hin- und herzuscrollen, um den ganzen Text lesen zu müssen. Gelle? Aber manche brauchen ja angeblich so eine Einstellung nicht *grins* ;) , sie scrollen ja gerne...
Oder sollte ich ein noch größeres Bild nehmen? :D
@Admin: Könnte man den Thread in 3.5 umbeamen?
Nun ich würde mich als User des Forums fragen ob die anderen zu blöd sind um so große Bilder als Anhang zu posten...denn nicht jeder hat DSL. ;)
Als Anhang ist eine Möglichkeit.. aber das wollen viele nicht und manche Admins bieten auch nicht die Möglichkeit. Außerdem werden dann die Bilder aus dem Text gerissen.
Und wegen den anderen Problem der Bandbreite.. darum ja die Bildgrößenbegrenzung.. Du hast das Problem erkannt ;)
Traf****lau... LoL.. von mein eigenen Server *gröhl... *
Wenn ich zwischen 2 IMG-Tags den Link zu einem Bild setze wird das Bild zwar angezeigt, unter Eigenschaften wird aber doch verraten, dass das Bild auf einem anderen Server liegt :confused:
StGaensler
15.03.2006, 15:34
einfach cool hin- und herzuscrollen, um den ganzen Text lesen zu müssen. Gelle? Aber manche brauchen ja angeblich so eine Einstellung nicht *grins* ;) , sie scrollen ja gerne...Ich muss nicht scrollen, um deinen Beitrag lesen zu können :D@Admin: Könnte man den Thread in 3.5 umbeamen?Kannst auch Stefan zu mir sagen ;)
Eine einfache Lösung wäre das hier:<!-- message -->
<div style="overflow:hidden;" im postbit-Template, funktioniert halt nur in modernen Browsern :D
Außerdem werden dann die Bilder aus dem Text gerissen.Falsch. Lade mal einen Anhang hoch und klicke dann im Editor auf http://www.vbulletin-germany.com/forum/images/editor/attach.gif. Damit kannst du jeden Anhang an beliebiger Stelle einfügen.
Falsch. Lade mal einen Anhang hoch und klicke dann im Editor auf http://www.vbulletin-germany.com/forum/images/editor/attach.gif. Damit kannst du jeden Anhang an beliebiger Stelle einfügen.
Hey.. super :) . Aber, das löst nicht das Problem, weil die Bilder ja nur entsprechend der Miniaturansicht angezeigt werden und die Bildgröße durch die Anhänge stark begrenzt wird.
Ich nutze derzeitig den Code aus dem o.g. Link und der arbeitet einigermaßen zufriedenstellend. Wird auch schon fleißig von den Usern genutzt. Sie knallen einfach Bilder von ihrem Server oder sonst wo her ;) in die Beiträge rein.
Aber Ihr solltet Euch mal wirklich dieses Problem annehmen. Codes einzubauen ist wirklich nicht elegant.. zumal es dabei ja auch manchmal Probleme gibt. Und ehrlich gesagt setzte ich diese Möglichkeit, als ich mir vB kaufte, voraus, weil ich das so von meiner vorherigen Software gewohnt war.
Und diese Bildbegrenzung von externen URLs ist Standard bei anderer Forensoftware. Echt jetzt :D
Hallo Stefan :cool:
.. so gute Nacht *schnarch*
Hierfür suche ich auch noch eine Lösung - am Besten eine, die die StandardBanner in den Signaturen unberührt lässt, damit diese auch weiterhin in maximal 468 x 60 erscheinen können
Za4a Tuner
16.03.2006, 23:46
Eine einfache Lösung wäre das hier:<!-- message -->
<div style="overflow:hidden;" im postbit-Template, funktioniert halt nur in modernen Browsern :D
Hy Stefan,
ich hab dazu zwei Fragen:
1.) Wie alt ist ein alter Browser? Oder anders gefragt, ab wann ist ein Browser "modern"?
2.) Wie wirkt sich der Code auf einen alten Browser aus?
Ignoriert dieser den Code ganz einfach?
Ist es denn schlecht diesen Code einzubauen?
Ich geh mal davon aus, das es diverse Nachteile hat,
denn sonst würde das bei vB doch mit Sicherheit zum Standardcode gehören, oder?
StGaensler
16.03.2006, 23:54
Nein, schlecht ist es nicht, den Code einzubauen, er wird von den Browsern, die das nicht unterstützen, einfach nicht interpretiert, quasi ignoriert.
Moderne Browser sind bei mir alle größeren Browser außer dem IE. Der Internet-Explorer interpretiert ein Großteil des CSS überhaupt nicht, und bei dem, was er interpretiert, hat er einige gemeine Bugs. Für vBulletin rentiert es sich aber nicht, eine Lösung einzubauen, die für den Großteil der Nutzer überhaupt nichts bringt.
BTW: Da fällt mir eine noch bessere Lösung ein: Per CSS kann man auch max-width und max-height definieren - ist eigentlich ideal für ein solches Unterfangen. Aber dreimal darfst du raten: IE unterstützt das ebenso nicht.
Viele Grüße,
Stefan
Za4a Tuner
16.03.2006, 23:59
Nein, schlecht ist es nicht, den Code einzubauen, er wird von den Browsern, die das nicht unterstützen, einfach nicht interpretiert, quasi ignoriert.
Moderne Browser sind bei mir alle größeren Browser außer dem IE. Der Internet-Explorer interpretiert ein Großteil des CSS überhaupt nicht, und bei dem, was er interpretiert, hat er einige gemeine Bugs. Für vBulletin rentiert es sich aber nicht, eine Lösung einzubauen, die für den Großteil der Nutzer überhaupt nichts bringt.
BTW: Da fällt mir eine noch bessere Lösung ein: Per CSS kann man auch max-width und max-height definieren - ist eigentlich ideal für ein solches Unterfangen. Aber dreimal darfst du raten: IE unterstützt das ebenso nicht.
Viele Grüße,
Stefan
Danke für deine schnelle Antwort.
Ich hab es bei mir mal getestet ->
der FF schneidet das was von der Grafik nicht mehr ins reguläre Board passt einfach weg ...
... der IE ... macht gar nichts :D
Würdest du mir denn veraten, wie ich das per CSS lösen kann?
Bei dieser Lösung müsste ich ja dann kein Template ändern, oder?
Wenn es also möglich ist (sche... auf die IE-Nutzer :D) würde ich das bei mir gerne per CSS realisieren,
aber mit welchem Code? und wohin mit dem Code (zusätzliche CSS...?) ?
Wobei ...
... dann müsste ich ja vorab wissen, welche Auflösung der User fährt?
Ich kann dann ja nur angeben, das maximale Breite = X-Pixel sein soll, oder geht das auch mit %-Angaben?
Nimm den Code aus den o.g. Link.. der funzt ganz gut, auch mit dem IE.
Aber diese Aussage, wie "wird nicht bei vB benötigt" kann ich nicht nachvollziehen. Dieses Problem besteht schließlich bei jedem Forum von vB, ohne den Mod. Oder will mir einer sagen, dass die Admins das toll finden, wenn ein User sein Forum zerschießt? :rolleyes:
Nicht ohne Grund ist das bei fast jeder Forensoftware eingebaut. Schon komisch, dass man bei vB Alles und Jedes einstellen kann. Aber so etwas, was alles zerhaut, nicht... *hmmm..*
StGaensler
17.03.2006, 11:29
Würdest du mir denn veraten, wie ich das per CSS lösen kann?
Bei dieser Lösung müsste ich ja dann kein Template ändern, oder?
Wenn es also möglich ist (sche... auf die IE-Nutzer :D) würde ich das bei mir gerne per CSS realisieren,
aber mit welchem Code? und wohin mit dem Code (zusätzliche CSS...?) ?
Wobei ...
... dann müsste ich ja vorab wissen, welche Auflösung der User fährt?
Ich kann dann ja nur angeben, das maximale Breite = X-Pixel sein soll, oder geht das auch mit %-Angaben?Erlaubt ist eine sog. "numerische Angabe (http://de.selfhtml.org/css/formate/wertzuweisung.htm#numerische)", also alles von pt über cm über em bis zu %.
Eine kleine Template-Modifikation brauchst du. Der Post-Text hat keine css-Klasse zugewiesen, weshalb man ihn nicht direkt formatieren kann - ich habe das schon bei vbulletin.com reklamiert - vielleicht wird das ja in die nächste Version mit aufgenommen: <!-- message -->
<div id="post_message_$post[postid]" class="post_message">$post[message]</div>
<!-- / message -->
Dann kannst du im AdminCP bei den Zusätzlichen CSS-Eigenschaften deines Styles z.B. folgendes eintragen:.post_message img {
max-width:100%;
}Dann sind alle Grafiken im Post maximal so breit, wie der Beitrag selbst.
Und das funktioniert dann auch mit dem IE problemlos?
StGaensler
17.03.2006, 19:15
Nein, wie oben schon geschrieben, ist der IE mit CSS nicht so ganz fit. Beim IE funktioniert das einfach nicht - negative Auswirkungen hat das dort aber nicht.
Viele Grüße,
Stefan
Za4a Tuner
17.03.2006, 22:30
bei den Zusätzlichen CSS-Eigenschaften deines Styles z.B. folgendes eintragen:.post_message img {
max-width:100%;
}Dann sind alle Grafiken im Post maximal so breit, wie der Beitrag selbst.
Danke für den Code,
aber bei mir führt das zu einem Problem:
Ich hab den Code mal eingebaut ...
... und klappt auch alles bestens!
Die Grafik wird komplett verkleinert,
so dass sie in den Post passt!
Allerdings:
sind im AJAX-Editor alle Grafiken verschwunden!!!
Also ich mein den Editor, der sich über dem Post öffnet ->
dort fehlen alle Grafiken wie z.B.: http://www.vbulletin-germany.com/forum/images/editor/bold.gif http://www.vbulletin-germany.com/forum/images/editor/createlink.gif http://www.vbulletin-germany.com/forum/images/editor/insertimage.gif
Entferne ich die CSS-Atribute, werden die "Buttons" wieder angezeigt :confused:
EDIT:
Ich hab jetzt mal die veränderte php-Datei in Verwendung (Beitrag #4 (http://www.vbulletin-germany.com/forum/showthread.php?p=133690#post133690)) =>
und bin damit fast zufrieden!
Leider werden mit dem "original Code" auch die Sigs angetastet ...
... bzw. auch Sigs die nicht in den Resize fallen würden -> werden klickbar! :(
Aber damit kann man zur Not leben!
StGaensler
18.03.2006, 10:48
So genau habe ich es dann doch wieder nicht getestet :D
Das kann aber durch eine zweite Zeile einfach behoben werden:.post_message img {
max-width:100%;
}
.post_message .vBulletin_editor img {
max-width:none;
}
Viele Grüße,
Stefan
Za4a Tuner
19.03.2006, 01:32
und nochmals danke für dein bemühen,
aber ich denke, ich werde die PHP-Dateiänderung bevorzugen!
Ist zwar auch nicht "das" gelbe vom Ei, aber das wird zumindest auch vom IE befolgt :D
Ich habe aktuell folgenden Code im Einsatz:
/* Start Grafikverkleinerung */
// Check image size and if oversize, change bbtag
$img_width = getimagesize($link);
if ($img_width[0] > 700) {
$navigator_user_agent = ( isset( $_SERVER['HTTP_USER_AGENT'] ) ) ? strtolower( $_SERVER['HTTP_USER_AGENT'] ) : '';
if (stristr($navigator_user_agent, "msie")) {
return '<a href="' . $link . '" target="_blank"><img src="' . $link . '" border="0" alt="' . $vbphrase['img_resize'] . '" style="width: expression(this.width > 700 ? 700 : true);" /></a>';
} else {
return '<a href="' . $link . '" target="_blank"><img src="' . $link . '" border="0" alt="' . $vbphrase['img_resize'] . '" style="max-width: 700px;" /></a>';
}
} else {
return '<img src="' . $link . '" border="0" alt="" />';
}
/* Ende Grafikverkleinerung */
// /* Original code: return '<img src="' . $link . '" border="0" alt="" />'; */
Und ich den. Wenn jetzt auf das Image geklickt wird, wird das größere Bild im eigenen Browserfenster geöffnet. Funzt ganz gut, auch mit dem IE, nur dass leider die Bildproportionen nicht beibehalten bleiben..
/* Start Image RESIZE */
$navigator_user_agent = ( isset( $_SERVER['HTTP_USER_AGENT'] ) ) ? strtolower( $_SERVER['HTTP_USER_AGENT'] ) : '';
if (stristr($navigator_user_agent, "msie")) {
$image_size_link = '
<img src="' . $link . '" border="0" alt="" style="width: expression(this.width > 640 ? 480 : true);" />';
}
else {
$image_size_link = '<img src="' . $link . '" border="0" alt="" style="max-width: 730px;" />';
}
$image_size = '
<table cellpadding="0" cellspacing="0" border="1">
<tr><td style="background-color:#000000;color:#FFFFFF;">
<a href="' . $link . '" target="_blank" style="color:#FFFFFF;text-decoration:none;">Click to enlarge image</a>
</td></tr>
<tr><td><a href="' . $link . '" target="_blank">' . $image_size_link . '</a></td></tr>
<tr><td style="background-color:#000000;color:#FFFFFF;">
<a href="' . $link . '" target="_blank" style="color:#FFFFFF;text-decoration:none;">Click to enlarge image</a>
</td></tr>
</table>
';
return $image_size;
/* End Image RESIZE *
rasthof2
19.03.2006, 13:15
Bei uns ist folgendes im Einsatz in der class_bbcode.php version 3.5.4:
suche bei Zeile 1831
return '<img src="' . $link . '" border="0" alt="" />';
ersetze mit:
$link = str_replace(' ', '', $link);
if(file_exists($link)) $imgsize = GetImageSize($link);
if($imgsize[0] > 600) $imgwidth = "width=\"600\"";
return '<img src="' . $link . '" border="0" alt="" '.$imgwidth.' />';
sobald das Bild breiter als 600 ist wird es auf 600 begrenzt.
Hatten son Hohlkopf der Bilder mit 1600x1200 eingebunden hat...
EDIT: kleine Änderung: Abfrage ob (externes) Bild existiert. Sonst gibt es Fehlermeldung ;)
Guten Morgen
.post_message img {
max-width:100%;
}
.post_message .vBulletin_editor img {
max-width:none;
}
@StGaensler
Diese Anpassung sowohl in postbit als auch in postbit_legacy vornehmen?
@rasthof2
Sind die verkleinerten Images auch klickbar?
Gruß Stöbi
rasthof2
21.04.2006, 17:05
Guten Morgen
@rasthof2
Sind die verkleinerten Images auch klickbar?
Gruß Stöbi
Klickbar? Meinst du anklicken und auf Originalgröße bringen?
Nein ist es nicht. Es handelt sich um das normale vbcode IMG mit einer Beschränkung auf Breite von 600 was völlig ausreichend ist.
StGaensler
21.04.2006, 20:40
@Stoebi
Nein, nicht in den Templates sondern "AdminCP bei den Zusätzlichen CSS-Eigenschaften deines Styles", wie ich es in Beitrag #27 geschrieben habe.
Viele Güße,
Stefan
Hallo
Alles klar. Danke zu euch beiden.
Gruß Stöbi
vBulletin® v3.7.2, Copyright ©2000-2008, Jelsoft Enterprises Ltd.