• 04-10-2012, 19:40:09
    #10
    Senin yapmak istediğini anladım yalnız dikkatini çekerim ask.fm deki resim ebatları eşit 48x48 px.

    O dediğin javascript veya server side bir programlama diliyle resimlerin ebatları kontrol edilip hangi tarafın değeri 80den düşük ise ona göre işlem yapılması lazım.
  • 04-10-2012, 20:02:45
    #11
    Üyeliği durduruldu
    frdtrkc adlı üyeden alıntı: mesajı görüntüle
    Senin yapmak istediğini anladım yalnız dikkatini çekerim ask.fm deki resim ebatları eşit 48x48 px.

    O dediğin javascript veya server side bir programlama diliyle resimlerin ebatları kontrol edilip hangi tarafın değeri 80den düşük ise ona göre işlem yapılması lazım.
    Orantısız resimleride denedim öyle yapıyorlarki dediğin gibi küçük tarafı yeniden boyutlandırıyor. Şimdi bir formül yazdım yapdım ama bu seferde ortalamıyor. Dikeyden uzun resim koyduğumda ortalı oluyor. Ama yatayda uzun resim kullandığımda soldan hizalı yapıyor. Formülü aşağıya yazıyorum.


    if( $resimEn / $hedefEn < $resimBoy / $hedefBoy )
    {
    $oran = $resimEn / $hedefEn;
    }
    else
    {
    $oran = $resimBoy / $hedefBoy ;
    }

    $yeniEn = $resimEn / $oran;
    $yeniBoy = $resimBoy / $oran;


    Style özelliğide aşağıdaki şekilde:
    avatar {
    max-height: 70px;
    max-width: 70px;
    overflow:hidden;
    text-align:center;
    }
  • 04-10-2012, 20:13:42
    #12
    Üyeliği durduruldu
    resmi, img olarak değil de background olarak gösterebiliyorsanız,:

    .resim {
    background: #eee url(http://www.google.co.cr/logos/classicplus.png) center center;
    width: 80px;
    height:80px;
    border: 1px solid red;
    text-indent: -9999px;
    }

    <div class="resim">
    </div>

    ----

    resmi background olarak göstermek için de,

    Alıntı
    <html>
    <head>
    <style type="text/css">

    .resim {
    background: #eee url(http://www.google.co.cr/logos/classicplus.png) center center;
    width: 80px;
    height:80px;
    border: 1px solid red;
    text-indent: -9999px;
    }

    </style>
    </head>
    <body>

    <div class="resim"></div>

    </body>
    </html>
  • 04-10-2012, 21:06:44
    #13
    Üyeliği durduruldu
    TylerDurden adlı üyeden alıntı: mesajı görüntüle
    resmi, img olarak değil de background olarak gösterebiliyorsanız,:

    .resim {
    background: #eee url(http://www.google.co.cr/logos/classicplus.png) center center;
    width: 80px;
    height:80px;
    border: 1px solid red;
    text-indent: -9999px;
    }

    <div class="resim">
    </div>

    ----

    resmi background olarak göstermek için de,
    Olmadı @TylerDurden,
    max-width ve max-height ile divi sınırlamam gerekiyor ki içine koyabileyim acaba <img> tagının dışana align=center diye bir ortalama tagı koyarsam çalışırmı?

    <center></center> taglarının arasına yazdım çalışmadı.

    --R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 21:06:44 -->-> Daha önceki mesaj 20:24:24 --

    Arkadaşlar yaptım )))))
    Oluşturduğum orantılı küçültme algoritmasına birde yatayda fazlalık olan kısmın yarısını alıp margin eksi değeri verip çektim. Sonuç perfect )


    $yukle = getimagesize($resim);

    $resimEn=$yukle[0];
    $resimBoy=$yukle[1];
    $hedefEn=70;
    $hedefBoy=70;

    if( $resimEn / $hedefEn < $resimBoy / $hedefBoy )
    {
    $oran = $resimEn / $hedefEn;
    }
    else
    {
    $oran = $resimBoy / $hedefBoy ;
    }

    $yeniEn = $resimEn / $oran;
    $yeniBoy = $resimBoy / $oran;

    $fazlalik = $yeniEn - 70;
    $cekilecekPiksel = $fazlalik / 2;

    style="margin-left:-<?php echo $cekilecekPiksel; ?>"

    Umarım böyle bir sorunla karşılaşan kişi google'de doğru arama yapar ve bu konuya çabucak erişir. Herkese yardımlarından teşekkürler.