From ead5a6a258261f2294aad770ccc1ff01d02ed832 Mon Sep 17 00:00:00 2001 From: syuilo Date: Thu, 4 Jul 2019 14:45:28 +0900 Subject: APNG support --- src/services/drive/add-file.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/services/drive') diff --git a/src/services/drive/add-file.ts b/src/services/drive/add-file.ts index a2143ca608..e7b1e2a812 100644 --- a/src/services/drive/add-file.ts +++ b/src/services/drive/add-file.ts @@ -46,6 +46,8 @@ async function save(file: DriveFile, path: string, name: string, type: string, h if (type === 'image/jpeg') ext = '.jpg'; if (type === 'image/png') ext = '.png'; if (type === 'image/webp') ext = '.webp'; + if (type === 'image/apng') ext = '.apng'; + if (type === 'image/vnd.mozilla.apng') ext = '.apng'; } const baseUrl = meta.objectStorageBaseUrl @@ -181,6 +183,8 @@ export async function generateAlts(path: string, type: string, generateWeb: bool thumbnail = await convertToPng(path, 498, 280); } else if (['image/gif'].includes(type)) { thumbnail = await convertToGif(path); + } else if (['image/apng', 'image/vnd.mozilla.apng'].includes(type)) { + thumbnail = await convertToApng(path); } else if (type.startsWith('video/')) { try { thumbnail = await GenerateVideoThumbnail(path); @@ -356,7 +360,7 @@ export default async function( let propPromises: Promise[] = []; - const isImage = ['image/jpeg', 'image/gif', 'image/png', 'image/webp'].includes(mime); + const isImage = ['image/jpeg', 'image/gif', 'image/png', 'image/apng', 'image/vnd.mozilla.apng', 'image/webp'].includes(mime); if (isImage) { const img = sharp(path); -- cgit v1.2.3-freya