Add option to convert PNG images to JPG

This commit is contained in:
Kijin Sung 2019-08-23 14:18:02 +09:00
parent b286cb15a9
commit c60d475aaf
6 changed files with 16 additions and 0 deletions

View file

@ -71,6 +71,7 @@ class fileAdminController extends file
$config->max_image_size_action = Context::get('max_image_size_action') ?: ''; $config->max_image_size_action = Context::get('max_image_size_action') ?: '';
$config->max_image_size_quality = max(50, min(100, intval(Context::get('max_image_size_quality')))); $config->max_image_size_quality = max(50, min(100, intval(Context::get('max_image_size_quality'))));
$config->image_autoconv['bmp2jpg'] = Context::get('image_autoconv_bmp2jpg') === 'Y' ? true : false; $config->image_autoconv['bmp2jpg'] = Context::get('image_autoconv_bmp2jpg') === 'Y' ? true : false;
$config->image_autoconv['png2jpg'] = Context::get('image_autoconv_png2jpg') === 'Y' ? true : false;
$config->image_autoconv['webp2jpg'] = Context::get('image_autoconv_webp2jpg') === 'Y' ? true : false; $config->image_autoconv['webp2jpg'] = Context::get('image_autoconv_webp2jpg') === 'Y' ? true : false;
$config->image_autoconv_quality = max(50, min(100, intval(Context::get('image_autoconv_quality')))); $config->image_autoconv_quality = max(50, min(100, intval(Context::get('image_autoconv_quality'))));
$config->image_autorotate = Context::get('image_autorotate') === 'Y' ? true : false; $config->image_autorotate = Context::get('image_autorotate') === 'Y' ? true : false;
@ -156,6 +157,7 @@ class fileAdminController extends file
$file_config->max_image_size_action = Context::get('max_image_size_action') ?: ''; $file_config->max_image_size_action = Context::get('max_image_size_action') ?: '';
$file_config->max_image_size_quality = max(50, min(100, intval(Context::get('max_image_size_quality')))); $file_config->max_image_size_quality = max(50, min(100, intval(Context::get('max_image_size_quality'))));
$file_config->image_autoconv['bmp2jpg'] = Context::get('image_autoconv_bmp2jpg') === 'Y' ? true : false; $file_config->image_autoconv['bmp2jpg'] = Context::get('image_autoconv_bmp2jpg') === 'Y' ? true : false;
$file_config->image_autoconv['png2jpg'] = Context::get('image_autoconv_png2jpg') === 'Y' ? true : false;
$file_config->image_autoconv['webp2jpg'] = Context::get('image_autoconv_webp2jpg') === 'Y' ? true : false; $file_config->image_autoconv['webp2jpg'] = Context::get('image_autoconv_webp2jpg') === 'Y' ? true : false;
$file_config->image_autoconv_quality = max(50, min(100, intval(Context::get('image_autoconv_quality')))); $file_config->image_autoconv_quality = max(50, min(100, intval(Context::get('image_autoconv_quality'))));
$file_config->image_autorotate = Context::get('image_autorotate') === 'Y' ? true : false; $file_config->image_autorotate = Context::get('image_autorotate') === 'Y' ? true : false;

View file

@ -1046,6 +1046,10 @@ class fileController extends file
{ {
$convert = array($image_width, $image_height, 'jpg', $config->image_autoconv_quality ?: 75, 0); $convert = array($image_width, $image_height, 'jpg', $config->image_autoconv_quality ?: 75, 0);
} }
if($config->image_autoconv['png2jpg'] && function_exists('imagepng') && $image_type === 3)
{
$convert = array($image_width, $image_height, 'jpg', $config->image_autoconv_quality ?: 75, 0);
}
if($config->image_autoconv['webp2jpg'] && function_exists('imagewebp') && $image_type === 18) if($config->image_autoconv['webp2jpg'] && function_exists('imagewebp') && $image_type === 18)
{ {
$convert = array($image_width, $image_height, 'jpg', $config->image_autoconv_quality ?: 75, 0); $convert = array($image_width, $image_height, 'jpg', $config->image_autoconv_quality ?: 75, 0);

View file

@ -24,6 +24,7 @@ $lang->max_image_size_action_resize = 'If exceeded, resize automatically';
$lang->image_resize_quality = 'Quality'; $lang->image_resize_quality = 'Quality';
$lang->image_autoconv = 'Auto-Convert Image'; $lang->image_autoconv = 'Auto-Convert Image';
$lang->image_autoconv_bmp2jpg = 'BMP → JPG'; $lang->image_autoconv_bmp2jpg = 'BMP → JPG';
$lang->image_autoconv_png2jpg = 'PNG → JPG';
$lang->image_autoconv_webp2jpg = 'WebP → JPG'; $lang->image_autoconv_webp2jpg = 'WebP → JPG';
$lang->image_autorotate = 'Auto-Rotate Image'; $lang->image_autorotate = 'Auto-Rotate Image';
$lang->inline_download_format = 'Open in current window'; $lang->inline_download_format = 'Open in current window';

View file

@ -24,6 +24,7 @@ $lang->max_image_size_action_resize = '초과시 자동 크기 조정';
$lang->image_resize_quality = '화질'; $lang->image_resize_quality = '화질';
$lang->image_autoconv = '이미지 자동 변환'; $lang->image_autoconv = '이미지 자동 변환';
$lang->image_autoconv_bmp2jpg = 'BMP → JPG'; $lang->image_autoconv_bmp2jpg = 'BMP → JPG';
$lang->image_autoconv_png2jpg = 'PNG → JPG';
$lang->image_autoconv_webp2jpg = 'WebP → JPG'; $lang->image_autoconv_webp2jpg = 'WebP → JPG';
$lang->image_autorotate = '이미지 자동 회전'; $lang->image_autorotate = '이미지 자동 회전';
$lang->inline_download_format = '다운로드시 현재 창 사용'; $lang->inline_download_format = '다운로드시 현재 창 사용';

View file

@ -61,6 +61,10 @@
<input type="checkbox" name="image_autoconv_bmp2jpg" id="image_autoconv_bmp2jpg" value="Y" checked="checked"|cond="$file_config->image_autoconv['bmp2jpg']" disabled="disabled"|cond="!function_exists('imagebmp')" /> <input type="checkbox" name="image_autoconv_bmp2jpg" id="image_autoconv_bmp2jpg" value="Y" checked="checked"|cond="$file_config->image_autoconv['bmp2jpg']" disabled="disabled"|cond="!function_exists('imagebmp')" />
{$lang->image_autoconv_bmp2jpg} {$lang->image_autoconv_bmp2jpg}
</label> </label>
<label for="image_autoconv_png2jpg" class="x_inline">
<input type="checkbox" name="image_autoconv_png2jpg" id="image_autoconv_png2jpg" value="Y" checked="checked"|cond="$file_config->image_autoconv['png2jpg']" disabled="disabled"|cond="!function_exists('imagepng')" />
{$lang->image_autoconv_png2jpg}
</label>
<label for="image_autoconv_webp2jpg" class="x_inline"> <label for="image_autoconv_webp2jpg" class="x_inline">
<input type="checkbox" name="image_autoconv_webp2jpg" id="image_autoconv_webp2jpg" value="Y" checked="checked"|cond="$file_config->image_autoconv['webp2jpg']" disabled="disabled"|cond="!function_exists('imagewebp')" /> <input type="checkbox" name="image_autoconv_webp2jpg" id="image_autoconv_webp2jpg" value="Y" checked="checked"|cond="$file_config->image_autoconv['webp2jpg']" disabled="disabled"|cond="!function_exists('imagewebp')" />
{$lang->image_autoconv_webp2jpg} {$lang->image_autoconv_webp2jpg}

View file

@ -48,6 +48,10 @@
<input type="checkbox" name="image_autoconv_bmp2jpg" id="image_autoconv_bmp2jpg" value="Y" checked="checked"|cond="$config->image_autoconv['bmp2jpg']" disabled="disabled"|cond="!function_exists('imagebmp')" /> <input type="checkbox" name="image_autoconv_bmp2jpg" id="image_autoconv_bmp2jpg" value="Y" checked="checked"|cond="$config->image_autoconv['bmp2jpg']" disabled="disabled"|cond="!function_exists('imagebmp')" />
{$lang->image_autoconv_bmp2jpg} {$lang->image_autoconv_bmp2jpg}
</label> </label>
<label for="image_autoconv_png2jpg" class="x_inline">
<input type="checkbox" name="image_autoconv_png2jpg" id="image_autoconv_png2jpg" value="Y" checked="checked"|cond="$config->image_autoconv['png2jpg']" disabled="disabled"|cond="!function_exists('imagepng')" />
{$lang->image_autoconv_png2jpg}
</label>
<label for="image_autoconv_webp2jpg" class="x_inline"> <label for="image_autoconv_webp2jpg" class="x_inline">
<input type="checkbox" name="image_autoconv_webp2jpg" id="image_autoconv_webp2jpg" value="Y" checked="checked"|cond="$config->image_autoconv['webp2jpg']" disabled="disabled"|cond="!function_exists('imagewebp')" /> <input type="checkbox" name="image_autoconv_webp2jpg" id="image_autoconv_webp2jpg" value="Y" checked="checked"|cond="$config->image_autoconv['webp2jpg']" disabled="disabled"|cond="!function_exists('imagewebp')" />
{$lang->image_autoconv_webp2jpg} {$lang->image_autoconv_webp2jpg}