werden eben die thumbnails generiert/angezeigt. soweit klappt alles hervorragend. ebenso auch der zufällig ausgewählte bereich des thumbnails sieht oft toll aus, aber eben nicht immer.
das problem ist nun, dass ich gern etwas mehr "zoom" vom bild hätte, sozusagen. also, im moment wird ein 80 x 80 pixel großes thumbnail aus einer 1 mb großen datei erstellt. da kann es manchmal sein, dass man einfach nur ein schwarzes thumbnail erhält, da es eine große dunkle fläche im foto gab (himmel, ...).
ich hätte also gern, dass er nicht einfach nur 80 x 80 pixel aus dem bild schneidet, sondern eben etwas mehr aus dem bild "rauszoomt" und dann sein 80 x 80 pixel großes thumbnail schneidet/kreiert. so sieht man mehr vom bild und hat auch auf dem thumbnail eine größere ahnung davon, was man nun eigtl groß klicken wird.
ich hoffe, ich habe das verständnisvoll erklärt. auf dem thumbnail soll man einfach mehr vom bild sehen, ohne natürlich die thumbnail-größe zu ändern.
wäre schön, wenn es dafür eine lösung gibt. danke euch im voraus.
// Get image info
$imageFileInfo = getimagesize($imageFile);
$dataArray[1] = $imageFileInfo[0];
$dataArray[2] = $imageFileInfo[1];
// Create a image resource
if ($imageFileInfo[2] == 1) { $imageFileResource = imagecreatefromgif($imageFile); }
if ($imageFileInfo[2] == 2) { $imageFileResource = imagecreatefromjpeg($imageFile); }
if ($imageFileInfo[2] == 3) { $imageFileResource = imagecreatefrompng($imageFile); }
$dataArray[0] = $imageFileResource;
return $dataArray;
}
// Creates a jpeg image sized as you want focusing randomly at a detail of the reference image
function imageDetailExtract($referenceImage, $thumbnail, $thumbnailWidth, $thumbnailHeight, $thumbnailJpegQuality=70) {
// Method to display a image detail
// Coders : problems with little images (To get rid of it, set those two variables to 0)
// Coders : could be also enhanced so as to see more details
$Xposition = round(rand(0, ($getImageResource[1]-$thumbnailWidth)));
$Yposition = round(rand(0, ($getImageResource[2]-$thumbnailHeight)));
// Resizes the given image outputting a jpeg image
function resizeImage($referenceImage, $thumbnail, $maxWidth, $maxHeight, $thumbnailJpegQuality=70) {
Dabei seit: 24.10.2007 Ort: - Alter: - Geschlecht: -
Verfasst Di 27.07.2010 12:45 Titel
Hast Du Dir denn bereits Gedanken darüber gemacht, unter welchen Bedingungen der jeweilige Bildausschnitt gewählt wird, ohne dass das Ursprungsmotiv verzerrt wird?
Dabei seit: 25.11.2005 Ort: - Alter: 35 Geschlecht:
Verfasst Di 27.07.2010 14:23 Titel
hi,
danke erst einmal für eine reaktion. also, das skript ist ein fertiges galerienskript. insofern habe ich mir keine gedanken zu bedingungen der verzerrung gemacht.
im moment nimmt das skript wahllos eine 80 x 80 pixel (größe je nach wunsch) große fläche von dem bild auf. ohne verzerrung oder nichts. bislang fand ich das gut, aber bei großen bildern kann das oft unschön werden, da man langweilige thumbnails erhält.
insofern wäre es toll, wenn man den code ändern könnte, so dass es wieder eine zufällige fläche vom bild nimmt, dieses mal aber etwas weiter herausgezoomt, so dass man mehr vom bild sieht und das wieder als 80 x 80 pixel großes thumbnail generiert. das schrieb ich aber schon oben.
ohne verzerrung oder sonstigem und muss auch nicht das komplette bild sein.
ich habe irgendwo etwas von autocut und cut gelesen, mit denen das eventuell funktionieren könnte, aber wie gesagt, ich habe keine erfahrung in php.
ich habe nur gehofft, dass man den mittleren code-block leicht ändern kann, so dass das skript weiterhin funktioniert und einfach nur mehr details/eine größere fläche eines bildes im thumbnail zu finden sind.
vorab nochmals danke, falls mir jemand dabei helfen/das ändern kann.
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst an Umfragen in diesem Forum nicht mitmachen.