Мне нужно создать вывод PostScript из нашей системы.Наша система производит документы высокого формата в различных форматах, и мне нужно добавить .ps в качестве дополнительного формата.
Одна странность, наш код написан на Java, и мы используем IKVM для .net-версии нашегобиблиотека.У нас около 5% кода, написанного на C #, а остальное - это Java, преобразованный с помощью IKVM.
Я создаю файлы .ps на стороне Java, используя библиотеку, которая позволяет мне записывать в объект Graphics2D, который он предоставляет. К сожалению, в .NET (через IKVM) это ужасно медленно .
Итак, чтобы решить эту проблему, я думаю:
- Зайдите в код IKVMи посмотрим, смогу ли я ускорить это.Нет смысла, что это так медленно.
- Преимущество, если оно работает, это, вероятно, самое быстрое разрешение.И теперь можно использовать будущие библиотеки Graphics2D.
- Недостаток, если я не могу, я потратил впустую время.Кроме того, в будущем у нас будет собственный филиал IKVM.
- Расследование oreasoft - если это работает, используйте это с PostScriptBuilder
- Advantage, это должно быть довольно быстро и полностью и правильно обрабатывать .ps,
- Недостаток, это решает проблему только для .ps.Кроме того, 5K / год для формата мы не можем получить много продаж.
- В этом случае я бы сделал GraphicsBuilder для вывода растрового изображения и .wmf - это было бы быстро и просто.
- Создание библиотеки объектов .net Graphics для .ps.И затем точно так же, как Graphics2DOutputBuilder в Java, создайте GraphicsOutputBuilder в .net
- Преимущество, это самый чистый и правильный способ сделать это.И мы можем легко добавить вывод bitmap & .emf таким образом (у них есть способ графического объекта для записи в них).
- Недостаток, это значительная работа, и у нас могут возникать небольшие проблемы, когда мы изучаем все детали PostScript.
- Переписать библиотеку Apache xml-graphics, чтобы использовать вызовы .net вместо вызовов Java для кода в ней.
- Преимущество, это, вероятно, немного меньше работы, чем графический подход.
- Недостаток, когда мы это сделаем, но в любых будущих форматах, таких как SVG, мы также должны переписать полностью.
Буду признателен за любые отзывы о решении этой проблемы.