Почему вы использовали delims=
? Это удалит разделитель и приведет целую строку к %%a
.
Попробуйте это:
@ECHO OFF
SETLOCAL
SET "sourcedir=D:\Sourcedir"
PUSHD %sourcedir%
FOR /f "tokens=1,2,3" %%a IN (
'dir /b /a-d "*.pdf"'
) DO (
ECHO MD %%~nc
ECHO MOVE "%%a %%b %%c" .\%%~nc\
)
POPD
GOTO :EOF
Если не установлено delims=
, будет использоваться пробел. Таким образом, %%c
будет 10.pdf
, ~n
- извлечь его n часть.
Это основано на вашем вопросе, который вы можете объединить %%a
%%b
%%c
вместе с spaces
, тогда все просто.
Если ваши имена файлов более сложные, то лучше использовать внутренний цикл for
.
- Какой другой вопрос уже дал отличное решение.
Первая вещь, которую необходимо будет сделать, сжать и делать водяные знаки на изображениях прежде, чем загрузить их на сервер. Затем представьте тех, которые пользователю. Это возьмет наименьшее количество ресурсов ЦП, так как они отображают, будет статично.
Я лично затем обрезал бы изображения для версий в натуральную величину и поднял бы их вдоль стороны сжатые. Таким образом, у клиента может быть представление полного образа (хотя сжато и делается водяные знаки) вдоль стороны небольшая выборка полной версии с высокой разрешающей способностью.
Вы, вероятно, хотите избежать непрерывной обработки изображения, если у Вас нет небольшого числа клиентов и очень раскормленного сервера.
Как я говорю своему родительскому элементу (который не понимает, как Интернет работает), если Вы видите его на веб-странице, можно сохранить его, это - просто вопрос того, как сделать это.
Я служил бы низкой-res версии изображения к браузеру и hava клиентская обрезка ui, который затем передаст запрос обратно серверу, который обрежет выбор и передаст его обратно в высоком разрешении.
Существует ajax версия Глубокого Масштабирования, которое Вы могли бы любить - Посмотрите Дракона:
http://livelabs.com/seadragon-ajax/gallery/
Пользователю дарят низкую-res версию изображения; они могут затем увеличить масштаб любой части его, что им нравится.
Во-первых я предварительно представил бы версии, на которых делают водяные знаки, всех полных изображений, сохраняющих их в формате сжатого файла, а также предварительно представленных низких res версиях.
Я вручил бы низкие изображения res для просмотра. Затем изображение с высоким разрешением, на котором делают водяные знаки, для пользователя для установки их обрезки.
При подтверждении у меня был бы второй выделенный сервер обработки изображений, который обрезал изображение, на котором не делают водяные знаки, передал кадрированное изображение веб-серверу, который отправил его клиенту.
Однако это все еще было бы возможно, для создания клиентского сценария, который обработал обрезанные части и сшил их вместе для создания копии в натуральную величину изображения, на котором не делают водяные знаки.
не должен быть сделан доступным для скачивания всегда.
противоречит:
Клиент должен видеть уменьшенную масштаб версию изображения и смочь выбрать область его, чтобы быть просмотренным в режиме полного масштаба (100%).
... в точке Вы позволяете всем областям изображения просматриваться в полном res, все изображение могло быть сшито вместе. таким образом, Вы - эффективно (если очень неудобно) предоставление доступа к полному изображению.
ни одно из этого не помогает Вам достигнуть цели все же.
путем я сделал бы это, должен будет обеспечить, 72 точки на дюйм делали водяные знаки на копии для использования в выборе области изображения для загрузки. Вы могли масштабировать это к % оригинала, если бы экранная недвижимость была проблемой. сделайте, чтобы пользователь выбрал верхние левые и нижние правые координаты. затем используйте что-то как imagemagick для копирования этой области из оригинала, который будет подаваться пользователю.
если необходимо сохранить ресурсы, Вы могли бы сделать, чтобы пользователи загрузили с предопределенной сетки, таким образом, в первый раз сетка coord 14:11 выбрана, image_1411_crop.jpg записан в файловую систему, и в следующий раз, когда coord выбран, файл уже существует.
править: прочитайте некоторые свои комментарии к другим ответам...
какой путь Вы идете о генерации и кэшировании серверной стороны, Вы собираетесь использовать ту же сумму пропускной способности и трафика. 300 точек на дюйм jpeg составляют 300 точек на дюйм jpeg, неважно, если это было просто сгенерировано или находится в файловой системе.
необходимо узнать, необходимо ли сохранить ЦП или дисковое пространство. если у Вас есть миллион концертов изображений и только сорок пользователей, можно предоставить хит ЦП. если у Вас есть сорок концертов изображений и миллион пользователей, пойдите для жесткого диска.
Я использовал бы S3 для устройства хранения данных. Создайте два блока (защищенная общественность), выделите URL к изображениям защищенного блока, после того как Вы разрешили пользователя загружать их. URL S3 могут быть сделаны успокоительными с датой истечения срока.
С изображениями 15 МБ Вы, вероятно, поймете, что необходимо предварительно генерировать, масштабировал/обрезал версию заранее.
Я использовал бы какой-то водяной знак на всех кроме исходного файла. (как карты Google)
[Редактирование: Добавленное Глубокое Масштабирование для изменения масштаба]
Проверьте Silverlight Глубокое Масштабирование для управления обрезкой и изменения масштаба (Демонстрации). У них даже есть утилита для генерации всех кадрированных изображений.