Как напечатать документ MS Office без установленного офиса
Мое приложение C# для Windows должно печатать офисные документы в режиме без вывода сообщений (без всплывающих диалоговых окон или приложений, таких как Word, Excel). Поэтому я пытаюсь найти способ печати офисных документов без офиса (в противном случае пользователю необходимо купить офисный пакет, чтобы использовать мое приложение).
- Я пробовал с
Aspose.NET
но кажется, что некоторые части документов (такие как заметки, комментарии) игнорируются этим компонентом. - Я также пытался пройти
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 в качестве бесплатной альтернативы (требуется учетная запись, подключение к Интернету).
- Word - "Viewer" был удален, ищите устаревшую версию или используйте OneDrive
- Excel - доступен"Просмотрщик"
- Powerpoint - доступен"Просмотрщик"
Если вы не хотите использовать стороннее приложение, это может дать вам творческий, но неуклюжий путь к достижению поставленной цели. Удачи!