Открытие файла TIFF на определенной странице из командной строки

349
Karen

Я пытаюсь открыть файл TIFF, который при открытии указывает на определенную страницу, а не на страницу 1.

Выполнение этой команды открывает файл TIFF на странице 1:

cmd /c D:\mytiff.tiff 

Тем временем я могу открыть файл PDF с помощью Adobe Acrobat Reader для конкретной страницы с помощью этой команды:

cmd /c start AcroRd32.exe /A "page=3" "D:\myPdf.pdf" 

Возможно ли это сделать для файла TIFF из командной строки?

2
Если ваш вопрос о том, какую команду вам нужно выполнить, вам нужна только команда, которую вы пробовали, вам не нужен какой-либо Java-код, потому что мы не предоставим вам Java-код, а просто команда. Вам дали плохой совет в SO, когда вам сказали, чтобы отправить этот вопрос как есть здесь в Superuser Ramhound 6 лет назад 0
@ Ramhound на самом деле, да, я не ожидал здесь никакого кода Java. Только строка `cmd`. Должен ли я удалить свой вопрос и спросить об этом? Karen 6 лет назад 0

1 ответ на вопрос

2
rene

Прежде всего эта команда:

cmd /c D:\mytiff.tiff 

больше ничего не делает, затем вызывает команду open, связанную с расширением .tiff. Пользователи могут назначить любое приложение на расширение с помощью assocкоманды. Вы можете получить удивительные результаты, если пользователи возятся с этим. Поиск того, что управляет просмотром .tiff, я нахожу в реестре для команды HKCR \ TIFImage.Document \ shell \ open \

%SystemRoot%\System32\rundll32.exe "%ProgramFiles%\Windows Photo Gallery\PhotoViewer.dll", ImageView_Fullscreen %1 

% 1 там отображает имя файла. PhotoViewer.dll не принимает никаких других аргументов, поэтому вы не можете контролировать, какая страница должна отображаться.

Чтобы ответить на ваш вопрос: Вы не можете контролировать, какую страницу показывать с помощью инструментов, доступных в обычном окне Windows.

Мой совет - использовать командную строку, найденную в разделе реестра, чтобы запустить PhotoViewer с файлом, который вы хотите показать.
После того, как Фотопроектор работает команду использует SendKeys (примеры в зависимости от выбора языка программирования можно найти здесь или здесь или здесь ), чтобы перейти к конкретной странице. Не круто, но может работать для твоих целей.

Одна из альтернатив - найти Tiff Viewer, который поддерживает аргументы командной строки для отображения конкретной страницы. Затем вам нужно связать ваше приложение с этим внешним средством просмотра. Другая альтернатива - использовать такой инструмент, как Imagemagick, и сначала конвертировать Tiff в PDF. Оттуда вы уже знаете, как показать конкретную страницу.

Ваше решение SendKeys работает как шарм, хотя для перехода на нужную страницу потребуется несколько секунд. (Документ обычно составляет 100-180иш страницу). Но это тривиальное дело. И, наконец, они не хотят внешнего программного обеспечения, которое является бременем для предложения «найти читателя». Спасибо за отличный ответ! Karen 6 лет назад 0