Ограничить изображение, выбрав его URL - PullRequest
0 голосов
/ 22 июля 2011

Я пытаюсь добавить изображения с веб-сайтов, и я сталкиваюсь с проблемой, которая связана с тем, что когда я пытаюсь перейти к изображениям Google и пытаюсь добавить несколько изображений, и когда я щелкаю правой кнопкой мыши по некоторым изображениям, я нахожу "Копировать изображение".URL ", а для некоторых я не нахожу его и нахожу" Копировать адрес ссылки ". Теперь я хочу, чтобы мои пользователи ограничивали добавление изображений, содержащих" Копировать URL-адрес изображения ". Я прилагаю Изображения, чтобы вы меня понялив лучшую сторону.

enter image description here

enter image description here

Как мне это сделать?

Вот код для сохранения изображения:

Dim dir_name As String = txtDirectory.Text
    If Not dir_name.EndsWith("\") Then dir_name &= "\"

        For Each pic As PictureBox In flpPictures.Controls
            Dim bm As Bitmap = CType(pic.Image, Bitmap)
            Dim filename As String = CStr(pic.Tag)
            filename = filename.Substring(filename.LastIndexOf("/") + 1)
            Dim ext As String = filename.Substring(filename.LastIndexOf("."))

            'Here it gives me an error at(filename.lastindexof(".")


            Dim full_name As String = dir_name & filename

            Select Case ext
                Case ".bmp"
                    bm.Save(full_name, Imaging.ImageFormat.Bmp)
                Case ".gif"
                    bm.Save(full_name, Imaging.ImageFormat.Gif)
                Case ".jpg", "jpeg"
                    bm.Save(full_name, Imaging.ImageFormat.Jpeg)
                Case ".png"
                    bm.Save(full_name, Imaging.ImageFormat.Png)
                Case ".tiff"
                    bm.Save(full_name, Imaging.ImageFormat.Tiff)
                Case Else
                    MessageBox.Show( _
                        "Unknown file type " & ext & _
                        " in file " & filename, _
                        "Unknown File Type", _
                        MessageBoxButtons.OK, _
                        MessageBoxIcon.Error)
            End Select
        Next pic

        Beep()

Ответы [ 3 ]

0 голосов
/ 25 июля 2011

может быть полезно


Sub Base64Convert(ByVal Base64MSG As String)
        'Setup image and get data stream together
        Dim img As System.Drawing.Image
        Dim MS As System.IO.MemoryStream = New System.IO.MemoryStream

        Dim b64 As String = Base64MSG
        Dim b() As Byte

        'Converts the base64 encoded msg to image data
        b = Convert.FromBase64String(b64)
        MS = New System.IO.MemoryStream(b)

        'creates image
        img = System.Drawing.Image.FromStream(MS)

        'writes image for displaying
        img.Save(Request.ServerVariables("APPL_PHYSICAL_PATH") & "LabelInfo.tiff", System.Drawing.Imaging.ImageFormat.Tiff)
        'cleaning up house
        img.Dispose()
        MS.Close()
End Sub

0 голосов
/ 25 июля 2011
   'WEB CLIENT IS NEEDED TO DO THE DOWNLOAD
        Dim MyWebClient As New System.Net.WebClient

        'BYTE ARRAY HOLDS THE DATA
        Dim ImageInBytes() As Byte = MyWebClient.DownloadData(url)

        'CREATE A MEMORY STREAM USING THE BYTES
        Dim ImageStream As New IO.MemoryStream(ImageInBytes)

        'CREATE A BITMAP FROM THE MEMORY STREAM
        PictureBox1.Image = New System.Drawing.Bitmap(ImageStream)
0 голосов
/ 22 июля 2011

На верхнем скриншоте вы щелкаете правой кнопкой мыши прямо на изображении.

На нижнем скриншоте вы щелкаете правой кнопкой мыши на пустом элементе div с z-индексом, который помещает его над изображением.

Вот пример:

<a href="http://example.com">
    <img src="myImg.jpg" style="position: absolute;" />
    <div style="z-index:1; position:absolute; width:100%; height:100%;"></div>
</a>

При наведении указателя мыши на ссылку в Google Images в верхней части отображается другой элемент div, содержащий сохраняемое изображение. Посмотрите с Firebug и убедитесь сами:)

Обратите внимание, что не существует идеального способа запретить пользователям сохранять изображения с вашего веб-сайта. Вы можете отключить щелчок правой кнопкой мыши, замаскировать изображение с помощью div, замаскировать изображение прозрачным изображением (чтобы пользователь мог щелкнуть правой кнопкой мыши и сохранить изображение, но оно получило неправильное изображение), предотвратить кэширование и т. Д., Но в конечном итоге любой технически подкованный пользователь может обойти это. Тем не менее, эти подходы остановят случайных пользователей, так что это лучше, чем ничего. Если вы хотите узнать больше о методах, которые я только что назвал, я предлагаю поискать в Google «отключить сохранение изображения как» или «отключить ссылку на копию изображения».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...