Как напечатать документ MS Office без установленного офиса

Мое приложение C# для Windows должно печатать офисные документы в режиме без вывода сообщений (без всплывающих диалоговых окон или приложений, таких как Word, Excel). Поэтому я пытаюсь найти способ печати офисных документов без офиса (в противном случае пользователю необходимо купить офисный пакет, чтобы использовать мое приложение).

  1. Я пробовал с Aspose.NET но кажется, что некоторые части документов (такие как заметки, комментарии) игнорируются этим компонентом.
  2. Я также пытался пройти Microsoft Office 2010: Primary Interop Assemblies Redistributable, Но, как я обнаружил, для использования PIA MS Office, MS Office необходимо установить на целевой компьютер.

Любые идеи, где я должен изучить?

2 ответа

Во-первых, вы должны понять, что MSOffice использует собственный формат, и это событие, которое он лучше всего подходит для офисного программного обеспечения с открытым исходным кодом, испытывает проблемы с чтением без каких-либо ошибок.

Мое предложение - вы либо берете что-то, что наносит минимальный ущерб, либо требуете офиса. Одним из предложений будет следующее: Microsoft использовала слова "читатель слов" и "читатель Excel", пытаясь узнать, выпускаются ли они до сих пор.

Другой идеей было бы найти бесплатное программное обеспечение для преобразования office-to-pdf или office-xps, включить его в свою программу и распечатать.

Самый сложный способ, по моему мнению, состоит в том, чтобы передать документ какой-либо онлайн-службе, например, программе чтения документов skydrive, и попросить его напечатать файл.

В зависимости от приложения, лучшим вариантом может быть сохранение содержимого в Open XML и его синтаксический анализ (будьте осторожны, в больших документах, сохраненных в этом формате, которые хранятся в этом формате на моем опыте), или просто сохранение в PDF.

Другой более неудобной, но более изолированной возможностью является использование control.click и тому подобного для создания автоматического кликера, который открывает контент во внешнем бесплатном приложении и печатает его. Наиболее привлекательный вариант - приложения Microsoft Viewer (если они доступны). Когда это недоступно для определенного типа документа, Microsoft предлагает OneDrive в качестве бесплатной альтернативы (требуется учетная запись, подключение к Интернету).

Если вы не хотите использовать стороннее приложение, это может дать вам творческий, но неуклюжий путь к достижению поставленной цели. Удачи!

Другие вопросы по тегам