Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    278

    [VB.net] formato jpg e sua compressione

    scusate in vb.net la compressione delle jpg è automatica a quanto ho capito...non come in vb6...dove invece quando salvi , salvi sempre in bmp....ora però io vorrei poter scegliere la compressione dell'immagine...cosa mi consigliate di fare???


    mi riferisco alla qualità di compressione jpg...come posso fare per sceglierla e modificarla??

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    278
    nessuno sa niente???vorrei aumentare il tasso di compressione delle jpg...non c'è sistema??

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    278
    ieeeeeeeee!!!
    ho quasi risolto da me...c'è l'ho fatta...ho trovato il modo di cambiare la compressione delle jpg...con questo sistema:

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

    Dim imgCodecs() As Imaging.ImageCodecInfo = Imaging.ImageCodecInfo.GetImageEncoders()

    Dim params As Imaging.EncoderParameters = New Imaging.EncoderParameters(1)
    Dim quality As Imaging.EncoderParameter = New Imaging.EncoderParameter(System.Drawing.Imaging.En coder.Quality, 50)
    'Set quality to 50
    params.Param(0) = quality



    If SaveFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then
    If SaveFileDialog1.Filter() = "file jpg|*.jpg" Then
    PictureBox1.Image.Save(SaveFileDialog1.FileName, imgCodecs(1), params)

    End If


    PictureBox1.Image.Save(SaveFileDialog1.FileName)
    End If
    End Sub




    mi rimane un problema però:
    vorrei far sì che quando nella savefiledialog applico il filtro *.jpg, si applichi la compressione altrimenti no.
    io ho utilizzando un ciclo di if cioè:
    If SaveFileDialog1.Filter() = "file jpg|*.jpg" Then
    PictureBox1.Image.Save(SaveFileDialog1.FileName, imgCodecs(1), params)

    End If


    ma non funziona, qualcuno sa dirmi dove sbaglio??non riesco a capire il mio errore.
    cmq la compressione funziona alla grande...ho provato senza ciclo e va..miticooo!!!!!!!!

  4. #4
    Prova ad usare
    codice:
    if NomeFile.EndWith = ".jpg" Then
       PictureBox1.Image.Save(SaveFileDialog1.FileName, imgCodecs(1), params)
    Else
       PictureBox1.Image.Save(SaveFileDialog1.FileName)
    End if

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    278
    if NomeFile.EndWith(".jpg") Then
    PictureBox1.Image.Save(SaveFileDialog1.FileName, imgCodecs(1), params)
    Else
    PictureBox1.Image.Save(SaveFileDialog1.FileName)
    End if


    non proprio come hai detto te...ma è ottimo funziona....un bel raggiro....anche se mi sarebbe piaciuto sapere perchè non andava...tuttavia funziona alla grande...grazie dello spunto!!!

  6. #6
    if NomeFile.EndWith = ".jpg" Then
    Ops... un errore di distrazione.

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    158
    Originariamente inviato da stejano
    io ho utilizzando un ciclo di if cioè:
    If SaveFileDialog1.Filter() = "file jpg|*.jpg" Then
    PictureBox1.Image.Save(SaveFileDialog1.FileName, imgCodecs(1), params)

    End If


    ma non funziona, qualcuno sa dirmi dove sbaglio??non riesco a capire il mio errore.
    cmq la compressione funziona alla grande...ho provato senza ciclo e va..miticooo!!!!!!!!
    Sono contento che tu abbia risolto da te, era solo il problema di applicarsi un attimo, cercare con google ed imparare a risolverlo invece che correre in tondo per la stanza e urlare :"EEEEEEK NON LO sO FAREEEEE! EEEEEK!"

    Bene, ora passiamo al secondo quesito(tralasciando il "ciclo di if" )
    da vedere così direi che la stringa(con filtro ) ritornata dalla proprietà aveFileDialog1.Filter() non restituisca mai il valore con cui la confronti. Metti un break Point.
    L'altra è che la proprietà Filter non venga impostata dalla dialog durante il normale utilizzo ma sia un metodo esclusivamente a disposizione del programmatore per impostarla(anche se non avrebbe molto senso).
    DISCLAIMER
    quello che sta scritto qui sopra è dettato esclusivamente dall'intuito, non da specifiche conoscenze tecniche. Usate queste informazioni a vostro rischio e pericolo (anhe sui server di produzione

  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2005
    Messaggi
    278
    eheh....insomma si quel che si può...fin dove si può....ok ora ho capito perchè non va il metodo filter....allora ho risolto nella maniera migliore...mille grazie!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.