{"id":13595,"date":"2026-07-16T17:33:10","date_gmt":"2026-07-16T08:33:10","guid":{"rendered":"https:\/\/code-plus.jp\/gp\/?p=13595"},"modified":"2026-07-16T17:33:10","modified_gmt":"2026-07-16T08:33:10","slug":"animeeffects-webp-13595","status":"publish","type":"post","link":"https:\/\/code-plus.jp\/gp\/animeeffects-webp-13595\/","title":{"rendered":"\u300eAnimeEffects\u300f\u3067\u900f\u904e\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3WebP\u3092\u4f5c\u308b\uff5cGIF\u306e\u30ae\u30b6\u30ae\u30b6\u554f\u984c\u3092\u89e3\u6c7a"},"content":{"rendered":"<p>\u30b5\u30a4\u30c8\u306b\u30de\u30b9\u30b3\u30c3\u30c8\u30ad\u30e3\u30e9\u30af\u30bf\u30fc\u3092\u7f6e\u3044\u3066\u3001\u3061\u3087\u3063\u3068\u52d5\u304b\u3057\u305f\u3044\u3002<\/p>\n<p>\u300c\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3GIF\u300d\u3060\u3068\u3001<b class=\"fw-600\">\u8f2a\u90ed\u306e\u30ae\u30b6\u30ae\u30b6<\/b>\u306b\u304c\u3063\u304b\u308a\u3059\u308b\u3053\u3068\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<p>\u3053\u306e\u8a18\u4e8b\u3067\u306f\u3001\u306a\u305cGIF\u304c\u30ae\u30b6\u30ae\u30b6\u306b\u306a\u308b\u306e\u304b\u3068\u3044\u3046\u539f\u56e0\u304b\u3089\u3001\u6700\u7d42\u7684\u306b\u300eAnimeEffects\u300f\u304b\u3089\u3001<b class=\"fw-600\">\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3WebP<\/b> \u306b\u5909\u63db\u3059\u308b\u307e\u3067\u3092\u89e3\u8aac\u3057\u307e\u3059\u3002<\/p>\n\n<!-- \u2756\u76ee\u6b21\u30ea\u30b9\u30c8 -->\n<ul class=\"tocList mt-1.5r\" data-toc-id=\"js-tocBWGD\" style=\"height:28rem\"><\/ul>\n<ins class=\"tocBtn is-fixed\" data-toc-id=\"js-tocBWGD\"><\/ins>\n\n<hr class=\"separator mt-3r\">\n\n<h2 class=\"fz-xl\">GIF\u304c\u30ae\u30b6\u30ae\u30b6\u306b\u306a\u308b\u7406\u7531<\/h2>\n<p><b class=\"fw-600\">GIF\u306e\u30a2\u30eb\u30d5\u30a1\u30c1\u30e3\u30f3\u30cd\u30eb\u306f1bit\u3057\u304b\u3042\u308a\u307e\u305b\u3093\u3002<\/b> \u3064\u307e\u308a\u300c\u900f\u660e\u300d\u304b\u300c\u4e0d\u900f\u660e\u300d\u306e2\u5024\u3060\u3051\u3002<\/p>\n<p>\u30a4\u30e9\u30b9\u30c8\u306e\u8f2a\u90ed\u306b\u306f\u3001\u30a2\u30f3\u30c1\u30a8\u30a4\u30ea\u30a2\u30b9\u306b\u3088\u3063\u3066\u300c\u534a\u900f\u660e\u306e\u30b0\u30ec\u30fc\u300d\u304c\u4e57\u3063\u3066\u3044\u307e\u3059\u3002GIF\u306f\u3053\u306e\u4e2d\u9593\u968e\u8abf\u3092\u8868\u73fe\u3067\u304d\u306a\u3044\u306e\u3067\u3001\u306a\u3081\u3089\u304b\u3060\u3063\u305f\u66f2\u7dda\u304c\u968e\u6bb5\u72b6\u306b\u5316\u3051\u308b\u3002\u3053\u308c\u306f\u66f8\u304d\u51fa\u3057\u8a2d\u5b9a\u3067\u3069\u3046\u306b\u304b\u306a\u308b\u8a71\u3067\u306f\u306a\u304f<b class=\"fw-600\">\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306e\u4ed5\u69d8\u3067\u3059\u3002<\/b><\/p>\n<p>\u9006\u306b\u8a00\u3048\u3070\u3001<b class=\"fw-600\">8bit\u30a2\u30eb\u30d5\u30a1\uff08256\u6bb5\u968e\uff09\u3092\u6301\u3064\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306b\u5909\u66f4\u3059\u308c\u3070\u3001\u89e3\u6c7a\u3057\u307e\u3059\u3002<\/b> <\/p>\n<table class=\"table my-0.75r\">\n  <thead>\n    <tr class=\"rung\">\n      <th>\u30d5\u30a9\u30fc\u30de\u30c3\u30c8<\/th>\n      <td>\u30a2\u30eb\u30d5\u30a1<\/td>\n      <td>\u7d50\u679c<\/td>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr class=\"rung\">\n      <th>GIF<\/th>\n      <td><b class=\"fw-600\">1bit<\/b>\uff082\u5024\uff09<\/td>\n      <td>\u30ae\u30b6\u30ae\u30b6<\/td>\n    <\/tr>\n    <tr class=\"rung\">\n      <th>APNG<\/th>\n      <td>8bit<\/td>\n      <td>\u306a\u3081\u3089\u304b\u30fb\u30d5\u30a1\u30a4\u30eb\u5927<\/td>\n    <\/tr>\n    <tr class=\"rung\">\n      <th><b class=\"fw-600\">\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3WebP<\/b><\/th>\n      <td><b class=\"fw-600\">8bit<\/b><\/td>\n      <td><b class=\"fw-600\">\u306a\u3081\u3089\u304b\u30fb\u30d5\u30a1\u30a4\u30eb\u5c0f<\/b><\/td>\n    <\/tr>\n    <tr class=\"rung\">\n      <th>WebM\uff08VP9 alpha\uff09<\/th>\n      <td>8bit<\/td>\n      <td><code>&lt;video&gt;<\/code> \u30bf\u30b0\u7528\u30fb\u975e\u53ef\u9006<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n\n<hr class=\"separator mt-3r\">\n\n<h2 class=\"fz-xl\">\u9078\u629e\u80a2\u3092\u6574\u7406\u3059\u308b<\/h2>\n<p>\u300c\u30ad\u30e3\u30e9\u3092\u52d5\u304b\u3057\u3066Web\u306b\u7f6e\u304f\u300d\u306e\u5b9f\u73fe\u624b\u6bb5\u306f\u3001\u305d\u308c\u305e\u308c\u5f97\u610f\u5206\u91ce\u304c\u9055\u3046\u306e\u3067\u3001<b class=\"fw-600\">\u76ee\u7684\u304b\u3089\u9006\u7b97\u3057\u3066\u9078\u3076<\/b>\u306e\u304c\u6b63\u89e3\u3067\u3059\u3002<\/p>\n<h3 class=\"fz-ml\">1. SVG + CSS \u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3<\/h3>\n<p>\u30a4\u30e9\u30b9\u30c8\u304c\u30d9\u30af\u30bf\u30fc\u539f\u7a3f\u306a\u3089\u3001\u3053\u308c\u304c\u7b2c\u4e00\u5019\u88dc\u3067\u3059\u3002<\/p>\n<ul style=\"list-style-type:bullet;\" class=\"my-0.5r\">\n  <li>\u5b8c\u5168\u30d9\u30af\u30bf\u30fc\u306a\u306e\u3067Retina\u3067\u30824K\u3067\u3082\u52a3\u5316\u30bc\u30ed\u3002\u30ae\u30b6\u30ae\u30b6\u3068\u3044\u3046\u6982\u5ff5\u304c\u306a\u3044<\/li>\n  <li>\u6570KB\u301c\u5341\u6570KB\u3002\u30e9\u30f3\u30bf\u30a4\u30e0\u4e0d\u8981<\/li>\n  <li><code>prefers-reduced-motion<\/code> \u5bfe\u5fdc\u304c1\u884c<\/li>\n<\/ul>\n<p>\u30d1\u30fc\u30c4\u3054\u3068\u306b <code>&lt;g id=\"...\"&gt;<\/code> \u3067\u62ec\u3063\u3066\u3001<code>transform-origin<\/code> \u306b\u652f\u70b9\u3092\u6307\u5b9a\u3057\u3066\u56de\u3057\u307e\u3059\u3002<\/p>\n<pre><code class=\"language-css\">#arm-r {\n  transform-box: view-box;          \/* \u2190 \u3053\u308c\u3092\u5fd8\u308c\u308b\u3068\u652f\u70b9\u304c\u72c2\u3046 *\/\n  transform-origin: 375px 142px;    \/* \u80a9\u306e\u5ea7\u6a19\uff08viewBox\u57fa\u6e96\uff09 *\/\n  animation: wave 1.5s ease-in-out infinite;\n}\n@keyframes wave {\n  0%, 60%, 100% { transform: rotate(0); }\n  30%           { transform: rotate(-26deg); }\n  45%           { transform: rotate(6deg); }\n}\n@media (prefers-reduced-motion: reduce) { #arm-r { animation: none; } }<\/code><\/pre>\n<p><code>transform-box<\/code> \u304c\u6700\u5927\u306e\u30cf\u30de\u308a\u3069\u3053\u308d\u3067\u3059\u3002\u6307\u5b9a\u3057\u306a\u3044\u3068\u30d6\u30e9\u30a6\u30b6\u306b\u3088\u3063\u3066\u652f\u70b9\u306e\u89e3\u91c8\u304c\u30ba\u30ec\u308b\u306e\u3067\u3001<code>view-box<\/code>\uff08viewBox\u5ea7\u6a19\u3067\u6307\u5b9a\uff09\u304b <code>fill-box<\/code>\uff08\u8981\u7d20\u306e\u30d0\u30a6\u30f3\u30c7\u30a3\u30f3\u30b0\u30dc\u30c3\u30af\u30b9\u57fa\u6e96\uff09\u3092\u660e\u793a\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<p><b class=\"fw-600\">\u30e9\u30b9\u30bf\u30fc\u753b\u50cf\u3067\u3082\u4f7f\u3048\u307e\u3059\u3002<\/b> \u30d1\u30fc\u30c4\u3054\u3068\u306b\u900f\u904ePNG\u3092\u66f8\u304d\u51fa\u3057\u3066CSS\u3067\u91cd\u306d\u3066\u56de\u305b\u3070\u540c\u3058\u3053\u3068\u3067\u3059\u3002PNG\u306f8bit\u30a2\u30eb\u30d5\u30a1\u306a\u306e\u3067\u30ae\u30b6\u30ae\u30b6\u3082\u51fa\u307e\u305b\u3093\u3002<\/p>\n<p>\u5236\u7d04\u306f\u3001\u30e1\u30c3\u30b7\u30e5\u5909\u5f62\uff08\u3050\u306b\u3083\u3063\u3068\u66f2\u3052\u308b\u7cfb\uff09\u304c\u518d\u73fe\u3067\u304d\u306a\u3044\u3053\u3068\u3002\u56de\u8ee2\u30fb\u79fb\u52d5\u30fb\u62e1\u7e2e\u307e\u3067\u3067\u3059\u3002<\/p>\n<h3 class=\"fz-ml\">2. Live2D<\/h3>\n<p>Cubism SDK\u81ea\u4f53\u306f\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u7121\u6599\u3067\u3059\u304c\u3001SDK\u3092\u4f7f\u3063\u3066\u4f5c\u3063\u305f\u30b3\u30f3\u30c6\u30f3\u30c4\u3092<b class=\"fw-600\">\u30ea\u30ea\u30fc\u30b9\u3059\u308b<\/b>\u969b\u306f\u300cSDK\u30ea\u30ea\u30fc\u30b9\u30e9\u30a4\u30bb\u30f3\u30b9\uff08\u51fa\u7248\u8a31\u8afe\u5951\u7d04\uff09\u300d\u306e\u7de0\u7d50\u3068\u5951\u7d04\u6599\u304c\u5fc5\u8981\u3067\u3059\u3002\u500b\u4eba\u30fb\u5c0f\u898f\u6a21\u4e8b\u696d\u8005\uff08\u76f4\u8fd1\u306e\u5e74\u9593\u58f2\u4e0a\u9ad81,000\u4e07\u5186\u672a\u6e80\uff09\u306e\u5834\u5408\u306f\u5951\u7d04\u3082\u652f\u6255\u3044\u3082\u4e0d\u8981\u3002<\/p>\n<p>\u5236\u4f5c\u8005\u304c\u5c0f\u898f\u6a21\u4e8b\u696d\u8005\u3067\u300c\u81ea\u793e\u30d6\u30ed\u30b0\u306e\u30de\u30b9\u30b3\u30c3\u30c8\u306a\u3089\u30bf\u30c0\u3001\u5ba2\u5148\u306b\u7d0d\u54c1\u3059\u308b\u306a\u3089\u5148\u65b9\u306b\u5951\u7d04\u304c\u8981\u308b\u300d\u3068\u3044\u3046\u3053\u3068\u3067\u3059\u3002\u4f01\u696d\u6848\u4ef6\u3068\u3057\u3066\u306f\u4f7f\u3044\u306b\u304f\u3044\u3067\u3059\u3002<\/p>\n\n<h3 class=\"fz-ml\">3. Rive<\/h3>\n<p><b class=\"fw-600\">2025\u5e7410\u6708\u306b\u65b9\u91dd\u304c\u5909\u308f\u3063\u3066\u3001\u66f8\u304d\u51fa\u3057\uff08.riv\uff09\u304c\u6709\u6599\u306b\u306a\u308a\u307e\u3057\u305f\u3002<\/b> \u300cFree to create. $9\/month to ship.\u300d\u3068\u3044\u3046\u306e\u304c\u516c\u5f0f\u306e\u8a00\u3044\u65b9\u3067\u3001Cadet\uff08$9\/\u6708\u30fb\u5e74\u6255\u3044\uff09\u304c\u672c\u756a\u5229\u7528\u306e\u6700\u4f4e\u30e9\u30a4\u30f3\u3067\u3059\u3002<\/p>\n\n<h3 class=\"fz-ml\">4. \u300eAnimeEffects\u300f \u2192 PNG\u9023\u756a \u2192 \u53ef\u9006WebP<\/h3>\n<ul style=\"list-style-type:bullet;\" class=\"my-0.5r\">\n  <li><b class=\"fw-600\">\u30e9\u30a4\u30bb\u30f3\u30b9\u304c\u30af\u30ea\u30fc\u30f3<\/b>\uff08GPL\uff09\u3002\u81ea\u793e\u3067\u3082\u5ba2\u5148\u3067\u3082\u5236\u7d04\u306a\u3057<\/li>\n  <li>\u30e1\u30c3\u30b7\u30e5\u5909\u5f62\u30fb\u30dc\u30fc\u30f3\u304c\u4f7f\u3048\u308b<\/li>\n  <li>\u30e9\u30f3\u30bf\u30a4\u30e0\u30bc\u30ed\u3002<code>&lt;img&gt;<\/code> \u30bf\u30b01\u884c\u3067\u8cbc\u308c\u308b<\/li>\n  <li>8bit\u30a2\u30eb\u30d5\u30a1\u306a\u306e\u3067\u30ae\u30b6\u30ae\u30b6\u306a\u3057<\/li>\n<\/ul>\n<p>\u300c\u3061\u3087\u3063\u3068\u52d5\u3044\u3066\u304b\u308f\u3044\u3044\u300d\u304c\u76ee\u7684\u306a\u3089\u3001<b class=\"fw-600\">\u8cbb\u7528\u5bfe\u52b9\u679c\u306f\u3053\u308c\u304c\u826f\u3044\u3067\u3059\u3002<\/b><\/p>\n\n<hr class=\"separator mt-3r\">\n\n<h2 class=\"fz-xl\">AnimeEffects<\/h2>\n<p><code>AnimeEffects<\/code> \u306f hidefuku \u6c0f\u306b\u3088\u308b2D\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u30c4\u30fc\u30eb\u3067\u3059\u3002\u30dd\u30ea\u30b4\u30f3\u30e1\u30c3\u30b7\u30e5\u306e\u5909\u5f62\u3092\u30d9\u30fc\u30b9\u306b\u3057\u305f\u5404\u7a2e\u6a5f\u80fd\u3067\u3001\u7dbf\u5bc6\u306a\u8a08\u753b\u306a\u3057\u306b\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u308c\u308b\u3001\u3068\u3044\u3046\u30b3\u30f3\u30bb\u30d7\u30c8\u3002<\/p>\n<p><b class=\"fw-600\">\u30aa\u30ea\u30b8\u30ca\u30eb\u306f v1.3.4\uff082017\u5e744\u6708\uff09\u3067\u66f4\u65b0\u304c\u6b62\u307e\u3063\u3066\u3044\u307e\u3059\u3002<\/b><\/p>\n<ul style=\"list-style-type:bullet;\" class=\"my-0.5r\">\n  <li><cite><a href=\"https:\/\/github.com\/hidefuku\/AnimeEffects\/releases\/tag\/v1.3.4\" target=\"_blank\" class=\"link\">Release version1.3.4 \u00b7 hidefuku\/AnimeEffects<\/a><\/cite><\/li>\n<\/ul>\n<p>Mac\/Windows\u306e\u5b9f\u884c\u30d5\u30a1\u30a4\u30eb\u304cGitHub\u3067\u516c\u958b\u3055\u308c\u3066\u3044\u308b\u306e\u3067\u3001\u3044\u307e\u3067\u3082\u666e\u901a\u306b\u52d5\u304d\u307e\u3059\u3002<\/p>\n<p class=\"mt-1r\"><b class=\"fw-600\">\u305d\u3057\u3066\u3001\u6709\u5fd7\u304c\u30d5\u30a9\u30fc\u30af\u3057\u3066\u958b\u767a\u3092\u7d99\u7d9a\u3057\u3066\u3044\u307e\u3059\u3002<\/b><\/p>\n<ul style=\"list-style-type:bullet;\" class=\"my-0.5r\">\n  <li><cite><a href=\"https:\/\/github.com\/AnimeEffectsDevs\/AnimeEffects\" target=\"_blank\" class=\"link\">AnimeEffectsDevs\/AnimeEffects<\/a><\/cite><\/li>\n<\/ul>\n<p>\u73fe\u5728\u306e\u30ea\u30fc\u30c9\u30c7\u30d9\u30ed\u30c3\u30d1\u30fc\u306f p-yukusai \u6c0f\u3002\u30ea\u30ea\u30fc\u30b9\u5c65\u6b74\u306f\u3053\u3046\u306a\u3063\u3066\u3044\u307e\u3059\u3002<\/p>\n<table class=\"table my-0.75r\">\n  <thead>\n    <tr class=\"rung\">\n      <th>\u30d0\u30fc\u30b8\u30e7\u30f3<\/th>\n      <td>\u516c\u958b\u65e5<\/td>\n      <td>\u4e3b\u306a\u5185\u5bb9<\/td>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr class=\"rung\">\n      <th>v1.3.4<\/th>\n      <td>2017-04<\/td>\n      <td>hidefuku\u6c0f\u306b\u3088\u308b\u30aa\u30ea\u30b8\u30ca\u30eb\u6700\u7d42\u7248<\/td>\n    <\/tr>\n    <tr class=\"rung\">\n      <th>v1.5.1<\/th>\n      <td>2024-01<\/td>\n      <td><\/td>\n    <\/tr>\n    <tr class=\"rung\">\n      <th>v1.6<\/th>\n      <td>2025-03-11<\/td>\n      <td>\u30aa\u30fc\u30c7\u30a3\u30aa\u30b7\u30b9\u30c6\u30e0\u3002Windows\u7248\u306fMSVC\u518d\u9812\u5e03\u53ef\u80fd\u30d1\u30c3\u30b1\u30fc\u30b8\u304c\u5fc5\u9808\u306b<\/td>\n    <\/tr>\n    <tr class=\"rung\">\n      <th>v1.6.1<\/th>\n      <td>2025-05-24<\/td>\n      <td><b class=\"fw-600\">M1\u4ee5\u964d\u5411\u3051Mac\u30a4\u30f3\u30b9\u30c8\u30fc\u30e9<\/b><\/td>\n    <\/tr>\n    <tr class=\"rung\">\n      <th><b class=\"fw-600\">v1.7<\/b><\/th>\n      <td><b class=\"fw-600\">2025-08-04<\/b><\/td>\n      <td>\u30ab\u30b9\u30bf\u30e0\u30a4\u30fc\u30b8\u30f3\u30b0\/\u30d9\u30b8\u30a7\u30a8\u30c7\u30a3\u30bf\u3001\u30af\u30a4\u30c3\u30af\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3001PSD\u8aad\u307f\u8fbc\u307f\u6642\u306e\u30af\u30e9\u30c3\u30b7\u30e5\u4fee\u6b63<\/td>\n    <\/tr>\n    <tr class=\"rung\">\n      <th>v1.7.1<\/th>\n      <td>2025<\/td>\n      <td><\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n<p>\u914d\u5e03\u306f itch.io\uff08<code>yukusai.itch.io\/animeeffects<\/code>\uff09\u3068GitHub Releases\u306e\u4e21\u65b9\u3002\u65e5\u672c\u8a9e\u306e\u60c5\u5831\u304c v1.4.3 \u3042\u305f\u308a\u3067\u6b62\u307e\u3063\u3066\u3044\u308b\u306e\u3067\u3001<b class=\"fw-600\">\u53e4\u3044\u7248\u3092\u63b4\u3093\u3060\u307e\u307e\u300c\u3053\u308c\u304c\u6700\u65b0\u300d\u3068\u601d\u3044\u8fbc\u307f\u3084\u3059\u3044<\/b>\u306e\u3067\u6ce8\u610f\u3067\u3059\u3002<\/p>\n\n<hr class=\"separator mt-3r\">\n\n<h2 class=\"fz-xl\">macOS\u3067\u306e\u5c0e\u5165\uff1aGatekeeper\u3068\u6a29\u9650\u306e\u7f60<\/h2>\n<p>Mac\u3067 v1.7.1 \u306e <code>.pkg<\/code> \u304b\u3089\u3001\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u306f\u3067\u304d\u305f\u3002\u3068\u3053\u308d\u304c\u3001.app \u3092\u30c0\u30d6\u30eb\u30af\u30ea\u30c3\u30af\u3057\u3066\u3082<b class=\"fw-600\">\u3046\u3093\u3068\u3082\u3059\u3093\u3068\u3082\u8a00\u308f\u306a\u3044<\/b>\u3002<\/p>\n<p>AnimeEffects\u306f\u7f72\u540d\u30fb\u516c\u8a3c\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002\u4f5c\u8005\u672c\u4eba\u304c\u660e\u8a00\u3057\u3066\u3044\u3066\u3001v1.6.1\u3067M1\u4ee5\u964d\u5411\u3051\u30a4\u30f3\u30b9\u30c8\u30fc\u30e9\u304c\u7528\u610f\u3055\u308c\u305f\u306e\u3082\u300cApple\u306b\u5e74100\u30c9\u30eb\u6255\u308f\u306a\u3044\u958b\u767a\u8005\u306bApple\u304c\u8ab2\u3057\u3066\u304f\u308b\u554f\u984c\u300d\u3092\u56de\u907f\u3059\u308b\u305f\u3081\u3067\u3059\u3002<\/p>\n<p>macOS 15 Sequoia\u4ee5\u964d\u306f\u300c\u53f3\u30af\u30ea\u30c3\u30af \u2192 \u958b\u304f\u300d\u306e\u88cf\u6280\u304c<b class=\"fw-600\">\u5ec3\u6b62<\/b>\u3055\u308c\u3066\u3044\u308b\u306e\u3067\u3001\u3053\u3046\u3057\u307e\u3059\u3002<\/p>\n<pre><code class=\"language-bash\">sudo xattr -dr com.apple.quarantine \/Applications\/AnimeEffects.app<\/code><\/pre>\n<p><code>sudo<\/code> \u304c\u8981\u308a\u307e\u3059\u3002<code>.pkg<\/code> \u3067\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u3068\u30d0\u30f3\u30c9\u30eb\u304croot\u6240\u6709\u306b\u306a\u308b\u306e\u3067\u3001\u4e00\u822c\u30e6\u30fc\u30b6\u30fc\u3067\u306f\u5c5e\u6027\u3092\u89e6\u308c\u307e\u305b\u3093\u3002GUI\u3067\u3084\u308b\u306a\u3089 <b class=\"fw-600\">\u30b7\u30b9\u30c6\u30e0\u8a2d\u5b9a \u2192 \u30d7\u30e9\u30a4\u30d0\u30b7\u30fc\u3068\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3 \u2192 \u300c\u3053\u306e\u307e\u307e\u958b\u304f\u300d<\/b>\u3002\u3053\u306e\u9805\u76ee\u306f\u5f3e\u304b\u308c\u305f\u76f4\u5f8c\u306e\u7d041\u6642\u9593\u3057\u304b\u51fa\u306a\u3044\u306e\u3067\u3001\u898b\u5f53\u305f\u3089\u306a\u3051\u308c\u3070\u3082\u3046\u4e00\u5ea6\u30c0\u30d6\u30eb\u30af\u30ea\u30c3\u30af\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<h3 class=\"fz-ml\">\u30d0\u30f3\u30c9\u30eb\u5185\u306b\u8a2d\u5b9a\u3092\u66f8\u304d\u8fbc\u3080\u8a2d\u8a08<\/h3>\n<p><code>xattr<\/code> \u306e\u30a8\u30e9\u30fc\u51fa\u529b\u306b\u3001\u3053\u3093\u306a\u884c\u304c\u6df7\u3056\u308a\u307e\u3059\u3002<\/p>\n<pre><code class=\"language-\">Permission denied: '\/Applications\/AnimeEffects.app\/Contents\/MacOS\/.AECache'\nPermission denied: '\/Applications\/AnimeEffects.app\/Contents\/MacOS\/data\/locale\/preference.txt'<\/code><\/pre>\n<p><b class=\"fw-600\">\u3053\u306e\u30a2\u30d7\u30ea\u3001\u81ea\u5206\u306e\u30d0\u30f3\u30c9\u30eb\u306e\u4e2d\u306b\u8a2d\u5b9a\u3068\u30ad\u30e3\u30c3\u30b7\u30e5\u3092\u66f8\u304d\u307e\u3059\u3002<\/b> root\u6240\u6709\u306e <code>\/Applications<\/code> \u306b\u7f6e\u304b\u308c\u308b\u3068\u3001\u4e00\u822c\u30e6\u30fc\u30b6\u30fc\u3067\u8d77\u52d5\u3057\u305f\u3068\u304d\u306b\u81ea\u5206\u306e\u8a2d\u5b9a\u30d5\u30a1\u30a4\u30eb\u304c\u66f8\u3051\u305a\u3001\u8d77\u52d5\u51e6\u7406\u306e\u9014\u4e2d\u3067\u9759\u304b\u306b\u6b7b\u306c\u2014\u2014\u3068\u3044\u3046\u7b4b\u66f8\u304d\u304c\u6210\u7acb\u3057\u307e\u3059\u3002<\/p>\n<pre><code class=\"language-bash\">sudo chown -R \"$(whoami)\" \/Applications\/AnimeEffects.app<\/code><\/pre>\n<p>v1.5.1\u306echangelog\u306b\u300cWindows\u30a4\u30f3\u30b9\u30c8\u30fc\u30e9\u306e\u30b9\u30af\u30ea\u30d7\u30c8\u3092\u30e6\u30fc\u30b6\u30fc\u66f8\u304d\u8fbc\u307f\u53ef\u80fd\u306a\u30d5\u30a9\u30eb\u30c0\u306b\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3059\u308b\u3088\u3046\u5909\u66f4\u300d\u3068\u3044\u3046\u9805\u76ee\u304c\u3042\u308b\u306e\u3067\u3001\u3053\u306e\u8a2d\u8a08\u306e\u526f\u4f5c\u7528\u306f\u958b\u767a\u5074\u3082\u8a8d\u8b58\u3057\u3066\u3044\u308b\u3088\u3046\u3067\u3059\u3002Mac\u5074\u306f\u540c\u3058\u624b\u5f53\u3066\u304c\u5165\u3063\u3066\u3044\u306a\u3044\u306e\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002<\/p>\n<h3 class=\"fz-ml\">\u5207\u308a\u5206\u3051\u306f\u30bf\u30fc\u30df\u30ca\u30eb\u304b\u3089<\/h3>\n<p>\u539f\u56e0\u304c\u5206\u304b\u3089\u306a\u3044\u3068\u304d\u306f\u3001\u76f4\u63a5\u53e9\u304f\u306e\u304c\u4e00\u756a\u901f\u3044\u3067\u3059\u3002<\/p>\n<pre><code class=\"language-bash\">\/Applications\/AnimeEffects.app\/Contents\/MacOS\/AnimeEffects<\/code><\/pre>\n<p>Gatekeeper\u306a\u3089 <code>killed: 9<\/code>\u3001<br \/>\n  \u30a2\u30fc\u30ad\u9055\u3044\u306a\u3089 <code>Bad CPU type in executable<\/code>\u3001<br \/>\n  Qt\u30d7\u30e9\u30b0\u30a4\u30f3\u6b20\u843d\u306a\u3089 <code>could not find or load the Qt platform plugin \"cocoa\"<\/code>\u3002\n  <br \/>\u305d\u308c\u305e\u308c\u9055\u3046\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u51fa\u308b\u306e\u3067\u3001\u3053\u3053\u307e\u3067\u3067\u539f\u56e0\u304c\u78ba\u5b9a\u3057\u307e\u3059\u3002<\/p>\n<p><b class=\"fw-600\">\u306a\u304a\u3001v1.3.4\u306f\u666e\u901a\u306b\u8d77\u52d5\u3057\u307e\u3057\u305f\u3002<\/b> \u53e4\u3044\u7248\u3092\u6b8b\u3057\u3066\u304a\u3044\u3066\u3088\u304b\u3063\u305f\u3067\u3059\u3002<\/p>\n\n<hr class=\"separator mt-3r\">\n\n<h2 class=\"fz-xl\">PSD\u304c\u8aad\u3081\u306a\u3044\u554f\u984c\uff08\u672a\u4fee\u6b63\u306e\u30d0\u30b0\uff09<\/h2>\n<p>\u30d1\u30fc\u30c4\u5206\u3051\u3057\u305fPSD\u3092\u8aad\u307e\u305b\u308b\u3068\u3001\u3053\u3046\u306a\u308b\u3053\u3068\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n<pre><code class=\"language-\">Failed to load the image file.\nerror(2) invalid signature. (layer and mask info\/additional layer info\/signature) '8'<\/code><\/pre>\n<p><b class=\"fw-600\">PSD\u306e\u5f62\u5f0f\u304c\u65b0\u3057\u304f\u306a\u3063\u305f\u304b\u3089\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002AnimeEffects\u5074\u306e\u30d1\u30fc\u30b5\u306e\u30d0\u30b0\u3067\u3059\u3002<\/b> \u30bd\u30fc\u30b9\u3092\u8ffd\u3046\u3068\u78ba\u5b9a\u3067\u304d\u307e\u3059\u3002<\/p>\n<p><code>src\/img\/PSDReader.cpp<\/code> \u306e\u8a72\u5f53\u7b87\u6240\u3002<\/p>\n<pre><code class=\"language-cpp\">\/\/ signature\nstd::string signature = readString(4);\nif (checkFailure()) return false;\nif (signature != \"8BIM\" &amp;&amp; signature != \"8B64\")\n{\n    mSection += \"\/additional layer info\/signature\";\n    mValue = signature;\n    mResultCode = ResultCode_InvalidSignature;\n    return false;\n}<\/code><\/pre>\n<p>4\u30d0\u30a4\u30c8\u8aad\u3093\u3067 <code>8BIM<\/code> \u304b <code>8B64<\/code> \u3067\u306a\u3051\u308c\u3070\u5373\u30a8\u30e9\u30fc\u3001\u8aad\u3081\u305f\u4e2d\u8eab\u3092\u305d\u306e\u307e\u307e <code>mValue<\/code> \u306b\u5165\u308c\u3066\u8868\u793a\u3059\u308b\u3002\u3064\u307e\u308a\u30c0\u30a4\u30a2\u30ed\u30b0\u306e <code>'8'<\/code> \u306f<b class=\"fw-600\">\u300c4\u30d0\u30a4\u30c8\u8aad\u3093\u3060\u3089\u30ba\u30ec\u305f\u4f4d\u7f6e\u306b\u7740\u5730\u3057\u3066\u3044\u305f\u300d\u8a3c\u62e0<\/b>\u3067\u3059\u3002\u30cd\u30c3\u30c8\u4e0a\u306b\u306f\u540c\u3058\u30a8\u30e9\u30fc\u3067 <code>'8BI'<\/code> \u3068\u5831\u544a\u3057\u3066\u3044\u308b\u4eba\u3082\u3044\u3066\u3001\u3053\u308c\u306f1\u30d0\u30a4\u30c8\u30ba\u30ec\u3002<\/p>\n<p>\u539f\u56e0\u306f\u305d\u306e\u6570\u5341\u884c\u4e0b\u306b\u3042\u308a\u307e\u3059\u3002<\/p>\n<pre><code class=\"language-cpp\">\/\/ read as a raw data\ninfo-&gt;data.reset(new uint8&lsqb;info-&gt;dataLength&rsqb;);\nreadBuf(info-&gt;data.get(), info-&gt;dataLength);\nif (checkFailure())\n    return false;\n\n\/\/ to next\nlength = aEndPos - tellg();<\/code><\/pre>\n<p><b class=\"fw-600\"><code>dataLength<\/code> \u3061\u3087\u3046\u3069\u3057\u304b\u8aad\u307e\u305a\u306b\u6b21\u306e\u30d6\u30ed\u30c3\u30af\u3078\u884c\u3063\u3066\u3044\u307e\u3059\u3002\u30d1\u30c7\u30a3\u30f3\u30b0\u3092\u98db\u3070\u3057\u3066\u3044\u306a\u3044\u3002<\/b> PSD\u4ed5\u69d8\u3067\u306f\u3053\u306e\u30c7\u30fc\u30bf\u9577\u306f\u30a2\u30e9\u30a4\u30f3\u30e1\u30f3\u30c8\u8abf\u6574\u3055\u308c\u308b\u306e\u3067\u3001\u7aef\u6570\u306e\u3042\u308b\u30d6\u30ed\u30c3\u30af\u304c1\u500b\u3067\u3082\u3042\u308b\u3068\u3001\u305d\u3053\u304b\u3089\u5148\u304c\u5168\u90e8\u30ba\u30ec\u3066\u6b21\u306e signature \u8aad\u307f\u3067\u6b7b\u306b\u307e\u3059\u3002<\/p>\n<p>\u3057\u304b\u3082\u540c\u3058\u30d5\u30a1\u30a4\u30eb\u5185\u306e\u5225\u306e\u30d6\u30ed\u30c3\u30af\u51e6\u7406\u3067\u306f\u3001\u3061\u3083\u3093\u3068\u30d1\u30c7\u30a3\u30f3\u30b0\u3092\u98db\u3070\u3057\u3066\u3044\u308b\u3093\u3067\u3059\u306d\u3002<\/p>\n<pre><code class=\"language-cpp\">if (block-&gt;dataLength % 2 != 0)\n{\n    skip(1);\n}<\/code><\/pre>\n<p>additional layer info \u306e\u5074\u3060\u3051\u629c\u3051\u3066\u3044\u308b\u3002<\/p>\n<p><b class=\"fw-600\">\u73fe\u884c\u30d5\u30a9\u30fc\u30af\uff08AnimeEffectsDevs\/master\uff09\u306e\u540c\u3058\u7b87\u6240\u30821\u6587\u5b57\u3082\u5909\u308f\u3063\u3066\u3044\u307e\u305b\u3093\u3002<\/b> v1.7\u3067\u300cPSD\u8aad\u307f\u8fbc\u307f\u6642\u306e\u30af\u30e9\u30c3\u30b7\u30e5\u4fee\u6b63\u300d\u304c\u5165\u3063\u3066\u3044\u307e\u3059\u304c\u3001\u3053\u3061\u3089\u306f\u5225\u4ef6\u3067\u3059\u3002\u3064\u307e\u308a\u6700\u65b0\u7248\u306b\u4e0a\u3052\u3066\u3082\u76f4\u308a\u307e\u305b\u3093\u3002<\/p>\n<h3 class=\"fz-ml\">\u5bfe\u51e6<\/h3>\n<p>additional layer info \u306f\u3001\u30ec\u30a4\u30e4\u30fc\u52b9\u679c\u30fb\u30c6\u30ad\u30b9\u30c8\u30fb\u30b9\u30de\u30fc\u30c8\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u30fb\u8abf\u6574\u30ec\u30a4\u30e4\u30fc\u30fb\u30ea\u30f3\u30af\u30ec\u30a4\u30e4\u30fc\u306a\u3069\u304c\u5897\u3048\u308b\u307b\u3069\u81a8\u3089\u307f\u307e\u3059\u3002\u7d20\u306e\u30e9\u30b9\u30bf\u30fc\u30ec\u30a4\u30e4\u30fc\u3060\u3051\u306b\u3059\u308c\u3070\u8e0f\u3080\u78ba\u7387\u306f\u4e0b\u304c\u308a\u307e\u3059\u304c\u3001\u78ba\u5b9f\u3067\u306f\u3042\u308a\u307e\u305b\u3093\u3002<\/p>\n<p><b class=\"fw-600\">PSD\u3092\u8ae6\u3081\u308b\u306e\u304c\u65e9\u3044\u3067\u3059\u3002<\/b> \u30d1\u30fc\u30c4\u3054\u3068\u306b\u900f\u904ePNG\u3067\u66f8\u304d\u51fa\u3057\u3066\u3001\u500b\u5225\u306b\u8aad\u307f\u8fbc\u307e\u305b\u308c\u3070\u3044\u3044\u3002PNG\u306fQt\u306e\u6a19\u6e96\u30c7\u30b3\u30fc\u30c0\u3092\u901a\u308b\u306e\u3067\u3001\u3053\u306e\u81ea\u4f5cPSD\u30d1\u30fc\u30b5\u306e\u30d0\u30b0\u3068\u306f\u7121\u95a2\u4fc2\u3067\u3059\u3002<\/p>\n\n<hr class=\"separator mt-3r\">\n\n<h2 class=\"fz-xl\">\u5b9f\u8df5\uff1a\u30d1\u30fc\u30c4\u5206\u3051PNG\u3092\u8aad\u307f\u8fbc\u3080<\/h2>\n<h3 class=\"fz-ml\">\u300c\u30ea\u30bd\u30fc\u30b9\u306e\u8ffd\u52a0\u300d\u304c\u898b\u3064\u304b\u3089\u306a\u3044<\/h3>\n<p>v1.3.4\u3067\u306e\u6700\u521d\u306e\u95a2\u9580\u3067\u3059\u3002\u30e1\u30a4\u30f3\u30e1\u30cb\u30e5\u30fc\u3092\u3044\u304f\u3089\u63a2\u3057\u3066\u3082\u51fa\u3066\u304d\u307e\u305b\u3093\u3002<\/p>\n<p><code>ResourceDialog.cpp<\/code> \u3092\u898b\u308b\u3068\u7406\u7531\u304c\u5206\u304b\u308a\u307e\u3059\u3002<\/p>\n<pre><code class=\"language-cpp\">auto menuBar = new QMenuBar(this);\nauto fileMenu = new QMenu(tr(\"File\"), menuBar);\nauto addResource = new QAction(tr(\"Add Resource\"), fileMenu);\nfileMenu-&gt;addAction(addResource);\nmenuBar-&gt;setNativeMenuBar(false);   \/\/ \u2190 \u3053\u3053\nthis-&gt;setMenuBar(menuBar);<\/code><\/pre>\n<p><code>setNativeMenuBar(false)<\/code> \u304c\u52b9\u3044\u3066\u3044\u3066\u3001<b class=\"fw-600\">macOS\u306e\u753b\u9762\u4e0a\u7aef\u306e\u30e1\u30cb\u30e5\u30fc\u30d0\u30fc\u306b\u306f\u51fa\u307e\u305b\u3093\u3002<\/b> \u300c\u30ea\u30bd\u30fc\u30b9\u30a6\u30a3\u30f3\u30c9\u30a6\u300d\u3068\u3044\u3046\u5225\u30a6\u30a3\u30f3\u30c9\u30a6\u306e\u4e2d\u306b\u3001\u305d\u306e\u30a6\u30a3\u30f3\u30c9\u30a6\u5c02\u7528\u306e\u5c0f\u3055\u3044\u30e1\u30cb\u30e5\u30fc\u30d0\u30fc\u304c\u63cf\u304b\u308c\u3066\u3044\u3066\u3001\u305d\u3053\u306e <b class=\"fw-600\">\u30d5\u30a1\u30a4\u30eb \u2192 \u30ea\u30bd\u30fc\u30b9\u3092\u8ffd\u52a0\u3059\u308b<\/b> \u3067\u3059\u3002<\/p>\n<p>v1.4.2\u3067\u300c\u30e1\u30cb\u30e5\u30fc\u306e\u4ee3\u308f\u308a\u306b\u300e\u30ea\u30bd\u30fc\u30b9\u306e\u8ffd\u52a0\u300f\u30dc\u30bf\u30f3\u3092\u7f6e\u3044\u3066\u30ea\u30bd\u30fc\u30b9\u8ffd\u52a0\u3092\u7c21\u7565\u5316\u300d\u3068\u3044\u3046\u5909\u66f4\u304c\u5165\u3063\u3066\u3044\u308b\u306e\u3067\u3001\u3053\u308c\u306f\u65e2\u77e5\u306eUX\u554f\u984c\u3067\u3059\u3002<\/p>\n<p>\u53d7\u3051\u4ed8\u3051\u308b\u62e1\u5f35\u5b50\u3082\u30bd\u30fc\u30b9\u3067\u78ba\u8a8d\u3067\u304d\u307e\u3059\u3002<\/p>\n<pre><code class=\"language-cpp\">\"ImageFile (*.psd *.jpg *.jpeg *.png *.gif)\"<\/code><\/pre>\n<h3 class=\"fz-ml\">\u30d1\u30fc\u30c4\u306f\u30ad\u30e3\u30f3\u30d0\u30b9\u5168\u9762\u30b5\u30a4\u30ba\u3067\u66f8\u304d\u51fa\u3059<\/h3>\n<p><b class=\"fw-600\">\u5404\u30d1\u30fc\u30c4\u306ePNG\u3092\u3001\u5168\u90e8\u540c\u3058\u30ad\u30e3\u30f3\u30d0\u30b9\u30b5\u30a4\u30ba\u3067\u66f8\u304d\u51fa\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/b> \u900f\u904e\u8fbc\u307f\u3067\u4f4d\u7f6e\u306f\u305d\u306e\u307e\u307e\u3002\u3053\u3046\u3057\u3066\u304a\u304f\u3068\u8aad\u307f\u8fbc\u3093\u3060\u6642\u70b9\u3067\u5168\u30d1\u30fc\u30c4\u304c\u3074\u3063\u305f\u308a\u91cd\u306a\u308b\u306e\u3067\u3001\u4f4d\u7f6e\u5408\u308f\u305b\u306e\u4f5c\u696d\u304c\u307e\u308b\u3054\u3068\u6d88\u3048\u307e\u3059\u3002<\/p>\n<h3 class=\"fz-ml\">\u300c\u4e2d\u5fc3\u300d\u304c\u30d4\u30dc\u30c3\u30c8<\/h3>\n<p>\u3053\u3053\u304c\u672c\u8a18\u4e8b\u3067\u3044\u3061\u3070\u3093\u91cd\u8981\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002<\/p>\n<p><b class=\"fw-600\">AnimeEffects\u306e\u300c\u4e2d\u5fc3\u300d\u306f\u3001CSS\u306e <code>transform-origin<\/code> \u305d\u306e\u3082\u306e\u3067\u3059\u3002<\/b><\/p>\n<p>\u30c7\u30d5\u30a9\u30eb\u30c8\u306f\u753b\u50cf\u306e\u4e2d\u5fc3\u3067\u3059\u3002\u305d\u306e\u307e\u307e\u56de\u8ee2\u30ad\u30fc\u3092\u6253\u3064\u3068\u3001\u30ad\u30e3\u30f3\u30d0\u30b9\u306e\u3069\u771f\u3093\u4e2d\u3092\u8ef8\u306b\u8155\u304c\u632f\u308a\u56de\u3055\u308c\u307e\u3059\u3002<b class=\"fw-600\">\u80a9\u306e\u5ea7\u6a19\u306b\u66f8\u304d\u63db\u3048\u3066\u304b\u3089\u56de\u8ee2\u30ad\u30fc\u3092\u6253\u3063\u3066\u304f\u3060\u3055\u3044\u3002<\/b> \u3053\u308c\u3060\u3051\u3067\u3001\u3061\u3083\u3093\u3068\u8155\u3092\u632f\u308b\u52d5\u304d\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<p>\u306a\u304a\u4e2d\u5fc3\u3092\u5909\u66f4\u3059\u308b\u3068\u753b\u50cf\u304c\u30ba\u30ec\u308b\u306e\u3067\u3001\u79fb\u52d5\u30ad\u30fc\u3067\u4f4d\u7f6e\u3092\u623b\u3059\u3053\u3068\u306b\u306a\u308a\u307e\u3059\u3002\u3053\u308c\u306f\u4ed5\u69d8\u3069\u304a\u308a\u306e\u6319\u52d5\u3067\u3059\u3002<\/p>\n\n<hr class=\"separator mt-3r\">\n\n<h2 class=\"fz-xl\">\u66f8\u304d\u51fa\u3057\u8a2d\u5b9a<\/h2>\n<p>\u51fa\u529b\u30e1\u30cb\u30e5\u30fc\u306b\u306f JPEG\u9023\u756a \/ PNG\u9023\u756a \/ GIF\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3 \/ MP4 \/ <b class=\"fw-600\">WebM<\/b> \/ AVI \/ MOV \/ Ogg \u304c\u4e26\u3093\u3067\u3044\u307e\u3059\u3002<\/p>\n<p><b class=\"fw-600\">PNG\u9023\u756a\u3092\u9078\u3093\u3067\u304f\u3060\u3055\u3044\u3002<\/b><\/p>\n<h3 class=\"fz-ml\">\u7d42\u4e86\u30d5\u30ec\u30fc\u30e0\u3068\u30d5\u30ec\u30fc\u30e0\u30ec\u30fc\u30c8<\/h3>\n<p>\u30eb\u30fc\u30d7\u30a2\u30cb\u30e1\u3092\u4f5c\u308b\u3068\u3001\u6700\u7d42\u30d5\u30ec\u30fc\u30e0\u306f1\u30d5\u30ec\u30fc\u30e0\u76ee\u3068\u540c\u3058\u30dd\u30fc\u30ba\u306b\u306a\u3063\u3066\u3044\u308b\u306f\u305a\u3067\u3059\u3002\u305d\u306e\u307e\u307e\u5168\u90e8\u66f8\u304d\u51fa\u3059\u3068<b class=\"fw-600\">\u540c\u3058\u7d75\u304c2\u679a\u4e26\u3093\u3067\u30eb\u30fc\u30d7\u70b9\u3067\u4e00\u77ac\u505c\u307e\u308a\u307e\u3059\u3002<\/b><\/p>\n<ul style=\"list-style-type:bullet;\" class=\"my-0.5r\">\n  <li>0\u301c<b class=\"fw-600\">120<\/b> \u2192 <b class=\"fw-600\">121\u679a<\/b>\uff08\u6700\u5f8c\u304c\u91cd\u8907\uff09<\/li>\n  <li>0\u301c<b class=\"fw-600\">119<\/b> \u2192 <b class=\"fw-600\">120\u679a<\/b> \u2190 \u3053\u308c\u304c\u6b63\u89e3<\/li>\n<\/ul>\n<p>\u306a\u306e\u3067\u3001 <b class=\"fw-600\">\u7d42\u4e86\u30d5\u30ec\u30fc\u30e0\u30921\u3064\u6e1b\u3089\u3057\u307e\u3059\u3002<\/b><\/p>\n<p><code>mIndex * \u30d7\u30ed\u30b8\u30a7\u30af\u30c8fps \/ \u51fa\u529bfps<\/code> \u304c\u30ea\u30b5\u30f3\u30d7\u30eb\u51e6\u7406\u3067\u3059\u3002\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u304c60fps\u306e\u3068\u304d\u306b\u51fa\u529b\u30d5\u30ec\u30fc\u30e0\u30ec\u30fc\u30c8\u307830\u3092\u5165\u308c\u308b\u3068 <code>mIndex * 60\/30 = mIndex*2<\/code> \u306b\u306a\u308a\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30d5\u30ec\u30fc\u30e0\u30921\u500b\u98db\u3070\u3057\u3067\u30b5\u30f3\u30d7\u30ea\u30f3\u30b0\u3057\u307e\u3059\u3002<\/p>\n<p>\u30d7\u30ed\u30b8\u30a7\u30af\u30c860fps\u30fb2.0\u79d2\uff08120\u30d5\u30ec\u30fc\u30e0\uff09\u306a\u3089\u3001<br \/>\n  \u66f8\u304d\u51fa\u3057\uff1a<b class=\"fw-600\">\u30d5\u30ec\u30fc\u30e0\u30ec\u30fc\u30c830 \/ \u958b\u59cb0 \/ \u7d42\u4e86119<\/b> \u3067\u3001\u30eb\u30fc\u30d7\u304c\u7e4b\u304c\u308a\u307e\u3059\u3002<\/p>\n\n<hr class=\"separator mt-3r\">\n\n<h2 class=\"fz-xl\">\u53ef\u9006\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3WebP\u306b\u5909\u63db\u3059\u308b<\/h2>\n<p><code>libwebp<\/code> \u306e <code>img2webp<\/code> \u3092\u4f7f\u3044\u307e\u3059\u3002<\/p>\n<pre><code class=\"language-bash\">brew install webp<\/code><\/pre>\n<pre><code class=\"language-bash\">cd \"&lsqb;PNG\u9023\u756a\u306e\u51fa\u529b\u5148&rsqb;\"\nls frame_*.png | xargs img2webp -loop 0 -lossless -d 33 -o mascot.webp<\/code><\/pre>\n\n<p>\u30bc\u30ed\u57cb\u3081\u9023\u756a\u306a\u306e\u3067\u3001\u30b7\u30a7\u30eb\u306e\u30b0\u30ed\u30d6\u5c55\u958b\u306e\u9806\u5e8f\u3067\u305d\u306e\u307e\u307e\u6b63\u3057\u304f\u4e26\u3073\u307e\u3059\u3002<\/p>\n<p><b class=\"fw-600\"><code>-lossless<\/code> \u3092\u5fc5\u305a\u4f7f\u3063\u3066\u304f\u3060\u3055\u3044\u3002<\/b> \u30d5\u30e9\u30c3\u30c8\u306a\u5857\u308a\uff0b\u9ed2\u7dda\u306e\u30a4\u30e9\u30b9\u30c8\u306f\u53ef\u9006WebP\u304c\u7570\u5e38\u306b\u5f97\u610f\u3067\u3001\u975e\u53ef\u9006\u3088\u308a\u5c0f\u3055\u304f\u306a\u308b\u3053\u3068\u3059\u3089\u3042\u308a\u307e\u3059\u3002\u975e\u53ef\u9006\u306b\u3059\u308b\u3068 <code>yuva420p<\/code> \u306b\u843d\u3061\u3066\u9ed2\u7dda\u304c\u306b\u3058\u307f\u307e\u3059\u3002<\/p>\n<p><b class=\"fw-600\"><code>-d<\/code> \u306f\u30c7\u30a3\u30ec\u30a4\uff08\u30df\u30ea\u79d2\uff0f1\u30b3\u30de\uff09\u3067\u3059\u3002<\/b> \u3053\u3053\u304c\u30d5\u30ec\u30fc\u30e0\u30ec\u30fc\u30c8\u3068\u565b\u307f\u5408\u3063\u3066\u3044\u306a\u3044\u3068\u3001\u610f\u56f3\u3057\u305f\u901f\u5ea6\u3067\u52d5\u304d\u307e\u305b\u3093\u3002<\/p>\n<table class=\"table my-0.75r\">\n  <thead>\n    <tr class=\"rung\">\n      <th>\u66f8\u304d\u51fa\u3057fps<\/th>\n      <td><code>-d<\/code><\/td>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr class=\"rung\">\n      <th>24fps<\/th>\n      <td>42<\/td>\n    <\/tr>\n    <tr class=\"rung\">\n      <th><b class=\"fw-600\">30fps<\/b><\/th>\n      <td><b class=\"fw-600\">33<\/b><\/td>\n    <\/tr>\n    <tr class=\"rung\">\n      <th>60fps<\/th>\n      <td>16<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n<p>30fps\u3067\u66f8\u304d\u51fa\u3057\u305f\u306e\u306b <code>-d 42<\/code> \u306b\u3059\u308b\u3068\u3001\u7d0423.8fps\u3067\u518d\u751f\u3055\u308c\u308b\u306e\u3067<b class=\"fw-600\">25%\u3086\u3063\u304f\u308a<\/b>\u52d5\u304d\u307e\u3059\u3002<\/p>\n<p><b class=\"fw-600\">PNG\u9023\u756a\u306f\u4e2d\u9593\u7d20\u6750\u3068\u3057\u3066\u6b8b\u3057\u3066\u304a\u3044\u3066\u304f\u3060\u3055\u3044\u3002<\/b> \u3042\u3068\u304b\u3089WebP\u3092\u4f5c\u308a\u76f4\u3059\u306e\u3082\u3001APNG\u306b\u3059\u308b\u306e\u3082\u3001\u30b9\u30d7\u30e9\u30a4\u30c8\u30b7\u30fc\u30c8\u306b\u3059\u308b\u306e\u3082\u3001\u5168\u90e8\u305d\u3053\u304b\u3089\u5206\u5c90\u3067\u304d\u307e\u3059\u3002<b class=\"fw-600\">PNG\u9023\u756a\u304c\u539f\u672c\u3001WebP\u306f\u6210\u679c\u7269<\/b>\u3068\u3044\u3046\u4f4d\u7f6e\u3065\u3051\u3067\u3059\u3002<\/p>\n\n<hr class=\"separator mt-3r\">\n\n<h2 class=\"fz-xl\">\u5b9f\u8df5\uff1aHTML\u306b\u7f6e\u304f<\/h2>\n<pre><code class=\"language-html\">&lt;img src=\"https:\/\/code-plus.jp\/gp\/wp-content\/themes\/zaratan\/images\/Mascot.webp\" alt=\"\" \/&gt;<\/code><\/pre>\n<p><code>&lt;img&gt;<\/code> \u30bf\u30b01\u884c\u3067\u3059\u3002\u30e9\u30f3\u30bf\u30a4\u30e0\u3082JS\u3082\u8981\u308a\u307e\u305b\u3093\u3002<\/p>\n<h3 class=\"fz-ml\">prefers-reduced-motion \u3078\u306e\u5bfe\u5fdc<\/h3>\n<p>\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3WebP\u306fCSS\u3067\u6b62\u3081\u3089\u308c\u307e\u305b\u3093\u3002<code>prefers-reduced-motion<\/code> \u306b\u5fdc\u3048\u308b\u306a\u3089\u3001\u9759\u6b62\u753b\u306b\u5dee\u3057\u66ff\u3048\u308b\u5f62\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<pre><code class=\"language-html\">&lt;picture&gt;\n  &lt;source media=\"(prefers-reduced-motion: reduce)\" srcset=\"https:\/\/code-plus.jp\/gp\/wp-content\/themes\/zaratan\/images\/Mascot-static.png\" \/&gt;\n  &lt;img src=\"https:\/\/code-plus.jp\/gp\/wp-content\/themes\/zaratan\/images\/Mascot.webp\" alt=\"\" \/&gt;\n&lt;\/picture&gt;<\/code><\/pre>\n\n<hr class=\"separator mt-3r\">\n\n<h2 class=\"fz-xl\">\u307e\u3068\u3081<\/h2>\n<table class=\"table my-0.75r\">\n  <thead>\n    <tr class=\"rung\">\n      <th><\/th>\n      <td>\u521d\u671f\u30b3\u30b9\u30c8<\/td>\n      <td>\u30e9\u30a4\u30bb\u30f3\u30b9<\/td>\n      <td>\u5ba2\u5148\u7d0d\u54c1<\/td>\n      <td>\u8868\u73fe\u529b<\/td>\n    <\/tr>\n  <\/thead>\n  <tbody>\n    <tr class=\"rung\">\n      <th><b class=\"fw-600\">\u30d1\u30fc\u30c4\u5206\u3051 + CSS<\/b><\/th>\n      <td>\u30d1\u30fc\u30c4\u5206\u3051\u306e\u307f<\/td>\n      <td>\u306a\u3057<\/td>\n      <td>\u25ce<\/td>\n      <td>\u56de\u8ee2\/\u79fb\u52d5\/\u62e1\u7e2e<\/td>\n    <\/tr>\n    <tr class=\"rung\">\n      <th><b class=\"fw-600\">AnimeEffects \u2192 WebP<\/b><\/th>\n      <td>\u5c0f<\/td>\n      <td>\u306a\u3057\uff08GPL\uff09<\/td>\n      <td>\u25ce<\/td>\n      <td>\u25ce \u5909\u5f62\u3082\u53ef<\/td>\n    <\/tr>\n    <tr class=\"rung\">\n      <th><b class=\"fw-600\">Live2D<\/b><\/th>\n      <td>\u5927<\/td>\n      <td>\u5ba2\u5148\u306e\u58f2\u4e0a\u3067\u5224\u5b9a\u30fb\u8981\u5951\u7d04<\/td>\n      <td>\u2717<\/td>\n      <td>\u25ce \u30de\u30a6\u30b9\u8ffd\u5f93<\/td>\n    <\/tr>\n    <tr class=\"rung\">\n      <th><b class=\"fw-600\">Rive<\/b><\/th>\n      <td>\u4e2d<\/td>\n      <td>$9\/\u6708\uff08\u66f8\u304d\u51fa\u3057\u6642\uff09<\/td>\n      <td>\u25b3<\/td>\n      <td>\u25ce<\/td>\n    <\/tr>\n  <\/tbody>\n<\/table>\n<p>\u8981\u70b9\u3092\u7d5e\u308b\u3068\u3001\u3053\u3046\u306a\u308a\u307e\u3059\u3002<\/p>\n<ol style=\"list-style-type:decimal;\" class=\"my-0.5r\">\n  <li><b class=\"fw-600\">GIF\u306e\u30ae\u30b6\u30ae\u30b6\u306f1bit\u30a2\u30eb\u30d5\u30a1\u304c\u539f\u56e0\u3002<\/b> 8bit\u30a2\u30eb\u30d5\u30a1\u306e\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306b\u5909\u3048\u308c\u3070\u8a2d\u5b9a\u4e0d\u8981\u3067\u76f4\u308b<\/li>\n  <li><b class=\"fw-600\">AnimeEffects \u2192 PNG\u9023\u756a \u2192 \u53ef\u9006WebP<\/b> \u304c\u3001\u30e9\u30a4\u30bb\u30f3\u30b9\u30fb\u91cd\u3055\u30fb\u753b\u8cea\u306e\u4e09\u65b9\u3088\u3057\u3002<code>&lt;img&gt;<\/code> 1\u884c\u3067\u8cbc\u308c\u308b<\/li>\n<\/ol>\n<p>\u30d1\u30fc\u30c4\u5206\u3051PNG\u3068\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30d5\u30a1\u30a4\u30eb\u306f\u6b8b\u3057\u3066\u304a\u3044\u3066\u304f\u3060\u3055\u3044\u3002<br \/>\n  \u8033\u3092\u63fa\u3089\u3059\u3001\u307e\u3070\u305f\u304d\u3092\u8db3\u3059\u3001\u3042\u305f\u308a\u306f\u540c\u3058\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b\u30ce\u30fc\u30c9\u3092\u8db3\u3059\u3060\u3051\u3067\u3059\u3002<\/p>\n\n<hr class=\"separator mt-3r\">\n\n<h2 class=\"fz-xl\">\u53c2\u8003\u30ea\u30f3\u30af<\/h2>\n<ul style=\"list-style-type:bullet;\" class=\"my-0.5r\">\n  <li><cite><a href=\"https:\/\/github.com\/hidefuku\/AnimeEffects\/releases\/tag\/v1.3.4\" target=\"_blank\" class=\"link\">Release version1.3.4 \u00b7 hidefuku\/AnimeEffects<\/a><\/cite> \u2014 \u30aa\u30ea\u30b8\u30ca\u30eb\u6700\u7d42\u7248\uff082017\u5e744\u6708\uff09<\/li>\n  <li><cite><a href=\"https:\/\/github.com\/AnimeEffectsDevs\/AnimeEffects\" target=\"_blank\" class=\"link\">AnimeEffectsDevs\/AnimeEffects<\/a><\/cite> \u2014 \u958b\u767a\u7d99\u7d9a\u4e2d\u306e\u30d5\u30a9\u30fc\u30af<\/li>\n  <li><cite><a href=\"https:\/\/animeeffectsdevs.github.io\/\" target=\"_blank\" class=\"link\">AnimeEffects \u516c\u5f0f\u30b5\u30a4\u30c8<\/a><\/cite><\/li>\n  <li><cite><a href=\"https:\/\/yukusai.itch.io\/animeeffects\" target=\"_blank\" class=\"link\">AnimeEffects by Yukusai (itch.io)<\/a><\/cite> \u2014 \u914d\u5e03\u3068devlog<\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3GIF\u306e\u8f2a\u90ed\u304c\u30ae\u30b6\u30ae\u30b6\u306b\u306a\u308b\u306e\u306f\u3001GIF\u306e\u30a2\u30eb\u30d5\u30a1\u30c1\u30e3\u30f3\u30cd\u30eb\u304c1bit\uff08\u900f\u660e\u304b\u4e0d\u900f\u660e\u306e2\u5024\uff09\u3057\u304b\u306a\u3044\u305f\u3081\u3067\u3059\u3002\u8a2d\u5b9a\u3067\u306f\u76f4\u308a\u307e\u305b\u3093\u30028bit\u30a2\u30eb\u30d5\u30a1\u3092\u6301\u3064\u53ef\u9006\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3WebP\u3078\u79fb\u884c\u3059\u308b\u624b\u9806\u3092\u30012D\u30a2\u30cb\u30e1\u30fc\u30b7\u30e7\u30f3\u30c4\u30fc\u30eb AnimeEffects \u306e\u5c0e\u5165\u304b\u3089PNG\u9023\u756a\u306e\u66f8\u304d\u51fa\u3057\u3001img2webp\u3067\u306e\u5909\u63db\u3001HTML\u3078\u306e\u8a2d\u7f6e\u307e\u3067\u901a\u3057\u3067\u89e3\u8aac\u3057\u307e\u3059\u3002","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[12],"tags":[928,927,926,925,177,81],"group":[],"pg":[],"class_list":["post-13595","post","type-post","status-publish","format-standard","category-mediaedit","tag-webp","tag-gif","tag-img2webp","tag-animeeffects","tag-svg","tag-css"],"acf":[],"_links":{"self":[{"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/posts\/13595","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/comments?post=13595"}],"version-history":[{"count":0,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/posts\/13595\/revisions"}],"wp:attachment":[{"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/media?parent=13595"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/categories?post=13595"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/tags?post=13595"},{"taxonomy":"group","embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/group?post=13595"},{"taxonomy":"pg","embeddable":true,"href":"https:\/\/code-plus.jp\/gp\/wp-json\/wp\/v2\/pg?post=13595"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}