バージョン選択

フォーラム

メニュー

オンライン状況

55 人のユーザが現在オンラインです。 (47 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 55
もっと...

サイト内検索

バグ報告 > フロント機能 > モバイル用イメージの変換に関して

フロント機能

新規スレッドを追加する

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
QAZU
投稿日時: 2009/5/18 16:07
対応状況: −−−
半人前
登録日: 2007/3/7
居住地:
投稿: 26
Re: モバイル用イメージの変換に関して
kishikさま

プログラマーの方に、kishikさまのソースを渡して、
実際に検証してもらいました。
色々チェックしてもらった結果、下記のようなソースが返ってきました。
検証して、まとめたプログラムだそうです。
現状では、問題なく動いているので、恥ずかしながら、このソース内で行われている処理が個人的に理解できていない状態です・・・

data/include/image_converter.inc
[old]
// 変換後の画像の高さが指定されていない場合、変換後の画像の横幅から求める
if (is_null($this->outputImageHeight)) {
$this->outputImageHeight = $inputImageHeight * ($this->outputImageWidth /
$inputImageWidth);
}

============================================================
[new]

//変換の前画像の横幅が小さい場合画像のサイズそのまま使う
if($inputImageWidth <= $this->outputImageWidth){
$this->outputImageWidth = $inputImageWidth;
$this->outputImageHeight = NULL;
}

// 変換後の画像の高さが指定されていない場合、変換後の画像の横幅から求める
if (is_null($this->outputImageHeight)) {
$this->outputImageHeight = $inputImageHeight * ($this->outputImageWidth /
$inputImageWidth);
}

mobile_image_map_[端末会社].csvによってサイズのsettingになるので
画像のサイズが大きい場合ファイルから呼んで来たサイズと比べて自動計算になるようになっています。
だからサイズが小さなイメージの場合もsettingされたサイズによって自動でイメージ変更になった後高さが計算されるので小さなサイズのイメージが自動変更されて大きくなってしまった現象がありました。

それでsettingされたサイズとイメージサイズを比べた後サイズが小さな場合に$this->outputImageWidthを変更
例えば [$this->outputImageWidth = 220]
1. 250*50 サイズの場合 = > 220*44
if($inputImageWidth <= $this->outputImageWidth){
$this->outputImageWidth = $inputImageWidth;
$this->outputImageHeight = NULL;
}
//(250 <= 220)が違うので$this->outputImageWidth=220になります。

if (is_null($this->outputImageHeight)) {
$this->outputImageHeight = $inputImageHeight * ($this->outputImageWidth /
$inputImageWidth);
}
//$this->outputImageHeight = 50 * (220/250) の計算によって高さが44に変更されます。

2. 100*20 サイズの場合 = > 100*20
if($inputImageWidth <= $this->outputImageWidth){
$this->outputImageWidth = $inputImageWidth;
$this->outputImageHeight = NULL;
}
//(100 <= 220)によって$this->outputImageWidth=100になります。

if (is_null($this->outputImageHeight)) {
$this->outputImageHeight = $inputImageHeight * ($this->outputImageWidth /
$inputImageWidth);
}
//$this->outputImageHeight = 20 * (100/100) の計算によって高さがそのまま20になります。

上のように変更されるので$this->outputImageWidthを変更してくれることだけでも解決可能です。
フラット表示 前のトピック | 次のトピック


題名 投稿者 日時
   モバイル用イメージの変換に関して QAZU 2009/5/11 18:16
     Re: モバイル用イメージの変換に関して seasoft 2009/5/11 18:36
       Re: モバイル用イメージの変換に関して kishik 2009/5/11 18:46
         Re: モバイル用イメージの変換に関して seasoft 2009/5/11 18:51
         Re: モバイル用イメージの変換に関して QAZU 2009/5/11 19:08
     Re: モバイル用イメージの変換に関して seasoft 2009/5/11 18:53
       Re: モバイル用イメージの変換に関して kishik 2009/5/11 19:06
         Re: モバイル用イメージの変換に関して seasoft 2009/5/11 19:12
         Re: モバイル用イメージの変換に関して QAZU 2009/5/11 19:16
           Re: モバイル用イメージの変換に関して kishik 2009/5/11 19:38
             Re: モバイル用イメージの変換に関して QAZU 2009/5/12 9:44
       Re: モバイル用イメージの変換に関して tao_s 2009/5/11 23:15
         Re: モバイル用イメージの変換に関して QAZU 2009/5/12 9:46
           Re: モバイル用イメージの変換に関して Masashige 2009/5/12 11:39
             Re: モバイル用イメージの変換に関して seasoft 2009/5/12 11:50
               Re: モバイル用イメージの変換に関して kishik 2009/5/12 12:17
     Re: モバイル用イメージの変換に関して QAZU 2009/5/12 12:08
       Re: モバイル用イメージの変換に関して seasoft 2009/5/12 12:40
         Re: モバイル用イメージの変換に関して kishik 2009/5/12 13:02
           Re: モバイル用イメージの変換に関して QAZU 2009/5/12 15:15
             Re: モバイル用イメージの変換に関して kishik 2009/5/12 17:00
               Re: モバイル用イメージの変換に関して QAZU 2009/5/13 10:21
                 Re: モバイル用イメージの変換に関して kishik 2009/5/13 10:38
                 » Re: モバイル用イメージの変換に関して QAZU 2009/5/18 16:07
                     Re: モバイル用イメージの変換に関して kishik 2009/5/18 17:46

 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,710名です
総投稿数は109,948件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2313
5
umebius
2085
6
yuh
1819
7
h_tanaka
1638
8
red
1570
9
mcontact
1285
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.