устройство подачи изображений, устройство записи, система записи и способ управления ими
Классы МПК: | G06F3/12 вывод цифровых данных на печатающие устройства |
Автор(ы): | ЯМАДА Акитоси (JP), САКАМОТО Казуя (JP), АИТИ Такао (JP), ЯНО Кентаро (JP), МАСУМОТО Казуюки (JP), ГОТО Фумихиро (JP), МИКАМИ Рурико (JP) |
Патентообладатель(и): | КЭНОН КАБУСИКИ КАЙСЯ (JP) |
Приоритеты: |
подача заявки:
2004-01-29 публикация патента:
27.12.2007 |
Изобретение относится к системам и способам прямой печати. Технический результат заключается в отсутствии конфликтов при подаче сигналов между устройством записи и устройством подачи изображений. Технический результат достигается тем, что в системе записи, в которой цифровой фотоаппарат (ЦФА) и принтер непосредственно соединены через интерфейс передачи данных, и данные изображения передаются от ЦФА на принтер и записываются, производится определение, принята ли заранее определенная информация статуса от принтера в течение заранее определенного периода времени после того, как ЦФА выдал заранее определенную команду на принтер. Если определено, что заранее определенная информация статуса не принята, статус определяется как статус, предполагаемый на основании нормального процесса, и процесс продолжается. Для подтверждения статуса принтера ЦФА запрашивает информацию статуса принтера и получает статус принтера на основании информации статуса, возвращенной в ответ на запрос. 5 н. 11 з.п. ф-лы, 16 ил.
Формула изобретения
1. Устройство подачи изображений, используемое в системе записи, в которой устройство подачи изображений и устройство записи осуществляют связь друг с другом через интерфейс передачи данных и данные изображения передаются с устройства подачи изображений на устройство записи и записываются, отличающееся тем, что содержит
средство выдачи команд для выдачи заранее определенной команды на устройство записи,
средство приема для приема сигнала от устройства записи после того, как средство выдачи команд выдало заранее определенную команду,
средство определения для определения, приняло ли средство приема команду, отличную от ответа, соответствующего заранее определенной команде, до приема ответа, и
средство управления для управления хронированием выдачи следующей команды на устройство записи в случае, когда средство определения определяет, что средство приема приняло команду, отличную от ответа, соответствующего заранее определенной команде, до приема ответа.
2. Устройство по п.1, которое также содержит средство отмены для отмены команды, принятой от устройства записи в том случае, когда средство определения определило, что команда, отличная от ответа, соответствующего заранее определенной команде, была принята до приема ответа.
3. Устройство записи, используемое в системе записи, в которой устройство подачи изображений и устройство записи осуществляют связь друг с другом через интерфейс передачи данных и данные изображения передаются с устройства подачи изображений на устройство записи и записываются, отличающееся тем, что содержит
средство выдачи команд для выдачи заранее определенной команды на устройство подачи изображений,
средство приема для приема сигнала от устройства подачи изображений после того, как средство выдачи команд выдало заранее определенную команду,
средство определения для определения, приняло ли средство приема команду, отличную от ответа, соответствующего заранее определенной команде, до приема ответа, и
средство управления для управления хронированием выдачи следующей команды на устройство подачи изображений в случае, когда средство определения определяет, что средство приема приняло команду, отличную от ответа, соответствующего заранее определенной команде, до приема ответа.
4. Устройство по п.3, которое также содержит средство отмены для отмены команды, принятой от устройства подачи изображений в том случае, когда средство определения определило, что команда, отличная от ответа, соответствующего заранее определенной команде, была принята до приема ответа.
5. Способ управления для системы записи, в которой устройство подачи изображений и устройство записи осуществляют связь друг с другом через интерфейс передачи данных и данные изображения передаются с устройства подачи изображений на устройство записи и записываются, отличающийся тем, что содержит
этап выдачи команды, на котором выдают определенную команду между устройством подачи изображений и устройством записи,
этап определения, на котором определяют является или нет команда, принятая от партнера до ответа, соответствующего заранее определенной команде, ответом, соответствующим заранее определенной команде, и
этап изменения, на котором изменяют хронирование выдачи следующей команды в, по меньшей мере, одном из устройства подачи изображений и устройства записи в случае, когда на этапе определения определено, что команда, принятая от партнера до приема ответа, соответствующего заранее определенной команде, не является ответом, соответствующим заранее определенной команде.
6. Способ по п.5, который также содержит этап отмены команды, принятой от партнера, в том случае, когда средство определения определило, что команда, отличная от ответа, соответствующего заранее определенной команде, была принята до приема ответа.
7. Способ управления устройством подачи изображений, используемым в системе записи, в которой устройство подачи изображений и устройство записи осуществляют связь друг с другом через интерфейс передачи данных и данные изображения передаются с устройства подачи изображений на устройство записи и записываются, содержащий
этап выдачи команд, на котором выдают заранее определенную команду на средство записи,
этап приема, на котором принимают сигнал от средства записи после того, как заранее определенная команда выдана на этапе выдачи команд,
этап определения, на котором определяют, была ли команда, отличная от ответа, соответствующего заранее определенной команде, принята на этапе приема до приема ответа, и
этап управления, на котором управляют хронированием выдачи следующей команды на устройство записи в том случае, когда на этапе определения определено, что команда, отличная от ответа, соответствующего заранее определенной команде, была принята до приема ответа на этапе приема.
8. Способ управления по п.7, в котором на этапе управления хронирование выдачи следующей команды задерживают на заранее определенный период времени.
9. Способ управления по п.8, в котором заранее определенный период времени изменяется случайным образом.
10. Способ управления по п.8, в котором заранее определенный период времени обновляется каждый раз, когда на этапе определения определено, что сигнал не является ответом, соответствующим заранее определенной команде.
11. Способ по п.7, который также содержит этап отмены команды, принятой от устройства записи, в том случае, когда средство определения определило, что команда, отличная от ответа, соответствующего заранее определенной команде, была принята до приема ответа.
12. Способ управления устройством записи, используемым в системе записи, в которой устройство подачи изображений и устройство записи осуществляют связь друг с другом через интерфейс передачи данных и данные изображения передаются с устройства подачи изображений на устройство записи и записываются, способ содержит
этап выдачи команды, на котором выдают заранее определенную команду на устройство подачи изображений,
этап приема, на котором принимают сигнал от устройства подачи изображений после того, как заранее определенная команда выдана на этапе выдачи команд,
этап определения, на котором определяют, была ли команда, отличная от ответа, соответствующего заранее определенной команде, принята на этапе приема до приема ответа, и
этап управления, на котором управляют хронированием выдачи следующей команды на устройство подачи изображений в том случае, когда на этапе определения определено, что команда, отличная от ответа, соответствующего заранее определенной команде, была принята до приема ответа на этапе приема.
13. Способ управления по п.12, в котором на этапе управления хронирование выдачи следующей команды задерживают на заранее определенный период времени.
14. Способ управления по п.12, в котором заранее определенный период времени изменяется случайным образом.
15. Способ по п.13, в котором заранее определенный период времени обновляется каждый раз, когда на этапе определения определено, что сигнал не является ответом, соответствующим заранее определенной команде.
16. Способ по п.12, который также содержит этап отмены команды, принятой от устройства подачи изображений, в том случае, когда средство определения определило, что команда, отличная от ответа, соответствующего заранее определенной команде, была принята до приема ответа.
Описание изобретения к патенту
Область техники, к которой относится изобретение
Настоящее изобретение относится к устройству подачи изображений, например цифровому фотоаппарату, устройству записи, системе записи и способу управления ими.
Уровень техники
В последние годы получили распространение цифровые фотоаппараты (устройства восприятия изображений), которые могут воспринимать изображения и преобразовывать их в цифровые данные изображения посредством простых операций. Когда изображение, воспринятое фотоаппаратом, печатается и используется в качестве фото, обычно временно загружают воспринятые цифровые данные изображения с цифрового фотоаппарата на ПК (компьютер), выполняют обработку изображения на ПК, и выводят обработанные данные изображения с ПК на цветной принтер, и таким образом печатают изображение.
Напротив, например, система цветной печати, которая позволяет цифровому фотоаппарату непосредственно переносить цифровые данные изображения на цветной принтер без вмешательства ПК и может распечатывать их, так называемый принтер прямой фотопечати (ПФП), в котором карта памяти, которая установлена в цифровом фотоаппарате и хранит воспринятые изображения, может быть непосредственно установлена в цветном принтере, и воспринятые изображения, хранящиеся в карте памяти, которые были недавно проявлены, могут быть напечатаны.
В частности, для непосредственного переноса данных изображения с цифрового фотоаппарата на принтер и печати данных изображения возникли потребности в стандартизации - спецификации интерфейса между цифровым фотоаппаратом каждого производителя и принтером, способа работы и т.п. Одно предложение по стандартизации - это указание по реализации СПП (системы прямой печати).
Однако принтер, который непосредственно воспринимает данные изображения с цифрового фотоаппарата и печатает изображение, может также принимать данные печати не только с цифрового фотоаппарата, но и с ПК и т.п. По этой причине ответ на команду от цифрового фотоаппарата может задерживаться вследствие выдачи запроса печати с ПК при выполнении предварительной процедуры для приема данных изображения между принтером и цифровым фотоаппаратом. Например, когда цифровой фотоаппарат выдает запрос начала печати, который принимает принтер, статус, выражающий возможность получения следующей команды, меняется с «истины» на «ложь» и фотоаппарат получает извещение об этом статусе. Если же, например, запрос печати одновременно выдает ПК, принтер не может быстро известить фотоаппарат об изменении статуса. В течение этого периода фотоаппарат может определить, что следующая команда также может быть получена принтером, и выдать команду на принтер, несмотря на то, что принтер находится в занятом состоянии.
Раскрытие изобретения
Настоящее изобретение опирается на рассмотрение вышеописанной ситуации и предусматривает устройство подачи изображений, которое, когда копирование ответа с помощью процедуры, определенной заранее между устройством подачи изображений и устройством записи, не принимается от устройства записи, определяет, что статус устройства записи является статусом, предполагаемым на основании нормальной процедуры, и принимает решение о последующих процедурах обработки, устройство записи, систему записи и способ управления ими.
Согласно настоящему изобретению предусмотрено устройство подачи изображений, используемое в системе записи, в которой устройство подачи изображений и устройство записи непосредственно связаны интерфейсом передачи данных, и данные изображения передаются с устройства подачи изображений на устройство записи и записываются, отличающееся тем, что содержит: средство приема для приема информации статуса от устройства записи; средство определения для определения, получило ли средство приема заранее определенную информацию статуса от устройства записи в течение заранее определенного периода времени после того, как устройство подачи изображений выдало заранее определенную команду на устройство записи; и средство обработки для в случае, когда средство определения определяет, что не было принято никакой заранее определенной информации статуса, определения статуса как статуса, предполагаемого на основании нормального процесса, и для продолжения процесса.
Согласно настоящему изобретению предусмотрено устройство записи, используемое в системе записи, в которой устройство подачи изображений и устройство записи осуществляют связь друг с другом через интерфейс передачи данных, данные изображения передаются с устройства подачи изображений на устройство записи и записываются, отличающееся тем, что содержит: средство выдачи команд для выдачи заранее определенной команды на устройство подачи изображений; средство приема для приема сигнала от устройства подачи изображений после того, как средство выдачи команд выдало заранее определенную команду; средство определения для определения, является ли сигнал, принятый средством приема, ответом, соответствующим заранее определенной команде; и средство управления для управления хронированием выдачи следующей команды на устройство подачи изображений в случае, когда средство определения определило, что сигнал не является ответом, соответствующим заранее определенной команде.
Другие признаки и преимущества настоящего изобретения явствуют из нижеследующего описания, приведенного совместно с прилагаемыми чертежами, снабженными сквозной системой обозначений.
Краткое описание чертежей
Прилагаемые чертежи, которые входят в состав и составляют часть описания изобретения, иллюстрируют варианты осуществления изобретения и совместно с описаниями служат для объяснения принципа изобретения.
Фиг.1 - схематический вид в перспективе принтера ПФП согласно варианту осуществления настоящего изобретения.
Фиг.2 - схематический вид панели управления принтера ПФП согласно варианту осуществления.
Фиг.3 - блок-схема устройства основной части, связанной с управлением принтера ПФП согласно варианту осуществления.
Фиг.4 - блок-схема устройства ЦФА согласно варианту осуществления.
Фиг.5 - вид, поясняющий соединение между принтером ПФП и цифровым фотоаппаратом согласно варианту осуществления.
Фиг.6 - схема обмена командами между принтером ПФП и ЦФА в системе печати согласно варианту осуществления.
Фиг.7 - пример команды начала печати, выданной ЦФА согласно варианту осуществления.
Фиг.8А и 8В - схемы, поясняющие JobStatus и DeviceStatus согласно варианту осуществления.
Фиг.9 - логическая блок-схема процесса возобновления печати в ЦФА согласно первому варианту осуществления.
Фиг.10 - логическая блок-схема процесса в ЦФА согласно третьему варианту осуществления.
Фиг.11 - логическая блок-схема процесса, сопровождающего действие кнопки для продолжения печати в ЦФА согласно четвертому варианту осуществления.
Фиг.12 - логическая блок-схема процесса, сопровождающего действие кнопки для прерывания печати в ЦФА согласно пятому варианту осуществления.
Фиг.13 - логическая блок-схема процесса в ЦФА согласно пятому варианту осуществления.
Фиг.14 - логическая блок-схема процесса в принтере ПФП согласно шестому варианту осуществления.
Фиг.15 - логическая блок-схема другого процесса в принтере ПФП согласно шестому варианту осуществления.
Осуществление изобретения
Предпочтительные варианты осуществления настоящего изобретения описаны ниже более подробно со ссылкой на прилагаемые чертежи.
На фиг.1 изображен схематический вид в перспективе принтера 1000 прямой фотопечати (ниже именуемый принтером ПФП) согласно варианту осуществления настоящего изобретения. Принтер ПФП 1000 имеет функцию приема данных с главного компьютера (ПК) и печати данных в качестве обычного принтера ПК и функцию непосредственного считывания и печати данных изображения, хранящихся в носителе информации, например карте памяти, или приема данных изображения от цифрового фотоаппарата и печати данных.
Согласно фиг.1 основное тело, образующее корпус принтера ПФП 1000 согласно варианту осуществления, имеет в качестве внешних деталей нижнюю часть 1001, верхнюю часть 1002, крышку 1003 доступа и выходной лоток 1004. Нижняя часть 1001 образует нижнюю половину принтера ПФП 1000, и верхняя часть 1002 образует верхнюю половину основного тела. Эти части совместно образуют пустотелую конструкцию, имеющую свободное место, в котором располагаются механизмы (описанные ниже). В верхней и передней поверхностях основного тела сформированы отверстия. Один конец выходного лотка 1004 удерживается с возможностью вращения на нижней части 1001, и поворот лотка 1004 открывает/закрывает отверстие, образованное в передней поверхности нижней части 1001. При выполнении операции печати выходной лоток 1004 поворачивают к стороне передней поверхности, чтобы открыть отверстие. Печатные листы могут выходить из отверстия и последовательно укладываться в стопку на выходном лотке 1004. В выходном лотке 1004 размещены два вспомогательных лотка 1004a и 1004b. При необходимости, вспомогательные лотки можно выдвигать для увеличения/уменьшения площади нагрузки печатных листов в три этапа.
Один конец крышки 1003 доступа удерживается с возможностью вращения на верхней части 1002, что дает возможность открывать/закрывать отверстие, образованное в верхней поверхности. Открыв крышку 1003 доступа, можно заменить картридж печатающей головки (не показан), чернильницу (не показана) и т.п., находящиеся в основном теле. Хотя это и не показано, при открывании/закрывании крышки 1003 доступа выступ, сформированный на задней поверхности крышки 1003 доступа, поворачивает рычаг открывания/закрывания крышки. Открытое/закрытое состояние крышки 1003 доступа можно обнаруживать, обнаруживая поворотное положение рычага с помощью микропереключателя и т.п.
На верхней поверхности верхней части 1002 находится кнопка 1005 питания. Панель 1010 управления, которая содержит блок 1006 жидкокристаллического дисплея, различные кнопочные переключатели и т.п., предусмотрена в правой стороне верхней части 1002. Конструкция панели 1010 управления будет более подробно описана ниже со ссылкой на фиг.2. Позиция 1007 обозначает устройство автоподачи, которое автоматически подает печатный лист в основное тело устройства. Позиция 1008 обозначает рычаг выбора толщины бумаги, который используется для регулировки зазора между печатающей головкой и печатным листом. Позиция 1009 обозначает прорезь для карты, которая принимает адаптер, способный принимать карту памяти. Данные изображения, хранящиеся в карте памяти, могут непосредственно считываться и распечатываться через этот адаптер. Примерами карты памяти (РС) являются карта памяти compact flash , карта смарт-медиа и линейка памяти. Позиция 1011 обозначает устройство просмотра (блок жидкокристаллического дисплея), который способен отсоединяться от основного тела принтера ПФП 1000, и используется для отображения изображения для одного кадра, индексного изображения и т.п., когда пользователь хочет искать изображения, хранящиеся в РС-карте на предмет изображения, подлежащего печати. Позиция 1012 обозначает разъем USB, который используется для подключения цифрового фотоаппарата (описан позже). Кроме того, еще один разъем USB для подключения персонального компьютера (ПК) предусмотрен на задней поверхности принтера ПФП 1000.
На фиг.2 изображен схематический вид панели 1010 управления принтера ПФП 1000 согласно варианту осуществления.
Согласно фиг.2 блок 1006 жидкокристаллического дисплея отображает элементы меню для различных настроек данных, связанных с элементами, напечатанными на правой и левой сторонах блока 1006. Элементы, отображаемые на блоке 1006 жидкокристаллического дисплея, включают в себя, например, первый номер или указанный номер кадра фотографии, подлежащей печати (начальный/указанный), конечный номер фотографии, подлежащий операции окончания печати (конечный), количество копий, подлежащих печати (счетчик копий), тип листа бумаги (печатного листа), используемого для печати (тип бумаги), настройка количества фотографий, подлежащих печати на одном листе бумаги (конфигурация), указание качества печати (качество), указание, нужно ли печатать дату фотографирования (печать даты), указание, нужно ли печатать фотографию после коррекции (коррекция изображения), отображение количества листов бумаги, необходимого для печати (счетчик бумаги) и пр. Эти элементы пользователь выбирает или указывает с использованием кнопок 2001 управления курсором. Позиция 2002 обозначает кнопку выбора режима. Каждый раз при нажатии кнопки 2002 выбора режима может переключаться тип печати (индексная печать, печать всех кадров, печать одного кадра и т.п.), при этом соответствующий из СИД 2003 загорается в соответствии с выбранным типом печати. Позиция 2004 обозначает кнопку обслуживания, которая используется для осуществления обслуживания принтера, например очистки печатающей головки. Позиция 2005 обозначает кнопку начала печати, которую нажимают, указывая начало печати или назначая настройку обслуживания. Позиция 2006 обозначает кнопку отмены печати, которую нажимают, чтобы отменить печать или обслуживание.
Устройство основной части, связанной с управлением принтера ПФП 1000 согласно варианту осуществления, описано ниже со ссылкой на фиг.3. На фиг.3 части, общие с указанными на рассмотренных выше чертежах, обозначены теми же позициями и их описание опущено.
На фиг.3 позиция 3000 обозначает контроллер (плату управления). Позиция 3001 обозначает СИС (специализированную БИС). Позиция 3002 обозначает ЦСП (цифровой сигнальный процессор), который включает в себя ЦП и выполняет различные процессы управления (описанные ниже) и обработку изображения, например преобразование сигнала яркости (RGB) в сигнал плотности (CMYK), масштабирование, преобразование гаммы и размытие ошибок. Позиция 3003 обозначает память, имеющую программную память 3003а, в которой хранится программа управления для ЦП ЦСП 3002, область ОЗУ, имеет область памяти, действующую как рабочую область, в которой хранятся данные изображения и пр. Позиция 3004 обозначает механизм принтера. В одном варианте осуществления, принтер оборудован механизмом принтера для струйного принтера, который печатает цветное изображение с использованием совокупности цветных чернил. Позиция 3005 обозначает разъем USB, служащий портом для подключения цифрового фотоаппарата (ЦФА) 3012. Позиция 3006 обозначает разъем для подключения устройства 1011 просмотра. Позиция 3008 обозначает концентратор USB (USB HUB). Когда принтер ПФП 1000 выполняет печать на основании данных изображения от ПК 3010, концентратор USB 3008 допускает прохождение данных от ПК 3010 через себя и выводит данные на механизм 3004 принтера через USB 3021. Подключенный ПК 3010 может непосредственно обмениваться данными и сигналами с механизмом 3004 принтера и выполнять печать (функционировать как обычный принтер ПК). Позиция 3009 обозначает разъем источника питания, который подает напряжение постоянного тока, преобразованное из коммерческого питания переменного тока, из источника 3019 питания. ПК 3010 представляет собой обычный персональный компьютер. Позиция 3011 обозначает вышеупомянутую карту памяти (РС-карту); и позиция 3012 обозначает цифровой фотоаппарат (также именуемый ЦФА: цифровой фотоаппарат).
Заметим, что обмен сигналами между контроллером 3000 и механизмом 3004 принтера через USS 3021 или шину IEEE1284 3022.
На фиг.4 показана блок-схема устройства ЦФА (цифрового фотоаппарата) 3012.
На фиг.4 позиция 3100 обозначает ЦП, управляющий всем ЦФА 3012; и позиция 3101 обозначает ПЗУ, в которой хранится последовательность обработки (программа управления) ЦП 3100. Позиция 3102 обозначает ОЗУ, которое используется как рабочая область для ЦП 3100; и позиция 3103 обозначает группу коммутации, которая используется для осуществления различных операций. Группа 3103 коммутации включает в себя различные переключатели, кнопки управления курсором и пр. Позиция 2700 обозначает блок жидкокристаллического дисплея, который используется для отображения изображения, фотографируемого в настоящее время или воспринятого/сохраненного изображения и для отображения меню для осуществления различных настроек ЦФА 3012. Позиция 3105 обозначает оптический блок, содержащий в основном объектив и его систему привода. Позиция 3106 обозначает элемент ПЗС; и позиция 3107 обозначает драйвер, который приводит в действие и управляет оптическим блоком 3105 под управлением ЦП 3100. Позиция 3108 обозначает разъем для подключения носителя 3109 информации (карты памяти compact flash , карты смарт-медиа и т.п.); и позиция 3110 обозначает интерфейс USB (подчиненную сторону USB) для подключения ПК или принтера ПФП 1000 согласно варианту осуществления.
На фиг.5 показан вид, поясняющий соединение между принтером ПФП 1000 и ЦФА 3012 согласно варианту осуществления. Части, общие с указанными на рассмотренных выше чертежах, обозначены теми же позициями, и их описание опущено.
Согласно фиг.5 кабель 5000 содержит разъем 5001, присоединенный к разъему 1012 принтера ПФП 1000, и разъем 5002 для подключения к разъему 5003 цифрового фотоаппарата 3012. Цифровой фотоаппарат 3012 может выводить данные изображения, сохраненные во внутренней памяти (карте памяти) через разъем 5003. Цифровой фотоаппарат 3012 может иметь различные конструкции, например конструкцию, включающую в себя память как средство хранения, и конструкцию, имеющую прорезь для вставки сменной памяти. Принтер ПФП 1000 и цифровой фотоаппарат 3012 соединены кабелем 5000, показанным на фиг.5, и данные изображения с цифрового фотоаппарата 3012 могут непосредственно поступать на принтер ПФП 1000 и распечатываться принтером ПФП 1000.
Примеры работы системы печати согласно варианту осуществления на основе вышеописанной конструкции будут описаны как варианты осуществления.
[Первый вариант осуществления]
Опишем в общих чертах работу системы печати, включающей в себя ЦФА 3012 и принтер ПФП 1000 на основании вышеописанного устройства. В системе печати согласно первому варианту осуществления, ЦФА 3012 и принтер ПФП 1000 могут работать в соответствии со спецификациями СПП (системы прямой печати).
На фиг.6 показана схема, поясняющая последовательность, в которой ЦФА 3012 выдает запрос печати на принтер ПФП 1000 для печати в системе печати согласно первому варианту осуществления.
Эта последовательность обработки выполняется, когда принтер ПФП 1000 и ЦФА 3012 соединены кабелем 5000 и подтверждено, что они согласуются со спецификациями СПП. ЦФА 3012 передает "ConfigurePrintService" («настроить службу печати») на принтер ПФП 1000, чтобы получить состояние принтера ПФП 1000 (600). В ответ принтер ПФП 1000 извещает ЦФА 3012 о текущем состоянии (в данном случае, «холостое» состояние) принтера ПФП 1000 (601). ЦФА 3012 выясняет возможности принтера ПФП 1000 (602) и выдает запрос начала печати (StartJob), соответствующий возможностям (603). Запрос начала печати выдается при условии, что "newJobOK" (фиг.8В) в информации статуса (описана ниже) от принтера ПФП 1000 равно «истина» в 601.
В ответ на запрос начала печати принтер ПФП 1000 запрашивает информацию файла ЦФА 3012 на основании ИД файла данных изображения, подлежащих печати (604). Информация файла содержит такие элементы информации, как емкость файла (размер файла), наличие/отсутствие свернутого изображения и атрибуты файла. Когда принтер ПФП 1000 принимает информацию файла и определяет, что файл можно обработать, принтер ПФП 1000 запрашивает файл ЦФА 3012 (605). ЦФА 3012 передает данные изображения запрошенного файла на ЦФА 3012. После этого, когда принтер ПФП 1000 начинает процесс печати, принтер ПФП 1000 передает информацию статуса, представляющую "Printing" («печать») на ЦФА 3012 посредством "NotifyDeviceStatus" («известить о статусе устройства») в 606. По окончании процесса печати одной страницы принтер ПФП 1000 извещает ЦФА 3012 об окончании процесса печати посредством "NotifyJobStatus" 607 («известить о статусе задания») в начале обработки следующей страницы. Чтобы напечатать только одну страницу, принтер ПФП 1000 извещает ЦФА 3012 о «холостом» состоянии посредством "NotifyDeviceStatus" 608 в конце печати одной запрошенной страницы. Чтобы напечатать N изображений, разместив совокупность (N) изображений на одной странице, принтер ПФП 1000 посылает "NotifyJobStatus" 607 на ЦФА 3012 каждый раз после того, как напечатано N изображений. Хронирование выдачи "NotifyJobStatus" и "NotifyDeviceStatus" и порядок получения данных изображения в первом варианте осуществления носят иллюстративный характер, и можно рассматривать разные случаи в зависимости от спецификации изделия.
Процесс печати предусматривает случай, когда ИД файлов данных изображения, подлежащих печати, помещаются и сразу же передаются в запросе начала печати (StartJob) от ЦФА 3012 для осуществления печати, и случай, когда только ИД файла для файла DPOF [Digital Print Order Format], используемого для обычной проявки фотографий, помещается в запрос начала печати (StartJob) от ЦФА 3012 и передается на принтер ПФП 1000, и принтер ПФП 1000 интерпретирует файл DPOF, получает ИД файла необходимых данных изображения и распечатывает их.
На фиг.7 показан пример запроса начала печати, выданного ЦФА 3012 на принтер ПФП 1000.
На фиг.7 позиция 720 обозначает настройку (jobConfig), задание печати и позиция 721 обозначает информацию печати (printInfo).
Поясним настройку 720. Позиция 700 (quality) обозначает качество печати, например «нормальное» или «высокое». Позиция 701 (paperSize) обозначает размер бумаги, и позиция 702 (paperType) обозначает тип бумаги, например «обычная бумага», «фотобумага» или «бумага для струйного принтера». Позиция 703 (fileType) обозначает тип файла изображения, подлежащего печати, и когда, например, используется DPOF, тип, представляющий DPOF, указывается типом 703 файла. Позиция 704 (datePrint) обозначает, нужно ли печатать дату, позиция 705 (fileNamePrint) обозначает, нужно ли печатать имя файла, позиция 706 (imageOptimize) обозначает, нужно ли оптимизировать изображение, позиция 707 (fixedSize) обозначает, нужно ли осуществлять печать фиксированного размера, и позиция 708 (cropping) обозначает, нужно ли печатать указанный участок изображения.
Информация 721 печати содержит ИД файла 709 (fileId) и информацию 710 даты (date).
На фиг.8А и 8В показаны схемы, поясняющие элементы информации, содержащиеся в JobStatus и DeviceStatus, описанных выше. JobStatus (фиг.8A) и DeviceStatus (фиг.8B) передаются с принтера ПФП 1000 на ЦФА 3012. ЦФА 3012 может запросить принтер ПФП 1000 передавать эти элементы информации с произвольным хронированием.
Согласно фиг.8А "prtPID", "ImagePath" и "copyID" становятся эффективными, когда указана печать файла DPOF. "prtPID" - это информация идентификации (ИД) секции печати, указанной файлом DPOF. "ImagePath" - это информация пути для указания файла изображения, обозначенного файлом DPOF. "copyID" обозначает количество копий при печати после указания печати совокупности копий. При печати на основе файла DPOF ЦФА 3012 описывает "fileID" файла DPOF в запросе начала печати (StartJob) и передает запрос начала печати на принтер ПФП 1000. В ответ на это принтер ПФП 1000 может начать печать файла DPOF. Принтер ПФП 1000 получает файл DPOF на основании "fileID" файла DPOF, выполняет "GetFileID" и указывает "fileID" файла изображения, указанного в файле DPOF. Принтер ПФП 1000 запрашивает файл изображения ЦФА 3012 и получает данные изображения. В результате можно напечатать изображение, указанное в файле DPOF. При выполнении печати на основании файла DPOF принтер ПФП 1000 извещает ЦФА 3012 посредством "NotifyJobStatus" для "prtPID", "ImagePath" и "copyID", представляющих ход печати.
Когда процесс печати возобновляется после прерывания по той или иной причине во время печати файла DPOF, процесс печати возобновляется с начала страницы, на которой процесс печати был прерван.
"progress" («ход») представляет текущую страницу (N/T) во время печати предстоящего количества страниц. N выражает текущую страницу печати, и Т выражает общее количество страниц печати, подлежащих печати. "imagePrinted" представляет количество напечатанных изображений.
Теперь объясним DeviceStatus (фиг.8В).
"dpsPrintServiceStatus" указывает состояние принтера ПФП 1000 и передается на ЦФА 3012 с принтера ПФП 1000. "dpsPrintServiceStatus" включает в себя холостое состояние, состояние печати и состояние паузы. "jobEndReason" обозначает конечное состояние процесса печати и передается на ЦФА 3012 по завершении печати конечной страницы. "errorStatus" представляет состояние ошибки и передается после генерации ошибки. "errorReason" означает причину генерации ошибки и передается совместно с "errorStatus".
"disconnectEnable" означает, что печать возможна даже, если кабель 5000 USB отсоединен от принтера ПФП 1000. Принтер ПФП 1000 извещает ЦФА 3012 о "disconnectEnable". "capabilityChanged" означает, что возможности принтера ПФП 1000 изменились, и передается на ЦФА 3012. "newJobOK" означает, что принтер ПФП 1000 может принять запрос печати, и передается на ЦФА 3012.
На фиг.9 показана логическая блок-схема процесса возобновления печати в ЦФА 3012 согласно первому варианту осуществления. Программа, которая выполняет этот процесс, хранится в ПЗУ 3101, и ЦП 3100 выполняет процесс управления в соответствии с программой для реализации процесса.
В этом процессе операция печати прерывается, когда, например, кабель 5000 отсоединяется в ходе выполнения операции печати. После этого устанавливают повторное соединение СПП, нажимают кнопку печати ЦФА 3012, и принтер ПФП 1000 получает команду возобновления операции печати. Затем принтер ПФП 1000 возобновляет печать.
Этот процесс предполагает, что прерывание процесса печати на принтере ПФП 1000 и прерывание процесса печати на ЦФА 3012 распознается принтером ПФП 1000 и ЦФА 3012.
На этапе S1 определяют, соединены ли физически ЦФА 3012 и принтер ПФП 1000 с помощью кабеля 5000 и т.п. и установлено ли повторное соединение СПП. Если соединение установлено, то процесс переходит к этапу S2. Если ЦФА 3012 указывает возобновление печати, то производится определение, был ли прерван процесс печати. Если процесс печати не был прерван, то процесс переходит к этапу S3 для осуществления нормального процесса печати, например процесса начала заново процесса печати в соответствии с инструкцией печати.
Если процесс печати был прерван, то процесс переходит к этапу S4. Производится определение, является ли принтер ПФП 1000, который заново установил соединение, той же моделью (те же <dpsVersion> и <productName>), моделью того же производителя (<productName>) или моделью того поставщика (<vendorName>), что и принтер ПФП 1000, который прервал предыдущий процесс печати. В этой процедуре модель принтера ПФП 1000 определяется на основании содержимого, переданного принтером ПФП 1000 в ответ на "ConfigurePrintService", выданное ЦФА 3012. Когда повторно подключен тот же принтер ПФП, не возникает никаких проблем. Даже для принтера другой модели, если производитель или поставщик принтера тот же самый и процесс повторной печати согласно первому варианту осуществления возможен на основе конструкции производителя или поставщика, можно определить, что возобновление печати возможно и процесс переходит к следующему процессу S6. В случае ответа НЕТ на этапе S4 процесс переходит к этапу S5 для определения, что продолжение процесса печати невозможно, и отображения сообщения на блоке 2700 отображения ЦФА 3012. При необходимости ПИ (окно меню пользователя), отображаемый на блоке 2700 отображения, может изменяться.
Если на этапе S4 определено, что повторно подключенное устройство является совместимой моделью, то процесс переходит к этапу S6 для определения, осуществляется ли процесс печати с использованием файла DPOF. Если на этапе S6 получен ответ ДА, то процесс переходит к этапу S7 для передачи ИД файла для файла DPOF на принтер ПФП 1000. В этом случае вышеописанные "prtPID", "ImagePath" и "copyID" передаются совместно с ИД файла для файла DPOF, тем самым указывая, что файл подлежит возобновленному процессу печати с использованием файла DPOF.
Если процесс печати не осуществляется с использованием файла DPOF на этапе S6, т.е. каждый файл изображения должен быть указан и напечатан, ИД файла для файлов изображения, за исключением напечатанных файлов изображения среди ИД файла для файлов изображения, подлежащих печати, передаются немедленно на принтер ПФП 1000 для выполнения печати. Заметим, что в качестве инструкции возобновления печати нажимают кнопку печати среди операционных кнопок ЦФА 3012 для отправки "StartJob" с ЦФА 3012 на принтер ПФП 1000, и процесс печати возобновляется.
Принтер ПФП 1000 извещает ЦФА 3012 об окончании печати каждой страницы посредством "jobStatus" (означающего начало печати следующей страницы), переданного с принтера ПФП 1000 в начале следующей страницы, или "jobEndReason", содержащегося в "deviceStatus" для конечной страницы. Поэтому ЦФА 3012 может подтверждать количество отпечатанных изображений. Был ли прерван процесс печати, можно определить на основании того, было ли напечатано количество изображений, указанное в инструкции печати, когда изображения печатаются одно за другим, или из хода ("prtPID", "ImagePath" и "copyID") в файле DPOF, или завершен ли процесс печати, когда процесс печати основан на файле DPOF.
При печати по одному изображению на страницу количество листов бумаги для печати совпадает с количеством изображений. Когда же совокупность из (N) изображений размещается и печатается на одном листе бумаги, количество изображений, подлежащих печати, не совпадает с количеством листов бумаги для печати. ЦФА 3012 должен брать количество листов бумаги для печати и количество данных изображения, совпадающие друг с другом в соответствии с режимом печати.
[Второй вариант осуществления]
Когда указана печать даты <datePrint> 704 в <jobConfig> 720 на фиг.7, <date> 710, содержащееся в <printInfo> 721, печатается. Когда печать даты <datePrint> 704 в <jobConfig> 720 не указана, данные даты игнорируются и не печатаются даже, если <date> 710 содержится в <printInfo> 721.
Это может повысить степень свободы данных, содержащихся в <printInfo> 721. Команду startJob можно создать, например, непосредственно передав в <printInfo> 721 данные изображения и список дат, которые используются другим заданием.
[Третий вариант осуществления]
На фиг.10 показана логическая блок-схема, поясняющая процесс в системе печати согласно третьему варианту осуществления настоящего изобретения.
В третьем варианте осуществления, когда ЦФА 3012 выдает какую-либо команду на принтер ПФП 1000 и статус принтера ПФП 1000 изменяется, принтер ПФП 1000 извещает ЦФА 3012 о статусе посредством вышеописанного "NotifyDeviceStatus". Однако, когда состояние принтера ПФП 1000 не меняется или ответ задерживается, ЦФА 3012 определяет (оценивает), что ранее выданная команда привела к предполагаемому изменению статуса принтера ПФП 1000, и выполняет соответствующий процесс. Для подтверждения состояния принтер ПФП 1000 ЦФА 3012 выдает "GetDeviceStatus" на принтер ПФП 1000, получает состояние принтера ПФП 1000 и выполняет процесс, соответствующий полученному статусу принтера.
Пример этого процесса будет объяснен со ссылкой на логическую блок-схему, показанную на фиг.10.
На этапе S10 запрос начала печати "StartJob" поступает на принтер ПФП 1000. Процесс переходит к этапу S11 для определения, получен ли от принтера ПФП 1000 заранее определенный ответ статуса "NotifyDeviceStatus". Если принтер ПФП 1000 относится к типу изделия, способному принимать только одно задание печати, newJobOK из NotifyDeviceStatus, указывающее, что принтер ПФП 1000 может принять следующее задание печати, должно иметь значение «ложь» после выдачи запроса начала печати "startJob" на принтер ПФП 1000. Если на этапе S11 поступает нормальный ответ (newJobOK равно «ложь»), то процесс переходит к этапу S12, чтобы ждать, пока "newJobOK" не изменится на «истина».
После этого выполняется нормальный процесс печати, состоящий в выдаче следующей команды или выводе данных изображения и т.п. в соответствии с запросом от принтера ПФП 1000.
На этапе S13 производится определение, принято ли "NotExecuted", выражающее, что "StartJob" не может быть выполнено. Если "NotExecuted" не получено, то процесс переходит к этапу S20 для выдачи "GetDeviceStatus" на принтер ПФП 1000 и получения текущего статуса принтера ПФП 1000. Если этот статус открывает причину невозможности выполнения инструкции и "StartJob" может быть выдана повторно, сообщение вследствие этого отображается на ПИ блока 2700 отображения ЦФА 3012. После этого, если пользователь указывает повторную выдачу инструкции с использованием кнопки 3103, процесс переходит от этапа S21 к этапу S22 для повторной выдачи на принтер ПФП 1000 инструкции "StartJob", которая не была выполнена. Если на этапе S21 не поступает указания повторной выдачи, то процесс переходит от этапа S21 к этапу S19.
Если на этапе S13 не принято "NotExecuted", то процесс переходит к этапу S14 для определения, принято ли "NotSupported". Если "NotSupported" принято, процесс переходит к этапу S15. В этом случае ранее выданная "StartJob" не поддерживается принтером ПФП 1000 и, например, неподдерживаемые элементы (невозможное указание) отображаются на ПИ блока 2700 отображения для представления, что инструкция печати не поддерживается принтером ПФП 1000.
Смысл отсутствия поддержки инструкции "StartJob" включает в себя случай, когда принтер ПФП 1000 не поддерживает саму по себе инструкцию "StartJob", и также случай, когда принтер ПФП 1000 поддерживает саму по себе инструкцию "StartJob", но не поддерживает выданную в данный момент саму по себе инструкцию "StartJob", поскольку указан неподдерживаемый размер бумаги или тип бумаги. В этом случае ПИ ЦФА 3012 перестраивается так, чтобы запрещать выбор неправильного размера бумаги или типа бумаги (элементы, подлежащие настройке для операции печати), по аналогии с вышеописанным примером. Это может уменьшать вероятность повторного приема "NotSupported" при повторном выполнении инструкции "StartJob" на принтере ПФП 1000. Заметим, что по приеме "NotSupported" может выполняться процесс, например, подтверждения размера бумаги или типа бумаги, поддерживаемых принтером ПФП 1000.
Если на принтер ПФП 1000 не получено "NotSupported", то процесс переходит к этапу S11'. На этом этапе предполагается, что содержимое ответа, по существу, является "OK". Если на этапе S11' получен заранее определенный ответ статуса, то процесс переходит к этапу S12 для продолжения нормальной работы. Если на этапе S11' не получено заранее определенной информации статуса, то процесс переходит к этапу S16 для определения, продолжать ли работу как нормальную работу. Это можно отображать с использованием вышеупомянутого ПИ, чтобы позволить пользователю выбирать нормальную работу. Если процесс переходит к нормальной работе, то процесс переходит к этапу S12. Если пользователь не вводит никакой инструкции и процесс не переходит к нормальной работе, то процесс переходит к этапу S17, чтобы запросить статус принтера ПФП 1000 с использованием "GetDeviceStatus". Процесс переходит к этапу S18, и получают статус принтера ПФП 1000, и если статус обычный, то определяют, что этот статус предполагается нормальным, и процесс переходит к этапу S12. Если получен другой статус, то процесс переходит к этапу S19 для выполнения процесса, соответствующего полученному статусу.
Причина, по которой неожиданное "NotExecuted" отправлено обратно в качестве ответа на этапе S13, состоит в том, что, например, ПК 3010 подключен к принтеру ПФП 1000, инструкция печати от ПК 3010 получена принтером ПФП 1000 почти одновременно с запросом начала печати от ЦФА 3012, и начинается процесс печати данных печати от ПК 3010. То есть, поскольку ЦФА 3012 заранее распознает "newJobOK" = "истина" на основании NotifyDeviceStatus, выданной принтером ПФП 1000, ЦФА 3012 выдает команду "StartJob". Однако, как только выдана команда "StartJob", задается "newJobOK" = "ложь" и принтер ПФП 1000 посылает в ответ "NotExecuted". ЦФА 3012, который распознал "newJobOK" = "истина", принимает неожиданный ответ "NotExecuted" от принтера ПФП 1000. Причина, по которой заранее определенная информация статуса была принята на этапе S11, состоит в том, что, например, принтер ПФП 1000 является изделием, способным принимать совокупность заданий печати и даже после того, как принят запрос печати "StartJob", "newJobOK" из "DeviceStatus" остается неизменно равной «истина», и, таким образом, принтер ПФП 1000 не выдает "NotifyDeviceStatus" на ЦФА 3012. Кроме того, в этом случае ЦФА 3012 надежно действует исходя из предположения, что "newJobOK" равно «ложь», пока состояние принтера ПФП 1000 не будет подтверждено посредством "GetDeviceStatus" (вследствие возможности задержки при выдаче "NotifyDeviceStatus", представляющего "newJobOK" = "ложь" по любой причине).
Вышеприведенное описание исходит из того предположения, что даже, когда команда от ЦФА 3012 и команда от принтера ПФП 1000 выдаются почти одновременно, обе команды оказываются эффективными. Однако может быть также спецификация прямой печати: «из почти одновременно выданных команд, команда от ЦФА 3012 предпочтительно обрабатывается, и выдача команды от принтера ПФП 1000 игнорируется и отклоняется». В этом случае проверочное содержимое на этапе S11 таково «получена ли команда, выданная принтером ПФП 1000?». Если на этапе S11 получен ответ ДА, то процесс переходит к этапу S13 через этап (не показан) игнорирования команды от принтера ПФП 1000; если от принтера 1000 не поступило никакой команды, то процесс переходит сразу к этапу S13.
В вышеупомянутой спецификации прямой печати отклоненная команда принтера ПФП 1000 может быть повторно выдана принтером ПФП 1000. Рассмотрим для примера случай, когда инструкция печати от ПК 3010 поступает почти одновременно со "StartJob" от ЦФА 3012 и начинается процесс печати для данных печати от ПК 3010. ЦФА 3012, который заранее распознал "newJobOK" = "истина" посредством NotifyDeviceStatus, выданного принтером ПФП 1000, заранее выдает инструкцию "StartJob". Почти в то же время принтер ПФП 1000, который начинает процесс печати для данных печати с ПК 3010, изменяет "newJobOK" = "ложь". Чтобы известить об этом ЦФА 3012, принтер ПФП 1000 выдает инструкцию "NotifyDeviceStatus" на ЦФА 3012. Однако инструкция "NotifyDeviceStatus", выданная принтером ПФП 1000, отклоняется, и инструкция "StartJob", выданная ЦФА 3012, предпочтительно обрабатывается. Поскольку принтер ПФП 1000 уже изменил "newJobOK" на «ложь», он посылает обратно "NotExecuted" в ответ на инструкцию "StartJob". В это время принтер ПФП 1000 должен повторно выдать инструкцию "NotifyDeviceStatus", чтобы известить ЦФА 3012 от "newJobOK" = "ложь". В это время, если ЦФА 3012 выдает следующую команду, инструкции (команды) опять выдаются двумя устройствами почти одновременно.
В основном ситуация, когда два устройства почти одновременно выдают команды и одна из них отклоняется, может возникать, когда критериальные статусы, используемые для выдачи команд с двух устройств, различны. В этом случае процесс прямой печати становится очень нестабильным и находится в опасном состоянии. Поэтому ситуации, в которой два устройства почти одновременно выдают команды, предпочтительно избегать, насколько это возможно. С этой целью, например, когда ЦФА 3012 обнаруживает «выдачу команды принтером ПФП 1000» на этапе S11, выдача инструкции "GetDeviceStatus" может быть запрещена на этапе S20 или S17 в течение заранее определенного периода времени, в ожидании команды от принтера ПФП 1000.
Кроме того, на принтере ПФП 1000 как партнере прямой печати может быть задано запрещение выдачи команды с принтера ПФП 1000 в течение заранее определенного периода времени и ожидание команды от ЦФА 3012. Если же эти заранее определенные периоды времени запрещения равны, то команды будут почти одновременно выдаваться двумя устройствами по истечении заранее определенного периода времени. С учетом этой возможности заранее определенный период времени может не быть фиксированным и может прерывисто и нерегулярно динамически изменяться. Альтернативно, период времени запрещения, используемый, когда «выдача команды принтером ПФП 1000 не обнаружена» на этапе S11, можно использовать, пока не «выдача команды принтером ПФП 1000 обнаружена» на этапе S11, и обновлять, когда «выдача команды принтером ПФП 1000 обнаружена» на этапе S11. В качестве способа изменения хронирования выдачи команд хронирование выдачи может быть определено заранее. Во избежание перехода двух устройств к одному и тому же хронированию хронирование можно изменять по заранее определенному правилу. Например, способ изменения хронирования можно задавать в зависимости от главного или подчиненного устройства USB. Альтернативно, ЦФА 3012 и принтер ПФП 1000 могут содержать средство генерации случайных сигналов хронирования, и хронирование выдачи команд можно определять в соответствии с сигналами хронирования соответственно. Как описано выше, принтер ПФП 1000 также может быть приведен в состояние, когда выдача команды с принтера ПФП 1000 запрещена в течение заранее определенного периода времени, что уменьшает возможность почти одновременной выдачи команд с двух устройств. Можно также применять различные модификации вышеописанного.
[Четвертый вариант осуществления]
Опишем процесс продолжения печати с ЦФА 3012 в системе печати согласно четвертому варианту осуществления и процесс прерывания печати. Кроме того, в этом случае система печати, ЦФА 3012 и принтер ПФП 1000 устроены так же, как описано выше, и их описание будет опущено.
На фиг.11 показана логическая блок-схема процесса продолжения печати, выполняющегося, когда процесс печати в ЦФА 3012 согласно четвертому варианту осуществления прерывается и затем выполняется путем нажатия кнопки печати, которое указывает начало печати.
На этапе S110 производится определение, была ли нажата кнопка печати среди операционных кнопок 3103 ЦФА 3012. Если на этапе S110 получен ответ НЕТ, то процесс переходит к этапу S111 для выполнения другого процесса, например процесса, соответствующего нажатой кнопке или ожидания инструкции, связанной с кнопкой. Если кнопка печати была нажата, то процесс переходит к этапу S112. На принтер ПФП 1000 выдается "GetDeviceStatus" для запроса информации статуса принтера ПФП 1000 и получения информации статуса, переданного с принтера ПФП 1000 в ответ на запрос. Процесс переходит к этапу S113 для определения на основании полученной информации статуса, равен ли статус принтера ПФП 1000 «пауза». Если на этапе S113 получен ответ ДА, то процесс переходит к этапу S114 для определения, произошла ли ошибка с выдачей «предупреждения» (например, кабель отключен) или ошибок нет. Если на этапе S114 получен ответ ДА, возобновление процесса печати определяется как возможное (поскольку был получен статус от принтера ПФП 1000). Процесс переходит к этапу S115, чтобы предписать принтеру ПФП 1000 возобновить процесс печати (передача "ContinueJob").
Если на этапе S113 не задано состояние паузы или на этапе S114 не произошло другой ошибки, то возобновление процесса печати определяется как невозможное и на ПИ блока 2700 отображения отображается соответствующее сообщение. В этом случае, например, на ПИ блока 2700 отображения отображается сообщение, извещающее пользователя о том, что процесс печати нельзя возобновить и/или кнопка печати заблокирована. Бесполезного нажатия пользователем кнопки печати можно избежать благодаря получению состояния принтера ПФП 1000 до нажатия кнопки печати, определенного на этапе S110, и извещения пользователя, действует ли кнопка печати.
На фиг.12 показана логическая блок-схема процесса прерывания печати, выполняющегося при нажатии кнопки прерывания печати, которое указывает прерывание процесса печати в ЦФА 3012 согласно четвертому варианту осуществления.
На этапе S121 производится определение, была ли нажата кнопка прерывания среди операционных кнопок 3102 ЦФА 3012. Если на этапе S121 получен ответ НЕТ, то процесс переходит к этапу S122 для выполнения другого процесса, например процесса, соответствующего нажатой кнопке или ожидания инструкции, связанной с кнопкой. Если кнопка прерывания была указана (нажата), то процесс переходит к этапу S123. На принтер ПФП 1000 выдается "GetDeviceStatus" для запроса текущей информации статуса принтера ПФП 1000 в ответ на запрос. Процесс переходит к этапу S124 для определения, на основании полученной информации статуса, равен ли статус принтера ПФП 1000 «пауза». Если на этапе S124 получен ответ ДА, то процесс переходит к этапу S126; если НЕТ - к этапу S125 для определения, продвигается ли печать. Если на этапе S125 получен ответ ДА, то прерывание процесса печати определяется как возможное и процесс переходит к этапу S126, чтобы предписать принтеру ПФП 1000 прервать процесс печати (передача "AbortJob").
Если на этапе S125 получен ответ НЕТ, то прерывание процесса печати определяется как невозможное и на ПИ блока 2700 отображения отображается соответствующее сообщение. В этом случае, например, на блоке 2700 отображения отображается сообщение, извещающее пользователя, что печать нельзя прервать и/или кнопка прерывания заблокирована. Бесполезного нажатия пользователем кнопки прерывания можно избежать путем получения состояния принтера ПФП 1000 до нажатия кнопки прерывания, определенного на этапе S121, и извещения пользователя о том, действует ли кнопка прерывания.
[Пятый вариант осуществления]
На фиг.13 показана логическая блок-схема, поясняющая процесс в системе печати согласно пятому варианту осуществления настоящего изобретения. Программа, которая выполняет этот процесс, хранится в ПЗУ 3101. Кроме того, в пятом варианте осуществления ЦФА 3012 и принтер ПФП 1000 устроены так же, как в вышеописанных вариантах осуществления, и их описание будет опущено.
В пятом варианте осуществления, когда ЦФА 3012 выдает какую-либо команду на принтер ПФП 1000, ЦФА 3012 извещается об ответе принтера ПФП 1000 на команду. Если ответ включает в себя неожиданное содержимое, то ЦФА 3012 выдает на принтер ПФП 1000 "GetDeviceStatus", чтобы получить текущее состояние принтера ПФП 1000. Когда полученный статус является статусом, предполагаемым на основании команды, выданной непосредственно до получения, и содержимого ответа, выполняется нормальный процесс. Если же статус не является предполагаемым, то выполняется процесс, соответствующий статусу.
На этапе S50 на принтер ПФП 1000 выдается инструкция "StartJob" в качестве запроса начала печати. Процесс переходит к этапу S51, и, если от принтера ПФП 1000 поступает ответ на запрос начала печати, определяется содержимое. Если содержимое включает в себя "NotExecuted", выражающее, что инструкция "StartJob" не может быть выполнена, то процесс переходит к этапу S52 для выдачи инструкции "GetDeviceStatus" на принтер ПФП 1000. На этапе S53 ЦФА 3012 ожидает ответа на инструкцию от принтера ПФП 1000 и получает текущий статус принтера ПФП 1000. На этапе S54 анализируется причина, по которой инструкция начала печати не была выполнена. Если причина найдена, то процесс переходит к этапу S55 для изменения отображения ПИ и ожидания ввода инструкции пользователем с использованием операционной кнопки 3103. Если на этапе S56 поступает запрос начала печати, то процесс переходит к этапу S50 для выполнения вышеописанного процесса. Заметим, что, если на этапе S50 указана команда, отличная от запроса печати, то реализуется соответствующий процесс, но на фиг.13 этот процесс не показан.
Если на этапе S51 содержимое ответа не является "NotExecuted", то процесс переходит к этапу S57 для определения, является ли содержимое "NotSupported". Если содержимое является "NotSupported", то процесс переходит к этапу S58. Поскольку ранее выданная инструкция "StartJob" не поддерживается принтером ПФП 1000, то, например, (невозможное указание) отображается на ПИ блока отображения 2700, чтобы представить, что команда не поддерживается принтером ПФП 1000. Смысл отсутствия поддержки инструкции "StartJob" включает в себя случай, когда принтер ПФП 1000 не поддерживает саму по себе инструкцию "StartJob", и также случай, когда принтер ПФП 1000 поддерживает саму по себе инструкцию "StartJob", но не поддерживает выданную в данный момент саму по себе инструкцию "StartJob", поскольку указан неподдерживаемый размер бумаги или тип бумаги. В этом случае неподдерживаемые условия печати можно исключить, перестраивая ПИ так, чтобы запрещать выбор неправильного размера бумаги или типа бумаги, по аналогии с вышеописанным примером. Это может уменьшить возможность повторного получения "NotSupported" от принтера ПФП 1000 при повторной выдаче инструкции "StartJob". В это время может происходить процесс, например, подтверждения размера бумаги или типа бумаги, поддерживаемого принтером ПФП 1000. После того как ПИ таким образом изменился, процесс переходит к этапу S55, чтобы ожидать ввод следующей инструкции, и переходит к соответствующему процессу.
Если на этапе S57 определено, что содержимое ответа не является "NotSupported", то процесс переходит к этапу S59. При этом предполагается, что ответ, по существу, является "OK". На этапе S59 производится определение, поступило ли от принтера ПФП 1000 заранее определенное извещение о статусе "NotifyDeviceStatus" в течение заранее определенного периода времени. Предположим, что принтер ПФП 1000 принимает только одно задание печати. Если в качестве запроса начала печати выдана инструкция "StartJob", то "newJobOK" из "NotifyDeviceStatus", выражающая, что принтер ПФП 1000 не может принять следующее задание печати, должна быть равна «ложь». По этой причине, если на этапе S59 получен заранее определенный ответ статуса, соответствующий запросу начала печати, то процесс переходит к этапу S63 для продолжения нормальной работы, после чего операция завершается.
Если на этапе S59 в течение заранее определенного периода времени не получено никакой заранее определенной информации статуса, то процесс переходит к этапу S60 для выдачи "GetDeviceStatus" на принтер ПФП 1000 и получения статуса принтера ПФП 1000. Если на этапе S61 получен ответ от принтера ПФП 1000, то процесс переходит к этапу S62 для определения, является ли полученный статус ожидаемым статусом, соответствующим команде, выданной непосредственно до получения ответа. Если на этапе S62 получен ответ ДА, то процесс переходит к этапу S63 для осуществления нормального процесса. Если был получен неожиданный статус, то процесс переходит к этапу S64 для выполнения процесса, соответствующего статусу.
Примером «предполагаемого статуса, соответствующего ответу» в пятом варианте осуществления является статус, который означает «печать» ("printing") как результат выдачи "GetDeviceStatus", когда в течение заранее определенного периода времени не поступает "NotifyDeviceStatus", хотя на этапе S50 выдан запрос начала печати для приема "OK". В этом случае может продолжаться нормальный процесс исходя из предположения, что выдача "NotifyDeviceStatus" по какой-либо причине задерживается (например, перенос файла изображения занимает много времени). В качестве другого статуса в пятом варианте осуществления, в ответ на выдачу "GetDeviceStatus", может быть возвращен статус, не означающий «печать». В этом случае возможны разные варианты: запрос начала печати не обработан нормально по какой-либо причине, или печать отменена в силу условий на принтере ПФП 1000 в течение очень короткого времени, истекшего после выдачи запроса начала печати. Эти причины следует объединять с другой информацией статуса (например, информацией ошибки) для определения последующего процесса. Кроме того, одновременное использование конфигурации, отвечающей третьему варианту осуществления, может реализовать более стабильный процесс прямой печати.
В пятом варианте осуществления, запрос хронирования выдачи изменяется в зависимости от процесса на стороне подачи данных изображения. В частности, устройство подачи изображений (фотоаппарат) выдает заранее определенную команду на устройство записи (принтер). После того как устройство подачи изображений выдает заранее определенную команду, оно определяет, является ли сигнал, полученный от устройства записи, ответом на заранее определенную команду. Если устройство подачи изображений определяет, что сигнал не является ответом на заранее определенную команду, то устройство подачи изображений изменяет хронирование выдачи при выдаче следующей команды.
Однако настоящее изобретение также можно применять к устройству или устройству записи, которое принимает данные изображения. В частности, устройство или устройство записи, которое принимает данные изображения, выдает заранее определенную команду на устройство подачи изображений. После того как устройство или устройство записи выдает заранее определенную команду, оно определяет, является ли сигнал, полученный от устройства подачи изображений, ответом на заранее определенную команду. Если устройство или устройство записи определяет, что сигнал не является ответом на заранее определенную команду, то устройство или устройство записи, которое принимает данные изображения, изменяет хронирование выдачи следующей команды.
[Шестой вариант осуществления]
Вышеописанные варианты осуществления в основном описывают процессы в ЦФА 3012. Шестой вариант осуществления поясняет процесс, когда принтер ПФП 1000 получает данные изображения от ЦФА 3012. Конфигурация оборудования в шестом варианте осуществления такая же, как в первом варианте осуществления, и ее описание будет опущено.
На фиг.14 показана логическая блок-схема процесса получения данных изображения на принтере ПФП 1000 согласно шестому варианту осуществления настоящего изобретения. Программа, выполняющая этот процесс, хранится в программной памяти 3003а и выполняется под управлением ЦСП 3002.
Этот процесс начинается с того, что ЦФА 3012 направляет запрос печати ("StartJob"), указывающий начало процесса печати. На этапе S31 на ЦФА 3012 поступает "GetFileInfo" для запроса информации о файле изображения, необходимого ЦФА 3012. На этапе S32, когда информация (размер файла, атрибут и пр.) для файла изображения поступает с ЦФА 3012, получают элемент, который содержится в информации и выражает емкость файла. Процесс переходит к этапу S33 для определения, можно ли принять файл изображения целиком и сразу обработать. Это определение производится на основании, например, емкости памяти свободной области в памяти 3003 принтера ПФП 1000. Если определено, что невозможно сразу принять все данные изображения, то процесс переходит к этапу S34 для считывания файла изображения. Начальный адрес и объем чтения указываются для запрашивания частичных данных изображения файла изображения. Это осуществляется с использованием "GetPartialFile". ЦФА 3012 считывает указанные частичные данные изображения из файла изображения в соответствии с начальным адресом и объемом чтения и передает частичные данные изображения на принтер ПФП 1000. Принтер ПФП 1000, получив частичные данные изображения на этапе S35, обрабатывает и печатает частичные данные изображения на этапе S36. Процесс переходит к этапу S37 для определения, все ли данные изображения файла изображения напечатаны. Если на этапе S37 получен ответ НЕТ, то процесс возвращается к этапу S34 для запроса следующих частичных данных изображения. Этот процесс повторно выполняется до тех пор, пока не будет принят и напечатан весь файл изображения, указанный на этапе S32.
Если на этапе S33 определено, что данные изображения файла изображения можно сразу принять и обработать, то процесс переходит к этапу S38 для запроса всех данных файла изображения ЦФА 3012. На этапе S39 все данные изображения файла изображения, отправленные с ЦФА 3012 на основании запроса, принимаются и печатаются.
На фиг.15 показана логическая блок-схема, поясняющая другой пример процесса получения данных изображения на принтере ПФП 1000 согласно шестому варианту осуществления настоящего изобретения. Программа, которая выполняет этот процесс, хранится в программной памяти 3003а и выполняется под управлением ЦСП 3002.
Этот процесс начинается, когда ЦФА 3012 направляет запрос печати ("StartJob"), указывающий начало процесса печати. На этапе S41 ЦФА 3012 направляет "GetFileInfo", чтобы запросить информацию о файле изображения, указанном ЦФА 3012. На этапе S42, если информация о файле изображения отправлена с ЦФА 3012, то процесс переходит к этапу S43 для определения, содержит ли файл изображения свернутые изображения (индексные изображения). Если файл изображения содержит свернутые изображения, то процесс переходит к этапу S44 для определения, указана ли индексная печать, с использованием блока 1010 управления. Если индексная печать указана, то процесс переходит к этапу S45 для запроса данных свернутого изображения ЦФА 3012 (выдаче "GetThumb") и получения данных. Процесс переходит к этапу S46 для выполнения индексной печати на основании полученных данных свернутого изображения.
Если на этапе S43 определено, что файл изображения не содержит свернутых изображений, или на этапе S44 не указана индексная печать, то процесс переходит к этапу S33 (фиг.14) для выполнения вышеописанного процесса печати изображения.
Таким образом, согласно шестому варианту осуществления объем данных изображения, полученных за один раз от ЦФА 3012, может изменяться и поступать от ЦФА 3012 в соответствии с емкостью памяти и производительностью обработки принтера ПФП 1000.
Можно заранее обнаружить, что свернутое изображение уже сохранено в файле изображения ЦФА 3012. Когда на принтере ПФП 1000 указана индексная печать, процесс создания свернутого изображения на принтере ПФП 1000 можно опустить. Это позволяет быстро напечатать свернутое изображение (индексное изображение).
Настоящее изобретение также применимо к системе, включающей в себя совокупность устройств (например, главный компьютер, устройство интерфейса, считывающее устройство и принтер) или устройство (например, копировальный аппарат или факсимильный аппарат), выполненное в виде единого устройства.
Задача настоящего изобретения также достигается, когда носитель информации (или носитель записи), на котором хранятся программные коды для реализации функций вышеописанных вариантов осуществления (процессов, осуществляемых на стороне фотоаппарата и различных процессов печати, осуществляемых на стороне принтера), подается в систему или устройство и компьютер (или ЦП или МСП) системы или устройства считывает и выполняет программные коды, хранящиеся на носителе информации. В этом случае программные коды, считанные с носителя информации, реализуют функции вышеописанных вариантов осуществления, и носитель информации, хранящий программные коды, составляет настоящее изобретение. Функции вышеописанных вариантов осуществления реализуются, когда компьютер выполняет считанные программные коды. Кроме того, настоящее изобретение предусматривает случай, когда функции вышеописанных вариантов осуществления реализуются, когда ОС (операционная система) и т.п., действующая на компьютере, полностью или частично осуществляет фактическую обработку на основании инструкций программных кодов.
Кроме того, настоящее изобретение предусматривает случай, когда программные коды, считанные с носителя информации, записываются в память карты расширения функций, вставленной в компьютер, или память блока расширения функций, подключенного к компьютеру, ЦП карты расширения функций или блока расширения функций полностью или частично осуществляет фактическую обработку на основании инструкций программных кодов и, таким образом, реализует функции вышеописанных вариантов осуществления.
Как было описано выше, согласно вариантам осуществления, когда процесс печати на принтере прерывается из-за отсоединения кабеля, связывающего ЦФА и принтер ПФП, после чего процесс печати можно возобновить, вновь присоединив кабель, процесс печати можно надежно возобновить для печати.
Данные изображения, повторно переданные с ЦФА на принтер, изменяются при возобновлении печати в соответствии либо с процессом печати на основе файла DPOF, либо с процессом печати данных изображения, последовательно передаваемых с ЦФА на принтер. В любом случае печать можно надежно возобновлять.
Когда ЦФА согласно вариантам осуществления выдает на принтер команду, например, StartJob или AbortJob, ЦФА предполагает, что было установлено заранее определенное состояние даже в отсутствие какого-либо ответа от принтера, и может принимать решение относительно следующей операции. ЦФА дополнительно выдает команду для подтверждения статуса принтера и может идентифицировать текущее состояние (статус) принтера.
Когда принтер ПФП возвращает конкретный статус как ответ на ЦФА, ЦФА переходит к соответствующему процессу. Например, для "NotExecuted" или "NotSupported" ЦФА выдает команду, запрашивающую состояние принтера для предыдущей команды, и принимает решение относительно следующей команды, подлежащей выдаче, на основании ответа. Для последней команды ранее выданная команда не поддерживается принтером, и, таким образом, ЦФА выполняет процесс, например, изменения ПИ, отображаемого на блоке отображения, чтобы не выдавать последовательно одну и ту же команду. Это может препятствовать повторной отправке на принтер бесполезной команды.
Кроме того, когда принтер ПФП и ЦФА почти одновременно выдают команды, оба или, по меньшей мере, одно из устройств запрещает выдачу команды в течение заранее определенного периода времени. Это может уменьшать возможность повторной почти одновременной выдачи команд с двух устройств.
Согласно вариантам осуществления объем данных изображения, полученный однократно от ЦФА, можно регулировать в соответствии с емкостью памяти или производительностью обработки принтера. Данные изображения можно загружать, обрабатывать и печатать.
Настоящее изобретение не ограничивается вышеприведенными вариантами осуществления, и можно предложить различные изменения и модификации в пределах сущности и объема настоящего изобретения. Поэтому объем настоящего изобретения определяется нижеследующей формулой изобретения.
Класс G06F3/12 вывод цифровых данных на печатающие устройства