|
XSL-FO процессор для .Net (генерация PDF)
|
|||
---|---|---|---|
#18+
Кто-нибудь в курсе про такой? Задача - быстро генерить много мелких PDF'ок в сервисе. MS Reporting рассматривается как вариант в самом крайнем случае - очень уж он тормозной. Про FO.Net знаю, пробовал с ним работать. У него первый, и самый главный недостаток - он не работает с кириллицей. Причем эта невозможность вхардкодена прямо в исходниках. По просмотру навскидку, делать форк этих исходников с поддержкой кириллицы будет той ещё задачей. Как вариант рассматривал генерацию FlowDocument с помощью XSLT, его преобразование в XPS, и потом с помощью PdfSharp.Xps - в PDF. Этот вариант тоже не подошел, у документов WPF куча ограничений, которых у FO нет. И если какие-то ограничения (типа печати на каждой странице заголовка таблицы) можно обойти своим кодом, то некоторые (невозможность задания вертикального выравнивания в ячейках таблиц, не прибегая к BlockUIContainer) обойти никак нельзя. С программной поэлементной сборкой PDF через тот же PdfSharp связыватья не хочется, уж лучше MS Reporting. В общем, XSL-FO был бы лучшим выходом, но вот что-то кроме вышеупомянутого FO.Net ничего найти не могу. В принципе, устроил бы даже платный процессор, если такой существует в природе. ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 11:37 |
|
XSL-FO процессор для .Net (генерация PDF)
|
|||
---|---|---|---|
#18+
WinterGraveyard, itextsharp, одна DLL ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 12:35 |
|
XSL-FO процессор для .Net (генерация PDF)
|
|||
---|---|---|---|
#18+
Для "красивых" вещей мы используем Adobe InDesign server для генерации PDF. Microsoft reporting services (который запускается как локальный сервис) приблизительно в 100 раз быстрее чем InDesign server. Для скорости задачи мы распаралелливаем по количеству процессоров - 1. Работает очень быстро + есть UI. itextsharp не имеет UI. Мы используем его для внесение изменений в готовые PDF files. Работает очень быстро и если что-то генерировать однообразное то в принципе можно генерировать очень быстро. Но отсутствие UI сильно сужает применение и внесенение изменений. Примерно так. Так что я бы в Вашем случае использовал Microsoft reporting services в параллельной обработке. Скорость бы наращивалось простым увеличением количество сервисов (железо нынче стоит дёшево). ... |
|||
:
Нравится:
Не нравится:
|
|||
17.02.2020, 23:33 |
|
XSL-FO процессор для .Net (генерация PDF)
|
|||
---|---|---|---|
#18+
Sergey Ch, Adobe InDesign server это как скинуть ядерную бомбу на воробья... ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2020, 00:53 |
|
XSL-FO процессор для .Net (генерация PDF)
|
|||
---|---|---|---|
#18+
Mixon itextsharp, одна DLL Ну, во-первых, не одна. itextsharp как таковой сейчас deprecated , а его замена iText 7 - это уже 9 библиотек. Если ставить нугетом, то пофигу, конечно, всё ставится одним пакетом, но, тем не менее. А во-вторых, я выше писал, что вообще не собираюсь возиться с программной поэлементной сборкой PDF. И ничего, хотя бы отдалённо напоминающего FO - да и вообще любое декларативное построение PDF - в iText нет. Видимо, придется всё-таки вернуться к MS Reporting. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.02.2020, 06:07 |
|
|
start [/forum/topic.php?fid=20&msg=39927752&tid=1398611]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
66ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
others: | 12ms |
total: | 169ms |
0 / 0 |