Zum Inhalt springen

GIFBUILDER Alpha Transparenz mit dynamischer Maske

Erstellt am 11. September 2009 · 6 Antworten · letzte Antwort am 25. September 2009

Tags: Bilder, Frage

Thasmo ·

Hallo Leute!

Seit Monaten stoße ich immer wieder auf das Problem, dass mir der Gifbuilder
verweigert Alpha-Transparenz darzustellen. Transparente Bereiche von explizit
als PNG auszugebenden Bildern, werden dargestellt als seine es GIF-Bilder.

Anstatt einer schön geglätteten, transparenten Kante, wird am Rand die
definierte Hintergrundfarbe angezeigt, und es wird nur 0% oder 100%
Transparenz erzeugt, aber keine Alpha-Transparenz.

Gegoogelt hab' ich schon Ende nie, aber die Beispiele funktionieren
bei mir alle nicht bzw. habe ich bis jetzt auch kein wirklich einfaches
oder verständliches Tutorial gefunden.

Hier ein Beispiel:

10 = IMG_RESOURCE
10 {
	file = GIFBUILDER
	file {
		XY = 640,480
		backColor = #000000
		transparentBackground = 1
		format = png
		
		10 = TEXT
		10 {
			value = TEST
			
			fontSize = 17
			fontFile = fileadmin/web/fonts/arial.ttf
			fontColor = #FF0000
			
			align = center
			
			offset = 0,100
			niceText = 1
		}
	}
	
	mask < .file {
		transparentBackground = 0
		backColor = #000000
		10.fontColor = #FFFFFF
	}
}

Laut meinen Tests wird hier der rote Text zwar dargestellt,
aber die Kanten des Textes pixeln schwarz aus. Der Hintergrund
ist zwar transparent (wie beim GIF), aber die Textränder verhalten
sich leider auch so wie bei einem GIF.

Bis jetzt hab' ich keine funktionierende Lösung gefunden, meines
Wissens ist bei uns GD 2 und IM6 instaliert.

Hat denn jemand eine Idee oder eine Lösung parat?

Herzlichen Dank für eure Hilfe!

Thasmo ·
moritz schrieb

hilft dir das weiter:

http://wiki.typo3.org/index.php/GIFBUILDER

da sind viele Beispiele drin

Das kenn' ich, danke - folgendes Beispiel
basierend auf deinem Link, erzeugt bei mir
nur rote Rechtecke ohne Text davor:

tpl.mainmenu = COA
tpl.mainmenu {
	10 = HMENU
	10 {
		entryLevel = 0
		
		# Level 1
		1 = TMENU
		
		1 {
			NO = 1
			NO {
				ATagParams.cObject = COA
				ATagParams.cObject {
					10 = IMG_RESOURCE
					10 {
						stdWrap {
							dataWrap = style="background-image: url('/|');" id="mainmenu_{field:uid}" class="page_{field:uid}" title="{field:subtitle//nav_title//title}"
						}
						
						file = GIFBUILDER
						file {
							XY = 102,110 || 178,110
							format = png
							
							backColor = #FF0000
						}
						
						mask = GIFBUILDER
						mask {
							XY = 102,110 || 178,110
							backColor = #FFFFFF
							
							10 = TEXT
							10 {
								text.field = nav_title // title
								fontSize = 17
								fontFile = fileadmin/web/fonts/arial.ttf
								offset = 0,32 || 20,32
								fontColor = #FFFFFF
								niceText = 1
								align = center || left
							}
						}
					}
				}
			}
		}
	}
}

Bei mir sind die Menüpunkt-Grafiken komplett rot,
was mach ich da falsch?

Das Endergebnis sollte weißer Text sein, der
auf transparentem Hintergrund steht, ohne auszupixeln.

Hat jemand eine Idee? Hab ich einen Fehler im TS?

Thasmo ·

Vielen Dank für deine Antwort!

Die Einstellungen betreffend IM und GD sind diese:

$TYPO3_CONF_VARS['GFX']['im_combine_filename'] = 'composite';
$TYPO3_CONF_VARS['GFX']['im_version_5'] = 'im6';
$TYPO3_CONF_VARS['GFX']['TTFdpi'] = '96';
$TYPO3_CONF_VARS['GFX']['gdlib_2'] = '1';
$TYPO3_CONF_VARS['GFX']['im_imvMaskState'] = '1';
$TYPO3_CONF_VARS['GFX']['im_v5effects'] = '1';
$TYPO3_CONF_VARS['GFX']['png_truecolor'] = '1';

Beim "Image Processing" Test im Install-Tool schlägt nur
beim Test "Scaling Images" das letzte Beispiel "GIF to JPG" fehl,
hier hat das generierte Bild einen schwarzen Hintergrund.

Aber das hatte ich bis dato immer ignoriert, weil eigentlich -
bis auf die Alpha-Transparenz - alles soweit funktioniert hatte.

Kann es daran liegen?

Vielen Dank für eure Unterstützung! =o)