Мы используем драгоценный камень принца для создания документов в формате PDF в нашем приложении rails 4
. В течение последних нескольких дней сгенерированный PDF-файл отображается в портретном режиме вместо указанного ландшафтного режима; эта функция работала нормально в течение многих лет.
Были сделаны некоторые обновления для версий ruby/rails на сервере, но ничего не изменилось в самом коде генерации pdf.
Один интересный аспект заключается в том, что pdf создается в ландшафтном режиме на сервере разработки, когда я тестирую его локально на своем компьютере (Mac). Тот же код создает PDF-файл в портретном режиме на промежуточном/производственном сервере (Linux).
Связанный код:
Из Gemfile
gem 'rails', '4.2.5.1'
gem 'princely', git: "[email protected]:mbleigh/princely.git"
....
Код рендеринга в формате PDF:
render :pdf => "ticket",
:template => "admin/tickets/print.pdf.erb",
:stylesheets => ["printpdf.css"]
приложение/активы/таблицы стилей/printpdf.css:
@page {
size: 8.5in 11in landscape;
margin: 5mm 5mm 5mm 5mm;
}
@page {
@bottom-right {
content: counter(page);
}
}
#pagebreak {
page-break-after: always;
}
Княжеская команда выполнена (как показано в журнале):
PRINCE XML PDF COMMAND
/usr/local/bin/prince --input=html --server --log=/Users/prakash/Projects/main_project/log/prince.log -s /Users/prakash/Projects/main_project/app/assets/stylesheets/printpdf.css --silent - -o -
Недавно версия Rails была изменена с 4.2.4
на 4.2.5.1
, а версия ruby была изменена с 2.2.0
на 2.3.0
. Я отменил оба этих изменения на промежуточном сервере, но отмена ни одного из этих изменений не устраняет проблему портретной ориентации вместо альбомной.
Буду признателен за любые предложения о том, где искать основную причину этой проблемы и как ее исправить.