Как отловить ошибку при генерировании символа? Например 🛪 - эта строка не нужна вообще - у меня никакой символ не генерируется Спасибо.
Я не знаю как точно сформулировать. Возможно что вы правы. --- Добавлено --- https://unicode-table.com/ru/1F6EA/ У меня никакого самолёта тут нет. Как "поиметь" самолёт или как понять что его нет?
Приложение "Таблица символов" в винде, если на винде сидите --- Добавлено --- В пост, кстати, тоже не получилось вставить Видимо, в дефолтном шрифте нету. или отфльтровывает форум при записи в базу
???? Я хочу в php выводить код символа и сам символ. Вывожу генерацией. Выводится. Но и выводится куча пустых мест. Пустые места - не нужны. Как это отловить в php или в js? вы правда - не понимаете?
Возьми шрифт, который поддерживает все символы. Может Arial Unicode. В конце концов загляни в инспектор браузера на странице unicode-table.com, узнай что они используют. --- Добавлено --- 1. шрифт, 2. CSS для того чтобы браузер о нём узнал.
Мне не нужно "хотение помочь не разбираясь в сути" - оно отнимает ещё больше времени. --- Добавлено --- Вы тоже не понимаете что я хочу? Я хочу в php выводить код символа и сам символ. Вывожу генерацией. Выводится. Но и выводится куча пустых мест. Пустые места - не нужны. Как это отловить в php или в js? вы правда - не понимаете?
Могу подсказать куда тебе надо идти со своим "мне надо". Будь менее токсичен или проваливай. --- Добавлено --- Читай внимательно. Ты получил ответ. --- Добавлено --- Ты не уникален в своём программистском желании "понять, что его нет". Но правильный ответ таки: не надо понимать, не надо усложнять, надо просто сделать так, чтобы символ отобразился. Для этого надо использовать подходящий шрифт. Чуть-чуть оффтопик: Важно знать, что MySQL может не суметь сохранить такой символ. Традиционно utf8 character set состоит из максимум 3 байтовых символов, этого хватит на русский язык, но не на эмодзи. Я думаю на этом форуме эмодзи отфильтровываются именно поэтому. Но в современных версиях доступен utf8mb4, его хватит на всё.
Пустые или не пустые - зависит от используемого шрифта, и только. То, что оно есть в Unicode, не значит, что его врисовали в конкретный шрифт, которым пользуется браузер Благо, это можно легко исправить. А можно искать, как разбирать таблицу символов шрифта из php
С версии 5.5.3 - то есть с 2011 года. Как минимум 3 года назад я писал код именно для обхода этого нюанса. Написал.
это не ошибка объединяя все ответы что были ранее: - не видите, потому - что не задана кодировка, в которой эти символы есть - в используемом шрифте - нет такого символа (шрифт может быть как подгружаемый, так и тот что у вас на компьютере установлен) - не во всех кодировках можно их сохранить (только в utf8mb4) Что из этого вам непонятно?
Мне всё понятно. И было понятно. Внимательно читайте заголовок темы: Как отловить ошибку при генерировании символа? не нравится слово ошибка? Ок: Как отловить отсутствие символа при генерировании символа?
Для тех кто в танке - символы не отсутствуют!!! Они просто не могут быть отображены конкретно например на вашем компе, а на другом с шрифтом нужным - будет видно... И php, и js не знают, не могут знать - отображаются ли символы на вашем экране Чтоб такой проблемы не было, находят шрифт в котором есть все что нужно, и принудительно его загружают через css
Такие страсти)) я даже Милторга временно достал из персонального бана чтобы посмотреть о чем речь Как мне видится, правильный ответ на исходный вопрос: НИКАК Может и было бы как-нить можно, если PHP запустить на компьютере клиента с правами администратора Да даже и в этом случае я затрудняюсь навскидку ответить как это можно сделать. Понять. Простить.
Один иностранец предлагает измерять ширину на js искомого и эталонного элементов - наверное правда решения нет. Ну и фиг с ним. --- Добавлено --- Но тут очень много людей написало - что решение есть. Правда не привели ни строчки кода.
1не увидел ни одного -" что есть решение" Есть решение как сделать чтоб было видно всегда. как вариант крайнего изврата - формировать например в php gd/imagick картинку - пустую с выводом символа как текста в картинку - и дальнейшее сравнение картинки с эталонной пустой. Но профита ноль, ибо чтоб вывести что-то в графич режиме - нужно вообще явно загрузить шрифт, а если явно - то априори мы и так знаем - есть там эти символы или нет а вообще озвученная задача - крайне необычная и мне кажется - практически ненужная
ну, не факт ) например, у меня в 7 винде раньше символ рубля не отображался, пока я патч не поставил ни со шрифтом, ни без шрифта, вообще никак, просто пустой квадрат и в общем-то это могло иметь значение для UI/UX с точки зрения вебдева но как такое можно отмониторить - я хз..
На другом форуме, где не стали сразу писать - что задача решена - по прежнему советуют измерение ширины с этолоном Плюс насоветовали подключить в CSS все мыслемые и немыслеммые шрифты. А как это сделать - не написали. --- Добавлено --- Самолётик высвечивается: HTML: <style> @font-face { font-family: "Universalia"; src: url("https://cdn.glitch.com/348d485e-4ba6-4841-a41e-5865874b2d66/u1f400.woff"); unicode-range: U+1F400-1F6FF; } .universalia { font: 500% Universalia; } </style> <span class="universalia">🛪</span>
это не точно, может быть совпадение ширины какого либо символа с эталоном Вы не умеете подключать шрифты? Ниже сами же приводите пример.... диапазон просто не задавайте unicode-range: U+1F400-1F6FF; и все
все шрифты. все. Что -то вроде: font-family: *; Вы всё-таки правда не понимаете, что я хочу. Оно ведь на рисунке наглядно изображено. Я хочу выводить для пользователей Эможды и пр. хрень из определённого диапазона - генерируется цифра и подставляется &# - в результате получаем картинки, ироглифы и пр. Неужели это не возможно понять с рисунка? --- Добавлено --- Вы тут пишите что я сам, за ранее должен знать есть ли у меня самолётик в шрифте или нет. Это как я могу за ранее знать? --- Добавлено --- кроме того, не важно, что этот самолётик с помощью моих ухищрений, выведется у меня на странице. - Важно чтоб пользователь мог взять этот символ и спокойно перенести его в ВК, например. Блин, пишу банальщину.