2013-02-13 6 views
2

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

Мне нужно разместить изображение (900 X 5200 px) на одной из моих страниц. Поскольку изображение чувствительно, мне нужно запретить пользователям копировать изображение. У меня есть идея, которая может это сделать:

Я разделю изображение на части. Затем сетка изображения будет загружена в некоторые div. Таким образом, пользователь не сможет сохранить изображение. Или он/она сохранит только 1 кв. См. Части всего изображения.

Но этот план не будет работать, если некоторые мелкие части сетки не загрузятся. Итак, я хочу сделать другое. Я хочу загрузить полное изображение, а затем вырезать изображение на части. Затем покажите части в div.

Для этого необходим javascript. Но я смущен, как начать и нуждаться в вашей помощи.

Теперь вы знаете вопрос, если у вас есть идея лучше поделиться.

Заранее спасибо.

+4

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

+0

Является ли этот образ загружен динамически с помощью какой-либо формы или вы ставите его статическим? – Develoger

+0

@ Джон. Правильно. Но изображение является вопросом бумаги и водяной знак не проблема, если кто-то сохранить вопрос. Вопрос содержит уравнения, юникодные шрифты, поэтому я создаю образ. –

ответ

3

Трюк прост. Создайте div с фоном, являющимся изображением, которое вы хотите отобразить. Слой a div с прозрачным изображением над ним. Когда пользователь идет на сохранение изображения, он получает пробел. Запрограммируйте свой сервер, чтобы он не возвращал «прямые» запросы для изображения (так что некоторые умные люди не могут просто посмотреть на css и получить URL-адрес изображения).

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

+0

Я записывал совсем тот же ответ ... слишком медленно ...: P – Frhay

+0

На самом деле, не щелкните источник просмотра или проверьте элемент, и вы все равно можете его скопировать. Это только уберет пользователей, которые не знают много о компьютерах. –

+0

Это хороший пример творческого мышления, но я бы пошел сегментированным способом ... – Develoger

1

TL; DR Не переусердствуйте над решением, на экране печати будет все, что вы делаете.

Вы не сможете предотвратить копирование изображения. Легко и просто. Независимо от ваших лучших усилий достаточно простого PRT SCRN и вставить в Paint.

Ваш лучший выбор - не переусердствовать и просто разместить на странице водяной знак и уведомление об авторских правах. Другие варианты могут включать размещение прозрачного <div> поверх изображения, чтобы его нельзя было щелкнуть правой кнопкой мыши и сохранить, но он все равно не помешает сохранению изображения в кеше пользователя. Или остановите их от использования инструментов разработчика или Firebug, чтобы найти исходное изображение.

0

Вы можете сделать это с помощью: http://www.pixastic.com/lib/docs/actions/crop/

Тем не менее вы должны развивать свою логику вокруг этой библиотеки.

Я сделал пример, вы можете увидеть по этой ссылке: http://simplestudio.rs/yard/crop_img/

В принципе вы можете получить URL к изображению с помощью PHP и используя мой код или код, похожий на него обрезать изображение на куски и отображать их на холсте.

Этот образ не доступен через браузер или проверяет элемент или что-то такое. Пользователь может сохранять части отдельно, но вы можете настроить мой код на кусок размером 5 пикселей, я установил его в 20x20px.

* тест сохранение изображения кусок, сделав правый щелчок в любом месте на изображении и сделав «Сохранить изображение как ..».

Также вам нужно подумать о том, как скрыть src к изображению, предоставленному php, если вам нужна помощь в этом, я могу вам помочь.

Смежные вопросы