Недавно нам тоже пришлось подойти к этой проблеме, и, будучи магазином Python, мы хотели найти решение на Python. Стало ясно, что elaphe - это проект, который потенциально может выполнить штрих-код pdf 417.
Однако мы обнаружили, что это были ошибки по сегодняшним стандартам, и поэтому мы решили заняться исправлением библиотеки. Оказывается, elaphe должен генерировать устаревшую форму сценария поста * .eps, который не может быть интерпретирован сценарием-призраком, и именно здесь генерирование штрих-кода завершается неудачей.
К счастью, elphae использует общую библиотеку за кулисами под названием Barcode Writer в Pure PostScript @ http://bwipp.terryburton.co.uk
Это общая бэкэнд-библиотека, в которой есть много проектов на нескольких языках, использующих ее для генерации проектов. Исправление специально для нас заключалось в том, чтобы форк elaphe и исправить генерацию файла * .eps.
Чтобы определить, что не работает в * .eps, посмотрите на этот другой сайт, созданный с использованием postscriptbarcode, и он позволит вам сгенерировать штрих-код pdf417 онлайн (а также в других форматах): http://www.terryburton.co.uk/barcodewriter/generator/
После создания штрих-кода pdf417 вы можете загрузить файл .png, .jpg и YES .eps!
Используя этот файл .eps, вы можете передать его в скрипт ghost и настроить параметры, чтобы получить точный штрих-код pdf417, который вы ищете. Затем возьмите этот результат и интегрируйте его в библиотеку elaphe и фактически получите запрос на получение этой вещи ...
Кажется, это немного работы, но ничего такого, что не может быть выбито днем. Идеально вернуть библиотеку elaphe в форму, чтобы сгенерировать их, не делая этого улучшения.
Обратите внимание, что выполнение этого подхода для нас составляет несколько секунд, чтобы сгенерировать этот штрих-код из-за того, что он создает eps-файл длиной 2000 строк и передает его в скрипт-призрак, который генерирует другой файл изображения, который мы отправляем в качестве окончательного варианта. результат штрих-кода. Это не такая производительность, как code128 с reportlab.
Возможно, есть место для оптимизаций: в любом случае, подушка быстрее, чем PIL? Нужны ли нам все части файла eps для создания штрих-кода типа pdf417? Другие способы оптимизации?
В любом случае, отличный вопрос, Кен и я надеюсь, что вы найдете это как отличный ответ.