Спустя 24 минуты, 44 секунды (17.12.2010 - 16:56) linker написал(а):
Либо GD, либо шапку в бэкграунд и поверх тупо текст, но это HTML.
Спустя 4 минуты, 42 секунды (17.12.2010 - 17:00) eXtrich написал(а):
Либо GD - вот тут попрошу поподробнее. Начнем с того что такое GD?
Спустя 10 минут, 38 секунд (17.12.2010 - 17:11) sharki написал(а):
eXtrich
Гугл в помощь, он тебе объяснит, покажет и тыкнет носом =)
Гугл в помощь, он тебе объяснит, покажет и тыкнет носом =)
Спустя 21 минута, 31 секунда (17.12.2010 - 17:33) eXtrich написал(а):
Так, с GD я разобрался, но вопрос таков, как в этот код:
вставить
<a href="<?php bloginfo('url'); ?>/"><img src="<?php bloginfo('stylesheet_directory'); ?>/images/logo.jpg" alt="" /></a>
вставить
// Добавляем текст на картинку
imagestring($image,21,0,0,'Some text...',$text_color);
Спустя 29 минут, 7 секунд (17.12.2010 - 18:02) Lawyer написал(а):
если поможет - вот когда-то писал GD для генерации кнопки по шаблону
страница запроса:
страница генерации
P.S. так же есть пример для get
страница запроса:
<html>
<head>
<title>Форма создания кнопок по шаблонам</title>
</head>
<body>
Выбирите шаблон<br>
<form method="post" action="ob.php" target="_blank">
<input type="radio" name="booton" value="1" checked><img src="button1.gif"><br>
<input type="radio" name="booton" value="2"><img src="button2.gif"><br>
<input type="radio" name="booton" value="3"><img src="button3.gif"><br><br>
Введите текст будующей кнопки<br>
<input type="text" name="string" value="home" size="13" maxlength="13">
<br><br>
Введите RGB цвет
<input type="text" name="textcolor" value="000000" size="6" maxlength="6">
<br><br><br>
<input type="submit" value="Сгенерировать">
</form>
</body>
</html>
страница генерации
<?php
// Обработка переданных методом пост из формы данных и присваивание их переменным
$boo = !empty($_POST['booton']) ? $_POST['booton'] : null;
$tex = !empty($_POST['string']) ? $_POST['string'] : null;
$hex = !empty($_POST['textcolor']) ? $_POST['textcolor'] : null;
//переводим HEX RGB в DEC RGB
$txtcolor = $hex;
sscanf ($txtcolor, "%2x%2x%2x", $red, $green, $blue);
// Получаем строку текста
$string = $tex;
if (!$string) $string = "error";
// загружаем рисунок-шаблон
$im = imageCreateFromGif ("button$boo.gif");
// Создаем в палитре новый цвет
$color = imageColorAllocate ($im, $red, $green, $blue);
//Вычисляем размеры выводимого текста
$px = (imageSX ($im)-6.5*strlen ($string))/2;
// выводим строку поверх картинки
imageString ($im, 3, $px, 5, $string, $color);
// Конвентируем в PNG
Header ("content-type: image/png");
// отправляем данные в браузер
imagePng ($im);
// освобождаем память, занятую картинкой
imageDestroy ($im);
?>
P.S. так же есть пример для get
Спустя 4 минуты, 21 секунда (17.12.2010 - 18:06) Lawyer написал(а):
а по вопросу, может так...:
<?php
$image="<img src=".bloginfo('stylesheet_directory')."/images/logo.jpg>";
$text_color=000000;
?>
<a href="<?php bloginfo('url'); ?>/">
<?php
imagestring($image,21,0,0,'Some text...',$text_color);
?>
</a>
Спустя 3 часа, 34 минуты, 59 секунд (17.12.2010 - 21:41) eXtrich написал(а):
Lawyer, не работает. ХЗ в чем проблема, но ошибку сам устранить не могу, марался пол часа...
Warning: imagestring(): supplied argument is not a valid Image resource in /home/extri154/domains/buildfort.ru/public_html/wp-content/themes/realstate/header.php on line 36
Спустя 1 час, 6 минут, 52 секунды (17.12.2010 - 22:48) Lawyer написал(а):
попробуй так:
заменяешь button.gif на свою картинку, только для этого примера картинка должна быть в формате gif, если надо в jpg, меняй на imagecreatefromjpeg для png соответственно imagecreatefrompng
для вывода, там где надо отобразить пишешь следующее:
вместо Index - свой текст
P.S. работать данный код будет находясь рядом с картинкой (в одной директории), в противном случае - поправь код!
<?php
// Получаем строку текста
$string = $_SERVER['QUERY_STRING'];
if (!$string) $string = "button";
// загружаем рисунок-шаблон
$im = imageCreateFromGif ("button.gif");
// Создаем в палитре черный цвет
$color = imageColorAllocate ($im, 0, 0, 0);
//Вычисляем размеры выводимого текста
$px = (imageSX ($im)-6.5*strlen ($string))/2;
// выводим строку поверх картинки
imageString ($im, 3, $px, 5, $string, $color);
// Конвентируем в PNG
Header ("content-type: image/png");
// отправляем данные в браузер
imagePng ($im);
// освобождаем память, занятую картинкой
imageDestroy ($im);
?>
заменяешь button.gif на свою картинку, только для этого примера картинка должна быть в формате gif, если надо в jpg, меняй на imagecreatefromjpeg для png соответственно imagecreatefrompng
для вывода, там где надо отобразить пишешь следующее:
<img src="button.php?Index">
вместо Index - свой текст
P.S. работать данный код будет находясь рядом с картинкой (в одной директории), в противном случае - поправь код!
Спустя 10 часов, 30 минут, 25 секунд (18.12.2010 - 09:18) eXtrich написал(а):
Warning: Cannot modify header information - headers already sent by (output started at /home/extri154/domains/buildfort.ru/public_html/wp-content/themes/realstate/header.php:2) in /home/extri154/domains/buildfort.ru/public_html/wp-content/themes/realstate/header.php on line 46
�PNG ��� IHDR����������� 5533;�*IDATx���Ij�@��M N��zX��n�a�@ք<$���j}Z 65533;MQ������x���] ��1�<������y�N0+�a4^��v��~=+֩>��G��n5-7ʏ 33;/��j��fgȝ�_ �ŬD��X����+]�M�Y�� ;]N���%!��_>~���@}�<g�& #65533;Aj���H�kȯ��C��p�& #65533;�o7�Y �Ŭ�bVbѕ�X��X�J@,���Y ��u�_��c�o����IEND�B` 65533;
Все страшней и страшней, я не знаю, мож чего напутал, вот собственно вся страница:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
<head profile="http://gmpg.org/xfn/11">
<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />
<title><?php bloginfo('name'); ?><?php wp_title(); ?></title>
<meta name="generator" content="WordPress <?php bloginfo('version'); ?>" /> <!-- leave this for stats please -->
<style type="text/css" media="screen">
@import url( <?php bloginfo('stylesheet_url'); ?> );
</style>
<link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="<?php bloginfo('rss2_url'); ?>" />
<link rel="alternate" type="text/xml" title="RSS .92" href="<?php bloginfo('rss_url'); ?>" />
<link rel="alternate" type="application/atom+xml" title="Atom 0.3" href="<?php bloginfo('atom_url'); ?>" />
<link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" />
<?php wp_get_archives('type=monthly&format=link'); ?>
<?php //comments_popup_script(); // off by default ?>
<?php wp_head(); ?>
</head>
<body>
<div class="wrap">
<div class="header_wrap">
<div id="header">
<h1>
<img src="button.php?Index">
</h1>
<?php
// Получаем строку текста
$string = $_SERVER['QUERY_STRING'];
if (!$string) $string = "button";
// загружаем рисунок-шаблон
$im = imagecreatefromjpeg ("logo.jpg");
// Создаем в палитре черный цвет
$color = imageColorAllocate ($im, 0, 0, 0);
//Вычисляем размеры выводимого текста
$px = (imageSX ($im)-6.5*strlen ($string))/2;
// выводим строку поверх картинки
imageString ($im, 3, $px, 5, $string, $color);
// Конвентируем в PNG
Header ("content-type: image/png");
// отправляем данные в браузер
imagePng ($im);
// освобождаем память, занятую картинкой
imageDestroy ($im);
?>
<form method="get" id="searchform" action="<?php bloginfo('url'); ?>/">
<div>
<input value="" name="s" id="s" type="text" />
<input id="searchsubmit" value="" type="submit" />
</div>
</form>
</div>
</div>
<div class="content_wrap">
<div id="content">
<!-- end header -->
Спустя 5 часов, 25 минут, 1 секунда (18.12.2010 - 14:43) Lawyer написал(а):
эту часть кода надо сохранить в файле button.php
Цитата (eXtrich @ 18.12.2010 - 06:18) |
<?php // Получаем строку текста $string = $_SERVER['QUERY_STRING']; if (!$string) $string = "button"; // загружаем рисунок-шаблон $im = imagecreatefromjpeg ("logo.jpg"); // Создаем в палитре черный цвет $color = imageColorAllocate ($im, 0, 0, 0); //Вычисляем размеры выводимого текста $px = (imageSX ($im)-6.5*strlen ($string))/2; // выводим строку поверх картинки imageString ($im, 3, $px, 5, $string, $color); // Конвентируем в PNG Header ("content-type: image/png"); // отправляем данные в браузер imagePng ($im); // освобождаем память, занятую картинкой imageDestroy ($im); ?> |
а вызывать в другом файле так
<img src="button.php?Index">
где button.php - имя и адрес файла, а ?Index собственно текст на картинке, точнее сам текст Index , а ? как бы связь...
Спустя 12 минут, 32 секунды (18.12.2010 - 14:56) Lawyer написал(а):
то есть у тебя должно быть минимум 3 файла:
1. картинка logo.jpg
2. файл button.php
3. файл для вызова сгенерированной картинки
причем файл logo.jpg и button.php должны быть в одной директории, в противном случае нужно поправить код, а ссылка на генерацию надписи должно иметь полный путь до файла button.php , то есть если файл расположен в папке doc/img/logo/ относительно корневой директории то путь будет таким :
<img src="doc/img/logo/button.php?Creativ_Web_Studio">
если же файл с которого вызывается генерация расположен к примеру в директории doc/file/ то вызываться будет уже так:
<img src="../img/logo/button.php?your_text">
либо так же возможно вызвать генерацию указав полный путь до файла в интернет к примеру если файл находится по адресу mod/button.php на домене phpforum.ru то адрес будет следующим:
<img src="http://www.phpforum.ru/mod/button.php?your_text">
Ну вроде понятнее уже некуда :)
1. картинка logo.jpg
2. файл button.php
<?php
// Получаем строку текста
$string = $_SERVER['QUERY_STRING'];
if (!$string) $string = "button";
// загружаем рисунок-шаблон
$im = imagecreatefromjpeg ("logo.jpg");
// Создаем в палитре черный цвет
$color = imageColorAllocate ($im, 0, 0, 0);
//Вычисляем размеры выводимого текста
$px = (imageSX ($im)-6.5*strlen ($string))/2;
// выводим строку поверх картинки
imageString ($im, 3, $px, 5, $string, $color);
// Конвентируем в PNG
Header ("content-type: image/png");
// отправляем данные в браузер
imagePng ($im);
// освобождаем память, занятую картинкой
imageDestroy ($im);
?>
3. файл для вызова сгенерированной картинки
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
<head profile="http://gmpg.org/xfn/11">
<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />
<title><?php bloginfo('name'); ?><?php wp_title(); ?></title>
<meta name="generator" content="WordPress <?php bloginfo('version'); ?>" /> <!-- leave this for stats please -->
<style type="text/css" media="screen">
@import url( <?php bloginfo('stylesheet_url'); ?> );
</style>
<link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="<?php bloginfo('rss2_url'); ?>" />
<link rel="alternate" type="text/xml" title="RSS .92" href="<?php bloginfo('rss_url'); ?>" />
<link rel="alternate" type="application/atom+xml" title="Atom 0.3" href="<?php bloginfo('atom_url'); ?>" />
<link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" />
<?php wp_get_archives('type=monthly&format=link'); ?>
<?php //comments_popup_script(); // off by default ?>
<?php wp_head(); ?>
</head>
<body>
<div class="wrap">
<div class="header_wrap">
<div id="header">
<h1>
<img src="button.php?Creativ_Web_Studio">
</h1>
<form method="get" id="searchform" action="<?php bloginfo('url'); ?>/">
<div>
<input value="" name="s" id="s" type="text" />
<input id="searchsubmit" value="" type="submit" />
</div>
</form>
</div>
</div>
<div class="content_wrap">
<div id="content">
причем файл logo.jpg и button.php должны быть в одной директории, в противном случае нужно поправить код, а ссылка на генерацию надписи должно иметь полный путь до файла button.php , то есть если файл расположен в папке doc/img/logo/ относительно корневой директории то путь будет таким :
<img src="doc/img/logo/button.php?Creativ_Web_Studio">
если же файл с которого вызывается генерация расположен к примеру в директории doc/file/ то вызываться будет уже так:
<img src="../img/logo/button.php?your_text">
либо так же возможно вызвать генерацию указав полный путь до файла в интернет к примеру если файл находится по адресу mod/button.php на домене phpforum.ru то адрес будет следующим:
<img src="http://www.phpforum.ru/mod/button.php?your_text">
Ну вроде понятнее уже некуда :)