PDA

Просмотр полной версии : Настройки параметров ImageMagick для TYPO3 на FreeBSD и Linux


Valery Romanchev
16.03.2008, 14:05
Не секрет, что наши российские админы очень любят FreeBSD. На западных хостингах и в корпоративном секторе она встречается реже.

Поэтому решение проблем в настройках генерации изображений в TYPO3 на FreeBSD не так легко найти в Google.

Какие это проблемы:
1) наложение изображений не работает как следует (на выходе не имеем ничего, либо плохое качество)
2) неверное расстояние между буквами в словах, созданных TTF шрифтами (т.е. проблемы в работе GD в PHP5)

Какак можно решить эти проблемы:

1) настройки параметров в localconf.php

$TYPO3_CONF_VARS["GFX"]["TTFdpi"] = '96'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']['gdlib_2'] = '1'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']['gdlib_png']='1';

$TYPO3_CONF_VARS['GFX']['gif_compress'] = '0'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']['png_truecolor'] = '1'; // Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['GFX']['im_version_5'] = 'im6'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']["im_path"] = '/usr/local/bin/'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']["im_path_lzw"] = '/usr/local/bin/'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']['im_combine_filename'] = 'composite'; // Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['GFX']['im_no_effects'] = '0'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']['im_v5effects'] = '1'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']['im_negate_mask'] = '1'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']['im_imvMaskState'] = '1'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']['im_mask_temp_ext_noloss'] = 'png';
$TYPO3_CONF_VARS['GFX']['im_mask_temp_ext_gif'] = '0'; // Modified or inserted by TYPO3 Install Tool.


//$TYPO3_CONF_VARS['GFX']['enable_typo3temp_db_tracking'] = '1'; // Modified or inserted by TYPO3 Install Tool.


2) использование nicetext в TS
(nicetext реализует такую вещь: GD печатает буквы в 2-5 раз больше, а затем картинки уменьшаются до нужного размера)

Приведу полный пример DS для одного FCE с графическим текстом и картинкой для сайта на котором используется DAM.

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<T3DataStructure>
<meta type="array">
<langDisable>1</langDisable>
</meta>
<ROOT type="array">
<tx_templavoila type="array">
<title>ROOT</title>
<description>Выберите HTML-элемент на странице, который будет содержать все остальные элементы</description>
</tx_templavoila>
<type>array</type>
<el type="array">
<field_img1 type="array">
<tx_templavoila type="array">
<title>Image1</title>
<sample_data type="array">
<numIndex index="0"></numIndex>
</sample_data>
<eType>dam_image</eType>
<TypoScript><![CDATA[





10 = LOAD_REGISTER
10{
vall.cObject = USER
vall.cObject{
userFunc = tx_damtvc_tsfe->fetchFileList
}
}

11=TEXT
11.typolink.parameter.field = field_link
11.typolink.returnLast = url
11.wrap = <a href="|"

20 = IMG_RESOURCE

20.stdWrap.wrap = class="img" style="width:165px;height:165px;background-image:url(|)"><!--IMAGE--></a>
20.file = GIFBUILDER
20.file.XY = 165,330
20.file.10 = IMAGE
20.file.10.insertData = 1
20.file.10.file.import.data=register:vall


20.file.11 = EFFECT
20.file.11.value = gray



20.file{
12 = TEXT
12.text.field =field_text
12.text.listNum.splitChar=10
12.text.listNum=0
12.fontSize=18
12.fontColor=#9D9D9E
12.fontFile = fileadmin/templates/fonts/FTX85__U.TTF
12.offset=7,20
#12.niceText=0
12.niceText = 1
12.niceText.sharpen = 0
12.niceText.scaleFactor = 5

#12.wordSpacing = -4
#12.spacing = 0
13 <.12
13.text.listNum=1
13.offset=7,20+[12.h]+7
14 <.12
14.text.listNum=2
14.offset=7,22+[12.h]+[13.h]+7
}



20.file.20 = IMAGE
20.file.20.insertData = 1

20.file.20.file.import.data=register:vall
20.file.20.offset=0,165


20.file.30 = TEXT
20.file.30.text.field =field_text
20.file.30.text.listNum.splitChar=10
20.file.30.text.listNum=0
20.file.30.fontSize=18
20.file.30.fontColor=#9D9D9E
20.file.30.fontFile = fileadmin/templates/fonts/FTX85__U.TTF
20.file.30.offset=7,185
20.file.30.niceText = 1
20.file.30.niceText.sharpen = 0
20.file.30.niceText.scaleFactor = 5


#20.file.30.wordSpacing = -4
#20.file.30.spacing = 0
20.file.31 < 20.file.30
20.file.31.text.listNum=1
20.file.31.offset=7,185+[30.h]+7
20.file.32 < 20.file.30
20.file.32.text.listNum=2
20.file.32.offset=7,187+[30.h]+[31.h]+7

///////////////////////////////

]]></TypoScript>
</tx_templavoila>
<TCEforms type="array">
<config type="array">
<form_type>user</form_type>
<userFunc><![CDATA[EXT:dam/lib/class.tx_dam_tcefunc.php:&tx_dam_tceFunc->getSingleField_typeMedia]]></userFunc>
<type>group</type>
<internal_type>db</internal_type>
<allowed>tx_dam</allowed>
<prepend_tname type="integer">1</prepend_tname>
<MM>tx_dam_mm_ref</MM>
<MM_foreign_select type="integer">1</MM_foreign_select>
<MM_opposite_field>file_usage</MM_opposite_field>
<MM_match_fields type="array">
<ident>field_img1</ident>
</MM_match_fields>
<allowed_types>gif,jpg,jpeg,tif,bmp,pcx,tga,png,pdf,ai</allowed_types>
<max_size>1000</max_size>
<show_thumbs type="integer">1</show_thumbs>
<size type="integer">5</size>
<maxitems type="integer">200</maxitems>
<minitems type="integer">0</minitems>
<autoSizeMax type="integer">30</autoSizeMax>
</config>
<label>Image1</label>
</TCEforms>
</field_img1>

<field_link type="array">
<type>attr</type>
<tx_templavoila type="array">
<title>Link</title>
<sample_data type="array">
<numIndex index="0"></numIndex>
</sample_data>
<eType>link</eType>
<tags>a:attr:href</tags>
<TypoScript>
10 = TEXT
10.typolink.parameter.current = 1
10.typolink.returnLast = url
</TypoScript>
<proc type="array">
<HSC type="integer">1</HSC>
</proc>
</tx_templavoila>
<TCEforms type="array">
<config type="array">
<type>input</type>
<size>15</size>
<max>256</max>
<checkbox></checkbox>
<eval>trim</eval>
<wizards type="array">
<_PADDING type="integer">2</_PADDING>
<link type="array">
<type>popup</type>
<title>Link</title>
<icon>link_popup.gif</icon>
<script>browse_links.php?mode=wizard</script>
<JSopenParams>height=300,width=500,status=0,menubar=0,scrollbars =1</JSopenParams>
</link>
</wizards>
</config>
<label>Link</label>
</TCEforms>
</field_link>
<field_text type="array">
<tx_templavoila type="array">
<title>Grafical text</title>
<sample_data type="array">
<numIndex index="0"></numIndex>
</sample_data>
<eType>text</eType>

<proc type="array">
<HSC type="integer">1</HSC>
</proc>
</tx_templavoila>
<TCEforms type="array">
<config type="array">
<type>text</type>
<cols>48</cols>
<rows>5</rows>
</config>
<label>Grafical text</label>
</TCEforms>
</field_text>
</el>
</ROOT>
</T3DataStructure>




Актуальный конфиг для Linux (делался для Altlinux, на REDHAT Enterprise 5.2 i686 заработал сразу)


$TYPO3_CONF_VARS['GFX']['gdlib_2'] = '1';
$TYPO3_CONF_VARS['GFX']['gdlib_png'] = 1;
$TYPO3_CONF_VARS["GFX"]["TTFdpi"] = '96';

$TYPO3_CONF_VARS['GFX']['png_truecolor'] = '1';
//$TYPO3_CONF_VARS['GFX']['gif_compress'] = 0;


$TYPO3_CONF_VARS['GFX']['im_version_5'] = 'im5'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']["im_path"] = '/usr/bin/'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']["im_path_lzw"] = '/usr/local/bin/';
$TYPO3_CONF_VARS['GFX']['im_combine_filename'] = 'composite'; // Modified or inserted by TYPO3 Install Tool.

$TYPO3_CONF_VARS['GFX']['im_imvMaskState']= '0';
$TYPO3_CONF_VARS['GFX']['im_no_effects'] = '0';
$TYPO3_CONF_VARS['GFX']['im_v5effects'] = '1';
$TYPO3_CONF_VARS['GFX']['im_negate_mask'] = '1';
$TYPO3_CONF_VARS['GFX']['im_mask_temp_ext_gif'] = '0';
$TYPO3_CONF_VARS['GFX']['im_mask_temp_ext_noloss'] = 'miff';

-=UncleByte=-
19.06.2008, 17:37
Валерий, огромное спасибо! Наконец-то удалось совладать с IM 6.3.5 и только при помощи этого конфига.

Lucifer
16.06.2009, 14:16
+1.
Были проблемы с размерами. конфиг для фряхи уменьшил размер картинок раз в 10 :)

margol
19.06.2009, 14:31
+1
Cпасибо.
Под убунту помог этот конфиг для ImageMagick4 с заментой вот этих параметров:

$TYPO3_CONF_VARS['GFX']['im_version_5'] = 'im4';
$TYPO3_CONF_VARS['GFX']["im_path"] = '/var/www/site/Imagemagik/bin/';
$TYPO3_CONF_VARS['GFX']["im_path_lzw"] = '/var/www/site/Imagemagik/bin/';


Но с ImageMagick6 у меня непонятки, у него вообще нет таких документов как 'convert', 'combine', 'identify' так что на что делать ссылку в параметре $TYPO3_CONF_VARS['GFX']["im_path"] не понятно.

Pavel Antonov
19.06.2009, 19:49
Но с ImageMagick6 у меня непонятки, у него вообще нет таких документов как 'convert', 'combine', 'identify' так что на что делать ссылку в параметре $TYPO3_CONF_VARS['GFX']["im_path"] не понятно.

Во-первых, это программы, а не "документы".
Во-вторых, все есть, только combine переименован в composite. Install Tool об этом знает, когда пытается определить место положение и версию IM.

Либо IM у Вас вообще не установлен, либо нет прав на доступ к его запускаемым файлам, либо PHP работает в safe-mode/запрещен exec. Последнее из Install Tool видно.

dim19
13.10.2009, 18:01
Да, супер конфиг, спасибо, сразу картинки как на ладони стали!
только вот что с PDF делать, то, да и с AI? они у меня, что на сервере, что на локаленой машине, постоянно red line, хотя вроде все для этого есть...

Pavel Antonov
13.10.2009, 20:36
Да, супер конфиг, спасибо, сразу картинки как на ладони стали!
только вот что с PDF делать, то, да и с AI? они у меня, что на сервере, что на локаленой машине, постоянно red line, хотя вроде все для этого есть...

Зависит от сборки ImageMagick. Вполне возможно что при сборке не указывали эти форматы. Вообще говоря они никогда и не нужны... разве что preview показывать.

taaank
27.10.2012, 10:15
У меня работает следующая конфигурацыя может комуто пригодится
centos 6 86_64 IM6 php 5,3
Только один минус фон в GIF to JPG, 150 pixels wide фон черный.

$TYPO3_CONF_VARS['GFX']['gdlib_png'] = '1';
$TYPO3_CONF_VARS["GFX"]["TTFdpi"] = '96';
$TYPO3_CONF_VARS['GFX']['png_truecolor'] = '1';
$TYPO3_CONF_VARS['GFX']['gif_compress'] = '1';
$TYPO3_CONF_VARS['GFX']['im_version_5'] = 'im6'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']["im_path"] = '/usr/bin/'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']["im_path_lzw"] = '/usr/bin/';
$TYPO3_CONF_VARS['GFX']['im_combine_filename'] = 'composite'; // Modified or inserted by TYPO3 Install Tool.
$TYPO3_CONF_VARS['GFX']['im_imvMaskState']= '1';
$TYPO3_CONF_VARS['GFX']['im_no_effects'] = '0';
$TYPO3_CONF_VARS['GFX']['im_v5effects'] = '1';
$TYPO3_CONF_VARS['GFX']['im_negate_mask'] = '1';
$TYPO3_CONF_VARS['GFX']['im_mask_temp_ext_gif'] = '0';
$TYPO3_CONF_VARS['GFX']['im_mask_temp_ext_noloss'] = 'miff';

vedomir
25.06.2013, 21:52
Только один минус фон в GIF to JPG, 150 pixels wide фон черный.


Вот то же самое. Вопрос - что за опцию надо покрутить.

taaank
25.06.2013, 22:38
Только один минус фон в GIF to JPG, 150 pixels wide фон черный.


Вот то же самое. Вопрос - что за опцию надо покрутить.

Настройки зависят от версии Вашей IM версии typo3 ось и тд.

Пробуй мож какраз))):


$TYPO3_CONF_VARS['GFX']['gdlib_png'] = '1';
$TYPO3_CONF_VARS["GFX"]["TTFdpi"] = '96';
$TYPO3_CONF_VARS['GFX']['png_truecolor'] = '1';
$TYPO3_CONF_VARS['GFX']['gif_compress'] = '1';
$TYPO3_CONF_VARS['GFX']['im_version_5'] = 'im6';
$TYPO3_CONF_VARS['GFX']["im_path"] = '/usr/bin/';
$TYPO3_CONF_VARS['GFX']["im_path_lzw"] = '/usr/bin/';
$TYPO3_CONF_VARS['GFX']['im_combine_filename'] = 'composite';
$TYPO3_CONF_VARS['GFX']['im_imvMaskState']= '1';
$TYPO3_CONF_VARS['GFX']['im_no_effects'] = '0';
$TYPO3_CONF_VARS['GFX']['im_v5effects'] = '1';
$TYPO3_CONF_VARS['GFX']['im_negate_mask'] = '1';
$TYPO3_CONF_VARS['GFX']['im_mask_temp_ext_gif'] = '0';
$TYPO3_CONF_VARS['GFX']['im_mask_temp_ext_noloss'] = 'miff';
$TYPO3_CONF_VARS['GFX']['jpg_quality'] = '100';


Поиграй с $TYPO3_CONF_VARS['GFX']['gif_compress'] = '0';