---
title: "Suche Galerie mit Crop Funktion"
url: "https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion"
source: "typo3.net"
tags: ["Allgemein","Bilder","Frage"]
created: "2006-06-12"
last_reply: "2006-06-19"
replies: 28
solved: false
page: 1
pages: 1
lang: "de"
---

# Suche Galerie mit Crop Funktion

Allgemein · 28 Antworten · gestartet 2006-06-12

## Eröffnungsbeitrag

**einpraegsam.​net** · 2006-06-12 · [Beitrag #1](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/1)

Hallo,

kennt jemand eine Gallerie, die die Bilder alle richtig zurechtschneidet (Höhe und Breite) - damit die Vorschaubilder gut aussehen?

Grüße

## Antworten

### [#2](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/2) · just2b · 2006-06-12

macht doch e jede... oder nicht? ob lz_gallery, goof_fotobook (oder wie sich die schreibt), jm_gallery... CE-"nur bilder"

georg

### [#3](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/3) · einpraegsam.​net · 2006-06-12

???

Hmm, also ich setze lz_gallery, goof_fotoboek ein und ich wüsste nicht, dass die das können!?

Nicht skalieren sondern abschneiden ;)

### [#4](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/4) · just2b · 2006-06-12

achso sorry missverstanden... nun ich denk das kann keine, macht zumeist auch wenig sinn..., aber dürften nur paar Zeilen im Code sein

georg

### [#5](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/5) · einpraegsam.​net · 2006-06-12

Habe mal vor längerem eine TYPO3 Seite mit Gallerie gesehen, die genau das gemacht hat - sah schon ziemlich gut aus.

"Ein paar Zeilen im Code" - wüsste da gar nicht wo ich anfangen sollte - beim Bilder-Crop

### [#6](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/6) · just2b · 2006-06-12

vielleicht hilft das schon: <http://typo3.org/extensions/repository/search/sg_cropscale/0.4.0/>

georg

### [#7](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/7) · einpraegsam.​net · 2006-06-12

ok danke, werde das mal probieren

### [#8](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/8) · einpraegsam.​net · 2006-06-14

ok, haben die lz_gallery so modifiziert,
dass quadratische thumbnails (beschnitten, nicht skaliert) eingeblendet werden.

Wer sich dafür interessiert, muss ein paar änderungen in der class.tx_lzgallery_pi1.php vornehmen

Diese Funktion oben irgendwo mit einfügen:

```php
function createThumb($bild,$quality,$bild_ergebnis,$breite) {
     global $fotoPfad;
     $thumbPfad = 'typo3temp/pics/';
     $size=getimagesize("$fotoPfad"."$bild");
	 if ($size[0] > $size[1]) { // Wenn Breite größer als Höhe (Querformat)
	 	$xy = $size[1]; // Orientiere dich an der Höhe
	 }
	 else { $xy = $size[0]; } // Orientiere dich an der Breite
     $altesBild=ImageCreateFromJPEG($fotoPfad.$bild);
     $neuesBild=imageCreateTrueColor($xy,$xy);
	 ImageCopy($neuesBild,$altesBild,0,0,0,0,$xy,$xy);
     ImageJPEG($neuesBild,"$thumbPfad".$bild_ergebnis,$quality);
	 //ImageJPEG($neuesBild,"",$quality);
	 	 
	 return '<img src="'.$thumbPfad.$bild_ergebnis.'" border="0" width="'.$breite.'">';
}
```

Dann diese Zeile ausskommentieren:

```php
if(! $img = $this->cObj->IMAGE($imgconf)) $this->TSwarn('Problem loading: '. $imgconf['file']);
```

Unter dieser Zeile dann:

```php
if ($cols > '1' AND $this->options['clickmode'] != 'newwindow') {
						$img = createThumb($imgconf['file'],'30','thumb'.$imgconf['alttext'],$imgconf['file.']['width']);
					}
					elseif ($this->options['clickmode'] == 'newwindow') {
						$img = createThumb($imgconf['file'],'30','thumb'.$imgconf['alttext'],$imgconf['file.']['width']);
						$img = '<a href="#" onclick="vHWin=window.open(\''.$imgconf['file'].'\',\'FEopenLink\',\'toolbar=0,scrollbars=1,location=0,resizable=0,width=600,height=500\');vHWin.focus();return false;">'.$img.'</a>';
					}
					else {
						if(! $img = $this->cObj->IMAGE($imgconf)) $this->TSwarn('Problem loading: '. $imgconf['file']);
					}
```

Hoffe, ich habe nichts vergessen - Grüße, Alex

### [#9](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/9) · just2b · 2006-06-14

thx Alex - gibts wo eine url zwecks bsp?

georg

### [#10](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/10) · einpraegsam.​net · 2006-06-14

guckst du hier: <http://smokethis.de/snowgallery.html?&tx_lzgallery_pi1%5BshowUid%5D=132&tx_lzgallery_pi1%5Bdescription%5D=2&tx_lzgallery_pi1%5Bold%5D=3x3x19&tx_lzgallery_pi1%5Bpic%5D=10>

Grüße ;)

### [#11](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/11) · just2b · 2006-06-14

tolle Seite, die hab ich ja nie bei den deutschen TYPO3-Seiten gesehen ;)

georg

### [#12](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/12) · einpraegsam.​net · 2006-06-14

nana, schleimen hilft auch nix ;)

### [#13](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/13) · just2b · 2006-06-14

> **wunschtacho schrieb:**
>
> nana, schleimen hilft auch nix ;)

hab trotzdem nen entry hinterlassen :D

### [#14](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/14) · einpraegsam.​net · 2006-06-16

Bin gerade dabei den Code etwas abzuändern, dass man ein Seitenverhältnis für die Vorschaubilder mit übergeben kann (z.B. 1:1 für quadratische Bilder oder 16:9 für Thumbs im Kinoformat, etc..).

Scheitere leider daran, dass ich nicht weiß, wie ich eine Konstante aus dem Setup der Extension übergeben kann

irgendwie so im Setup:

```typoscript
plugin.tx_lzgallery_pi1.verhaeltnis = 1:1
```

Aber wie lese ich die Variable in der Extension wieder aus?

### [#15](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/15) · just2b · 2006-06-16

> **wunschtacho schrieb:**
>
> Scheitere leider daran, dass ich nicht weiß, wie ich eine Konstante aus dem Setup der Extension übergeben kann
>
> irgendwie so im Setup:
>
> ```typoscript
> plugin.tx_lzgallery_pi1.verhaeltnis = 1:1
> ```
>
> Aber wie lese ich die Variable in der Extension wieder aus?

```typoscript
$this->conf['verhaeltnis']
```

georg

### [#16](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/16) · einpraegsam.​net · 2006-06-16

Seit 4 Stunden suche ich schon nach der Lösung und genau jetzt habe ich es selbst rausgefunden ;)

trotzdem danke - ich poste später mal den ganzen Code, vielleicht kann einer was damit anfangen...

PS: Danke für den GB Eintrag, Silke hat sich gefreut ;)

### [#17](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/17) · just2b · 2006-06-16

> **wunschtacho schrieb:**
>
> Seit 4 Stunden suche ich schon nach der Lösung und genau jetzt habe ich es selbst rausgefunden ;)

du hättest ganz einfach schauen können was schon so in der setup.txt steht und danach im Code suchen können... klassicherweise das template.file.. ;)

> **wunschtacho schrieb:**
>
> PS: Danke für den GB Eintrag, Silke hat sich gefreut ;)

macht man doch gerne ;) gruß an die silke *schleim* :D

### [#18](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/18) · einpraegsam.​net · 2006-06-16

```typoscript
$this->conf['verhaeltnis']
```

geht aber nur in der Funktion main !?

nicht in einer anderen Funktion :(

### [#19](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/19) · just2b · 2006-06-16

dann muss du das $conf eben der funktion noch übergeben...

### [#20](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/20) · einpraegsam.​net · 2006-06-16

oh mann... :(

### [#21](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/21) · einpraegsam.​net · 2006-06-16

Also, neue Version mit Möglichkeit die Qualität und das Größenverhältnis über TS im Setup mit anzugeben.
Bei Auswahl von Größenverhältnis 16:9 werden die Vorschaubilder im Kinoformat angezeigt (Bilder werden beschnitten, nicht skaliert!)

Änderungen in der class.tx_lzgallery_pi1.php

Diese Funktion oben mit einbinden:

```php
// Funktion zum Vorschaubilder abschneiden BEGIN
function createThumb($bild,$quality,$bild_ergebnis,$breite,$verhaeltnis) {
     global $fotoPfad;
     $thumbPfad = 'typo3temp/pics/';
	//echo 'verhältnis: '.$verhaeltnis.'<br>';
	$verhaeltnis_array = explode(":", $verhaeltnis);
	$size=getimagesize("$fotoPfad"."$bild"); // Hole die Abmessung des Fotos
	
	if ($verhaeltnis_array[0] == $verhaeltnis_array[1]) { // wenn Verhältnis 1:1
	 	if ($size[0] > $size[1]) { // Wenn Breite größer als Höhe (Querformat)
	 		$y = $size[1]; $x = $size[1]; // Orientiere dich an der Höhe
	 	}
	 	else { 
			$y = $size[0]; $x = $size[0]; // Orientiere dich an der Breite
		} 
	}
	if ($verhaeltnis_array[0] > $verhaeltnis_array[1]) { // wenn Verhältnis 2:1 oder ähnlich
		if ($size[0] > $size[1]) { // Wenn Breite größer als Höhe (Querformat)
			$x = $size[1];
			$y = $size[1] / $verhaeltnis_array[0] * $verhaeltnis_array[1];
		}
		else { 
			$x = $size[0];
			$y = $size[0] / $verhaeltnis_array[0] * $verhaeltnis_array[1];
		} 
	}
	if ($verhaeltnis_array[0] < $verhaeltnis_array[1]) { // wenn Verhältnis 1:2 oder ähnlich
		$y = $size[1];
		$x = $size[1] * $verhaeltnis_array[0] / $verhaeltnis_array[1];
	}
     $altesBild=ImageCreateFromJPEG($fotoPfad.$bild);
     $neuesBild=imageCreateTrueColor($x,$y);
	 ImageCopy($neuesBild,$altesBild,0,0,0,0,$x,$y);
     ImageJPEG($neuesBild,"$thumbPfad".$bild_ergebnis,$quality);
	 return '<img src="'.$thumbPfad.$bild_ergebnis.'" border="0" width="'.$breite.'">';
}
// Funktion zum Vorschaubilder abschneiden END
```

Unter:

```php
function main($content,$conf)	{
```

Folgende Zeilen einbinden:

```php
$verhaeltnis = $conf['verhaeltnis']; $thumbquality = $conf['thumbquality'];
		$GLOBALS["verhaeltnis"] = $verhaeltnis; $GLOBALS["thumbquality"] = $thumbquality;
```

unter:

```php
$this->TSinfo('Generating preview image with imagemagick... (slow)');
```

diesen Block einfügen:

```php
// Vorschaubilder beschneiden BEGIN
						$verhaeltnis = $GLOBALS["verhaeltnis"];
						$thumbquality = $GLOBALS["thumbquality"];
						if (!$thumbquality) { $thumbquality = '30'; } // Wenn kein Qualität von TS übergeben wird, dann nimm 30
						if (!$verhaeltnis) { $verhaeltnis = '1:1'; } // Wenn kein Verhältnis von TS übergeben wird, dann nimm 1:1
						if ($cols > '1' AND $this->options['clickmode'] != 'newwindow') {
							$img = createThumb($imgconf['file'],$thumbquality,'thumb'.$imgconf['alttext'],$imgconf['file.']['width'],$verhaeltnis);
						}
						elseif ($this->options['clickmode'] == 'newwindow') {
							$img = createThumb($imgconf['file'],$thumbquality,'thumb'.$imgconf['alttext'],$imgconf['file.']['width'],$verhaeltnis);
							$img = '<a href="#" onclick="vHWin=window.open(\''.$imgconf['file'].'\',\'FEopenLink\',\'toolbar=0,scrollbars=1,location=0,resizable=0,width=600,height=500\');vHWin.focus();return false;">'.$img.'</a>';
						}
						else {
							if(! $img = $this->cObj->IMAGE($imgconf)) $this->TSwarn('Problem loading: '. $imgconf['file']);
						}
					// Vorschaubilder beschneiden END
```

Diese Zeile auskommentieren (direkt unter dem zuletzt eingefügten Block):

```php
if(! $img = $this->cObj->IMAGE($imgconf)) $this->TSwarn('Problem loading: '. $imgconf['file']);
```

Getestet unter TYPO3 3.7 und 4.0

Viel Spaß :)

### [#22](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/22) · einpraegsam.​net · 2006-06-16

Also, neue Version mit Möglichkeit die Qualität und das Größenverhältnis über TS im Setup mit anzugeben.
Bei Auswahl von Größenverhältnis 16:9 werden die Vorschaubilder im Kinoformat angezeigt (Bilder werden beschnitten, nicht skaliert!)

Änderungen in der class.tx_lzgallery_pi1.php

Diese Funktion oben mit einbinden:

```php
// Funktion zum Vorschaubilder abschneiden BEGIN
function createThumb($bild,$quality,$bild_ergebnis,$breite,$verhaeltnis) {
     global $fotoPfad;
     $thumbPfad = 'typo3temp/pics/';
	//echo 'verhältnis: '.$verhaeltnis.'<br>';
	$verhaeltnis_array = explode(":", $verhaeltnis);
	$size=getimagesize("$fotoPfad"."$bild"); // Hole die Abmessung des Fotos
	
	if ($verhaeltnis_array[0] == $verhaeltnis_array[1]) { // wenn Verhältnis 1:1
	 	if ($size[0] > $size[1]) { // Wenn Breite größer als Höhe (Querformat)
	 		$y = $size[1]; $x = $size[1]; // Orientiere dich an der Höhe
	 	}
	 	else { 
			$y = $size[0]; $x = $size[0]; // Orientiere dich an der Breite
		} 
	}
	if ($verhaeltnis_array[0] > $verhaeltnis_array[1]) { // wenn Verhältnis 2:1 oder ähnlich
		if ($size[0] > $size[1]) { // Wenn Breite größer als Höhe (Querformat)
			$x = $size[1];
			$y = $size[1] / $verhaeltnis_array[0] * $verhaeltnis_array[1];
		}
		else { 
			$x = $size[0];
			$y = $size[0] / $verhaeltnis_array[0] * $verhaeltnis_array[1];
		} 
	}
	if ($verhaeltnis_array[0] < $verhaeltnis_array[1]) { // wenn Verhältnis 1:2 oder ähnlich
		$y = $size[1];
		$x = $size[1] * $verhaeltnis_array[0] / $verhaeltnis_array[1];
	}
     $altesBild=ImageCreateFromJPEG($fotoPfad.$bild);
     $neuesBild=imageCreateTrueColor($x,$y);
	 ImageCopy($neuesBild,$altesBild,0,0,0,0,$x,$y);
     ImageJPEG($neuesBild,"$thumbPfad".$bild_ergebnis,$quality);
	 return '<img src="'.$thumbPfad.$bild_ergebnis.'" border="0" width="'.$breite.'">';
}
// Funktion zum Vorschaubilder abschneiden END
```

Unter:

```php
function main($content,$conf)	{
```

Folgende Zeilen einbinden:

```php
$verhaeltnis = $conf['verhaeltnis']; $thumbquality = $conf['thumbquality'];
		$GLOBALS["verhaeltnis"] = $verhaeltnis; $GLOBALS["thumbquality"] = $thumbquality;
```

unter:

```php
$this->TSinfo('Generating preview image with imagemagick... (slow)');
```

diesen Block einfügen:

```php
// Vorschaubilder beschneiden BEGIN
						$verhaeltnis = $GLOBALS["verhaeltnis"];
						$thumbquality = $GLOBALS["thumbquality"];
						if (!$thumbquality) { $thumbquality = '30'; } // Wenn kein Qualität von TS übergeben wird, dann nimm 30
						if (!$verhaeltnis) { $verhaeltnis = '1:1'; } // Wenn kein Verhältnis von TS übergeben wird, dann nimm 1:1
						if ($cols > '1' AND $this->options['clickmode'] != 'newwindow') {
							$img = createThumb($imgconf['file'],$thumbquality,'thumb'.$imgconf['alttext'],$imgconf['file.']['width'],$verhaeltnis);
						}
						elseif ($this->options['clickmode'] == 'newwindow') {
							$img = createThumb($imgconf['file'],$thumbquality,'thumb'.$imgconf['alttext'],$imgconf['file.']['width'],$verhaeltnis);
							$img = '<a href="#" onclick="vHWin=window.open(\''.$imgconf['file'].'\',\'FEopenLink\',\'toolbar=0,scrollbars=1,location=0,resizable=0,width=600,height=500\');vHWin.focus();return false;">'.$img.'</a>';
						}
						else {
							if(! $img = $this->cObj->IMAGE($imgconf)) $this->TSwarn('Problem loading: '. $imgconf['file']);
						}
					// Vorschaubilder beschneiden END
```

Diese Zeile auskommentieren (direkt unter dem zuletzt eingefügten Block):

```php
if(! $img = $this->cObj->IMAGE($imgconf)) $this->TSwarn('Problem loading: '. $imgconf['file']);
```

Im Setup könnt Ihr noch folgendes festlegen:

```typoscript
plugin.tx_lzgallery_pi1.verhaeltnis = 1:1
plugin.tx_lzgallery_pi1.thumbquality = 30
```

Getestet unter TYPO3 3.7 und 4.0

Viel Spaß :)

### [#23](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/23) · einpraegsam.​net · 2006-06-16

Beispiel bei 1:1
<http://www.smokethis.de/snowgallery.html?&tx_lzgallery_pi1%5BshowUid%5D=113>

Beispiel 4:3
<http://www.justpowder.de/galerie3.0.html?&tx_lzgallery_pi1%5BshowUid%5D=127>

Viel Spaß

### [#24](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/24) · test_bed · 2006-06-18

hi,
könntest du deine modifizierte datei zum download zur verfügung stellen.
scheitere an dem letzten baustein und finde den fehler nicht:

ich meine den block nach:
$this->TSinfo('Generating preview image with imagemagick... (slow)');

danach bleibt die seite ganz leer. aber ohne fehlermeldung.
gruss+dank
stefan

### [#25](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/25) · einpraegsam.​net · 2006-06-19

Bittesehr ;)

```php
$imgconf['file'] = $this->images[0][$numpic];
					$imgconf['alttext'] = $filename;
					
					$this->TSpush('Imagemagick');
					$this->TSinfo('Generating preview image with imagemagick... (slow)');
					// Vorschaubilder beschneiden BEGIN
						$verhaeltnis = $GLOBALS["verhaeltnis"];
						$thumbquality = $GLOBALS["thumbquality"];
						if (!$thumbquality) { $thumbquality = '30'; } // Wenn kein Qualität von TS übergeben wird, dann nimm 30
						if (!$verhaeltnis) { $verhaeltnis = '1:1'; } // Wenn kein Verhältnis von TS übergeben wird, dann nimm 1:1
						if ($cols > '1' AND $this->options['clickmode'] != 'newwindow') {
							$img = createThumb($imgconf['file'],$thumbquality,'thumb'.$imgconf['alttext'],$imgconf['file.']['width'],$verhaeltnis);
						}
						elseif ($this->options['clickmode'] == 'newwindow') {
							$img = createThumb($imgconf['file'],$thumbquality,'thumb'.$imgconf['alttext'],$imgconf['file.']['width'],$verhaeltnis);
							$img = '<a href="#" onclick="vHWin=window.open(\''.$imgconf['file'].'\',\'FEopenLink\',\'toolbar=0,scrollbars=1,location=0,resizable=0,width=600,height=500\');vHWin.focus();return false;">'.$img.'</a>';
						}
						else {
							if(! $img = $this->cObj->IMAGE($imgconf)) $this->TSwarn('Problem loading: '. $imgconf['file']);
						}
					// Vorschaubilder beschneiden END
					$this->TSpull();
					if($this->options['clickmode'] != 'newwindow') {
//						if($this->options['clickmode']=='download' && $this->options['colrows']!='1x1'){
//							$url = '<a href="' . $this->getUrl('',array('down'=>$numpic+1)) .'?lzgallerydown=1'. '" target="_new">';
//						} else {
							if($this->options['colrows']!='1x1') {
								$url = $this->getUrl('|',array('pic'=>$numpic+1, 'colrows'=> '1x1'));
							}
//						}
						if($this->galconf['ATagBeforeWrap']) {
							$img = $this->cObj->wrap($img, $url);
						}
```

### [#26](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/26) · test_bed · 2006-06-19

hi, zunächst vielen dank, aber:
irgendwo ist da der wrum drin.

in dem von dir jetzt geposteten schnipsel ist ja das:
if(! $img = $this->cObj->IMAGE($imgconf)) $this->TSwarn('Problem loading: '. $imgconf['file']);
eben nicht auskommentiert !?!

kannst du nicht einfach die ganze class.tx_lzgallery_pi1.php posten oder mailen oder zum download anbieten?

das wäre sehr, sehr hilfreich.

gruss+dank
stefan

### [#27](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/27) · einpraegsam.​net · 2006-06-19

na, so schwer ist das doch nicht...

ok, hier die datei zum download:
<http://www.ledblue.com/wunschtacho/temp/typo3/lzgallery.zip>

### [#28](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/28) · test_bed · 2006-06-19

super. jetzt geht es. was wunder. der fehler lag natürlich bei mir! sorry.

eine nachfrage noch: mit .gifs oder indexed colors generiert die gallery nun bei den thumbs ein schwarzes bild. vorher war das nicht so.
liegt an deiner neuen funktion, weil die nur jpegs generiert, oder?
trotzdem schon mal danke ist eine sehr sinnvolle veränderung der extension.
s.

### [#29](https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion/29) · einpraegsam.​net · 2006-06-19

Bislang nur normale JPG - sorry

---

Quelle: „Suche Galerie mit Crop Funktion“, typo3.net, https://www.typo3.net/d/44600-suche-galerie-mit-crop-funktion
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
