- Правила форума
- Сообщений 13
- 1 Тема от Vladimir Zhukov 02-02-2017 12:51:38
- Тема: Ошибка при распечатке чека товара
- 2 Ответ от Вадим 02-02-2017 14:39:02
- Re: Ошибка при распечатке чека товара
- 3 Ответ от Vladimir Zhukov 02-02-2017 16:33:57
- Re: Ошибка при распечатке чека товара
- 4 Ответ от supleader 02-02-2017 16:53:36
- Re: Ошибка при распечатке чека товара
- 5 Ответ от Vladimir Zhukov 02-02-2017 19:19:44
- Re: Ошибка при распечатке чека товара
- 6 Ответ от supleader 02-02-2017 19:38:12 Отредактировано supleader (02-02-2017 19:38:32)
- Re: Ошибка при распечатке чека товара
- 7 Ответ от Vladimir Zhukov 02-02-2017 20:01:23
- Re: Ошибка при распечатке чека товара
- Unable to get the size of the image #44
- Comments
- Footer
- TCPDF — PHP class for PDF Discussion
- PHP class for PDF
- Forums
- Unable to get image width and height
- fix: prevent TCPDF image size error #3936
- Comments
- User Story
- Current Behavior
- Expected Behavior
- Bug Type
- Steps to Reproduce
- Visuals
- Acceptance Criteria
- Ошибка TCPDF:невозможно получить размер изображения
- 6 ответов
Правила форума
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Сообщений 13
1 Тема от Vladimir Zhukov 02-02-2017 12:51:38
- Vladimir Zhukov
- начал пользоваться ImageCMS
- Неактивен
- Зарегистрирован: 01-12-2016
- Сообщений: 13
Тема: Ошибка при распечатке чека товара
Привет добрым людям!
Есть заказ товара, когда нажимаю на кнопку «Распечатать чек» ПДФ файл не создаеться, а пишет что :
TCPDF ERROR: [Image] Unable to get the size of the image: /uploads/images/logo+.png
Если убрать логотип с сайта, то все работает.
Помогите пожалуйста решить эту проблему. Где копать? Что убрать или заменить нужно чтоб логотип сайта был и выводился чек?
Интернет перерыл ничего по этой теме не нашел!(((
2 Ответ от Вадим 02-02-2017 14:39:02
- Вадим
- Administrator
- Неактивен
- Зарегистрирован: 12-05-2015
- Сообщений: 64
- User Karma: 4
Re: Ошибка при распечатке чека товара
Попробуйте дать права на эту фотку 777.
3 Ответ от Vladimir Zhukov 02-02-2017 16:33:57
- Vladimir Zhukov
- начал пользоваться ImageCMS
- Неактивен
- Зарегистрирован: 01-12-2016
- Сообщений: 13
Re: Ошибка при распечатке чека товара
Права 777 выставлены на всю папку uploads, проверил на лого тоже стоит, но ошибка осталась.
Попробуйте дать права на эту фотку 777.
4 Ответ от supleader 02-02-2017 16:53:36
- supleader
- эксперт по ImageCMS
- Неактивен
- Откуда: Санкт-Петербург
- Зарегистрирован: 09-09-2010
- Сообщений: 670
- User Karma: 86
Re: Ошибка при распечатке чека товара
В ошибке явно сказано, что не может определить размер файла. Попробуйте + из названия для начала убрать. И проверьте права именно на /uploads/images
Профессиональное создание сайтов любой сложности, аудит, продвижение, а также поддержка вашего интернет ресурса — web2life.ru
TIMEWEB > Всегда больше, чем просто хостинг для ImageCMS!
5 Ответ от Vladimir Zhukov 02-02-2017 19:19:44
- Vladimir Zhukov
- начал пользоваться ImageCMS
- Неактивен
- Зарегистрирован: 01-12-2016
- Сообщений: 13
Re: Ошибка при распечатке чека товара
Я же написал, что на логотип тоже стоят права 777.))) Но сделал как вы советуете, удалил + из названия и опять проверил и дал права на саму картинку 777. Ошибка как и была: TCPDF ERROR: [Image] Unable to get the size of the image: /uploads/images/logo.png
Может кто знает где эта проверка происходит на размер файла? В каком файле , что нужно удалить? А лучше подправить чтоб работало.
Права 777 выставлены на всю папку uploads, проверил на лого тоже стоит, но ошибка осталась.
Попробуйте дать права на эту фотку 777.
6 Ответ от supleader 02-02-2017 19:38:12 Отредактировано supleader (02-02-2017 19:38:32)
- supleader
- эксперт по ImageCMS
- Неактивен
- Откуда: Санкт-Петербург
- Зарегистрирован: 09-09-2010
- Сообщений: 670
- User Karma: 86
Re: Ошибка при распечатке чека товара
Речь про права не на папку /uploads/ и файл /uploads/images/logo.png, а папку /uploads/images. Что показывает — вашсайт/admin/sys_info
А так введите в гугл «TCPDF ERROR: [Image] Unable to get the size of the image» может там будут варианты, которые помогут локализовать проблему.
Профессиональное создание сайтов любой сложности, аудит, продвижение, а также поддержка вашего интернет ресурса — web2life.ru
TIMEWEB > Всегда больше, чем просто хостинг для ImageCMS!
7 Ответ от Vladimir Zhukov 02-02-2017 20:01:23
- Vladimir Zhukov
- начал пользоваться ImageCMS
- Неактивен
- Зарегистрирован: 01-12-2016
- Сообщений: 13
Re: Ошибка при распечатке чека товара
Я же написал, что на логотип тоже стоят права 777.))) Но сделал как вы советуете, удалил + из названия и опять проверил и дал права на саму картинку 777. Ошибка как и была: TCPDF ERROR: [Image] Unable to get the size of the image: /uploads/images/logo.png
Может кто знает где эта проверка происходит на размер файла? В каком файле , что нужно удалить? А лучше подправить чтоб работало.
Права 777 выставлены на всю папку uploads, проверил на лого тоже стоит, но ошибка осталась.
Попробуйте дать права на эту фотку 777.
Unable to get the size of the image #44
Comments
Hello, I’m rendering and html template via writeHTML() method. I get this error:
(The image is accesible and visible if I paste the adress in the browser)
Curl and allow_url_fopen are enabled so I read a possible issue may be write permissions on temporal folder, could this be the case? Which is this folder then?
Any other ideas?
The text was updated successfully, but these errors were encountered:
Hi @nzurita, sorry you’re having issues.
I guess this is a TCPDF question rather than a WhiteOctoberTCPDFBundle question, but the original TCPDF project (which this bundle uses) is no longer supported and so you can’t raise an issue there. So I’ll see if I can help.
TCPDF puts its cached images into the folder defined by the constant K_PATH_CACHE (see getObjFilename merthod, called from the Image function).
That constant gets its value from php.ini ‘s upload-tmp-dir value if set, or sys_get_temp_dir() if that value isn’t set.
Therefore, I’d recommend that you do these in order
- See whether upload-tmp-dir is set in php.ini and — if set — whether it’s writeable by the user your app is running as
- Look at the output of sys_get_temp_dir() on your system and see whether that’s writeable by the user your app is running as
- If you can’t change the permissions on the directories identified in the previous steps, try setting the K_PATH_CACHE value to refer to a directory the relevant user can write to.
Hope this helps. Sorry for the belated response.
Hi again. I missed something here, sorry. Turns out this issue does relate to the bundle itself rather than just TCPDF.
I hadn’t realised (I’m not the original developer) that the WhiteOctoberTCPDFBundle overrides the default value of k_path_cache . It sets it to: ‘%kernel.cache_dir%/tcpdf’ (see here).
This makes me wonder if you need to look at the permission settings of your Symfony cache folder. This documentation page might help: http://symfony.com/doc/3.4/setup/file_permissions.html
Let us know how you get on!
Hello, sorry for the late response, I solved it some time ago but I think I solved it as you propose, located the cache dir and give proper permissions.
No problem, glad you got it sorted, @nzurita!
Footer
© 2023 GitHub, Inc.
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
TCPDF — PHP class for PDF Discussion
PHP class for PDF
Forums
Unable to get image width and height
My PHP version is 5.0.3. I am using that pdf library in Drupal module
«Printer, e-mail and PDF versions» and when I click in the link to generate
the PDF file, the following error appears:
This means that the getimagesize() method is unable to get access to the
requested file.
You can change this by editing the php.ini and setting the allow_url_fopen
constant to On.
Anyway, you can get it working by simply specifying the width and height
(these are mandatory when using HTML mode).
In the database record containing my image, I’ve added this:
-but it still says,
TCPDF ERROR: Unable to get image width and height:
. but I guess my problem is that the image name isn’t understood.
Why you are using the TCPDF tag to insert an image? You can simply add it
using the html ‘img’ tag.
Anyway your syntax is wrong, please upgrade to the latest TCPDF release and
check the example n. 49.
I wanted to used the tcpdf tag to add the image because the image does not get
rendered at all. My html looks like this:
The image is not output in the PDF (but looks fine in the HTML output). So I
tried the tcpdf tag. 🙂
Please carefully check the default examples, then try to make one change at
time until works.
fix: prevent TCPDF image size error #3936
Comments
User Story
As a user, I want to access various PDFs generated by Give core and its add-ons without errors so that I can actually see the contents of the PDF.
I’m creating this issue in Give core because TCPDF is part of Give core. However replicating the issue will require testing with the various add-ons described in Acceptance Criteria.
Current Behavior
Attempting to view some PDFs such as the Gift Aid Declaration Form results in the following white screen error:
Expected Behavior
All PDFs generated by Give should work with default images or user-uploaded images.
Bug Type
- This bug describes functionality that once worked as expected.
- This bug describes functionality that never worked as expected.
- I am not sure whether this functionality ever worked as expected.
Steps to Reproduce
- Install Give Core 2.4.0 and Gift Aid 1.2.0.
- Enable Gift Aid and make a donation opting into Gift Aid.
- View the donation details in WP admin and click Download Declaration Form to see the error. This error also occurs if the donor tries to view the PDF from the front-end receipt.
Visuals
This screencast shows the error when Give core and Gift Aid are active.
https://www.useloom.com/share/c1ce5cb92c9347918bcc40aa0ed3a6d3
Acceptance Criteria
- Default and custom images work in PDF templates within Gift Aid add-on.
- Default and custom images work in PDF templates within PDF Receipts add-on.
- Default and custom images work in PDF templates within Annual Receipts add-on.
- Default and custom images work in PDF templates within Tributes add-on.
The text was updated successfully, but these errors were encountered:
@DevinWalker On a local site using https , when I attempt to replace the logo in the Gift Aid Declaration Form, I get a different PHP notice when I try to view the PDF:
I thought the mention of SSL might indicate that it’s failing to verify the SSL certificate within a local environment. So I tried the same steps on a local site using http (no SSL certificate), and the PDF generated as expected.
This suggests TCPDF is failing because it is unable to validate the SSL certificate. This may explain why we see this error commonly in local development but have not seen customer reports of it. Live customer sites using https probably have a real SSL certificate that doesn’t cause the same error as a local SSL certificate.
@kevinwhoffman I haven’t run into that error but I did notice that when I update the logo, which it allows me to do, the images are not appearing at all in the PDF when served over https :
When served over http they display:
@DevinWalker and I believe this issue is limited to local development on https sites that do not have a real, valid SSL certificate which causes TCPDF to throw errors. Iceboxing unless we see reports from other devs/users.
Closed due to lack of customers reporting issues
Ошибка TCPDF:невозможно получить размер изображения
Я использую TCPDF для создания динамически генерируемого pdf-файла . В моем pdf-файле изображение создается на основе пользовательского ввода, и я хочу добавить это изображение в свой pdf-файл . Вот мой код
если вставить «example.com/wp-content/themes/example/map_image_leasing.php/?city=Calgary&suit_type=&min_area=&max_area=«это на моем url-адресе это создает образ, как я хотел , но если поставить этот url, он не работает . Тут написано невозможно получить размер изображение
но если я поставлю что-то вроде этого
он может генерировать pdf с этим изображением успешно .
Как я могу решить это ?
Я посетил следующую ссылку stackoverflow, но ничто из этого не помогло
6 ответов
Это может быть из-за filesize() не stat() файл удаленного изображения через HTTP в обертке (поскольку обертка не поддерживает его).
по словам TCPDF image() метод документация вы можете передать данные изображения непосредственно, добавив его с помощью @ символ. Таким образом, вы можете получить необработанные данные изображения, а затем передать их TCPDF следующим образом:
обратите внимание, что я не проверял это (и документация TCPDF разрежена), поэтому вам может потребоваться немного поэкспериментировать, чтобы заставить ее работать правильно.
Edit:
это полностью рабочий пример (на моем ПК). Используйте это, чтобы проверить, можно ли успешно извлечь изображение и вывести PDF в браузер. Конечно, вам нужно будет установить известный действительный путь для изображения!
подтвердите, что сервер может использовать PHP file_get_contents или cURL для загрузки файла. «Невозможно получить размер изображения» — это первая ошибка в Image функция, которую TCPDF бросит, если файл недоступен для обеих этих функций на сервере.
для отладки этой проблемы вы можете удалить @ from @getimagesize ($file) в tcpdf.php вокруг строки 6850. Поиск [Image] невозможно получить размер изображения: и выделите несколько строк вверх. @ Скрывает фактическое сообщение об ошибке.
Если вы можете достичь url изображения из браузера, это может быть, что ваша система не указывает url на запрошенный хост. Соответствующее сообщение getimagesize (): php_network_getaddresses: ошибка getaddrinfo:. Это означает, что ваша локальная конфигурация php не имеет понятия, где искать url-адрес. В этом случае вам нужно изменить файл /etc/hosts и указать локальную настройку на ip-адрес URL. Это часто является проблемой при настройке localhost.
Е. Г. 127.0.0.1 yoururlhere.местные
у меня была эта ошибка в моем магазине Magento.
Если вы открываете tcpdf.php вы найдете этот код, $file был url, когда он должен быть jut путь к файлу:
для быстрого исправления я добавил этот код:
и это сработало! Надеюсь, это поможет большинству из вас!
убедитесь, что используете относительный путь, несколько раз абсолютно путь не работает
Adblockdetector