Voicevoxの話者とIDのリストを得るバッチ
Voicevoxを立ち上げた状態で、以下のバッチファイルを実行する。
@echo off chcp 65001 > nul setlocal set API_URL=http://localhost:50021/speakers set OUTPUT_FILE=speakers.json set LOGFILE=vv_speakers.txt set PSFILE=%TEMP%\vv_tmp.ps1 curl -s -o "%OUTPUT_FILE%" "%API_URL%" if %ERRORLEVEL% neq 0 ( echo [ERROR] curl failed. Is VOICEVOX running? pause exit /b 1 ) echo $OutputEncoding = [System.Text.Encoding]::UTF8 > "%PSFILE%" echo [Console]::OutputEncoding = [System.Text.Encoding]::UTF8 >> "%PSFILE%" echo $list = Get-Content '%OUTPUT_FILE%' -Encoding UTF8 -Raw ^| ConvertFrom-Json >> "%PSFILE%" echo $list ^| ForEach-Object { $n = $_.name; $_.styles ^| ForEach-Object { Write-Host ^('{0} / {1} ^(ID:{2}^)' -f $n, $_.name, $_.id^) } } >> "%PSFILE%" powershell -ExecutionPolicy Bypass -File "%PSFILE%" > "%LOGFILE%" del "%PSFILE%" type "%LOGFILE%" echo. echo %LOGFILE% に書き出しました。 pause
楽天モバイルのMTU
以下のバッチファイルで確認する限り、1352+28=1380か。
@echo off setlocal EnableDelayedExpansion set HOST=www.google.com for /L %%i in (1472,-1,1272) do ( ping -n 1 -f -l %%i %HOST% >nul 2>&1 rem ↑ 1回目はウォームアップ ↑ ping -n 1 -f -l %%i %HOST% >nul 2>&1 if not errorlevel 1 ( set /A MTU=%%i+28 set /A FAIL_PAYLOAD=%%i+1 echo. echo 成功!!! echo Path MTU: %%i+28=!MTU! bytes echo. echo 確認中... ping -n 3 -f -l %%i %HOST% ping -n 3 -f -l !FAIL_PAYLOAD! %HOST% goto :EOF ) ) echo 1300~1500に最適なMTUが見つかりませんでした。 pause
vcvars32.bat と vcvars64.bat の在処 on Visual Studio 2026 Community
Visual Studio 2026 Community の vcvars32.bat と vcvars64.bat の在処は
C:\Program Files\Microsoft Visual Studio\18\Community\VC\Auxiliary\Build
例えば
call "C:\Program Files\Microsoft Visual Studio\18\Community\VC\Auxiliary\Build\vcvars32.bat" rc /DWIN32 hoge.rc cl /DWIN32 /Ot /O1 /Oy /Wall /Fe:hoge.exe hoge.c kernel32.lib gdi32.lib user32.lib Dwmapi.lib uxtheme.lib hoge.res > err.txt
みたいに書けばOK。
TYC
もう大人なら
生き様を心得つつありますね。
だからこそ、その道のりを一度忘れて
昔の自分を思い出してみて。
子どもに教えてあげて、
親たちもかつては無力だったことを。
子どもに聞かせてあげて、
昔の夢を。
子どもの選択はじきに分かります。
でも理由は訊かないで、
泣かされるだけだから。
ただ見守っていれば悟るでしょう、
結局我が子なのだなと。
そして自分が確かに愛されていることを。
まだ子供だから
親たちのかつての苦悩を知らないでしょう。
だからこそ、親が信念を貫けるように
若さをもって支えてあげて。
親たちに教えてあげて、
子は強さを身に着けていくことを。
親たちに聞かせてあげて、
将来の夢を。
いずれ親たちの考えを知るときが来ます。
でも理由は訊かないで、
泣かされるだけだから。
ただよく見ていれば悟るでしょう、
やっぱり自分の親だったと。
そして自分が確かに愛されていることを。
PDFの編集用バッチファイルのメモ
- TeX Liveを入れておく。
- https://qiita.com/muneue-suwa/items/055afd2b1cc2ffa818bd にしたがって「C:\texlive\202?\texmf-dist\scripts\pdfcrop」を修正しておく。
PDFの余白を削除
@echo on for %%V in (%*) do ( pdfcrop --margins "0 0 0 0" "%%V" "%%~dpnV-c.pdf" )
A4判PDFの中央部をB5に切り取る(大体)
@echo on for %%V in (%*) do ( rungs -q -dNOPAUSE -dBATCH -o "%%~dpnV-b5.pdf" -sDEVICE=pdfwrite -dDEVICEWIDTHPOINTS=516 -dDEVICEHEIGHTPOINTS=728 -dFIXEDMEDIA -c "<</PageOffset [-36 -37]>> setpagedevice" -f "%%~dpnV.pdf" )
複数のPDFを連結
@echo off echo %* will be merged. set /p out="Put the output file name: " echo wait for a while... rungs.exe -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=%out% %* pause )
PDFのファイルサイズを小さく
@echo on for %%V in (%*) do ( rungs.exe -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile="%%~dpnV-s.pdf" "%%V" ) pause
PDFのファイルサイズをもっと小さく
@echo on for %%V in (%*) do ( rungs.exe -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile="%%~dpnV-s.pdf" "%%V" ) pause
まとめたもの
@echo off echo 1. 複数ファイルを連結 echo 2. 余白を調整(初期値: 0 0 0 0) echo 3. A4 → B5(中央部切り抜き) echo 4. ファイルサイズを小さく echo 5. もっと小さく(低品質) echo 6. 白黒PDFに set /p choice="choose 1/2/3/4/5/6: " if "%choice%"=="1" goto P01 if "%choice%"=="2" goto P02 if "%choice%"=="3" goto P03 if "%choice%"=="4" goto P04 if "%choice%"=="5" goto P05 if "%choice%"=="6" goto P06 goto END :P01 @echo on echo %* will be merged. set /p out="Put the output file name: " echo wait for a while... rungs.exe -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile="%out%" %* pause goto END :P02 setlocal enabledelayedexpansion @echo on set /p mgn="余白(mm)を指定(default 0 0 0 0):" if "%mgn%"=="" set "mgn=0 0 0 0" set "list=" for %%i in (%mgn%) do ( set /a intPart=%%i*10000/3527 set "list=!list!!intPart! " ) for /f "delims=" %%A in ('echo !list!') do endlocal & set "M=%%A" for %%V in (%*) do ( pdfcrop --margins "%M%" "%%V" "%%~dpnV-c.pdf" ) goto END :P03 @echo on for %%V in (%*) do ( rungs -q -dNOPAUSE -dBATCH -o "%%~dpnV-b5.pdf" -sDEVICE=pdfwrite -dDEVICEWIDTHPOINTS=516 -dDEVICEHEIGHTPOINTS=728 -dFIXEDMEDIA -c "<</PageOffset [-36 -37]>> setpagedevice" -f "%%~dpnV.pdf" ) goto END :P04 @echo on for %%V in (%*) do ( rungs.exe -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/ebook -dNOPAUSE -dQUIET -dBATCH -sOutputFile="%%~dpnV-s.pdf" "%%V" ) pause goto END :P05 @echo on for %%V in (%*) do ( rungs.exe -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile="%%~dpnV-s.pdf" "%%V" ) pause goto END :P06 @echo on for %%V in (%*) do ( rungs.exe -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dProcessColorModel=/DeviceGray -dPDFSETTINGS=/prepress -dNOPAUSE -dQUIET -dBATCH -sOutputFile="%%~dpnV_g.pdf" "%%V" ) pause goto END :END
emf2pdf...
- TeX Liveを入れておく。
- https://qiita.com/muneue-suwa/items/055afd2b1cc2ffa818bd にしたがって「C:\texlive\202?\texmf-dist\scripts\pdfcrop」を修正しておく。
【方法1】 metafile2eps: BA for now. 重なりが変?
set path="C:\Program Files (x86)\Metafile to EPS Converter";%PATH% for %%V in (%*) do ( metafile2eps.exe "%%V" "%%~dpnV.eps" epstopdf %%~dpnV.eps pdfcrop "%%~dpnV.pdf" "%%~dpnV.pdf" )
https://wiki.lyx.org/Windows/MetafileToEPSConverter
【方法2】 Inkscape: 点線が変?文字が重なったり?文字がなければBA?
for %%V in (%*) do ( "C:\Program Files\Inkscape\bin\inkscape" "%%V" --export-filename="%%~dpnV.pdf" pdfcrop "%%~dpnV.pdf" "%%~dpnV.pdf" )
https://inkscape.org/release/inkscape-1.3.2/windows/64-bit/msi/
【方法3】 LibreOffice: 線の太さがダメダメ、点線も変?
set path="C:\Program Files\LibreOffice\program\;%PATH% for %%V in (%*) do ( soffice --headless --convert-to pdf "%%V" pdfcrop "%%~dpnV.pdf" "%%~dpnV.pdf" )
https://ja.libreoffice.org/download/download/
【方法4】 ImageMagick: どうもうまくいかない?
set path="C:\Program Files\ImageMagick-7.1.1-Q16-HDRI";%PATH% for %%V in (%*) do ( cd "%%~dpV" convert "%%~nxV" "%%~nV.pdf" pdfcrop "%%~nV.pdf" "%%~nV.pdf" )
https://imagemagick.org/script/convert.php
【方法5】 Irfan: ラスターになってしまう?
set path="C:\Program Files\ImageMagick-7.1.1-Q16-HDRI";%PATH% for %%V in (%*) do ( cd "%%~dpV" convert "%%~nxV" "%%~nV.pdf" pdfcrop "%%~nV.pdf" "%%~nV.pdf" )
https://forest.watch.impress.co.jp/library/software/irfanview/
【方法6】 PDF-XChange Editor + Bullzip: PDF-XChange Editor は emf を表示できるので、それを仮想プリンタでPDFファイルにすればよい。 イイ感じではあったけどバッチ処理のための設定が面倒だったのでやめた。