2016-10-19 2 views
2

Я пытался создать файл pdf, используя креветку в Rails 4. Мне нужен был вертикальный текст в виде строки заголовка для таблицы с большой шириной. Поскольку, если я использую заголовок горизонтальной строки, таблица не будет соответствовать (содержимое таблиц - текст с 1 или 2 символами).Внизу текст в колонке таблицы Prawn

Я попытался использовать rotate вариант для креветок. Но это работает только тогда, когда я устанавливаю ширину достаточно, чтобы удерживать текст, пока он все еще находится в горизонтальном направлении. Но тогда это пустая трата пространства, когда я хочу ее вертикально. Но если я уменьшу ширину заголовка столбца, тексты сломаются.

Кажется, ошибка здесь представлена ​​https://github.com/prawnpdf/prawn/issues/409. И, похоже, этот запрос тяги решает проблему https://github.com/prawnpdf/prawn-table/pull/32.

Но поскольку я использую prawn-rails, мне сложно изменить драгоценный камень, чтобы использовать этот запрос на тяну, который еще не слился с мастером.

Как я могу приступить к решению этой проблемы?

+0

Итак, никто не знает ответа? – Anwar

ответ

2

Я, наконец, решил проблему, используя the PR of straydogstudio в моем проекте рельсов. Вот пошаговое его решение.

Сначала отредактируйте Gemfile, чтобы включить драгоценный камень из креветок из репозитория straydogstudio.

gem 'prawn-table', :git => 'https://github.com/straydogstudio/prawn-table.git', ref: '759a27b6' 

Я использовал ref: вариант для минимизации загрузки, необходимую для всего хранилища.

Далее я использовал :rotate вариант без :valign. Это важно, потому что, когда используется :valign, текст каким-то образом запутывается.

The Options я использовал внутри инициализации таблицы блока креветка

cells.font_size = 6 
    cells.padding = [1, 1] 

    row(0).rotate = 90 
    row(0).columns(3..52).rotate = 0 # every splitted column should be counted 
    row(0).height = 40 
    row(0).width = 15 
    row(0).align = :center 
    row(1).columns(0..-1).rotate = 90 # rotate the second row too! 
    row(1).height = 30 

Результат удовлетворителен. Вот скриншот сложной настройки.

table with rotate fix

Надеется, что это поможет будущим посетителям.

Смежные вопросы