17.12.2020, 22:34
|
Аспирант
|
|
Регистрация: 07.12.2020
Сообщений: 72
|
|
Сообщение от laimas
|
Да наплевать что она меняется, это ведь для проверки, потому, что rtrim($show_weather.''), даже слов нет чтобы выразить какой это бред. Вот так работает?
$bg->annotateImage($draw, $weather_text_pixel_x, $weather_text_pixel_y, 0, '12°C');
А чем это отличается от $show_weather? Выясняйте, анализируйте, но не пишите чепухи в коде.
|
да работает
так этот бред еще и работает))) rtrim($show_weather.'')
точнее rtrim($show_weather.'')); стоит убрать ' ' и все не работает
Последний раз редактировалось ALFRED450, 17.12.2020 в 22:43.
|
|
18.12.2020, 07:08
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от ALFRED450
|
стоит убрать ' ' и все не работает
('$cityname')
|
Сколько можно повторять одно и тоже:
$cityname = "Город"; //это переменная со строковым значением, и ее вывод где-то, во что-то, это будет Город
'$cityname' - это строка, которая так и будет выведена $cityname.
Нет, вы все лепите и лепите эту чушь в коде, удивляясь почему не работает.
Это ваши данные, и вывод температуры как вам хочется, а вывод ее один в один по примеру из руководства.
$data = json_decode(file_get_contents('https://api.openweathermap.org/data/2.5/weather?id=498817&units=metric&appid=42633145136a94711f8d879deade6bf1&lang=ru'));
$show_weather = round($data->main->temp) . '°C';
$image = new Imagick();
$draw = new ImagickDraw();
$pixel = new ImagickPixel('white');
$image->newImage(100, 80, $pixel);
$draw->setFont('fonts/tahoma.ttf');
$draw->setFontSize(30);
$image->annotateImage($draw, 10, 45, 0, $show_weather);
$image->setImageFormat('png');
header('Content-type: image/png');
echo $image;
А это результат работы. Выполните этот код отдельно, я сомневаюсь, что у вас он не выполнится должным образом, если вы не добавите в него эту дурь rtrim($show_weather . ' ').
|
|
18.12.2020, 08:59
|
Аспирант
|
|
Регистрация: 07.12.2020
Сообщений: 72
|
|
Сообщение от laimas
|
Сколько можно повторять одно и тоже:
$cityname = "Город"; //это переменная со строковым значением, и ее вывод где-то, во что-то, это будет Город
'$cityname' - это строка, которая так и будет выведена $cityname.
Нет, вы все лепите и лепите эту чушь в коде, удивляясь почему не работает.
Это ваши данные, и вывод температуры как вам хочется, а вывод ее один в один по примеру из руководства.
$data = json_decode(file_get_contents('https://api.openweathermap.org/data/2.5/weather?id=498817&units=metric&appid=42633145136a94711f8d879deade6bf1&lang=ru'));
$show_weather = round($data->main->temp) . '°C';
$image = new Imagick();
$draw = new ImagickDraw();
$pixel = new ImagickPixel('white');
$image->newImage(100, 80, $pixel);
$draw->setFont('fonts/tahoma.ttf');
$draw->setFontSize(30);
$image->annotateImage($draw, 10, 45, 0, $show_weather);
$image->setImageFormat('png');
header('Content-type: image/png');
echo $image;
А это результат работы. Выполните этот код отдельно, я сомневаюсь, что у вас он не выполнится должным образом, если вы не добавите в него эту дурь rtrim($show_weather . ' ').
|
https://javascript.ru/forum/attachme...d=160827110 7
|
|
18.12.2020, 09:21
|
Аспирант
|
|
Регистрация: 07.12.2020
Сообщений: 72
|
|
вот вы пишите
$cityname = "Город"; //это переменная со строковым значением, и ее вывод где-то, во что-то, это будет Город
'$cityname' - это строка, которая так и будет выведена $cityname.
как в таком случае выводится дата, время, неделя не превращая ее в рисунок
вот пример:
if($view_date){
$draw->setFont(BASEPATH."/font/".$font_date);
$draw->setTextAlignment(Imagick::ALIGN_LEFT);
$draw->setFontSize($date_font_size);
$draw->setFillColor("rgb(".$date_font_color.")");
$bg->annotateImage($draw, $date_text_pixel_x, $date_text_pixel_y, 0, mb_strtoupper(date('d ') . $monthes[(date('n'))] . date(' Y')));
переменная $monthes подставляет свое тексты из источника
почему $cityname не может быть тем же источником
ведь она реально работает но в связке mb_strtoupper или rtrim
|
|
18.12.2020, 09:30
|
Аспирант
|
|
Регистрация: 07.12.2020
Сообщений: 72
|
|
попробуйте на данный пример применить свой метод
|
|
18.12.2020, 09:35
|
Аспирант
|
|
Регистрация: 07.12.2020
Сообщений: 72
|
|
Хоть дичь что получилась и работает я готов заплатить за ваш нормальный рабочий по всем правилам вариант.
В измененном работает, изменяет координаты, размеры, но единственное не отключается по команде как в этом рабочем примере:
//[true - разрешить false - запретить]
$view_last_subscriber = true; // Последний подписчик
$view_today = false; // День недели
$view_date = true; // Число
$view_clock = true; // Часы
Последний раз редактировалось ALFRED450, 18.12.2020 в 09:42.
|
|
18.12.2020, 11:48
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Делайте что хотите, а устал уже, так как писать такую чушь и удивляться почему нет текста
Сообщение от ALFRED450
|
да с датой я случайно кинул, ну сама переменная $cityname показывает город и пишет в верхнем регистре ТУЛА, а убираешь функцию летит ошибка
$bg->annotateImage($draw, $city_text_pixel_x, $city_text_pixel_y, ('$cityname');
вот так не отображается текст
|
затем опять теми же граблями
Сообщение от ALFRED450
|
вот вы пишите
$cityname = "Город"; //это переменная со строковым значением, и ее вывод где-то, во что-то, это будет Город
'$cityname' - это строка, которая так и будет выведена $cityname.
как в таком случае выводится дата, время, неделя не превращая ее в рисунок
|
Вы не с того начали, не с написания такого кода вам надо начинать, а с изучения этого раздела, так как у вас не только не хватает знаний, но и понимания элементарного.
|
|
18.12.2020, 12:36
|
Аспирант
|
|
Регистрация: 07.12.2020
Сообщений: 72
|
|
Сообщение от laimas
|
Делайте что хотите, а устал уже, так как писать такую чушь и удивляться почему нет текста
|
Цитата:
|
да с датой я случайно кинул, ну сама переменная $cityname показывает город и пишет в верхнем регистре ТУЛА, а убираешь функцию летит ошибка
$bg->annotateImage($draw, $city_text_pixel_x, $city_text_pixel_y, ('$cityname');
|
я видел что так не верно и наблюдал результат что прописалось $cityname
не хочу вступать в конфронтацию, так как прекрасно понимаю, что нуб в этом, но вы опять же называете чушью, то что РАБОТАЕТ и ОТОБРАЖАЕТ результат, но говорите что это неправильно.
Неправильно разве может работать
$bg->annotateImage($draw, $city_text_pixel_x, $city_text_pixel_y, 0, mb_strtoupper($cityname.' '));
повторяю ЭТО работает
Последний раз редактировалось ALFRED450, 18.12.2020 в 12:40.
|
|
18.12.2020, 12:43
|
Аспирант
|
|
Регистрация: 07.12.2020
Сообщений: 72
|
|
|
|
18.12.2020, 12:48
|
Профессор
|
|
Регистрация: 14.01.2015
Сообщений: 12,989
|
|
Сообщение от ALFRED450
|
но вы опять же называете чушью, то что РАБОТАЕТ
|
Вам надо выводить в верхнем регистре все? Выводе на здоровье, никто не запрещает.
Полнейшая чушь это ('$cityname') и "лечение" этого как mb_strtoupper(...). И если первое вам нужно, то зачем вы эту дурь к температуре клеите?
Ни кто с вами и не собирается вести военные действия, просто вам нужно начинать учить язык с его основ, а не хвататься сразу за то, в чем вы разобраться не можете. Это JS, но суть та же, выполните:
var $cityname = 'Город';
alert($cityname + '\n' + '$cityname')
Вопрос - почему во второй строке не выводит Город?
|
|
|
|