[{"data":1,"prerenderedAt":4142},["ShallowReactive",2],{"blog-tag-ja-tools":3},[4,280,525,726,944,1169,1385,1584,1790,1938,2168,2360,2581,2811,3046,3286,3462,3711,3915],{"id":5,"title":6,"author":7,"body":8,"category":262,"coverImage":263,"description":264,"draft":265,"extension":266,"locale":267,"meta":268,"navigation":269,"noindex":265,"path":270,"publishedAt":271,"seo":272,"slug":273,"stem":274,"tags":275,"updatedAt":271,"__hash__":279},"blog\u002Fblog\u002Faudio-convert-intro.md","音声形式を変換する — \u002Ftools\u002Faudio-convert の思想と使い方","Zerosend Editorial",{"type":9,"value":10,"toc":248},"minimark",[11,15,23,27,56,59,66,69,72,95,98,124,128,154,157,160,185,188,191,197,203,209,215,218],[12,13,14],"p",{},"取材の録音を MP3 に揃えたい、古い WAV ファイルを容量節約のため M4A に変えたい、ポッドキャスト配信用の形式に統一したい。音声ファイルの形式変換は、取材者・編集者・音楽制作者が日常的に行う作業です。",[12,16,17,22],{},[18,19,21],"a",{"href":20},"\u002Ftools\u002Faudio-convert","Zerosend の音声形式変換ツール"," は、この作業をブラウザ内で完結させます。",[24,25,26],"h2",{"id":26},"主なユースケース",[28,29,30,38,44,50],"ul",{},[31,32,33,37],"li",{},[34,35,36],"strong",{},"MP3 で圧縮配布",": WAV や FLAC などのマスター音源を MP3 に変換して容量を大幅に削減し、メールや共有リンクで配布しやすくする",[31,39,40,43],{},[34,41,42],{},"WAV で高音質保存",": 録音した音声インタビューや楽曲を非圧縮の WAV で保存し、後の編集作業に備える",[31,45,46,49],{},[34,47,48],{},"動画ファイルから MP3 を抽出",": 講演・ウェビナーの録画動画から音声トラックだけを取り出し、ポッドキャストや音声コンテンツとして再利用する",[31,51,52,55],{},[34,53,54],{},"形式の統一",": 複数人から集まった異なる形式の録音ファイルを、編集ソフトに合わせて一括で同一形式に変換する",[24,57,58],{"id":58},"なぜブラウザ内で変換するのか",[12,60,61,62,65],{},"録音された音声は、",[34,63,64],{},"発話の中身そのもの","を情報として持ちます。インタビュー対象者の声、打ち合わせでの発言、取材源の証言。これらを無料のオンライン変換サービスに預けることは、発話内容そのものを第三者のサーバーに預けることと同じです。",[12,67,68],{},"Zerosend は変換処理をローカルで行うため、音声ファイルが一切外に出ません。取材ソースの保護や NDA 下の音源加工でも安全に使えます。",[24,70,71],{"id":71},"使い方",[73,74,75,83,86,89,92],"ol",{},[31,76,77,82],{},[18,78,79],{"href":20},[80,81,20],"code",{}," を開く",[31,84,85],{},"音声ファイルをドラッグ&ドロップ (複数可)",[31,87,88],{},"出力形式 (MP3 \u002F WAV \u002F M4A \u002F OGG) とビットレートを選択",[31,90,91],{},"「変換を開始する」をクリック",[31,93,94],{},"結果を ZIP でダウンロード",[24,96,97],{"id":97},"形式の選び方",[28,99,100,106,112,118],{},[31,101,102,105],{},[34,103,104],{},"MP3",": 最も汎用。ポッドキャスト・配信・共有の標準",[31,107,108,111],{},[34,109,110],{},"WAV",": 可逆 (ロスレス)。編集中のマスター音源・音楽制作用",[31,113,114,117],{},[34,115,116],{},"M4A (AAC)",": MP3 より圧縮効率が良い。iOS 環境で標準",[31,119,120,123],{},[34,121,122],{},"OGG (Vorbis)",": オープン形式。ゲーム・一部ブラウザで効率重視",[125,126,127],"h3",{"id":127},"ビットレートの目安",[28,129,130,136,142,148],{},[31,131,132,135],{},[34,133,134],{},"320 kbps",": 音質最優先 (MP3 の実用上限)",[31,137,138,141],{},[34,139,140],{},"192 kbps",": 標準品質。一般向け音声の定番",[31,143,144,147],{},[34,145,146],{},"128 kbps",": 容量優先。音声解説・ポッドキャスト",[31,149,150,153],{},[34,151,152],{},"96 kbps 以下",": 会話のみの録音など、音質より軽さ",[24,155,156],{"id":156},"仕組み",[12,158,159],{},"ffmpeg.wasm を使って再エンコードしています。",[28,161,162,165,179,182],{},[31,163,164],{},"入力音声を ffmpeg FS に書き込み",[31,166,167,168,171,172,171,175,178],{},"出力形式に応じたエンコーダ (",[80,169,170],{},"libmp3lame",", ",[80,173,174],{},"aac",[80,176,177],{},"libvorbis"," など) を指定",[31,180,181],{},"ビットレート・チャンネル数・サンプリングレートを設定",[31,183,184],{},"出力 Blob を生成してダウンロード",[12,186,187],{},"メタデータ (タイトル・アーティスト) は極力引き継ぎます。",[24,189,190],{"id":190},"よくある質問",[12,192,193,196],{},[34,194,195],{},"Q. 可逆 → 非可逆 (WAV → MP3) と 非可逆 → 非可逆 (MP3 → M4A) の違いは？","\nA. 非可逆 → 非可逆は二重に圧縮されるため音質がさらに劣化します。マスター音源 (WAV) から目的形式に直接変換するのをお勧めします。",[12,198,199,202],{},[34,200,201],{},"Q. 複数ファイルのバッチ変換は？","\nA. 対応しています。10〜20 ファイル程度を 1 バッチで処理するのが現実的です。",[12,204,205,208],{},[34,206,207],{},"Q. 動画から音声だけ抜き出したい","\nA. 動画ファイルを入力すれば音声トラックを抽出して指定形式で書き出します。",[12,210,211,214],{},[34,212,213],{},"Q. ビットレートを自由に指定できる？","\nA. プリセットから選ぶ方式です。細かい制御が必要なら別途専門ツールを検討してください。",[24,216,217],{"id":217},"関連ツール",[28,219,220,227,234,241],{},[31,221,222,226],{},[18,223,225],{"href":224},"\u002Ftools\u002Faudio-trim","音声トリミング"," — 変換前後の区間切り出し",[31,228,229,233],{},[18,230,232],{"href":231},"\u002Ftools\u002Fvideo-convert","動画形式変換"," — 動画側の形式変換",[31,235,236,240],{},[18,237,239],{"href":238},"\u002Ftools\u002Fvideo-trim","動画トリミング"," — 音声抽出前の動画整形",[31,242,243,247],{},[18,244,246],{"href":245},"\u002Ftools\u002Fvideo-compress","動画圧縮"," — 動画から音声を抽出する前に動画サイズを削減する",{"title":249,"searchDepth":250,"depth":250,"links":251},"",2,[252,253,254,255,259,260,261],{"id":26,"depth":250,"text":26},{"id":58,"depth":250,"text":58},{"id":71,"depth":250,"text":71},{"id":97,"depth":250,"text":97,"children":256},[257],{"id":127,"depth":258,"text":127},3,{"id":156,"depth":250,"text":156},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"tech",null,"Zerosend の音声形式変換ツールは、MP3 \u002F WAV \u002F M4A \u002F FLAC \u002F OGG などをサーバーに送らずブラウザ内で相互変換します。録音インタビューや音源ファイルの形式統一に。Zerosend 編集部が解説。",false,"md","ja",{},true,"\u002Fblog\u002Faudio-convert-intro","2026-04-20",{"title":6,"description":264},"audio-convert-intro","blog\u002Faudio-convert-intro",[276,277,278],"音声","変換","ツール","OlXJ1MeL-A2cx6TnCW2yQ2e3upQHsBkoPqR_cseAvY8",{"id":281,"title":282,"author":7,"body":283,"category":262,"coverImage":263,"description":516,"draft":265,"extension":266,"locale":267,"meta":517,"navigation":269,"noindex":265,"path":518,"publishedAt":271,"seo":519,"slug":520,"stem":521,"tags":522,"updatedAt":271,"__hash__":524},"blog\u002Fblog\u002Faudio-trim-intro.md","音声をトリミング (切り出し) する — \u002Ftools\u002Faudio-trim の思想と使い方",{"type":9,"value":284,"toc":506},[285,288,293,296,334,337,340,347,349,369,373,380,383,385,396,409,416,419,445,447,453,463,469,475,487,489],[12,286,287],{},"60 分のインタビューから引用したい 30 秒を抜き出したい、会議録音の不要な冒頭\u002F末尾をカットしたい、ポッドキャスト素材のつなぎ目を整えたい。音声のトリミングは、録音後の編集で最初に行う作業です。",[12,289,290,22],{},[18,291,292],{"href":224},"Zerosend の音声トリミングツール",[24,294,295],{"id":295},"こんな場面で使える",[28,297,298,304,310,316,322,328],{},[31,299,300,303],{},[34,301,302],{},"ポッドキャスト収録の前後カット",": 収録開始前の雑談や終了後の「切れましたか？」をまるごと除去",[31,305,306,309],{},[34,307,308],{},"BGM の切り出し",": 長いオーディオトラックから使いたいサビ部分だけを抽出",[31,311,312,315],{},[34,313,314],{},"着信音・通知音の作成",": お気に入りの曲の冒頭 30 秒をトリミングして着信音用ファイルに",[31,317,318,321],{},[34,319,320],{},"インタビュー引用",": 60 分音源から 30 秒の発言だけを抜き出してプレゼンや記事に添付",[31,323,324,327],{},[34,325,326],{},"会議録音の整理",": 30 分の会議音声から議題ごとに区間を切り出してアーカイブ",[31,329,330,333],{},[34,331,332],{},"語学学習素材",": リスニング教材の特定フレーズだけを繰り返し練習するために切り出す",[24,335,336],{"id":336},"なぜブラウザ内でトリミングするのか",[12,338,339],{},"音声ファイルには発話内容そのものが記録されています。インタビュー、取材、商談、カウンセリング、医療相談。どれも機密性が高く、当事者以外に聞かれることを想定していない音声です。",[12,341,342,343,346],{},"「一部だけ切り出したい」という作業でも、オンラインツールに預けると",[34,344,345],{},"入力した音声全体","が相手に渡ります。Zerosend はトリミング処理をローカルで行うため、アップロードそのものが発生せず、音源全体の機密が守られます。",[24,348,71],{"id":71},[73,350,351,357,360,363,366],{},[31,352,353,82],{},[18,354,355],{"href":224},[80,356,224],{},[31,358,359],{},"音声ファイルをドラッグ&ドロップ",[31,361,362],{},"開始時刻・終了時刻を指定",[31,364,365],{},"「トリミングを開始する」をクリック",[31,367,368],{},"切り出された音声をダウンロード",[24,370,372],{"id":371},"ffmpegwasm-によるブラウザ内処理","ffmpeg.wasm によるブラウザ内処理",[12,374,375,376,379],{},"動画・音声処理の定番ツール ffmpeg は、本来ターミナルから使うソフトウェアです。",[34,377,378],{},"ffmpeg.wasm"," はこれを WebAssembly でブラウザ上で動くようにしたもので、インストール不要でネイティブアプリ並みの音声処理が手元で行えます。",[12,381,382],{},"Zerosend の音声トリミングも ffmpeg.wasm を通じて動作するため、音声データがサーバーに送られることはありません。機密性の高い音声もブラウザのタブを閉じれば跡形もなく消えます。",[24,384,156],{"id":156},[12,386,387,388,391,392,395],{},"ffmpeg.wasm の ",[80,389,390],{},"-ss"," \u002F ",[80,393,394],{},"-to"," オプションで指定区間を抽出します。",[28,397,398,400,406],{},[31,399,164],{},[31,401,402,405],{},[80,403,404],{},"-ss \u003Cstart> -i input -to \u003Cend> -c copy output"," でロスレス抽出",[31,407,408],{},"再エンコードなしで切り出すため処理が速く音質劣化もない",[12,410,411,412,415],{},"入力がどの形式であっても、基本的には同じ形式で書き出されます。形式を変えたいときは ",[18,413,414],{"href":20},"音声形式変換"," と組み合わせてください。",[24,417,418],{"id":418},"使いどころ",[28,420,421,427,433,439],{},[31,422,423,426],{},[34,424,425],{},"インタビューの引用",": 60 分音源から 30 秒の引用箇所を切り出す",[31,428,429,432],{},[34,430,431],{},"不要区間の除去",": 録音冒頭の環境音や末尾の雑音をカット",[31,434,435,438],{},[34,436,437],{},"ポッドキャスト編集",": 冗長な「えー」「あのー」を含む区間を削除 (1 区間ずつ)",[31,440,441,444],{},[34,442,443],{},"会議議事録の根拠音声",": 要旨に関連する数分の根拠区間を抜き出す",[24,446,190],{"id":190},[12,448,449,452],{},[34,450,451],{},"Q. MP3 は正確にカットできますか？","\nA. MP3 はフレーム境界に依存するため、指定した時刻の直前のフレーム境界に揃います。秒単位の切り出しなら実用上問題ありません。WAV や FLAC などのロスレス形式はより正確なカットが可能です。",[12,454,455,458,459,462],{},[34,456,457],{},"Q. 音質は落ちますか？","\nA. ",[80,460,461],{},"-c copy"," によるロスレス抽出のため、再エンコードが発生せず元の音質がそのまま保持されます。MP3 を MP3 のまま切り出しても音質の劣化はありません。",[12,464,465,468],{},[34,466,467],{},"Q. 複数区間を切り出して連結できる？","\nA. 現状は 1 区間のみです。複数区間を抽出したい場合は 1 つずつ切り出してから別途連結してください。",[12,470,471,474],{},[34,472,473],{},"Q. フェードイン\u002Fフェードアウトを追加できますか？","\nA. 現状は非対応です。必要なら切り出した音声を別の編集ツールで処理してください。",[12,476,477,480,481,483,484,486],{},[34,478,479],{},"Q. 動画ファイルから音声部分だけ切り出したい","\nA. 動画ファイルを入力して ",[18,482,414],{"href":20}," を使うと、動画の音声トラックを指定形式で抽出できます。トリミングしたい区間があるなら、まず ",[18,485,239],{"href":238}," で区間抽出 → 音声形式変換、の順がお勧めです。",[24,488,217],{"id":217},[28,490,491,496,501],{},[31,492,493,495],{},[18,494,414],{"href":20}," — トリミング後に形式を変えたいとき",[31,497,498,500],{},[18,499,239],{"href":238}," — 映像付きの区間抽出",[31,502,503,505],{},[18,504,232],{"href":231}," — 動画側の処理",{"title":249,"searchDepth":250,"depth":250,"links":507},[508,509,510,511,512,513,514,515],{"id":295,"depth":250,"text":295},{"id":336,"depth":250,"text":336},{"id":71,"depth":250,"text":71},{"id":371,"depth":250,"text":372},{"id":156,"depth":250,"text":156},{"id":418,"depth":250,"text":418},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の音声トリミングツールは、音声ファイルをサーバーに送らずブラウザ内で任意の区間だけ切り出します。長尺インタビュー・会議録音・ポッドキャスト素材の整形に。Zerosend 編集部が解説。",{},"\u002Fblog\u002Faudio-trim-intro",{"title":282,"description":516},"audio-trim-intro","blog\u002Faudio-trim-intro",[276,523,278],"トリミング","3lyRp4i_uBJXVcGETt_dsJVycY31Z5iFzImR5G2TGi0",{"id":526,"title":527,"author":7,"body":528,"category":262,"coverImage":263,"description":715,"draft":265,"extension":266,"locale":267,"meta":716,"navigation":269,"noindex":265,"path":717,"publishedAt":271,"seo":718,"slug":719,"stem":720,"tags":721,"updatedAt":271,"__hash__":725},"blog\u002Fblog\u002Fheic-to-jpg-intro.md","HEIC を JPG に変換する — \u002Ftools\u002Fheic-to-jpg の思想と使い方",{"type":9,"value":529,"toc":706},[530,533,540,544,551,577,580,583,587,590,593,595,613,615,625,645,648,650,656,662,668,674,676],[12,531,532],{},"iPhone で撮影した写真を PC や同僚に送ったら「開けません」と言われた経験、ありますよね。iPhone の標準形式 HEIC (High Efficiency Image Container) は、Apple エコシステム外では互換性が限定的です。Windows 10 以降はアドオンが必要、画像編集ソフトも対応が遅れがちです。",[12,534,535,539],{},[18,536,538],{"href":537},"\u002Ftools\u002Fheic-to-jpg","Zerosend の HEIC → JPG 変換ツール"," は、この問題をブラウザ内で解決します。",[24,541,543],{"id":542},"heic-とは","HEIC とは",[12,545,546,547,550],{},"HEIC は Apple が iOS 11 から採用した画像フォーマットです。HEVC (H.265) という映像圧縮技術を静止画に応用したもので、同等画質の JPG と比べてファイルサイズを約半分に抑えられます。iPhone のストレージを節約するうえで有効な形式ですが、",[34,548,549],{},"Apple 外のシステムでは素直に開けない","という問題を持っています。",[28,552,553,559,565,571],{},[31,554,555,558],{},[34,556,557],{},"Windows PC",": 標準では開けず、Microsoft Store から有償の HEVC コーデックをインストールする必要がある",[31,560,561,564],{},[34,562,563],{},"古い画像編集ソフト",": Photoshop や Lightroom の古いバージョンは非対応",[31,566,567,570],{},[34,568,569],{},"Web サービス",": X (Twitter)・Facebook・note など多くのプラットフォームで HEIC のアップロードが弾かれる",[31,572,573,576],{},[34,574,575],{},"Android",": HEIC をネイティブで扱えない機種が多い",[24,578,579],{"id":579},"変換が必要な主な場面",[12,581,582],{},"Windows の仕事用 PC で iPhone の写真を開きたいとき、ブログや SNS に iPhone 写真を投稿しようとして弾かれたとき、クライアントへ納品する写真素材のファイル形式を統一するとき——いずれも JPG への変換が最短解です。",[24,584,586],{"id":585},"なぜブラウザ内で-heic-を変換するのか","なぜブラウザ内で HEIC を変換するのか",[12,588,589],{},"iPhone で撮った写真は、個人・家族・仕事の私的情景を含みがちです。顔、家の中、位置情報、撮影日時。これらを無料のオンライン変換サービスにアップロードすることは、事実上それらの情報を第三者に預けることを意味します。",[12,591,592],{},"Zerosend は、HEIC のデコードから JPG の書き出しまで、すべてブラウザ内で行います。写真自体が外に出ないため、NDA 下の撮影素材や家族の写真でも安心して使えます。",[24,594,71],{"id":71},[73,596,597,603,606,609,611],{},[31,598,599,82],{},[18,600,601],{"href":537},[80,602,537],{},[31,604,605],{},"HEIC \u002F HEIF 形式の画像をドラッグ&ドロップ (複数可)",[31,607,608],{},"品質 (JPG の圧縮率) を選択",[31,610,91],{},[31,612,94],{},[24,614,156],{"id":156},[12,616,617,618,621,622,624],{},"HEIC のデコードはブラウザ標準ではまだ実装されていないため、",[80,619,620],{},"heic2any"," ライブラリを読み込んで使っています。",[80,623,620],{}," は libheif を WebAssembly 化したもので、ブラウザ内で HEIC を Blob として展開できます。",[28,626,627,630,635,638],{},[31,628,629],{},"HEIC ファイルを ArrayBuffer として読み込み",[31,631,632,634],{},[80,633,620],{}," で JPEG Blob に変換 (libheif の WASM が実行される)",[31,636,637],{},"必要なら Canvas 経由で品質を再指定",[31,639,640,641,644],{},"元のファイル名を保持したまま ",[80,642,643],{},".jpg"," 拡張子で書き出し",[12,646,647],{},"初回のみ libheif の WASM (約 2MB) をダウンロードするため少し待ち時間がありますが、2 回目以降はキャッシュから即時起動します。",[24,649,190],{"id":190},[12,651,652,655],{},[34,653,654],{},"Q. HEIC と HEIF の違いは？","\nA. HEIF がコンテナフォーマットの総称で、HEIC はその中で HEVC (H.265) でエンコードされた静止画を指します。本ツールは両方対応しています。",[12,657,658,661],{},[34,659,660],{},"Q. Live Photo はどうなりますか？","\nA. 静止画部分のみが JPG として書き出されます。動画部分は含まれません。動画も抽出したい場合は別途 iPhone 側で「書き出す > 現状のまま」を使ってください。",[12,663,664,667],{},[34,665,666],{},"Q. EXIF (撮影日時・位置情報) は引き継がれますか？","\nA. 一部情報は失われます。位置情報のプライバシー観点ではむしろ利点です。",[12,669,670,673],{},[34,671,672],{},"Q. 複数ファイルまとめて変換できますか？","\nA. はい。ZIP で一括ダウンロードできます。数十枚程度までは快適に処理できます。",[24,675,217],{"id":217},[28,677,678,685,692,699],{},[31,679,680,684],{},[18,681,683],{"href":682},"\u002Ftools\u002Fimage-compress","画像圧縮"," — JPG 変換後にさらに軽くしたいとき",[31,686,687,691],{},[18,688,690],{"href":689},"\u002Ftools\u002Fimage-resize","画像リサイズ"," — 送信前に寸法も揃える",[31,693,694,698],{},[18,695,697],{"href":696},"\u002Ftools\u002Fimage-convert","画像形式変換"," — JPG \u002F PNG \u002F WebP の相互変換",[31,700,701,705],{},[18,702,704],{"href":703},"\u002Ftools\u002Fimage-to-pdf","画像 → PDF"," — 変換後の JPG をまとめて PDF 化する",{"title":249,"searchDepth":250,"depth":250,"links":707},[708,709,710,711,712,713,714],{"id":542,"depth":250,"text":543},{"id":579,"depth":250,"text":579},{"id":585,"depth":250,"text":586},{"id":71,"depth":250,"text":71},{"id":156,"depth":250,"text":156},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"iPhone で撮った HEIC 画像を Windows \u002F Android や古いシステムで開けるよう JPG に変換するツール。サーバーに送らずブラウザ内で変換する仕組みと注意点を Zerosend 編集部が解説。",{},"\u002Fblog\u002Fheic-to-jpg-intro",{"title":527,"description":715},"heic-to-jpg-intro","blog\u002Fheic-to-jpg-intro",[722,723,724,278],"HEIC","画像","iPhone","NbDoeVSgFPWUufoUokX_--BrmUj9tyIBQSEzbnQ7-e4",{"id":727,"title":728,"author":7,"body":729,"category":262,"coverImage":263,"description":936,"draft":265,"extension":266,"locale":267,"meta":937,"navigation":269,"noindex":265,"path":938,"publishedAt":271,"seo":939,"slug":940,"stem":941,"tags":942,"updatedAt":271,"__hash__":943},"blog\u002Fblog\u002Fimage-convert-intro.md","画像形式変換をブラウザ内で — \u002Ftools\u002Fimage-convert の思想と使い方",{"type":9,"value":730,"toc":927},[731,734,737,763,769,772,775,778,785,788,790,809,811,837,844,846,853,875,882,884,890,896,902,908,910],[12,732,733],{},"「PNG で貰ったロゴを JPEG にしたい」「iPhone で撮った HEIC を JPG で送りたい」「サイト表示を速くするために WebP に揃えたい」。画像の形式変換は地味ですが発生頻度の高い作業です。",[12,735,736],{},"よくあるユースケースを整理するとこうなります。",[28,738,739,745,751,757],{},[31,740,741,744],{},[34,742,743],{},"Web 担当者",": 納品された PNG 素材を WebP に変換してページ表示を高速化したい",[31,746,747,750],{},[34,748,749],{},"デザイナー",": 透過 PNG のロゴを、背景色固定の JPEG に変換してメール添付したい",[31,752,753,756],{},[34,754,755],{},"一般ユーザー",": Windows で開けない HEIC をとにかく JPG に直したい",[31,758,759,762],{},[34,760,761],{},"開発者",": 複数形式が混在した画像フォルダを WebP に一括統一したい",[12,764,765,768],{},[18,766,767],{"href":696},"Zerosend の画像形式変換ツール"," は、この日常作業をブラウザ内で完結させます。一度も外に出さずに、あなたの端末だけで別形式に書き出します。",[24,770,771],{"id":771},"形式を変換したい主な理由",[12,773,774],{},"画像形式ごとに得意な用途が異なります。目的に合った形式を選ぶだけで、ファイルサイズが 30〜50% 小さくなったり、透過表現が使えるようになったりします。変換そのものを手軽にできる環境があると、素材管理の自由度が大きく上がります。",[24,776,777],{"id":777},"なぜブラウザ内で形式変換するのか",[12,779,780,781,784],{},"画像変換サービスの多くは、アップロード → サーバーで変換 → ダウンロード という流れです。社員写真、契約書のスキャン、製品デザイン案。",[34,782,783],{},"中身を見られたくない画像ほど、オンライン変換ツールに投げづらい","のが現実です。",[12,786,787],{},"Zerosend は、変換処理そのものがブラウザ内で完結するため、機密性の高い素材でもそのまま使えます。DevTools の Network タブを開いたまま変換しても、画像本体がアップロードされていないことを自分で確認できます。",[24,789,71],{"id":71},[73,791,792,798,801,804,806],{},[31,793,794,82],{},[18,795,796],{"href":696},[80,797,696],{},[31,799,800],{},"画像をドラッグ&ドロップ (複数可)",[31,802,803],{},"出力形式 (JPEG \u002F PNG \u002F WebP) と品質を選択",[31,805,91],{},[31,807,808],{},"結果を ZIP でまとめてダウンロード",[24,810,97],{"id":97},[28,812,813,819,825,831],{},[31,814,815,818],{},[34,816,817],{},"JPEG",": 写真・背景画像。透過不要。古いブラウザ\u002Fアプリ互換性が最重要なら",[31,820,821,824],{},[34,822,823],{},"PNG",": ロゴ・UI パーツ・透過必要なグラフィック。可逆圧縮",[31,826,827,830],{},[34,828,829],{},"WebP",": 汎用。JPEG より 25〜35% 小さくなり、透過も扱える。モダン用途の標準",[31,832,833,836],{},[34,834,835],{},"AVIF",": 更に小さいが生成コストが高く、ブラウザ対応がまだ揃いきらない",[12,838,839,840,843],{},"ブログや EC で表示速度を気にするなら ",[34,841,842],{},"WebP 一択","と言って差し支えありません。",[24,845,156],{"id":156},[12,847,848,849,852],{},"Canvas API の ",[80,850,851],{},"canvas.toBlob(callback, 'image\u002Fwebp', quality)"," を使って変換しています。ブラウザ標準のエンコーダなので、外部ライブラリ依存もありません。",[28,854,855,862,869],{},[31,856,857,858,861],{},"入力画像を ",[80,859,860],{},"\u003Cimg>"," として読み込み",[31,863,864,865,868],{},"同寸の ",[80,866,867],{},"\u003Ccanvas>"," に描画",[31,870,871,874],{},[80,872,873],{},"toBlob"," で出力形式と品質を指定して書き出し",[12,876,877,878,881],{},"HEIC 入力のみ別ツール (",[18,879,880],{"href":537},"HEIC → JPG",") に振り分けています。HEIC デコーダがブラウザ標準にまだ入っていないため、別ライブラリを読み込む必要があるためです。",[24,883,190],{"id":190},[12,885,886,889],{},[34,887,888],{},"Q. WebP に変換するメリットは？","\nA. 同じ視覚品質で JPEG より 25〜35% 小さくなります。透過も扱えるため PNG の代替にもなり、モダンブラウザはすべて対応済みです。ブログや EC では積極的に使う価値があります。",[12,891,892,895],{},[34,893,894],{},"Q. 透過 PNG を JPEG にしたらどうなる？","\nA. 透過部分は白で塗られます。意図しない結果になりやすいので注意してください。透過を維持したい場合は WebP か PNG のままにしてください。",[12,897,898,901],{},[34,899,900],{},"Q. 元のメタデータ (EXIF) は引き継がれる？","\nA. 落ちます。位置情報漏れの予防としてはむしろ利点です。",[12,903,904,907],{},[34,905,906],{},"Q. バッチ処理の上限は？","\nA. 端末のメモリ次第ですが、実用上は 100 枚前後までを推奨します。",[24,909,217],{"id":217},[28,911,912,917,922],{},[31,913,914,916],{},[18,915,683],{"href":682}," — 品質指定で再エンコードしてサイズ削減",[31,918,919,921],{},[18,920,690],{"href":689}," — 形式変換と同時に寸法も揃えたいときは先にこちら",[31,923,924,926],{},[18,925,880],{"href":537}," — iPhone 写真専用の変換",{"title":249,"searchDepth":250,"depth":250,"links":928},[929,930,931,932,933,934,935],{"id":771,"depth":250,"text":771},{"id":777,"depth":250,"text":777},{"id":71,"depth":250,"text":71},{"id":97,"depth":250,"text":97},{"id":156,"depth":250,"text":156},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の画像形式変換ツールは、JPEG \u002F PNG \u002F WebP \u002F AVIF をサーバーに送らず相互変換します。用途別の形式選び、透過・圧縮率の違いを Zerosend 編集部が整理します。",{},"\u002Fblog\u002Fimage-convert-intro",{"title":728,"description":936},"image-convert-intro","blog\u002Fimage-convert-intro",[723,277,829,278],"xN0-q4ewAvDZNl6TjIn0v_ArxA8uRFuMBmge7YzSp3k",{"id":945,"title":946,"author":7,"body":947,"category":262,"coverImage":263,"description":1160,"draft":265,"extension":266,"locale":267,"meta":1161,"navigation":269,"noindex":265,"path":1162,"publishedAt":271,"seo":1163,"slug":1164,"stem":1165,"tags":1166,"updatedAt":271,"__hash__":1168},"blog\u002Fblog\u002Fimage-edit-intro.md","画像の切り抜き・回転・反転をブラウザ内で — \u002Ftools\u002Fimage-edit の思想と使い方",{"type":9,"value":948,"toc":1152},[949,952,959,961,999,1002,1005,1012,1015,1017,1054,1056,1092,1095,1097,1103,1113,1119,1125,1131,1133],[12,950,951],{},"SNS アイコンの正方形切り出し、履歴書の証明写真の比率合わせ、商品画像の回転、スキャン画像の左右反転。Photoshop を開くほどでもないのに地味に面倒な作業ですよね。",[12,953,954,958],{},[18,955,957],{"href":956},"\u002Ftools\u002Fimage-edit","Zerosend の画像編集ツール"," は、この 3 操作を 1 画面に集約してブラウザ内で完結させます。",[24,960,295],{"id":295},[28,962,963,969,975,981,987,993],{},[31,964,965,968],{},[34,966,967],{},"SNS アイコン・プロフィール画像",": Instagram や Twitter は正方形が基本。1:1 プリセットでワンクリック切り抜き",[31,970,971,974],{},[34,972,973],{},"証明写真のトリミング",": 就活・パスポート申請用に 3:4 比率で切り抜き。顔が含まれるデータをサーバーに送りたくないときに特に有効",[31,976,977,980],{},[34,978,979],{},"スキャン画像の向き修正",": スキャナが横向きで読み込んだ場合、90° 回転で即座に修正",[31,982,983,986],{},[34,984,985],{},"商品画像の整形",": EC サイト用に余白をカットして正方形化",[31,988,989,992],{},[34,990,991],{},"鏡像反転",": 文字が逆に写り込んだ画像を水平反転で修正",[31,994,995,998],{},[34,996,997],{},"ブログ・資料のサムネイル",": 16:9 プリセットで統一感のある横長画像を作成",[24,1000,1001],{"id":1001},"なぜブラウザ内で編集するのか",[12,1003,1004],{},"トリミングは個人情報と密接です。証明写真を切り出すなら顔、名刺をスキャンするなら氏名・連絡先、社内資料の一部を切り出すなら機密情報が含まれます。",[12,1006,1007,1008,1011],{},"これらを「画像を切り抜くだけ」のオンラインツールにアップロードすると、切り抜き前の原版が相手のサーバーに残る可能性があります。オンラインツールはビジネスモデル上、アップロード済みのファイルをログ・解析・AI 学習に回しても契約上問題にならないケースが多く、",[34,1009,1010],{},"利用者側からはその境界が見えません","。",[12,1013,1014],{},"Zerosend は編集処理そのものをローカルで行うことで、この不透明性を取り除きます。",[24,1016,71],{"id":71},[73,1018,1019,1025,1028,1051],{},[31,1020,1021,82],{},[18,1022,1023],{"href":956},[80,1024,956],{},[31,1026,1027],{},"画像をドラッグ&ドロップ",[31,1029,1030,1031],{},"3 つの操作から選ぶ:\n",[28,1032,1033,1039,1045],{},[31,1034,1035,1038],{},[34,1036,1037],{},"切り抜き",": 矩形を選択範囲として指定",[31,1040,1041,1044],{},[34,1042,1043],{},"回転",": 90° \u002F 180° \u002F 270° の 3 ステップ",[31,1046,1047,1050],{},[34,1048,1049],{},"反転",": 水平 \u002F 垂直",[31,1052,1053],{},"プレビューで結果を確認してダウンロード",[24,1055,156],{"id":156},[28,1057,1058,1070,1079],{},[31,1059,1060,1062,1063,1065,1066,1069],{},[34,1061,1037],{},": 選択した矩形の寸法の ",[80,1064,867],{}," を作り、",[80,1067,1068],{},"drawImage"," で元画像の該当領域を切り出し",[31,1071,1072,1074,1075,1078],{},[34,1073,1043],{},": 回転行列を ",[80,1076,1077],{},"ctx.transform"," で適用してから描画",[31,1080,1081,1083,1084,1087,1088,1091],{},[34,1082,1049],{},": ",[80,1085,1086],{},"ctx.scale(-1, 1)"," で水平、",[80,1089,1090],{},"ctx.scale(1, -1)"," で垂直",[12,1093,1094],{},"いずれも Canvas API の基本操作の組み合わせで、追加ライブラリは使っていません。処理は数十ミリ秒で完了します。",[24,1096,190],{"id":190},[12,1098,1099,1102],{},[34,1100,1101],{},"Q. 元の画像ファイルは変更されますか？","\nA. いいえ。処理はブラウザのメモリ上で行われ、ダウンロードするまで何も書き変わりません。元ファイルはそのまま手元に残ります。",[12,1104,1105,1108,1109,1112],{},[34,1106,1107],{},"Q. 対応している画像形式は？","\nA. JPEG・PNG・WebP・GIF (静止画) に対応しています。HEIC 形式の場合は先に ",[18,1110,1111],{"href":537},"HEIC → JPG 変換"," を使ってから編集してください。",[12,1114,1115,1118],{},[34,1116,1117],{},"Q. 比率指定 (1:1, 4:3, 16:9) で切り抜けますか？","\nA. はい。プリセットボタンで一発切り替えできます。SNS アイコンは 1:1、YouTube サムネは 16:9 など。",[12,1120,1121,1124],{},[34,1122,1123],{},"Q. 複数画像をまとめて同じ比率で切り抜けますか？","\nA. 現状は 1 枚ずつです。バッチ処理は要望を見ながら検討します。",[12,1126,1127,1130],{},[34,1128,1129],{},"Q. 編集後に再度編集したい場合は？","\nA. ダウンロードしたファイルを再度ドロップすれば、何度でも編集できます。",[24,1132,217],{"id":217},[28,1134,1135,1140,1145],{},[31,1136,1137,1139],{},[18,1138,690],{"href":689}," — 切り抜き後に寸法を揃えたいとき",[31,1141,1142,1144],{},[18,1143,683],{"href":682}," — 編集後の軽量化",[31,1146,1147,1151],{},[18,1148,1150],{"href":1149},"\u002Ftools\u002Fimage-merge","画像結合"," — 複数画像を 1 枚にまとめたいとき",{"title":249,"searchDepth":250,"depth":250,"links":1153},[1154,1155,1156,1157,1158,1159],{"id":295,"depth":250,"text":295},{"id":1001,"depth":250,"text":1001},{"id":71,"depth":250,"text":71},{"id":156,"depth":250,"text":156},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の画像編集ツールは、切り抜き・回転・反転をサーバーに送らず端末内で処理します。証明写真・SNS アイコン・商品画像のトリミングで使える基本操作を Zerosend 編集部が解説。",{},"\u002Fblog\u002Fimage-edit-intro",{"title":946,"description":1160},"image-edit-intro","blog\u002Fimage-edit-intro",[723,1167,278],"編集","RrpC6EauzaWkAgWFfR06-Hve3OSQ4XqwZn5wmKjcYTw",{"id":1170,"title":1171,"author":7,"body":1172,"category":262,"coverImage":263,"description":1376,"draft":265,"extension":266,"locale":267,"meta":1377,"navigation":269,"noindex":265,"path":1378,"publishedAt":271,"seo":1379,"slug":1380,"stem":1381,"tags":1382,"updatedAt":271,"__hash__":1384},"blog\u002Fblog\u002Fimage-merge-intro.md","複数画像を 1 枚にまとめる — \u002Ftools\u002Fimage-merge の思想と使い方",{"type":9,"value":1173,"toc":1367},[1174,1177,1183,1186,1193,1196,1198,1221,1223,1249,1252,1256,1276,1282,1284,1310,1312,1321,1327,1336,1342,1348,1350],[12,1175,1176],{},"スマホのスクリーンショットを複数枚まとめて 1 枚の縦長画像にしたい。商品のビフォーアフター画像を横並びで 1 枚にしたい。操作マニュアルの手順画像を縦に並べて 1 ファイルにまとめたい。比較画像や before\u002Fafter の資料作りで、画像を並べたいシーンは日常的に発生します。",[12,1178,1179,1182],{},[18,1180,1181],{"href":1149},"Zerosend の画像結合ツール"," は、こうした「複数画像を 1 枚にまとめる」需要をブラウザ内で完結させます。",[24,1184,1185],{"id":1185},"なぜブラウザ内で結合するのか",[12,1187,1188,1189,1192],{},"結合対象の画像には、アプリの画面キャプチャ、社内ドキュメントのスクショ、顧客の LINE 履歴など機密性の高いものが混ざりがちです。",[34,1190,1191],{},"結合対象を全部まとめてサーバーに上げる","ということは、それだけの量の機密情報を一度に外に出すことと同じです。",[12,1194,1195],{},"Zerosend は結合処理そのものがローカルで動くため、何枚投入しても 1 枚のファイルも外に出ません。",[24,1197,71],{"id":71},[73,1199,1200,1206,1209,1212,1215,1218],{},[31,1201,1202,82],{},[18,1203,1204],{"href":1149},[80,1205,1149],{},[31,1207,1208],{},"画像を複数枚ドラッグ&ドロップ",[31,1210,1211],{},"結合方向を選ぶ (縦に連結 \u002F 横に連結 \u002F グリッド)",[31,1213,1214],{},"順序が違う場合はドラッグで並べ替え",[31,1216,1217],{},"「結合を開始する」をクリック",[31,1219,1220],{},"1 枚の画像としてダウンロード",[24,1222,156],{"id":156},[28,1224,1225,1228,1234,1240,1243],{},[31,1226,1227],{},"各入力画像の寸法を計測",[31,1229,1230,1231,1233],{},"結合後の ",[80,1232,867],{}," サイズを計算 (縦連結なら幅は最大・高さは合計)",[31,1235,1236,1237,1239],{},"画像を順に ",[80,1238,1068],{}," で配置",[31,1241,1242],{},"幅\u002F高さが揃わない場合は縦横比を保って自動センタリング",[31,1244,1245,1248],{},[80,1246,1247],{},"canvas.toBlob()"," で PNG \u002F JPEG として書き出し",[12,1250,1251],{},"全処理は Canvas API の組み合わせで完結します。100 枚程度の結合まで現実的です。",[24,1253,1255],{"id":1254},"縦結合横結合の使い分け","縦結合・横結合の使い分け",[28,1257,1258,1264,1270],{},[31,1259,1260,1263],{},[34,1261,1262],{},"縦に連結",": スマホのスクロールスクリーンショットをつなぐ、手順説明の連番画像をまとめる",[31,1265,1266,1269],{},[34,1267,1268],{},"横に連結",": ビフォー\u002Fアフターを並べる、比較検討資料を 1 枚にする",[31,1271,1272,1275],{},[34,1273,1274],{},"グリッド",": 複数カットを整然と並べて SNS 投稿やカタログ素材にする",[12,1277,1278,1279,1281],{},"サイズが異なる画像は、余白を自動で埋めて揃えます。事前に ",[18,1280,690],{"href":689}," で寸法を統一しておくと、余白なしにきれいに仕上がります。",[24,1283,418],{"id":418},[28,1285,1286,1292,1298,1304],{},[31,1287,1288,1291],{},[34,1289,1290],{},"スクショ集約",": アプリのフロー解説で、複数画面を 1 枚にまとめて Slack に貼る",[31,1293,1294,1297],{},[34,1295,1296],{},"比較画像",": ビフォー\u002Fアフターを横並びで 1 枚に",[31,1299,1300,1303],{},[34,1301,1302],{},"SNS 投稿",": Instagram の 1 枚投稿でも複数カットを見せる",[31,1305,1306,1309],{},[34,1307,1308],{},"申請書類",": 表紙と本文を 1 画像にまとめて提出",[24,1311,190],{"id":190},[12,1313,1314,1317,1318,1320],{},[34,1315,1316],{},"Q. 結合後のファイルサイズはどのくらいになりますか？","\nA. 入力枚数と解像度に比例して大きくなります。多数枚を結合した場合は ",[18,1319,683],{"href":682}," で軽量化するのがおすすめです。",[12,1322,1323,1326],{},[34,1324,1325],{},"Q. 何枚まで結合できますか？","\nA. ツールに上限は設けていませんが、ブラウザのメモリに依存します。100 枚程度までは現実的に動作します。",[12,1328,1329,1332,1333,1335],{},[34,1330,1331],{},"Q. 画像サイズが違うものを結合するとどうなる？","\nA. 縦連結では幅を最大に合わせ、余白部分は透明 (PNG) または白 (JPEG) になります。事前に ",[18,1334,690],{"href":689}," で揃えておくときれいに仕上がります。",[12,1337,1338,1341],{},[34,1339,1340],{},"Q. 間に余白を入れられる？","\nA. はい。境界の色と幅を指定できます。",[12,1343,1344,1347],{},[34,1345,1346],{},"Q. グリッドの行数・列数は指定できる？","\nA. はい。例えば 4 枚を 2×2 のグリッドに配置できます。",[24,1349,217],{"id":217},[28,1351,1352,1357,1362],{},[31,1353,1354,1356],{},[18,1355,690],{"href":689}," — 結合前にサイズを揃える",[31,1358,1359,1361],{},[18,1360,683],{"href":682}," — 結合後の巨大ファイルを軽くする",[31,1363,1364,1366],{},[18,1365,704],{"href":703}," — 結合の代わりに PDF 1 枚にまとめる選択肢も",{"title":249,"searchDepth":250,"depth":250,"links":1368},[1369,1370,1371,1372,1373,1374,1375],{"id":1185,"depth":250,"text":1185},{"id":71,"depth":250,"text":71},{"id":156,"depth":250,"text":156},{"id":1254,"depth":250,"text":1255},{"id":418,"depth":250,"text":418},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の画像結合ツールは、複数の画像をサーバーに送らずブラウザ内で縦\u002F横に連結します。比較画像・ビフォーアフター・スマホのスクリーンショット集約に。Zerosend 編集部が解説。",{},"\u002Fblog\u002Fimage-merge-intro",{"title":1171,"description":1376},"image-merge-intro","blog\u002Fimage-merge-intro",[723,1383,278],"結合","BdOzeJZQnsoFfwi5pz3V87puNcR5EgH2JaJgn9GjCok",{"id":1386,"title":1387,"author":7,"body":1388,"category":262,"coverImage":263,"description":1575,"draft":265,"extension":266,"locale":267,"meta":1576,"navigation":269,"noindex":265,"path":1577,"publishedAt":271,"seo":1578,"slug":1579,"stem":1580,"tags":1581,"updatedAt":271,"__hash__":1583},"blog\u002Fblog\u002Fimage-resize-intro.md","画像リサイズをブラウザ内で — \u002Ftools\u002Fimage-resize の思想と使い方",{"type":9,"value":1389,"toc":1565},[1390,1393,1399,1402,1408,1415,1417,1436,1439,1477,1479,1485,1510,1513,1516,1519,1521,1527,1533,1539,1545,1547],[12,1391,1392],{},"SNS に投稿したい、社内 Wiki に貼りたい、EC サイトの商品画像に使いたい、メールに添付したい。用途ごとに必要な画像サイズは違います。スマホで撮った 4000×3000 ピクセルの写真をそのままアップすると、受け側サーバーで勝手に縮小されたり、表示が重くなったりします。",[12,1394,1395,1398],{},[18,1396,1397],{"href":689},"Zerosend の画像リサイズツール"," は、この「用途に合う寸法に先に揃えておきたい」需要をブラウザ内で完結させます。",[24,1400,1401],{"id":1401},"なぜブラウザ内でリサイズするのか",[12,1403,1404,1405,1011],{},"画像は、送信前に必要な解像度まで落としておくのが基本です。受け側サーバーの自動縮小に任せると、圧縮アルゴリズムを自分で選べず、結果も見えません。何より、",[34,1406,1407],{},"元の高解像度がサーバー側に残ります",[12,1409,1410,1411,1414],{},"顔写真、社員証、内装写真、診断書のスキャン。個人情報が含まれる画像を、ブラウザの「縮小してアップロード」機能付きサービスに投げることは、結果的に",[34,1412,1413],{},"原寸画像をそのままアップロードしている","のと同じです。Zerosend では、リサイズ処理そのものをあなたの端末で行うことで、アップロードする画像が本当に縮小済みであることを保証します。",[24,1416,71],{"id":71},[73,1418,1419,1425,1428,1431,1434],{},[31,1420,1421,82],{},[18,1422,1423],{"href":689},[80,1424,689],{},[31,1426,1427],{},"画像をドラッグ&ドロップ (複数ファイル対応)",[31,1429,1430],{},"目標サイズを指定 — 「幅」「高さ」「長辺」「短辺」のいずれかを固定",[31,1432,1433],{},"「リサイズを開始する」をクリック",[31,1435,808],{},[125,1437,1438],{"id":1438},"用途別の推奨サイズ",[28,1440,1441,1447,1453,1459,1465,1471],{},[31,1442,1443,1446],{},[34,1444,1445],{},"X \u002F Twitter",": 長辺 1600px",[31,1448,1449,1452],{},[34,1450,1451],{},"Instagram",": 正方形 1080px",[31,1454,1455,1458],{},[34,1456,1457],{},"LinkedIn \u002F Facebook",": 長辺 1200px",[31,1460,1461,1464],{},[34,1462,1463],{},"ブログ本文",": 幅 800〜1200px",[31,1466,1467,1470],{},[34,1468,1469],{},"メールの添付",": 長辺 1024px 程度 (画質維持しつつ 500KB 以下に収まりやすい)",[31,1472,1473,1476],{},[34,1474,1475],{},"ECサイトのサムネ",": 幅 400〜600px",[24,1478,156],{"id":156},[12,1480,1481,1482,1484],{},"画像リサイズは、Canvas API の ",[80,1483,1068],{}," を使ったブラウザ標準のバイキュービック補間で行っています。外部ライブラリの呼び出しも、サーバーへの問い合わせもありません。",[28,1486,1487,1493,1499,1505],{},[31,1488,1489,1490,1492],{},"画像を ",[80,1491,860],{}," 要素として読み込む",[31,1494,1495,1496,1498],{},"目標サイズの ",[80,1497,867],{}," を作成",[31,1500,1501,1504],{},[80,1502,1503],{},"ctx.drawImage(img, 0, 0, targetW, targetH)"," で描画",[31,1506,1507,1509],{},[80,1508,1247],{}," で出力形式 (JPEG \u002F PNG \u002F WebP) を指定して Blob に",[12,1511,1512],{},"一括処理は Promise.all ではなく順次実行しているため、数十枚でもメモリを圧迫しません。",[24,1514,1515],{"id":1515},"縦横比の維持について",[12,1517,1518],{},"リサイズで気をつけるべき最大のポイントは「アスペクト比の崩れ」です。幅だけを変えて高さはそのままにすると、人物が横に伸びたり商品が歪んだりします。本ツールでは既定で縦横比を維持するため、「幅を指定する」だけで高さは自動計算されます。強制的にトリミングするモードも選べるので、SNS の正方形サムネイルを作る際にも対応できます。",[24,1520,190],{"id":190},[12,1522,1523,1526],{},[34,1524,1525],{},"Q. 縦横比は保持されますか？","\nA. 既定で保持されます。「幅を合わせる」を選べば高さは自動で計算されます。",[12,1528,1529,1532],{},[34,1530,1531],{},"Q. EXIF (撮影情報) は？","\nA. リサイズ時に落ちます。プライバシー保護の観点ではむしろ利点です。",[12,1534,1535,1538],{},[34,1536,1537],{},"Q. 拡大もできますか？","\nA. できますが推奨しません。拡大は情報を増やせないため、AI 超解像を使わない限り画質は改善しません。",[12,1540,1541,1544],{},[34,1542,1543],{},"Q. 複数ファイルを一括処理できますか？","\nA. はい。ドラッグ&ドロップで複数ファイルを投入すると、同じ設定で一括リサイズして ZIP でまとめてダウンロードできます。",[24,1546,217],{"id":217},[28,1548,1549,1554,1559],{},[31,1550,1551,1553],{},[18,1552,683],{"href":682}," — リサイズ後にさらに軽くしたいときに",[31,1555,1556,1558],{},[18,1557,697],{"href":696}," — WebP \u002F JPEG \u002F PNG の変換",[31,1560,1561,1564],{},[18,1562,1563],{"href":956},"画像編集"," — 切り抜き・回転・反転",{"title":249,"searchDepth":250,"depth":250,"links":1566},[1567,1568,1571,1572,1573,1574],{"id":1401,"depth":250,"text":1401},{"id":71,"depth":250,"text":71,"children":1569},[1570],{"id":1438,"depth":258,"text":1438},{"id":156,"depth":250,"text":156},{"id":1515,"depth":250,"text":1515},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の画像リサイズツールは、画像をサーバーに送らず端末内で寸法変更します。用途別の推奨サイズ、一括処理、品質を落とさないリサイズのコツを Zerosend 編集部が解説。",{},"\u002Fblog\u002Fimage-resize-intro",{"title":1387,"description":1575},"image-resize-intro","blog\u002Fimage-resize-intro",[723,1582,278],"リサイズ","_Uhop01N2UVvIiAaq5jlsmlRm_wNoZwYVJzFkekar6Y",{"id":1585,"title":1586,"author":7,"body":1587,"category":262,"coverImage":263,"description":1781,"draft":265,"extension":266,"locale":267,"meta":1782,"navigation":269,"noindex":265,"path":1783,"publishedAt":271,"seo":1784,"slug":1785,"stem":1786,"tags":1787,"updatedAt":271,"__hash__":1789},"blog\u002Fblog\u002Fimage-to-pdf-intro.md","画像を 1 つの PDF にまとめる — \u002Ftools\u002Fimage-to-pdf の思想と使い方",{"type":9,"value":1588,"toc":1773},[1589,1592,1597,1599,1625,1628,1630,1637,1644,1646,1669,1671,1677,1708,1711,1713,1719,1728,1734,1743,1745],[12,1590,1591],{},"スマホで撮ったレシート 10 枚を経費精算で PDF にまとめる、スキャンした書類 15 枚を 1 つの PDF にまとめて申請する、商品写真を PDF カタログにする。「画像 → PDF」の変換は、個人から業務まで頻繁に発生する作業です。",[12,1593,1594,22],{},[18,1595,1596],{"href":703},"Zerosend の画像 → PDF 変換ツール",[24,1598,26],{"id":26},[28,1600,1601,1607,1613,1619],{},[31,1602,1603,1606],{},[34,1604,1605],{},"写真をポートフォリオ PDF に",": デザイナーや写真家が作品画像を選択して 1 ファイルにまとめ、クライアントへの提案や審査用に配布する",[31,1608,1609,1612],{},[34,1610,1611],{},"スキャン画像を 1 ファイルに集約",": 複数ページにわたる契約書・申請書をスキャンした画像を 1 つの PDF にまとめて提出する",[31,1614,1615,1618],{},[34,1616,1617],{},"レシート・領収書の経費精算",": スマホで撮影したレシートをまとめて月次経費書類として提出する",[31,1620,1621,1624],{},[34,1622,1623],{},"複数画像を順番管理して配布",": ドラッグ&ドロップで並び順を調整しながら、説明資料やマニュアルを PDF にまとめる",[12,1626,1627],{},"複数の画像ファイルを 1 回の操作で 1 つの PDF に変換できるため、枚数が多いほど手作業との差が際立ちます。",[24,1629,58],{"id":58},[12,1631,1632,1633,1636],{},"画像 → PDF 変換の入力は、写真・スキャン・スクリーンショットです。つまり",[34,1634,1635],{},"画像 1 枚ずつが個別の機密情報","を持ちます。レシートなら店名・金額・日時・クレカ下 4 桁、スキャン書類なら本文全体、スクショなら画面に写っているすべて。",[12,1638,1639,1640,1643],{},"それらをまとめてオンライン PDF 化サービスに投げるのは、",[34,1641,1642],{},"機密情報セットをまとめて外に出す","ことに他なりません。Zerosend ではローカルで PDF 組み立てまで行うため、アップロードは発生しません。",[24,1645,71],{"id":71},[73,1647,1648,1654,1657,1660,1663,1666],{},[31,1649,1650,82],{},[18,1651,1652],{"href":703},[80,1653,703],{},[31,1655,1656],{},"画像を複数枚ドラッグ&ドロップ (JPEG \u002F PNG \u002F WebP)",[31,1658,1659],{},"ページサイズ (A4 \u002F レター \u002F 画像原寸) と向きを選ぶ",[31,1661,1662],{},"並び順をドラッグで調整",[31,1664,1665],{},"「PDF 化を開始する」をクリック",[31,1667,1668],{},"1 つの PDF ファイルとしてダウンロード",[24,1670,156],{"id":156},[12,1672,1673,1676],{},[80,1674,1675],{},"pdf-lib"," を使って PDF を組み立てています。",[28,1678,1679,1682,1688,1699,1702],{},[31,1680,1681],{},"各画像を ArrayBuffer で読み込み",[31,1683,1684,1687],{},[80,1685,1686],{},"PDFDocument.create()"," で新規ドキュメントを作成",[31,1689,1690,1691,1694,1695,1698],{},"ページごとに ",[80,1692,1693],{},"pdfDoc.embedJpg()"," または ",[80,1696,1697],{},"embedPng()"," で画像を埋め込み",[31,1700,1701],{},"ページサイズに合わせて自動で縮小・センタリング",[31,1703,1704,1707],{},[80,1705,1706],{},".save()"," で最終的な PDF バイト列に",[12,1709,1710],{},"画像のサイズ指定は縦横比を保持したまま、指定ページサイズに収まるよう計算されます。",[24,1712,190],{"id":190},[12,1714,1715,1718],{},[34,1716,1717],{},"Q. 画像の順序は変えられますか？","\nA. はい。追加した順に並びますが、ドラッグで並べ替えできます。",[12,1720,1721,1724,1725,1727],{},[34,1722,1723],{},"Q. 画像の向き (縦\u002F横) を個別に変えられますか？","\nA. ページ単位の向きは全体で統一されます。個別に回転したい場合は ",[18,1726,1563],{"href":956}," で先に回転してから PDF 化してください。",[12,1729,1730,1733],{},[34,1731,1732],{},"Q. OCR (文字認識) はかかる？","\nA. かかりません。画像はそのまま PDF に埋め込まれます。検索可能 PDF にしたい場合は別途 OCR ツールを通してください (プライバシー観点では、OCR もローカルで完結するツールを選ぶべきです)。",[12,1735,1736,1739,1740,1742],{},[34,1737,1738],{},"Q. 圧縮は？","\nA. 元画像がそのまま埋め込まれるため、PDF が大きくなりがちです。事前に ",[18,1741,683],{"href":682}," してから投入すると、最終 PDF が軽くなります。",[24,1744,217],{"id":217},[28,1746,1747,1752,1759,1766],{},[31,1748,1749,1751],{},[18,1750,683],{"href":682}," — PDF 化前に画像を軽くする",[31,1753,1754,1758],{},[18,1755,1757],{"href":1756},"\u002Ftools\u002Fpdf-compress","PDF 圧縮"," — 生成した PDF をさらに軽くする",[31,1760,1761,1765],{},[18,1762,1764],{"href":1763},"\u002Ftools\u002Fpdf-merge","PDF 結合"," — 既存 PDF と結合する",[31,1767,1768,1772],{},[18,1769,1771],{"href":1770},"\u002Ftools\u002Fpdf-to-image","PDF → 画像"," — 逆変換",{"title":249,"searchDepth":250,"depth":250,"links":1774},[1775,1776,1777,1778,1779,1780],{"id":26,"depth":250,"text":26},{"id":58,"depth":250,"text":58},{"id":71,"depth":250,"text":71},{"id":156,"depth":250,"text":156},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の画像 → PDF 変換ツールは、複数画像をサーバーに送らず 1 つの PDF にまとめます。スキャン画像の PDF 化・レシートまとめ・申請書類の体裁整え。Zerosend 編集部が解説。",{},"\u002Fblog\u002Fimage-to-pdf-intro",{"title":1586,"description":1781},"image-to-pdf-intro","blog\u002Fimage-to-pdf-intro",[1788,723,277,278],"PDF","W4LB1AnTY2syLdRrdjvKSLPfsnRiA8kspm8q42K-X9g",{"id":1791,"title":1792,"author":7,"body":1793,"category":262,"coverImage":263,"description":1929,"draft":265,"extension":266,"locale":267,"meta":1930,"navigation":269,"noindex":265,"path":1931,"publishedAt":271,"seo":1932,"slug":1933,"stem":1934,"tags":1935,"updatedAt":271,"__hash__":1937},"blog\u002Fblog\u002Fpdf-compress-intro.md","PDF を圧縮する — \u002Ftools\u002Fpdf-compress の思想と使い方",{"type":9,"value":1794,"toc":1922},[1795,1798,1803,1806,1813,1816,1818,1838,1841,1845,1848,1868,1875,1877,1883,1889,1895,1901,1903],[12,1796,1797],{},"メールで PDF を送ろうとしたら「ファイルサイズが大きすぎます」と弾かれた、Slack の無料枠を食い潰す、見積書 PDF が 30MB あって顧客にストレスを与えている。PDF のサイズ圧縮は、業務の摩擦を減らすのに効く小さな改善です。",[12,1799,1800,22],{},[18,1801,1802],{"href":1756},"Zerosend の PDF 圧縮ツール",[24,1804,1805],{"id":1805},"なぜブラウザ内で圧縮するのか",[12,1807,1808,1809,1812],{},"PDF 圧縮サービスの大半はアップロード型です。つまり",[34,1810,1811],{},"契約書・見積書・健康診断・給与明細を他社サーバーに預ける","ことになります。「削除します」と書かれていても、その履行をユーザーが確認する術はありません。",[12,1814,1815],{},"Zerosend は圧縮処理をローカルで行うため、機密性の高い PDF をそのまま投入できます。DevTools で本当にアップロードされていないことを確認してから使ってください。",[24,1817,71],{"id":71},[73,1819,1820,1826,1829,1832,1835],{},[31,1821,1822,82],{},[18,1823,1824],{"href":1756},[80,1825,1756],{},[31,1827,1828],{},"PDF をドラッグ&ドロップ",[31,1830,1831],{},"画質レベルを選択 (高品質 \u002F 標準 \u002F 低品質)",[31,1833,1834],{},"「圧縮を開始する」をクリック",[31,1836,1837],{},"軽量化された PDF をダウンロード",[12,1839,1840],{},"スキャン由来の画像 PDF に特に効果があります。ベクタ主体のテキスト PDF はもともと軽いので削減率は控えめです。",[24,1842,1844],{"id":1843},"仕組み-ラスタライズによる再構築","仕組み — ラスタライズによる再構築",[12,1846,1847],{},"Zerosend の PDF 圧縮は、ページを一度画像化して再構築する方式です。",[28,1849,1850,1857,1860,1865],{},[31,1851,1852,1853,1856],{},"元 PDF を ",[80,1854,1855],{},"pdfjs-dist"," で各ページをキャンバスに描画",[31,1858,1859],{},"描画結果を指定品質で JPEG にエンコード",[31,1861,1862,1864],{},[80,1863,1675],{}," で新しい PDF を組み立て、JPEG ページを埋め込み",[31,1866,1867],{},"元 PDF の metadata (タイトル・作成者など) は引き継ぐ",[12,1869,1870,1871,1874],{},"このアプローチの強みはサイズ削減率の高さ、弱みは",[34,1872,1873],{},"ベクタ情報が失われること"," (テキスト選択・検索不可になる) です。テキスト検索性を維持したい場合は、元 PDF のまま送るか、軽量化の必要性を再検討してください。",[24,1876,190],{"id":190},[12,1878,1879,1882],{},[34,1880,1881],{},"Q. 削減率はどのくらい？","\nA. 画像主体のスキャン PDF なら 50〜80% 減ることもあります。テキスト主体の PDF は 10〜30% 程度です。",[12,1884,1885,1888],{},[34,1886,1887],{},"Q. 圧縮後にテキスト検索できなくなった","\nA. ラスタライズ方式の副作用です。「標準」設定では解像度を維持するため読みやすさは保ちますが、テキストとしては検索できません。",[12,1890,1891,1894],{},[34,1892,1893],{},"Q. OCR は含まれますか？","\nA. 非対応です。圧縮後の PDF を検索可能にしたい場合は、別途 OCR ツールが必要です。",[12,1896,1897,1900],{},[34,1898,1899],{},"Q. 元の PDF が暗号化されている場合は？","\nA. パスワード保護された PDF は処理できません。先にロック解除が必要です。",[24,1902,217],{"id":217},[28,1904,1905,1910,1917],{},[31,1906,1907,1909],{},[18,1908,1764],{"href":1763}," — 圧縮前に結合しておく",[31,1911,1912,1916],{},[18,1913,1915],{"href":1914},"\u002Ftools\u002Fpdf-split","PDF 分割"," — 必要なページだけ抽出すれば圧縮も不要なことが多い",[31,1918,1919,1921],{},[18,1920,683],{"href":682}," — スキャン前の個別画像を軽くしておく選択肢",{"title":249,"searchDepth":250,"depth":250,"links":1923},[1924,1925,1926,1927,1928],{"id":1805,"depth":250,"text":1805},{"id":71,"depth":250,"text":71},{"id":1843,"depth":250,"text":1844},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の PDF 圧縮ツールは、PDF をサーバーに送らずブラウザ内でページをラスタライズして再構築し、サイズを削減します。メール添付上限に引っかかる PDF を軽くしたいときに。",{},"\u002Fblog\u002Fpdf-compress-intro",{"title":1792,"description":1929},"pdf-compress-intro","blog\u002Fpdf-compress-intro",[1788,1936,278],"圧縮","VvJ1WqvmAb_Nlcrf3hFnpj4_JU9LgW9Mc6y4cTGier0",{"id":1939,"title":1940,"author":7,"body":1941,"category":262,"coverImage":263,"description":2160,"draft":265,"extension":266,"locale":267,"meta":2161,"navigation":269,"noindex":265,"path":2162,"publishedAt":271,"seo":2163,"slug":2164,"stem":2165,"tags":2166,"updatedAt":271,"__hash__":2167},"blog\u002Fblog\u002Fpdf-edit-intro.md","PDF のページを並べ替え・削除・回転 — \u002Ftools\u002Fpdf-edit の思想と使い方",{"type":9,"value":1942,"toc":2151},[1943,1946,1953,1955,1993,1995,2001,2004,2006,2044,2048,2054,2060,2062,2091,2100,2102,2108,2114,2120,2126,2132,2134],[12,1944,1945],{},"スキャンしたら逆向きになっていた、最終ページが白紙だから削除したい、契約書の章を入れ替えたい。PDF 編集の 9 割は「ページの並べ替え・削除・回転」で済みます。",[12,1947,1948,1952],{},[18,1949,1951],{"href":1950},"\u002Ftools\u002Fpdf-edit","Zerosend の PDF ページ編集ツール"," は、この基本 3 操作をブラウザ内で完結させます。",[24,1954,295],{"id":295},[28,1956,1957,1963,1969,1975,1981,1987],{},[31,1958,1959,1962],{},[34,1960,1961],{},"スキャン結果の向き修正",": スキャナが横向きで読み込んだページを 90° 回転して正しい向きに",[31,1964,1965,1968],{},[34,1966,1967],{},"白紙ページの削除",": スキャン時に混入した白紙ページや意図しない空白ページをまとめて削除",[31,1970,1971,1974],{},[34,1972,1973],{},"報告書の章順修正",": 後から追加した付録を適切な位置に移動。ドラッグ操作でページを並べ直す",[31,1976,1977,1980],{},[34,1978,1979],{},"配布用 PDF の整形",": 社内向けの全ページを含む PDF から、共有しても問題ないページだけを残す",[31,1982,1983,1986],{},[34,1984,1985],{},"製本・印刷準備",": 両面印刷や製本に合わせてページ順を並べ替える",[31,1988,1989,1992],{},[34,1990,1991],{},"プレゼン資料の調整",": 不要なスライドを削除して提出用スリム版を作成",[24,1994,1001],{"id":1001},[12,1996,1997,1998,1011],{},"PDF 編集の対象は、ほぼ例外なく機密文書です。業務委託契約、秘密保持契約、顧客カルテ、社内規程、給与明細。これらを「ページを入れ替えるだけ」のオンラインサービスに預けると、",[34,1999,2000],{},"元の全ページが相手のサーバーに渡ります",[12,2002,2003],{},"「処理後にすぐ削除」と書かれていても、保存の痕跡や解析ログをユーザーが検証する手段はありません。Zerosend ではページ編集もローカル処理のため、この透明性の問題を構造的に回避できます。",[24,2005,71],{"id":71},[73,2007,2008,2014,2016,2019,2041],{},[31,2009,2010,82],{},[18,2011,2012],{"href":1950},[80,2013,1950],{},[31,2015,1828],{},[31,2017,2018],{},"ページサムネイル一覧が表示される",[31,2020,2021,2022],{},"操作:\n",[28,2023,2024,2030,2036],{},[31,2025,2026,2029],{},[34,2027,2028],{},"並べ替え",": ドラッグでページを入れ替え",[31,2031,2032,2035],{},[34,2033,2034],{},"削除",": 不要なページのゴミ箱アイコンをクリック",[31,2037,2038,2040],{},[34,2039,1043],{},": 各ページの回転アイコンで 90° 単位回転",[31,2042,2043],{},"「編集を完了する」をクリックして新しい PDF を出力",[24,2045,2047],{"id":2046},"pdf-lib-によるブラウザ内-pdf-処理","pdf-lib によるブラウザ内 PDF 処理",[12,2049,2050,2051,2053],{},"Zerosend の PDF ページ編集は ",[34,2052,1675],{}," というオープンソースライブラリで実装しています。pdf-lib はブラウザ上で PDF の読み込み・書き出しができる純粋な JavaScript ライブラリで、サーバーサイドの処理は一切不要です。",[12,2055,2056,2057,2059],{},"サムネイル表示には ",[34,2058,1855],{}," (PDF.js) を使い、各ページを Canvas に描画。並べ替え・削除・回転の操作を UI 上で決めてから、最後に pdf-lib で新しい PDF として書き出します。契約書や機密文書も、データが端末から出ることなく安全に編集できます。",[24,2061,156],{"id":156},[28,2063,2064,2070,2073,2079,2086],{},[31,2065,2066,2067,2069],{},"PDF を ",[80,2068,1855],{}," でレンダリングしてサムネイル一覧を表示",[31,2071,2072],{},"ページの並び・削除・回転情報を UI 上で管理",[31,2074,2075,2076,2078],{},"「完了」操作時に ",[80,2077,1675],{}," を呼び出し、元 PDF から必要なページを順にコピー",[31,2080,2081,2082,2085],{},"回転は ",[80,2083,2084],{},"page.setRotation()"," で書き込み",[31,2087,2088,2089],{},"最終 PDF として ",[80,2090,1706],{},[12,2092,2093,2094,2096,2097,2099],{},"サムネ描画 (",[80,2095,1855],{},") と PDF 組み立て (",[80,2098,1675],{},") の 2 ライブラリで役割分担しています。",[24,2101,190],{"id":190},[12,2103,2104,2107],{},[34,2105,2106],{},"Q. テキストの編集はできますか？","\nA. 本ツールはページ単位の操作 (並べ替え・削除・回転) に特化しています。文章の書き換えや署名追加、注釈入力には対応していません。",[12,2109,2110,2113],{},[34,2111,2112],{},"Q. パスワード付き PDF は使えますか？","\nA. パスワードで保護された PDF の編集には対応していません。事前にパスワードを解除してください。",[12,2115,2116,2119],{},[34,2117,2118],{},"Q. 編集履歴は残りますか？","\nA. 新しい PDF として書き出すため、元ファイルは変更されません。必要なら元ファイルを別途保存しておいてください。",[12,2121,2122,2125],{},[34,2123,2124],{},"Q. ページを複製 (同じページを 2 回入れる) できますか？","\nA. 現状は非対応です。需要があれば追加します。",[12,2127,2128,2131],{},[34,2129,2130],{},"Q. 回転の粒度は？","\nA. 90° 単位のみです。PDF の仕様上、自由角度回転は本来のページ情報を損ねる可能性があるため非対応です。",[24,2133,217],{"id":217},[28,2135,2136,2141,2146],{},[31,2137,2138,2140],{},[18,2139,1915],{"href":1914}," — 編集ではなく切り分けたいとき",[31,2142,2143,2145],{},[18,2144,1764],{"href":1763}," — 複数 PDF を結合",[31,2147,2148,2150],{},[18,2149,1757],{"href":1756}," — 編集後のサイズ削減",{"title":249,"searchDepth":250,"depth":250,"links":2152},[2153,2154,2155,2156,2157,2158,2159],{"id":295,"depth":250,"text":295},{"id":1001,"depth":250,"text":1001},{"id":71,"depth":250,"text":71},{"id":2046,"depth":250,"text":2047},{"id":156,"depth":250,"text":156},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の PDF ページ編集ツールは、PDF のページ順序変更・削除・回転をサーバーに送らず端末内で行います。スキャン時の向きミス修正や不要ページ削除に。Zerosend 編集部が解説。",{},"\u002Fblog\u002Fpdf-edit-intro",{"title":1940,"description":2160},"pdf-edit-intro","blog\u002Fpdf-edit-intro",[1788,1167,278],"Yze0vH4wa57jdSYGGpMOWoCe3g9kWI080CC7vD4rqMI",{"id":2169,"title":2170,"author":7,"body":2171,"category":262,"coverImage":263,"description":2351,"draft":265,"extension":266,"locale":267,"meta":2352,"navigation":269,"noindex":265,"path":2353,"publishedAt":271,"seo":2354,"slug":2355,"stem":2356,"tags":2357,"updatedAt":271,"__hash__":2359},"blog\u002Fblog\u002Fpdf-split-intro.md","PDF を分割する — \u002Ftools\u002Fpdf-split の思想と使い方",{"type":9,"value":2172,"toc":2343},[2173,2176,2181,2185,2191,2194,2197,2199,2236,2240,2246,2248,2253,2281,2284,2286,2292,2298,2304,2310,2323,2325],[12,2174,2175],{},"契約書の 2〜5 ページだけ取引先に送りたい、100 ページの報告書を章ごとに分けて関係者に配りたい、スキャン時に 1 ファイルにまとめてしまった複数書類を切り分けたい。PDF の分割は業務で頻繁に発生するにもかかわらず、一般的なツールが少ない作業です。",[12,2177,2178,22],{},[18,2179,2180],{"href":1914},"Zerosend の PDF 分割ツール",[24,2182,2184],{"id":2183},"なぜブラウザ内で-pdf-を分割するのか","なぜブラウザ内で PDF を分割するのか",[12,2186,2187,2188,1011],{},"PDF の中身は、契約書・見積書・健康診断結果・給与明細・設計資料など、ほぼすべてが機密性を持ちます。これを「PDF 分割できるオンラインサービス」にアップロードすると、",[34,2189,2190],{},"元の全ページが一旦そのサービスのサーバーに渡ります",[12,2192,2193],{},"ユーザー側が「2〜5 ページだけ必要」と思っていても、サービス側は全ページにアクセスできます。無料で提供されている以上、何らかの対価 (ログ・解析・AI 学習素材) としてファイルが使われている可能性は否定できません。",[12,2195,2196],{},"Zerosend は分割処理そのものがローカルで動くため、この構造的な問題を回避できます。",[24,2198,71],{"id":71},[73,2200,2201,2207,2210,2231,2234],{},[31,2202,2203,82],{},[18,2204,2205],{"href":1914},[80,2206,1914],{},[31,2208,2209],{},"PDF ファイルをドラッグ&ドロップ",[31,2211,2212,2213],{},"分割方法を選ぶ:\n",[28,2214,2215,2221],{},[31,2216,2217,2220],{},[34,2218,2219],{},"全ページを 1 ページずつ分割"," — 100 ページなら 100 ファイル",[31,2222,2223,2226,2227,2230],{},[34,2224,2225],{},"範囲指定"," — 例: ",[80,2228,2229],{},"1-3, 5, 7-10"," で複数範囲を抽出",[31,2232,2233],{},"「分割を開始する」をクリック",[31,2235,94],{},[24,2237,2239],{"id":2238},"pdf-lib-によるブラウザ内処理","pdf-lib によるブラウザ内処理",[12,2241,2242,2243,2245],{},"本ツールは ",[34,2244,1675],{}," というブラウザで完全動作する PDF 編集ライブラリを使っています。pdf-lib はサーバーへの問い合わせなしに PDF の読み込み・生成・ページ操作を行える純粋な JavaScript ライブラリです。元の PDF ファイルは変更されず、指定したページのみを新しい PDF として書き出します。",[24,2247,156],{"id":156},[12,2249,2250,2252],{},[80,2251,1675],{}," というブラウザで動く PDF 編集ライブラリを使っています。",[28,2254,2255,2258,2264,2270,2276],{},[31,2256,2257],{},"入力 PDF を ArrayBuffer として読み込み",[31,2259,2260,2263],{},[80,2261,2262],{},"PDFDocument.load()"," で解析",[31,2265,2266,2267,1498],{},"範囲指定に応じた新しい ",[80,2268,2269],{},"PDFDocument",[31,2271,2272,2275],{},[80,2273,2274],{},"copyPages()"," で必要なページだけコピー",[31,2277,2278,2280],{},[80,2279,1706],{}," で新しい PDF バイト列を生成",[12,2282,2283],{},"すべてメモリ上で処理し、ネットワークには一切送りません。",[24,2285,190],{"id":190},[12,2287,2288,2291],{},[34,2289,2290],{},"Q. 1 ページずつ個別のファイルに分割できますか？","\nA. できます。「全ページを 1 ページずつ分割」を選ぶと、100 ページなら 100 ファイルが生成されて ZIP でまとめてダウンロードできます。",[12,2293,2294,2297],{},[34,2295,2296],{},"Q. 元の PDF ファイルは変更されますか？","\nA. 変更されません。ブラウザのメモリ上で新しい PDF を生成するだけで、元ファイルへの書き込みは一切行いません。",[12,2299,2300,2303],{},[34,2301,2302],{},"Q. 暗号化された PDF (パスワード保護) も分割できる？","\nA. パスワードなしの PDF のみ対応。暗号化 PDF は先にロック解除が必要です。",[12,2305,2306,2309],{},[34,2307,2308],{},"Q. ページ数が非常に多い PDF (500 ページなど) は？","\nA. 処理はできますが、ブラウザのメモリ次第で時間がかかります。数百 MB 規模の PDF は端末スペック次第で詰まることがあります。",[12,2311,2312,2315,2316,171,2319,2322],{},[34,2313,2314],{},"Q. 分割後のファイル名は？","\nA. 元ファイル名に ",[80,2317,2318],{},"-p1",[80,2320,2321],{},"-p2-5"," のようなサフィックスを付けます。",[24,2324,217],{"id":217},[28,2326,2327,2332,2338],{},[31,2328,2329,2331],{},[18,2330,1764],{"href":1763}," — 分割とは逆に、複数 PDF を 1 つに",[31,2333,2334,2337],{},[18,2335,2336],{"href":1950},"PDF ページ編集"," — ページの並べ替え・削除・回転",[31,2339,2340,2342],{},[18,2341,1757],{"href":1756}," — 分割後のファイルを軽くする",{"title":249,"searchDepth":250,"depth":250,"links":2344},[2345,2346,2347,2348,2349,2350],{"id":2183,"depth":250,"text":2184},{"id":71,"depth":250,"text":71},{"id":2238,"depth":250,"text":2239},{"id":156,"depth":250,"text":156},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の PDF 分割ツールは、PDF をサーバーに送らずブラウザ内でページ単位\u002F範囲指定で分割します。機密文書の特定ページだけ共有したいときに。Zerosend 編集部が解説。",{},"\u002Fblog\u002Fpdf-split-intro",{"title":2170,"description":2351},"pdf-split-intro","blog\u002Fpdf-split-intro",[1788,2358,278],"分割","XPJKIzDxfGixIoHq5VkY0twuwi6ez2lMZK2tzEN3Q-Y",{"id":2361,"title":2362,"author":7,"body":2363,"category":262,"coverImage":263,"description":2573,"draft":265,"extension":266,"locale":267,"meta":2574,"navigation":269,"noindex":265,"path":2575,"publishedAt":271,"seo":2576,"slug":2577,"stem":2578,"tags":2579,"updatedAt":271,"__hash__":2580},"blog\u002Fblog\u002Fpdf-to-image-intro.md","PDF を画像に変換する — \u002Ftools\u002Fpdf-to-image の思想と使い方",{"type":9,"value":2364,"toc":2563},[2365,2368,2373,2376,2402,2404,2411,2414,2416,2434,2437,2457,2459,2464,2492,2495,2497,2506,2512,2518,2527,2539,2541],[12,2366,2367],{},"プレゼン資料の 1 ページだけスクリーンショット的に使いたい、PDF の一部を SNS 投稿したい、PDF を見れない環境向けに画像で送りたい。「PDF → 画像」の変換は地味に需要があります。",[12,2369,2370,22],{},[18,2371,2372],{"href":1770},"Zerosend の PDF → 画像変換ツール",[24,2374,2375],{"id":2375},"どんな場面で役立つか",[28,2377,2378,2384,2390,2396],{},[31,2379,2380,2383],{},[34,2381,2382],{},"SNS・ブログへの資料引用",": 講演スライドや報告書の特定ページを画像として切り出し、X や Instagram にそのまま投稿できます",[31,2385,2386,2389],{},[34,2387,2388],{},"サムネイル作成",": PDF ドキュメントの表紙ページを高解像度 PNG に変換し、ウェブサイトのカバー画像として使えます",[31,2391,2392,2395],{},[34,2393,2394],{},"PDF 非対応の環境に送る",": チャットツールや古い CMS が PDF に対応していなくても、画像なら貼れます",[31,2397,2398,2401],{},[34,2399,2400],{},"PDF の内容をすばやく確認・共有",": 受け取った PDF の一部だけを画像にして、コメント付きで関係者に送る用途にも便利です",[24,2403,58],{"id":58},[12,2405,2406,2407,2410],{},"PDF から画像を切り出したい場面は、社内資料・顧客提案書・設計図・契約書スナップショットなど、機密度が高いケースが多いものです。「PDF の特定ページを画像にしたいだけ」とオンラインツールに上げるときも、",[34,2408,2409],{},"アップロードされるのは PDF の全ページ","です。",[12,2412,2413],{},"Zerosend は変換処理をローカルで行うため、そもそも PDF が外に出ません。",[24,2415,71],{"id":71},[73,2417,2418,2424,2426,2429,2431],{},[31,2419,2420,82],{},[18,2421,2422],{"href":1770},[80,2423,1770],{},[31,2425,1828],{},[31,2427,2428],{},"出力形式 (PNG \u002F JPEG) と解像度を選ぶ",[31,2430,91],{},[31,2432,2433],{},"全ページの画像が ZIP で生成される",[125,2435,2436],{"id":2436},"解像度の目安",[28,2438,2439,2445,2451],{},[31,2440,2441,2444],{},[34,2442,2443],{},"72 DPI",": ウェブ掲載・SNS 投稿用。画質より軽さ優先",[31,2446,2447,2450],{},[34,2448,2449],{},"150 DPI",": 画面で読む標準品質",[31,2452,2453,2456],{},[34,2454,2455],{},"300 DPI",": 印刷品質。資料の細部が重要なとき",[24,2458,156],{"id":156},[12,2460,2461,2463],{},[80,2462,1855],{}," を使って各ページを Canvas に描画し、Canvas から画像として書き出しています。",[28,2465,2466,2469,2474,2484,2489],{},[31,2467,2468],{},"PDF を ArrayBuffer として読み込み",[31,2470,2471,2263],{},[80,2472,2473],{},"getDocument()",[31,2475,1690,2476,2479,2480,2483],{},[80,2477,2478],{},"getPage(n)"," → ",[80,2481,2482],{},"render(ctx, viewport)"," で Canvas に描画",[31,2485,2486,2488],{},[80,2487,1247],{}," で PNG \u002F JPEG 化",[31,2490,2491],{},"全ページを ZIP にまとめてダウンロード",[12,2493,2494],{},"ブラウザの描画エンジンをそのまま使うため、フォント埋め込み・ベクタ図・透過要素も正確に再現されます。",[24,2496,190],{"id":190},[12,2498,2499,2502,2503,2505],{},[34,2500,2501],{},"Q. 特定のページだけ変換できますか？","\nA. 現状は全ページが対象です。特定ページだけなら ",[18,2504,1915],{"href":1914}," で該当ページだけ抽出してから変換するのが確実です。",[12,2507,2508,2511],{},[34,2509,2510],{},"Q. 透過背景の PDF を変換するとどうなる？","\nA. PNG を選べば透過が保持されます。JPEG は透過非対応のため白背景になります。",[12,2513,2514,2517],{},[34,2515,2516],{},"Q. 画像の品質をもっと上げたい","\nA. 解像度を 300 DPI にすると大きく改善します。ファイルサイズとメモリ消費も大きくなります。",[12,2519,2520,2523,2524,2526],{},[34,2521,2522],{},"Q. 全ページを 1 枚にまとめたい","\nA. 本ツールは 1 ページ 1 ファイルです。まとめたい場合はダウンロード後 ",[18,2525,1150],{"href":1149}," で結合してください。",[12,2528,2529,2532,2533,2535,2536,2538],{},[34,2530,2531],{},"Q. PNG と JPEG どちらを選ぶべきか？","\nA. テキストや図表が多い資料は ",[34,2534,823],{}," が高品質です。写真が多いページや SNS 投稿用に軽さを優先するなら ",[34,2537,817],{}," が適しています。",[24,2540,217],{"id":217},[28,2542,2543,2548,2553,2558],{},[31,2544,2545,2547],{},[18,2546,1915],{"href":1914}," — 変換前に必要なページだけ抽出",[31,2549,2550,2552],{},[18,2551,1757],{"href":1756}," — 先に PDF を軽くしてから変換すると出力もコンパクトに",[31,2554,2555,2557],{},[18,2556,683],{"href":682}," — 変換後の画像サイズをさらに削減",[31,2559,2560,2562],{},[18,2561,1150],{"href":1149}," — 変換した複数ページを 1 枚にまとめる",{"title":249,"searchDepth":250,"depth":250,"links":2564},[2565,2566,2567,2570,2571,2572],{"id":2375,"depth":250,"text":2375},{"id":58,"depth":250,"text":58},{"id":71,"depth":250,"text":71,"children":2568},[2569],{"id":2436,"depth":258,"text":2436},{"id":156,"depth":250,"text":156},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の PDF → 画像変換ツールは、PDF の各ページをサーバーに送らずブラウザ内で PNG \u002F JPEG に書き出します。資料の一部だけ共有したいときに便利。Zerosend 編集部が解説。",{},"\u002Fblog\u002Fpdf-to-image-intro",{"title":2362,"description":2573},"pdf-to-image-intro","blog\u002Fpdf-to-image-intro",[1788,723,277,278],"71aq4s1WD6fPtxZpe1EQB5VFETOk05HeofsZ6n-nTXM",{"id":2582,"title":2583,"author":7,"body":2584,"category":262,"coverImage":263,"description":2802,"draft":265,"extension":266,"locale":267,"meta":2803,"navigation":269,"noindex":265,"path":2804,"publishedAt":271,"seo":2805,"slug":2806,"stem":2807,"tags":2808,"updatedAt":271,"__hash__":2810},"blog\u002Fblog\u002Fqr-create-intro.md","QR コードを生成する — \u002Ftools\u002Fqr-create の思想と使い方",{"type":9,"value":2585,"toc":2792},[2586,2589,2596,2598,2634,2638,2652,2656,2662,2665,2668,2670,2690,2693,2719,2721,2727,2738,2741,2743,2749,2758,2764,2766],[12,2587,2588],{},"自社サイトの URL を名刺に載せる、Wi-Fi パスワードを会議室の壁に貼る、イベントのアンケート URL をポスターに印刷する。QR コードは、URL や短いテキストを物理空間に橋渡しする便利な手段です。",[12,2590,2591,2595],{},[18,2592,2594],{"href":2593},"\u002Ftools\u002Fqr-create","Zerosend の QR コード生成ツール"," は、QR を作る作業をブラウザ内で完結させます。",[24,2597,26],{"id":26},[28,2599,2600,2606,2612,2618,2628],{},[31,2601,2602,2605],{},[34,2603,2604],{},"URL 共有",": ブログ記事やランディングページの URL を QR 化し、チラシ・ポスター・プレゼンスライドに貼り付ける",[31,2607,2608,2611],{},[34,2609,2610],{},"名刺への掲載",": 個人サイト・SNS プロフィール・連絡先 vCard を QR にして名刺の余白に印刷する",[31,2613,2614,2617],{},[34,2615,2616],{},"店舗のメニューリンク",": 飲食店やショップがデジタルメニューの URL を QR 化してテーブルに設置する。メニュー変更のたびに紙を刷り直す必要がなくなる",[31,2619,2620,2623,2624,2627],{},[34,2621,2622],{},"Wi-Fi 情報の掲示",": SSID とパスワードを ",[80,2625,2626],{},"WIFI:S:ネットワーク名;T:WPA;P:パスワード;;"," 形式で入力すると、スキャンするだけで接続できる QR が生成できる",[31,2629,2630,2633],{},[34,2631,2632],{},"社内限定 URL の共有",": 外部に見られたくない社内ポータルや β テストの URL を、外部サーバーに渡さずに QR 化できる",[24,2635,2637],{"id":2636},"png-と-svg-の使い分け","PNG と SVG の使い分け",[28,2639,2640,2646],{},[31,2641,2642,2645],{},[34,2643,2644],{},"SVG (印刷用)",": ベクタ形式なので拡大しても劣化しない。名刺・ポスター・看板など印刷物には SVG が最適",[31,2647,2648,2651],{},[34,2649,2650],{},"PNG (Web 掲載用)",": Web ページや SNS への埋め込みには PNG が扱いやすい。サイズ指定のプレビューも確認しやすい",[24,2653,2655],{"id":2654},"なぜブラウザ内で-qr-を作るのか","なぜブラウザ内で QR を作るのか",[12,2657,2658,2659,1011],{},"QR 生成サービスの多くは、入力した URL やテキストをサーバーに送って画像を返す形式です。「URL を QR にしただけ」と思いがちですが、",[34,2660,2661],{},"どの URL を誰がいつ QR にしたかという履歴がサーバーに残り得ます",[12,2663,2664],{},"社内専用 URL、β 版テスト URL、限定公開のアンケート URL などは、外部に知られたくない情報です。Wi-Fi パスワードや連絡先情報をテキストから QR 化する場合、中身がそのまま第三者のサーバーに渡ります。",[12,2666,2667],{},"Zerosend では QR 生成処理そのものがブラウザ内で完結するため、入力したテキストは一切外に出ません。",[24,2669,71],{"id":71},[73,2671,2672,2678,2681,2684,2687],{},[31,2673,2674,82],{},[18,2675,2676],{"href":2593},[80,2677,2593],{},[31,2679,2680],{},"テキスト・URL を入力",[31,2682,2683],{},"出力形式 (PNG \u002F SVG)・サイズ・誤り訂正レベルを選択",[31,2685,2686],{},"「QR を生成する」をクリック",[31,2688,2689],{},"画像をダウンロード",[24,2691,2692],{"id":2692},"誤り訂正レベルの選び方",[28,2694,2695,2701,2707,2713],{},[31,2696,2697,2700],{},[34,2698,2699],{},"L (Low, 7%)",": 小さい QR にしたいとき。印刷品質が良いなら実用十分",[31,2702,2703,2706],{},[34,2704,2705],{},"M (Medium, 15%)",": 汎用・標準",[31,2708,2709,2712],{},[34,2710,2711],{},"Q (Quartile, 25%)",": 名刺・ステッカーなど汚れ・折れが予想される用途",[31,2714,2715,2718],{},[34,2716,2717],{},"H (High, 30%)",": ロゴ重ね合わせ・屋外掲示で摩耗想定",[24,2720,156],{"id":156},[12,2722,2723,2726],{},[80,2724,2725],{},"qrcode"," という広く使われているブラウザ対応ライブラリを使っています。",[28,2728,2729,2732,2735],{},[31,2730,2731],{},"入力テキストから QR マトリクスを計算",[31,2733,2734],{},"Canvas に描画 (PNG) または SVG として直接生成",[31,2736,2737],{},"モジュール数・誤り訂正レベル・色指定に応じて調整",[12,2739,2740],{},"SVG で生成すれば、拡大縮小しても劣化しないベクタ画像が得られます。印刷用途には SVG がおすすめです。",[24,2742,190],{"id":190},[12,2744,2745,2748],{},[34,2746,2747],{},"Q. QR に含められるテキスト量は？","\nA. 仕様上は最大 4296 文字 (英数字)、日本語なら 1817 文字程度まで。長くなるほど QR の密度が上がり、スキャン成功率は下がります。URL 短縮サービスの利用も検討してください (ただしサードパーティ依存が増える)。",[12,2750,2751,2754,2755,2757],{},[34,2752,2753],{},"Q. ロゴを中央に重ねたい","\nA. 本ツールでは直接対応していませんが、PNG \u002F SVG をダウンロードしたあと ",[18,2756,1563],{"href":956}," で合成できます。誤り訂正は H にしておくとスキャン成功率が上がります。",[12,2759,2760,2763],{},[34,2761,2762],{},"Q. 作った QR の履歴は残りますか？","\nA. 残りません。タブを閉じた時点ですべて消えます。",[24,2765,217],{"id":217},[28,2767,2768,2775,2780,2785],{},[31,2769,2770,2774],{},[18,2771,2773],{"href":2772},"\u002Ftools\u002Fqr-read","QR コード読み取り"," — 生成した QR の検証・他人の QR の中身確認",[31,2776,2777,2779],{},[18,2778,1563],{"href":956}," — QR にロゴを重ねる合成に",[31,2781,2782,2784],{},[18,2783,704],{"href":703}," — 複数 QR を 1 枚にまとめて印刷",[31,2786,2787,2791],{},[18,2788,2790],{"href":2789},"\u002Ftools\u002Ffavicon-generator","ファビコン生成"," — Web サイト向けアイコン素材もブラウザ内で作成",{"title":249,"searchDepth":250,"depth":250,"links":2793},[2794,2795,2796,2797,2798,2799,2800,2801],{"id":26,"depth":250,"text":26},{"id":2636,"depth":250,"text":2637},{"id":2654,"depth":250,"text":2655},{"id":71,"depth":250,"text":71},{"id":2692,"depth":250,"text":2692},{"id":156,"depth":250,"text":156},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の QR コード生成ツールは、URL やテキストをサーバーに送らずブラウザ内で QR 画像 (PNG \u002F SVG) に変換します。名刺・ポスター・プレゼン用の QR 作成に。Zerosend 編集部が解説。",{},"\u002Fblog\u002Fqr-create-intro",{"title":2583,"description":2802},"qr-create-intro","blog\u002Fqr-create-intro",[2809,278],"QR","6JpZtRhu832AQp3h_uxIPs5vVv-mxaDe0ZRJBFamLnM",{"id":2812,"title":2813,"author":7,"body":2814,"category":262,"coverImage":263,"description":3037,"draft":265,"extension":266,"locale":267,"meta":3038,"navigation":269,"noindex":265,"path":3039,"publishedAt":271,"seo":3040,"slug":3041,"stem":3042,"tags":3043,"updatedAt":271,"__hash__":3045},"blog\u002Fblog\u002Fqr-read-intro.md","QR コードを読み取る — \u002Ftools\u002Fqr-read の思想と使い方",{"type":9,"value":2815,"toc":3028},[2816,2819,2825,2827,2856,2860,2867,2870,2884,2887,2889,2910,2912,2918,2936,2939,2942,2945,2963,2966,2968,2978,2984,2990,2999,3008,3010],[12,2817,2818],{},"怪しい広告に貼られていた QR、送られてきたチラシの QR、カメラで読むにはスマホを近づける距離が取りづらい QR。「画像として手元にある QR を PC でサッと中身だけ確認したい」という場面は意外と多いものです。",[12,2820,2821,2824],{},[18,2822,2823],{"href":2772},"Zerosend の QR 読み取りツール"," は、この用途のためにあります。フィッシングやスキャン型詐欺への自衛にも使えます。",[24,2826,2375],{"id":2375},[28,2828,2829,2835,2841,2847],{},[31,2830,2831,2834],{},[34,2832,2833],{},"印刷物の URL を PC でそのまま開きたい",": チラシやポスターの QR を撮影 → 画像をドロップ → URL をコピー、という流れでスマホを使わずに遷移できます",[31,2836,2837,2840],{},[34,2838,2839],{},"受け取った QR の内容を先に確認したい",": メールや SNS で届いた QR をスキャンする前に、リンク先が安全かテキストで確認できます",[31,2842,2843,2846],{},[34,2844,2845],{},"スクリーンショットに含まれる QR を読みたい",": 画面録画や資料の中に小さく写っている QR も、画像をそのまま貼り付けるだけで読み取れます",[31,2848,2849,1083,2852,2855],{},[34,2850,2851],{},"QR コード生成後の検証",[18,2853,2854],{"href":2593},"QR コード生成ツール"," で作った QR が正しい内容を埋め込んでいるか、すぐ確認できます",[24,2857,2859],{"id":2858},"なぜブラウザ内で-qr-を読み取るのか","なぜブラウザ内で QR を読み取るのか",[12,2861,2862,2863,2866],{},"QR 読み取り=「カメラで撮って自動でリンクを開く」と考えがちですが、これは",[34,2864,2865],{},"危険な挙動","です。悪意のある QR はフィッシングサイト、マルウェア配布 URL、課金トラップ、不審なアプリインストールに誘導することがあります。",[12,2868,2869],{},"Zerosend はこれに対し 2 つの方針を取ります。",[73,2871,2872,2878],{},[31,2873,2874,2877],{},[34,2875,2876],{},"画像読み取り処理をローカルで行う"," — QR 画像を第三者に渡さない",[31,2879,2880,2883],{},[34,2881,2882],{},"デコード結果を自動遷移しない"," — URL が含まれていても、まずテキストとして表示し、ユーザーが内容を確認してから手動で判断できる",[12,2885,2886],{},"これはセキュリティ設計として重要な原則で、ZerosendのCLAUDE.mdにも「外部 URL への自動遷移禁止」として明記されています。",[24,2888,71],{"id":71},[73,2890,2891,2897,2900,2907],{},[31,2892,2893,82],{},[18,2894,2895],{"href":2772},[80,2896,2772],{},[31,2898,2899],{},"QR が写っている画像をドラッグ&ドロップ",[31,2901,2902,2903,2906],{},"自動でデコードが走り、結果が",[34,2904,2905],{},"プレーンテキスト","として表示される",[31,2908,2909],{},"内容を確認し、必要なら手動でコピー・遷移",[24,2911,156],{"id":156},[12,2913,2914,2917],{},[80,2915,2916],{},"jsQR"," というブラウザ対応の純 JavaScript QR デコーダを使っています。",[28,2919,2920,2924,2930,2933],{},[31,2921,1489,2922,868],{},[80,2923,867],{},[31,2925,2926,2929],{},[80,2927,2928],{},"getImageData()"," でピクセル配列を取得",[31,2931,2932],{},"jsQR がピクセル配列から QR を検出・デコード",[31,2934,2935],{},"結果をテキストとしてそのまま表示 (HTML として解釈しない・リンク化しない)",[12,2937,2938],{},"ライブラリは WASM ではなく純 JavaScript 実装のため、初回ロードが軽いのも特徴です。",[24,2940,2941],{"id":2941},"フィッシング対策としての使い方",[12,2943,2944],{},"怪しいメール・チラシ・SMS に QR が含まれているとき:",[73,2946,2947,2950,2957,2960],{},[31,2948,2949],{},"画像をスクリーンショットや保存で取得 (スキャンしない)",[31,2951,2952,2953,2956],{},"Zerosend で読み取って",[34,2954,2955],{},"テキストとして"," URL を確認",[31,2958,2959],{},"URL 構造に違和感がないかチェック (正規サイトのサブドメイン偽装、短縮 URL 経由、意味不明なパスなど)",[31,2961,2962],{},"問題なさそうなら手動でアドレスバーに入力して遷移",[12,2964,2965],{},"カメラで直接読むと一発でブラウザが開くリスクがありますが、この手順ならテキストで一度確認できます。",[24,2967,190],{"id":190},[12,2969,2970,2973,2974,2977],{},[34,2971,2972],{},"Q. 悪意ある QR コードを読み取っても安全ですか？","\nA. 安全です。Zerosend は読み取り結果を ",[34,2975,2976],{},"テキストとして表示するだけ","で、URL を自動的に開きません。フィッシングサイトへの誘導や不正アプリのインストールは、ユーザーが自分でリンクを開かない限り起きません。設計上の安全機構です。",[12,2979,2980,2983],{},[34,2981,2982],{},"Q. バーコード (1D コード) も読み取れますか？","\nA. 現状は QR コード (2D) 専用です。バーコードには非対応です。",[12,2985,2986,2989],{},[34,2987,2988],{},"Q. 画像内に複数の QR がある場合は？","\nA. 現状は最初に検出された 1 つだけ読み取ります。",[12,2991,2992,2995,2996,2998],{},[34,2993,2994],{},"Q. 読み取れない QR","\nA. 解像度不足・反射・歪みが主な原因です。撮り直すか ",[18,2997,1563],{"href":956}," で補正を試してください。",[12,3000,3001,3004,3005,3007],{},[34,3002,3003],{},"Q. 読み取り結果がサーバーに送られていないか確認したい","\nA. DevTools の Network タブを開いてから QR 画像をドロップしてください。通信が発生しないことが確認できます。",[80,3006,2916],{}," ライブラリは純 JavaScript 実装のため、WASM の読み込みもなく初回ロードが軽いです。",[24,3009,217],{"id":217},[28,3011,3012,3018,3023],{},[31,3013,3014,3017],{},[18,3015,3016],{"href":2593},"QR コード生成"," — 作った QR の検証にも使える",[31,3019,3020,3022],{},[18,3021,1563],{"href":956}," — QR 画像の切り抜き・回転で読み取り成功率向上",[31,3024,3025,3027],{},[18,3026,683],{"href":682}," — 読み取れた QR 画像を軽く保存",{"title":249,"searchDepth":250,"depth":250,"links":3029},[3030,3031,3032,3033,3034,3035,3036],{"id":2375,"depth":250,"text":2375},{"id":2858,"depth":250,"text":2859},{"id":71,"depth":250,"text":71},{"id":156,"depth":250,"text":156},{"id":2941,"depth":250,"text":2941},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の QR 読み取りツールは、画像をサーバーに送らずブラウザ内で QR の中身をテキスト抽出します。リンク先の自動遷移はせず、安全に内容を確認できます。Zerosend 編集部が解説。",{},"\u002Fblog\u002Fqr-read-intro",{"title":2813,"description":3037},"qr-read-intro","blog\u002Fqr-read-intro",[2809,278,3044],"セキュリティ","9MmmWPTfOPwejFG4M1Cr_Z6VD8XdHWqtq-FTJEUil_0",{"id":3047,"title":3048,"author":7,"body":3049,"category":262,"coverImage":263,"description":3277,"draft":265,"extension":266,"locale":267,"meta":3278,"navigation":269,"noindex":265,"path":3279,"publishedAt":271,"seo":3280,"slug":3281,"stem":3282,"tags":3283,"updatedAt":271,"__hash__":3285},"blog\u002Fblog\u002Fvideo-compress-intro.md","動画をブラウザ内で圧縮する — \u002Ftools\u002Fvideo-compress の思想と使い方",{"type":9,"value":3050,"toc":3265},[3051,3054,3064,3067,3070,3077,3088,3090,3093,3112,3115,3141,3144,3148,3151,3155,3166,3202,3205,3209,3215,3217,3223,3229,3235,3241,3243,3262],[12,3052,3053],{},"打ち合わせ動画、商品撮影、画面録画、子供の運動会。日常で動画を扱う場面は増える一方で、SNS やメッセンジャーのサイズ制限、メールの添付上限、サーバーのストレージコストという現実的な壁にぶつかります。",[12,3055,3056,3057,3063],{},"Zerosend は ",[18,3058,3059,3060,3062],{"href":245},"動画圧縮ツール (",[80,3061,245],{},")"," を、この「軽くしたいだけなのに、動画を他人のサーバーに預ける必要はない」という素朴な違和感を起点に作りました。なぜ作ったのか、どう使うのか、裏で何が起きているのかを整理します。",[24,3065,3066],{"id":3066},"なぜブラウザ内で動画を圧縮するのか",[12,3068,3069],{},"動画は個人情報そのものです。顔・声・背景・位置情報、ときには画面録画の中にパスワードや顧客名まで写り込みます。これをオンラインの圧縮サービスにアップロードするということは、その内容を一度他人のサーバーに預けることです。",[12,3071,3072,3073,3076],{},"多くのサービスは「一定時間で自動削除」を謳いますが、",[34,3074,3075],{},"その削除は利用者から検証できません","。削除完了のスクリーンショットを送ってくれるわけでもなく、ログがどこまで残るかも不透明です。未公開の企画映像や社内会議の録画を、無料ツールに放り込むことに抵抗を感じたことがある人は多いはずです。",[12,3078,3079,3080,3083,3084,3087],{},"Zerosend は逆のアプローチを取ります。",[34,3081,3082],{},"動画ファイルを最初から外に出さない","。処理はすべて、あなたがいま開いているこのブラウザ、ローカル端末の CPU と GPU の中だけで完結します。DevTools の Network タブを開いたまま圧縮を実行すれば、動画そのものがアップロードされていないことを自分の目で確認できます。信用してもらう代わりに、",[34,3085,3086],{},"検証可能にする"," — これが Zerosend の基本方針です。",[24,3089,71],{"id":71},[12,3091,3092],{},"操作はシンプルです。",[73,3094,3095,3101,3104,3107,3109],{},[31,3096,3097,82],{},[18,3098,3099],{"href":245},[80,3100,245],{},[31,3102,3103],{},"画面中央のドロップゾーンに動画ファイルをドラッグ&ドロップ、またはクリックして選択 (MP4 \u002F WebM \u002F MOV、最大 500MB)",[31,3105,3106],{},"圧縮強度 (CRF) と解像度を選ぶ",[31,3108,1834],{},[31,3110,3111],{},"処理が終わると「処理完了。あなたのファイルは外に出ていません。」と表示され、ダウンロードボタンから結果を保存できる",[125,3113,3114],{"id":3114},"設定の目安",[28,3116,3117,3123,3129,3135],{},[31,3118,3119,3122],{},[34,3120,3121],{},"高画質 (CRF 23)",": 画質維持を最優先。削減率は 10〜30% 程度。保存用のマスター映像向け",[31,3124,3125,3128],{},[34,3126,3127],{},"標準 (CRF 28)",": 視覚的な劣化は軽微。削減率 40〜70%。ウェブ掲載・SNS 共有に",[31,3130,3131,3134],{},[34,3132,3133],{},"小さめ (CRF 32)",": 多少ぼやけるが容量優先。チャット添付・LINE・メール向け",[31,3136,3137,3140],{},[34,3138,3139],{},"最小 (CRF 36)",": 輪郭が甘くなる。品質より「とにかく送れる」が最優先なとき",[12,3142,3143],{},"解像度は 100 \u002F 75 \u002F 50% から選べます。1080p の素材を 75% にすると、CRF を 1〜2 下げるより確実にサイズが落ちます。",[24,3145,3147],{"id":3146},"仕組み-二段構えのエンジン","仕組み — 二段構えのエンジン",[12,3149,3150],{},"Zerosend の動画圧縮は、単一のエンジンに依存していません。ブラウザの能力を見て、もっとも速い経路を自動で選びます。",[125,3152,3154],{"id":3153},"_1-webcodecs-高速パス","1. WebCodecs (高速パス)",[12,3156,3157,3158,3161,3162,3165],{},"Chrome \u002F Edge \u002F 最近の Safari には ",[80,3159,3160],{},"WebCodecs"," API が実装されており、",[34,3163,3164],{},"GPU 支援の H.264 エンコーダ","をブラウザから直接呼び出せます。Zerosend は対応環境では次のパイプラインで処理します。",[28,3167,3168,3174,3180,3187,3193,3196],{},[31,3169,3170,3173],{},[80,3171,3172],{},"mp4box.js"," で MP4 ファイルを demux",[31,3175,3176,3179],{},[80,3177,3178],{},"VideoDecoder"," でフレームを復号 (ハードウェアアクセラレーション)",[31,3181,3182,3183,3186],{},"必要なら ",[80,3184,3185],{},"OffscreenCanvas"," でリサイズ",[31,3188,3189,3192],{},[80,3190,3191],{},"VideoEncoder"," で H.264 に再エンコード (GPU)",[31,3194,3195],{},"音声はロスレスコピー (AAC のチャンクをそのまま維持)",[31,3197,3198,3201],{},[80,3199,3200],{},"mp4-muxer"," で MP4 に mux し、Blob として出力",[12,3203,3204],{},"数百 MB の動画も数十秒で処理できます。処理後の結果カードに「エンジン: webcodecs」と表示されれば、このパスが走っています。",[125,3206,3208],{"id":3207},"_2-ffmpegwasm-フォールバック","2. ffmpeg.wasm (フォールバック)",[12,3210,3211,3212,3214],{},"WebCodecs が未対応のブラウザ、HEVC などの特殊なコーデック入力、mp4box が parse できない特殊コンテナのときは、自動的に ",[80,3213,378],{}," に切り替わります。完全に CPU で処理するため速度は落ちますが、対応できるフォーマットの幅が段違いに広いのが強みです。ffmpeg-core は Cloudflare R2 から、同一オリジンのパスを経由して 32MB の WASM を取得します。初回のみ時間がかかりますが、2 回目以降はブラウザのキャッシュから復元されます。",[24,3216,190],{"id":190},[12,3218,3219,3222],{},[34,3220,3221],{},"Q. 処理中にインターネット接続が切れたら？","\nA. 動画本体の送受信は発生しないため、圧縮処理自体は継続します。エンジン (ffmpeg.wasm) が未ロードの状態だと初回ダウンロードで失敗しますが、一度読み込んだあとはオフラインでも動作します。",[12,3224,3225,3228],{},[34,3226,3227],{},"Q. 結果のファイルはどこに保存されますか？","\nA. ダウンロードボタンを押したときのブラウザの保存先です。サーバーには何も残りません。結果ファイルはタブを閉じるとメモリから消えます。",[12,3230,3231,3234],{},[34,3232,3233],{},"Q. 画質が思ったより落ちます。","\nA. CRF を下げる (例: 28 → 23)、または解像度の縮小をやめる (50% → 100%) と改善します。素材が 4K なら、100% のまま CRF を下げるより 75% + CRF 25 の方が視覚的なバランスが取れやすいです。",[12,3236,3237,3240],{},[34,3238,3239],{},"Q. iPhone で撮った MOV も処理できますか？","\nA. はい。HEVC (H.265) の場合は ffmpeg.wasm 側のフォールバックに回るため時間がかかりますが、H.264 にトランスコードされた MP4 として出力されます。",[24,3242,217],{"id":217},[28,3244,3245,3252,3257],{},[31,3246,3247,3251],{},[18,3248,3250],{"href":3249},"\u002Ftools\u002Fvideo-to-gif","動画 → GIF"," — SNS の表紙やドキュメント挿入に",[31,3253,3254,3256],{},[18,3255,239],{"href":238}," — 必要な区間だけ切り出してから圧縮すると効率的",[31,3258,3259,3261],{},[18,3260,232],{"href":231}," — MOV \u002F WebM → MP4 など",[12,3263,3264],{},"Zerosend は「日常のちょっとした加工を、あなたの端末で完結させる」ことに徹したツール集です。動画の中身があなたの手元から離れないことを、DevTools で自分の目で確かめてから使ってみてください。",{"title":249,"searchDepth":250,"depth":250,"links":3266},[3267,3268,3271,3275,3276],{"id":3066,"depth":250,"text":3066},{"id":71,"depth":250,"text":71,"children":3269},[3270],{"id":3114,"depth":258,"text":3114},{"id":3146,"depth":250,"text":3147,"children":3272},[3273,3274],{"id":3153,"depth":258,"text":3154},{"id":3207,"depth":258,"text":3208},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の動画圧縮ツールは、動画ファイルをサーバーに送らずブラウザ内で再エンコードしてサイズを削減します。WebCodecs で GPU 支援、未対応環境では ffmpeg.wasm にフォールバック。設計思想と使い方、仕組みを Zerosend 編集部が解説します。",{},"\u002Fblog\u002Fvideo-compress-intro",{"title":3048,"description":3277},"video-compress-intro","blog\u002Fvideo-compress-intro",[3284,1936,3160,278],"動画","613Z3mNi94G9pdH05SAOutm_1Lv_QgpilD4PnVSTRWE",{"id":3287,"title":3288,"author":7,"body":3289,"category":262,"coverImage":263,"description":3454,"draft":265,"extension":266,"locale":267,"meta":3455,"navigation":269,"noindex":265,"path":3456,"publishedAt":271,"seo":3457,"slug":3458,"stem":3459,"tags":3460,"updatedAt":271,"__hash__":3461},"blog\u002Fblog\u002Fvideo-convert-intro.md","動画形式を変換する — \u002Ftools\u002Fvideo-convert の思想と使い方",{"type":9,"value":3290,"toc":3445},[3291,3294,3300,3302,3309,3312,3314,3333,3336,3356,3358,3363,3365,3368,3389,3392,3394,3400,3406,3412,3420,3426,3428],[12,3292,3293],{},"iPhone で撮った MOV を Windows に送りたい、古いビデオカメラの AVI を YouTube に上げたい、ウェブサイト掲載用に WebM 形式に変換して読み込みを軽くしたい。動画の形式変換は、互換性問題を解決する定番作業です。MP4 は最も互換性が高く、迷ったらまず MP4 を選ぶのが安全です。WebM は Chrome \u002F Firefox での再生効率が良く、ウェブページ埋め込みに適しています。",[12,3295,3296,3299],{},[18,3297,3298],{"href":231},"Zerosend の動画形式変換ツール"," は、この変換をブラウザ内で完結させます。",[24,3301,58],{"id":58},[12,3303,3304,3305,3308],{},"動画ファイルは、内容がどのようなものであっても",[34,3306,3307],{},"撮影者・被写体・撮影場所","という 3 種の個人情報を常に含みます。結婚式の映像、社内イベントの録画、研修動画、顧客インタビュー。これらを無料のオンライン変換サービスに預けることは、映像を第三者のサーバーに一時的に置くことと同じです。",[12,3310,3311],{},"Zerosend では変換処理がローカルで完結するため、この構造的リスクを回避できます。",[24,3313,71],{"id":71},[73,3315,3316,3322,3325,3328,3330],{},[31,3317,3318,82],{},[18,3319,3320],{"href":231},[80,3321,231],{},[31,3323,3324],{},"動画ファイルをドラッグ&ドロップ",[31,3326,3327],{},"出力形式 (MP4 \u002F WebM) を選ぶ",[31,3329,91],{},[31,3331,3332],{},"ダウンロード",[24,3334,3335],{"id":3335},"形式の使い分け",[28,3337,3338,3344,3350],{},[31,3339,3340,3343],{},[34,3341,3342],{},"MP4 (H.264 + AAC)",": 汎用。ブラウザ・デバイス・SNS すべてで最も広く対応",[31,3345,3346,3349],{},[34,3347,3348],{},"WebM (VP9 + Opus)",": ブラウザネイティブ。ウェブサイト掲載で効率が良い",[31,3351,3352,3355],{},[34,3353,3354],{},"互換性優先なら MP4",": 疑問があれば MP4 を選ぶのが安全",[24,3357,372],{"id":371},[12,3359,2242,3360,3362],{},[34,3361,378],{}," を使ってブラウザ上で動画を変換します。ffmpeg.wasm は、動画処理の業界標準ツール「FFmpeg」を WebAssembly にコンパイルしたものです。サーバーへのアップロードは一切発生せず、すべての処理があなたの端末のメモリ上で完結します。初回アクセス時に約 30MB の WASM ファイルを読み込みます。",[24,3364,156],{"id":156},[12,3366,3367],{},"ffmpeg.wasm の再エンコードを利用しています。",[28,3369,3370,3373,3383,3386],{},[31,3371,3372],{},"入力動画を ffmpeg FS に書き込み",[31,3374,3375,3378,3379,3382],{},[80,3376,3377],{},"-c:v libx264 -c:a aac"," (MP4) または ",[80,3380,3381],{},"-c:v libvpx-vp9 -c:a libopus"," (WebM) で再エンコード",[31,3384,3385],{},"出力を Blob としてメモリに展開",[31,3387,3388],{},"ダウンロード用 URL を生成",[12,3390,3391],{},"再エンコードのため処理時間は入力の長さに比例します。30 秒の動画で数秒〜数十秒が目安です。",[24,3393,190],{"id":190},[12,3395,3396,3399],{},[34,3397,3398],{},"Q. 変換すると画質は落ちますか？","\nA. 再エンコードするため、理論上は多少劣化します。ただし本ツールのプリセットは実用レベルでは視覚的にほぼわからない品質設定です。",[12,3401,3402,3405],{},[34,3403,3404],{},"Q. 音声は変換後も保持されますか？","\nA. はい。MP4 では AAC、WebM では Opus コーデックで音声を保持します。",[12,3407,3408,3411],{},[34,3409,3410],{},"Q. コーデック指定や高度なオプションを変えたい","\nA. 本ツールは一般用途向けのプリセットで固定しています。細かい制御が必要なら、別のプロフェッショナル向けツールを検討してください。",[12,3413,3414,458,3417,3419],{},[34,3415,3416],{},"Q. 音声のみ抽出したい",[18,3418,414],{"href":20}," をお使いください。",[12,3421,3422,3425],{},[34,3423,3424],{},"Q. 対応していない入力形式","\nA. ffmpeg がサポートする範囲ですが、特殊コーデック (Pro Res \u002F DNxHD など) は未対応の場合があります。",[24,3427,217],{"id":217},[28,3429,3430,3435,3440],{},[31,3431,3432,3434],{},[18,3433,246],{"href":245}," — 変換と同時にサイズも削減したいとき",[31,3436,3437,3439],{},[18,3438,239],{"href":238}," — 変換前に必要な区間だけ切り出す",[31,3441,3442,3444],{},[18,3443,414],{"href":20}," — 動画から音声だけ抽出して変換",{"title":249,"searchDepth":250,"depth":250,"links":3446},[3447,3448,3449,3450,3451,3452,3453],{"id":58,"depth":250,"text":58},{"id":71,"depth":250,"text":71},{"id":3335,"depth":250,"text":3335},{"id":371,"depth":250,"text":372},{"id":156,"depth":250,"text":156},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の動画形式変換ツールは、MOV \u002F WebM \u002F MKV \u002F AVI などの動画をサーバーに送らずブラウザ内で MP4 など互換性の高い形式に変換します。Zerosend 編集部が解説。",{},"\u002Fblog\u002Fvideo-convert-intro",{"title":3288,"description":3454},"video-convert-intro","blog\u002Fvideo-convert-intro",[3284,277,278],"uen8HCCs7nwIfruqSzlnOQeM7PeUONPCTqhbCV48i8I",{"id":3463,"title":3464,"author":7,"body":3465,"category":262,"coverImage":263,"description":3702,"draft":265,"extension":266,"locale":267,"meta":3703,"navigation":269,"noindex":265,"path":3704,"publishedAt":271,"seo":3705,"slug":3706,"stem":3707,"tags":3708,"updatedAt":271,"__hash__":3710},"blog\u002Fblog\u002Fvideo-to-gif-intro.md","動画を GIF に変換する — \u002Ftools\u002Fvideo-to-gif の思想と使い方",{"type":9,"value":3466,"toc":3692},[3467,3470,3475,3477,3503,3507,3510,3530,3536,3540,3546,3549,3551,3573,3576,3579,3605,3607,3618,3637,3640,3642,3651,3661,3667,3673,3675],[12,3468,3469],{},"画面操作の説明を Slack で共有したい、バグの再現手順を issue に貼りたい、X のタイムラインで動く画像にしたい。動画が重くて共有しづらい場面で GIF は今でも現役です。",[12,3471,3472,3299],{},[18,3473,3474],{"href":3249},"Zerosend の 動画 → GIF 変換ツール",[24,3476,2375],{"id":2375},[28,3478,3479,3485,3491,3497],{},[31,3480,3481,3484],{},[34,3482,3483],{},"チャット・SNS への操作デモ共有",": Slack・Discord・X では動画より GIF の方が自動再生されやすく、見てもらいやすい",[31,3486,3487,3490],{},[34,3488,3489],{},"GitHub Issue へのバグ再現添付",": 再現手順を GIF にすると、文章だけより圧倒的に伝わります",[31,3492,3493,3496],{},[34,3494,3495],{},"製品マニュアルや説明資料",": 使い方の短いアニメを埋め込むとドキュメントの分かりやすさが上がります",[31,3498,3499,3502],{},[34,3500,3501],{},"SNS 投稿用のループ動画",": 短い映像をループさせてタイムラインで目を引く素材にできます",[24,3504,3506],{"id":3505},"gif-の特性を理解して使う","GIF の特性を理解して使う",[12,3508,3509],{},"GIF には独自の制約があります。",[28,3511,3512,3518,3524],{},[31,3513,3514,3517],{},[34,3515,3516],{},"音声なし",": GIF 形式の仕様上、音声トラックは含められません",[31,3519,3520,3523],{},[34,3521,3522],{},"色数は最大 256 色",": フルカラー動画に比べて色表現が限られます。グラデーションや写真素材はバンディングが出やすい",[31,3525,3526,3529],{},[34,3527,3528],{},"ファイルサイズが大きくなりやすい",": 同じ長さ・解像度の動画 MP4 と比べると、GIF は数倍のサイズになることが多い",[12,3531,3532,3533,3535],{},"画面操作録画やシンプルなアニメーションには向いています。風景動画など色が複雑な素材は ",[18,3534,246],{"href":245}," で MP4 のままにするのが適切です。",[24,3537,3539],{"id":3538},"なぜブラウザ内で-gif-変換するのか","なぜブラウザ内で GIF 変換するのか",[12,3541,3542,3543,1011],{},"画面録画の中身は、UI スクリーンショット以上に情報を含みます。操作中に映る URL・ユーザー名・通知内容・顧客の名前。これらを含む動画を GIF 変換サービスにアップロードすると、",[34,3544,3545],{},"動画の全フレームが相手のサーバーに渡ります",[12,3547,3548],{},"Zerosend では変換処理をローカルで行うため、そのリスクがありません。DevTools で通信が発生していないことを確認してから使ってください。",[24,3550,71],{"id":71},[73,3552,3553,3559,3562,3565,3568,3571],{},[31,3554,3555,82],{},[18,3556,3557],{"href":3249},[80,3558,3249],{},[31,3560,3561],{},"動画ファイルをドラッグ&ドロップ (MP4 \u002F WebM \u002F MOV)",[31,3563,3564],{},"切り出し区間 (開始時刻・終了時刻) を指定",[31,3566,3567],{},"フレームレート (5 \u002F 10 \u002F 15fps) と幅を選択",[31,3569,3570],{},"「GIF 化を開始する」をクリック",[31,3572,3332],{},[24,3574,3575],{"id":3575},"サイズを抑えるコツ",[12,3577,3578],{},"GIF は形式として大きくなりがちです。以下の指針で調整してください。",[28,3580,3581,3587,3593,3599],{},[31,3582,3583,3586],{},[34,3584,3585],{},"区間は短く",": 3〜6 秒が実用上の上限",[31,3588,3589,3592],{},[34,3590,3591],{},"幅は 480px 以下",": Slack・Twitter で使うなら 480px 前後で十分",[31,3594,3595,3598],{},[34,3596,3597],{},"フレームレートは 10fps",": 15fps 以上は体感差が小さくサイズだけ増える",[31,3600,3601,3604],{},[34,3602,3603],{},"色数は制限",": ツール側で最適化しているが、単調な色味の動画ほどうまくハマる",[24,3606,156],{"id":156},[12,3608,3609,3610,3613,3614,3617],{},"ffmpeg.wasm で動画を復号し、",[80,3611,3612],{},"palettegen"," と ",[80,3615,3616],{},"paletteuse"," フィルタを使って GIF の 256 色パレットに最適化して書き出しています。",[28,3619,3620,3622,3628,3634],{},[31,3621,3372],{},[31,3623,3624,3627],{},[80,3625,3626],{},"-vf \"fps=10,scale=480:-1:flags=lanczos,palettegen\""," で最適パレット生成",[31,3629,3630,3633],{},[80,3631,3632],{},"-vf \"fps=10,scale=480:-1:flags=lanczos,paletteuse\""," で GIF エンコード",[31,3635,3636],{},"Blob としてメモリに展開",[12,3638,3639],{},"2 パス処理をブラウザ内で完結させているため、サーバー送信は一切発生しません。",[24,3641,190],{"id":190},[12,3643,3644,3647,3648,3650],{},[34,3645,3646],{},"Q. GIF が想像より大きくなるのはなぜ？","\nA. GIF の圧縮効率は MP4 より大幅に劣ります。色数が多い・解像度が高い・再生時間が長いほどサイズが跳ね上がります。区間を短く・幅を小さく・フレームレートを低くすることで抑えられます。30 秒超なら ",[18,3649,246],{"href":245}," で軽量 MP4 のままにするのをお勧めします。",[12,3652,3653,3656,3657,3660],{},[34,3654,3655],{},"Q. 最適なフレームレートは？","\nA. 画面操作デモや UI アニメーションなら ",[34,3658,3659],{},"10fps"," で十分です。15fps 以上は体感差が小さくサイズだけ増えます。スポーツや動きが速い動画なら 15fps を試してみてください。",[12,3662,3663,3666],{},[34,3664,3665],{},"Q. 音声は入りますか？","\nA. GIF 仕様上、音声は含められません。音声付きで共有したいなら動画のままが適切です。",[12,3668,3669,3672],{},[34,3670,3671],{},"Q. 透過 GIF は作れますか？","\nA. 1 ビット透過なら可能ですが、動画ソースからの抽出は実用的でないため、本ツールでは非対応です。",[24,3674,217],{"id":217},[28,3676,3677,3682,3687],{},[31,3678,3679,3681],{},[18,3680,239],{"href":238}," — GIF 化前に必要な区間だけ切り出す",[31,3683,3684,3686],{},[18,3685,246],{"href":245}," — GIF の代わりに軽量 MP4 にする選択肢",[31,3688,3689,3691],{},[18,3690,232],{"href":231}," — 他形式への変換",{"title":249,"searchDepth":250,"depth":250,"links":3693},[3694,3695,3696,3697,3698,3699,3700,3701],{"id":2375,"depth":250,"text":2375},{"id":3505,"depth":250,"text":3506},{"id":3538,"depth":250,"text":3539},{"id":71,"depth":250,"text":71},{"id":3575,"depth":250,"text":3575},{"id":156,"depth":250,"text":156},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の 動画 → GIF 変換ツールは、動画をサーバーに送らずブラウザ内で GIF アニメに変換します。SNS・ドキュメント・Slack 用の短尺アニメ作成に。Zerosend 編集部が解説。",{},"\u002Fblog\u002Fvideo-to-gif-intro",{"title":3464,"description":3702},"video-to-gif-intro","blog\u002Fvideo-to-gif-intro",[3284,3709,278],"GIF","KP5LnDJg0eajQ42qALBS-sWzXFmFrGx0dQo1I45wKAc",{"id":3712,"title":3713,"author":7,"body":3714,"category":262,"coverImage":263,"description":3907,"draft":265,"extension":266,"locale":267,"meta":3908,"navigation":269,"noindex":265,"path":3909,"publishedAt":271,"seo":3910,"slug":3911,"stem":3912,"tags":3913,"updatedAt":271,"__hash__":3914},"blog\u002Fblog\u002Fvideo-trim-intro.md","動画をトリミング (切り出し) する — \u002Ftools\u002Fvideo-trim の思想と使い方",{"type":9,"value":3715,"toc":3898},[3716,3719,3724,3726,3758,3760,3767,3770,3772,3791,3795,3801,3804,3806,3814,3829,3832,3834,3842,3848,3857,3862,3868,3879,3881],[12,3717,3718],{},"60 分の会議録画から「重要な 3 分」だけ共有したい、旅行動画の最初の手ブレ部分をカットしたい、画面録画の誤操作部分を除きたい。動画のトリミングは、共有前の定番作業です。",[12,3720,3721,22],{},[18,3722,3723],{"href":238},"Zerosend の動画トリミングツール",[24,3725,295],{"id":295},[28,3727,3728,3734,3740,3746,3752],{},[31,3729,3730,3733],{},[34,3731,3732],{},"会議録画の抜粋共有",": 60 分の Zoom 録画から決議箇所の 5 分だけを切り出してチームに送る",[31,3735,3736,3739],{},[34,3737,3738],{},"旅行動画の冒頭カット",": 起動直後の手ブレや暗転部分を除いて本編から始める",[31,3741,3742,3745],{},[34,3743,3744],{},"画面録画の整理",": 操作説明動画の冒頭・末尾の余分な操作を削除",[31,3747,3748,3751],{},[34,3749,3750],{},"SNS 投稿用にカット",": 長い動画から見せたい場面だけを 60 秒以内に切り出す",[31,3753,3754,3757],{},[34,3755,3756],{},"インタビュー動画の引用",": 収録全体から発言箇所だけを抜粋してプレゼンに使う",[24,3759,336],{"id":336},[12,3761,3762,3763,3766],{},"トリミングしたい動画ほど「切り取りたい箇所」より「切り捨てたい箇所」が大きいものです。60 分の会議録画から 3 分を抽出する場合、",[34,3764,3765],{},"残りの 57 分分の機密発言もいったん相手サーバーにアップロードする","ことになります。",[12,3768,3769],{},"これはプライバシー観点で非合理的です。Zerosend はトリミング処理をローカルで行うため、アップロードそのものが発生しません。入力動画が数 GB あっても、ネットワークには何も流れません。",[24,3771,71],{"id":71},[73,3773,3774,3780,3783,3786,3788],{},[31,3775,3776,82],{},[18,3777,3778],{"href":238},[80,3779,238],{},[31,3781,3782],{},"動画をドラッグ&ドロップ",[31,3784,3785],{},"開始時刻・終了時刻を指定 (スライダーまたは秒数入力)",[31,3787,365],{},[31,3789,3790],{},"切り出された動画をダウンロード",[24,3792,3794],{"id":3793},"ffmpegwasm-とは","ffmpeg.wasm とは",[12,3796,3797,3798,3800],{},"ffmpeg は動画・音声処理の世界標準ツールで、もともとはターミナルで使うコマンドラインプログラムです。",[34,3799,378],{}," はこれを WebAssembly (WASM) にコンパイルしたもので、インストール不要でブラウザ上で動作します。",[12,3802,3803],{},"Zerosend はこの ffmpeg.wasm を使って、ネイティブアプリに近い動画処理をブラウザ内で実現しています。初回アクセス時は約 30MB の WASM ファイルを取得するため少し時間がかかりますが、取得後はオフラインでも動作します。",[24,3805,156],{"id":156},[12,3807,387,3808,3810,3811,3813],{},[80,3809,390],{}," (開始) \u002F ",[80,3812,394],{}," (終了) オプションを使って指定区間を切り出します。",[28,3815,3816,3818,3824],{},[31,3817,3372],{},[31,3819,3820,3823],{},[80,3821,3822],{},"-ss \u003Cstart> -i input.mp4 -to \u003Cend> -c copy output.mp4"," で再エンコードなしに切り出し",[31,3825,3826,3828],{},[80,3827,461],{}," によりロスレス抽出 (処理も高速)",[12,3830,3831],{},"再エンコードしないため、画質劣化なし・処理時間も入力サイズの数%程度で完了します。",[24,3833,190],{"id":190},[12,3835,3836,458,3839,3841],{},[34,3837,3838],{},"Q. フレーム単位の精度は？",[80,3840,461],{}," でキーフレーム境界に揃える仕様のため、GOP サイズに依存します。秒単位以上の精度が必要なら問題なく使えますが、フレーム単位の精度が必要な場合は本ツール内で再エンコードオプションを有効化できます (処理時間が増加)。",[12,3843,3844,3847],{},[34,3845,3846],{},"Q. 対応している動画形式は？","\nA. MP4・MOV・AVI・WebM・MKV など主要な形式に対応しています。スマートフォンで撮影した MP4 や MOV ファイルはそのまま使えます。",[12,3849,3850,3853,3854,3856],{},[34,3851,3852],{},"Q. ファイルサイズの上限はありますか？","\nA. デバイスのメモリに依存します。PC (8GB RAM) なら 2〜4GB 程度まで問題なく処理できます。大容量ファイルは事前に ",[18,3855,246],{"href":245}," でサイズを小さくしておくと安定します。",[12,3858,3859,3861],{},[34,3860,467],{},"\nA. 現状は 1 区間のみです。複数区間を扱う場合は 1 区間ずつ抽出後、別途結合ツールを使ってください。",[12,3863,3864,3867],{},[34,3865,3866],{},"Q. 音声も一緒に切り出される？","\nA. はい。映像と音声は同じ区間でセット抽出されます。",[12,3869,3870,458,3873,3875,3876,3878],{},[34,3871,3872],{},"Q. 音声だけ切り出したい場合は？",[18,3874,225],{"href":224}," を使うか、本ツールで切り出した動画から音声だけを ",[18,3877,414],{"href":20}," で抽出してください。",[24,3880,217],{"id":217},[28,3882,3883,3888,3893],{},[31,3884,3885,3887],{},[18,3886,246],{"href":245}," — トリミング後にサイズ削減",[31,3889,3890,3892],{},[18,3891,3250],{"href":3249}," — 短い区間を GIF アニメに",[31,3894,3895,3897],{},[18,3896,232],{"href":231}," — 形式違いへの変換",{"title":249,"searchDepth":250,"depth":250,"links":3899},[3900,3901,3902,3903,3904,3905,3906],{"id":295,"depth":250,"text":295},{"id":336,"depth":250,"text":336},{"id":71,"depth":250,"text":71},{"id":3793,"depth":250,"text":3794},{"id":156,"depth":250,"text":156},{"id":190,"depth":250,"text":190},{"id":217,"depth":250,"text":217},"Zerosend の動画トリミングツールは、動画をサーバーに送らずブラウザ内で任意の区間だけ切り出します。不要な前後や長い会議録画から特定区間のみを共有したいときに。Zerosend 編集部が解説。",{},"\u002Fblog\u002Fvideo-trim-intro",{"title":3713,"description":3907},"video-trim-intro","blog\u002Fvideo-trim-intro",[3284,523,278],"flNtXZjV9WjTykXy1_JxOHLdiVIRg7yWC_Xq2LTpcU8",{"id":3916,"title":3917,"author":7,"body":3918,"category":263,"coverImage":263,"description":4132,"draft":265,"extension":266,"locale":267,"meta":4133,"navigation":269,"noindex":265,"path":4134,"publishedAt":4135,"seo":4136,"slug":4137,"stem":4138,"tags":4139,"updatedAt":4135,"__hash__":4141},"blog\u002Fblog\u002Ffavicon-generator-intro.md","ブラウザだけで作るファビコン一式 — \u002Ftools\u002Ffavicon-generator の舞台裏",{"type":9,"value":3919,"toc":4121},[3920,3923,3926,3929,3932,3938,3941,3944,3993,3996,4031,4035,4042,4045,4065,4072,4074,4086,4092,4095,4098,4100,4112,4115],[24,3921,3922],{"id":3922},"ファビコンが必要な理由",[12,3924,3925],{},"ファビコンは、ブラウザのタブやブックマーク一覧でサイトを識別する小さなアイコンです。スマートフォンのホーム画面に「追加」したときに表示されるアイコン (apple-touch-icon \u002F PWA アイコン) も、ファビコン一式の一部です。「ファビコンがない」「サイズが揃っていない」といった状態は、ユーザーの信頼感を下げ、PWA 対応の妨げにもなります。",[24,3927,3928],{"id":3928},"背景",[12,3930,3931],{},"サイトのファビコンを更新する作業は、新規サイトでも既存サイトのリブランディングでも発生します。ロゴ画像 1 枚から必要なアイコンセットを揃えるのは地味に手間のかかる工程です。",[12,3933,3934,3937],{},[18,3935,3936],{"href":2789},"Zerosend のファビコン生成ツール"," は、この工程をブラウザ内で完結させます。ロゴ画像を外部に送らずに一式を作成できるので、NDA 下の受託案件や未公開のブランディング作業でも安心して使えます。",[24,3939,3940],{"id":3940},"何が出力されるか",[12,3942,3943],{},"1 枚の画像 (PNG \u002F JPG \u002F WebP \u002F SVG) から次の 9 ファイルを生成し、ZIP で配布します。",[28,3945,3946,3952,3963,3969,3978,3983],{},[31,3947,3948,3951],{},[80,3949,3950],{},"favicon.ico"," — 16 \u002F 32 \u002F 48px のマルチサイズ ICO",[31,3953,3954,391,3957,391,3960],{},[80,3955,3956],{},"favicon-16.png",[80,3958,3959],{},"favicon-32.png",[80,3961,3962],{},"favicon-48.png",[31,3964,3965,3968],{},[80,3966,3967],{},"apple-touch-icon.png"," (180×180)",[31,3970,3971,391,3974,3977],{},[80,3972,3973],{},"icon-192.png",[80,3975,3976],{},"icon-512.png"," (PWA)",[31,3979,3980],{},[80,3981,3982],{},"site.webmanifest",[31,3984,3985,3988,3989,3992],{},[80,3986,3987],{},"snippet.html"," — ",[80,3990,3991],{},"\u003Chead>"," に貼り付ける link タグ",[24,3994,3995],{"id":3995},"使い方ステップ",[73,3997,3998,4004,4014,4020],{},[31,3999,4000,4003],{},[34,4001,4002],{},"画像を準備する"," — 正方形の PNG \u002F JPG \u002F WebP \u002F SVG を用意。最低でも 512×512px 推奨",[31,4005,4006,3988,4009,4013],{},[34,4007,4008],{},"ドロップする",[18,4010,4011],{"href":2789},[80,4012,2789],{}," を開いてドラッグ&ドロップ",[31,4015,4016,4019],{},[34,4017,4018],{},"ZIP をダウンロードする"," — ボタンを押すと 9 ファイルが入った ZIP が生成される",[31,4021,4022,3988,4025,4027,4028,4030],{},[34,4023,4024],{},"HTML に貼り付ける",[80,4026,3987],{}," の内容をサイトの ",[80,4029,3991],{}," にコピーして完了",[24,4032,4034],{"id":4033},"ico-を自前で書き出す","ICO を自前で書き出す",[12,4036,4037,4038,4041],{},"PNG は Canvas API で簡単に書き出せますが、ICO は少し工夫が必要です。とはいえ、Windows Vista 以降の ICO は ",[34,4039,4040],{},"PNG バイト列をそのまま埋め込める"," ため、意外と単純です。",[12,4043,4044],{},"構造:",[28,4046,4047,4053,4059],{},[31,4048,4049,4052],{},[34,4050,4051],{},"ICONDIR"," (6 バイト): reserved \u002F type \u002F image count",[31,4054,4055,4058],{},[34,4056,4057],{},"ICONDIRENTRY"," (16 バイト × 画像数): 幅 \u002F 高さ \u002F bpp \u002F サイズ \u002F オフセット",[31,4060,4061,4064],{},[34,4062,4063],{},"画像データ",": PNG のバイト列を順に連結",[12,4066,4067,4068,4071],{},"依存ゼロで 30 行程度に収まります。",[80,4069,4070],{},"domain\u002Fprocessors\u002FfaviconGenerator.ts"," で実装を公開しています。",[24,4073,190],{"id":190},[12,4075,4076,4079,4080,4082,4083,4085],{},[34,4077,4078],{},"Q. どのサイズが必要ですか？","\nA. 最低限は ",[80,4081,3950],{}," (16\u002F32px) と ",[80,4084,3967],{}," (180px) です。PWA 対応するなら 192px と 512px も必要です。本ツールはこれらをすべて一括生成します。",[12,4087,4088,4091],{},[34,4089,4090],{},"Q. SVG のロゴから生成できますか？","\nA. はい。SVG を入力するとブラウザ側で各サイズにラスタライズしてから ICO \u002F PNG を生成します。",[24,4093,4094],{"id":4094},"検証の楽しさ",[12,4096,4097],{},"作ったあとは DevTools の Network タブで確認できます。画像選択 → 生成 → ダウンロードの全てで、あなたのロゴが外に出ないことを自分で検証できます。",[24,4099,217],{"id":217},[28,4101,4102,4107],{},[31,4103,4104,4106],{},[18,4105,683],{"href":682}," — 入力画像が大きすぎる場合、事前に軽量化",[31,4108,4109,4111],{},[18,4110,690],{"href":689}," — 正方形にトリミングしてからファビコン生成すると精度が上がる",[24,4113,4114],{"id":4114},"まとめ",[12,4116,4117,4118,1011],{},"1 枚の画像から ICO \u002F PNG \u002F apple-touch-icon \u002F manifest \u002F HTML スニペットを、あなたの端末だけで生成できます。",[18,4119,4120],{"href":2789},"試してみてください",{"title":249,"searchDepth":250,"depth":250,"links":4122},[4123,4124,4125,4126,4127,4128,4129,4130,4131],{"id":3922,"depth":250,"text":3922},{"id":3928,"depth":250,"text":3928},{"id":3940,"depth":250,"text":3940},{"id":3995,"depth":250,"text":3995},{"id":4033,"depth":250,"text":4034},{"id":190,"depth":250,"text":190},{"id":4094,"depth":250,"text":4094},{"id":217,"depth":250,"text":217},{"id":4114,"depth":250,"text":4114},"1 枚の画像から ICO \u002F PNG \u002F apple-touch-icon \u002F site.webmanifest を生成するファビコン生成ツールを公開しました。ICO フォーマットを自前で書き出す実装のポイントを紹介します。",{},"\u002Fblog\u002Ffavicon-generator-intro","2026-04-19",{"title":3917,"description":4132},"favicon-generator-intro","blog\u002Ffavicon-generator-intro",[278,4140],"技術解説","3t3z-Zm-s-OgpewxhvXXeVAxzDosMQLq8XTZRneQGs4",1777617517099]