Задать вопрос
SwoDs
@SwoDs
PHP YII2

Не отображается русский текст в превью PDF. Что делать?

Добрый вечер.
Для заполнения пдф формы использую iText+PHP
Есть несколько анкет которые нужно заполнять, анкеты в которых поля проставили ручками все хорошо, а вот анкеты где поля сгенерированные адобом не виден русский шрифт в превью, если поле добавить руками убрав все настройки (проверка ошибок текста, полосы прокрутки) то виден.
с англ. все ок.

превью - joxi.ru/DrlNxRJuMxJq2P
при клике - joxi.ru/eAOl8GgFyD7Mro

Как сделать что отображался всегда?
  • Вопрос задан
  • 1712 просмотров
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
@MIKEk8
в iText надо добавить
BaseFont times = BaseFont.createFont("times.ttf","cp1251",BaseFont.EMBEDDED);
Paragraph p=new Paragraph("чета там",new Font(times,14));

Либо если вы объединяете xfdf с pdf при помощи iText. То вот так:
//args[0]="исходный pdf"
//args[1]="результирующий pdf"
//args[0]="имя xfdf файла"
PdfReader pdfreader = new PdfReader(args[1]);
PdfStamper stamp = new PdfStamper(pdfreader, new FileOutputStream(args[0]));
XfdfReader fdfreader = new XfdfReader(args[2]);
AcroFields form = stamp.getAcroFields();
BaseFont times = BaseFont.createFont("times.ttf","cp1251",BaseFont.EMBEDDED);
form.addSubstitutionFont(times);
form.setFields(fdfreader);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽