当環境には既に「フォント選定」「禁則」「喘ぎ写植」「クリスタ自動化」など個別の写植DRが多数ある[40]。本レポはそれらを「画像生成後の後付け写植を商業品質に仕上げる一気通貫の実装書」として統合し、特に①吹き出し6種の作り方 ②縦書き組版の数値ルール ③喘ぎSFXのPIL/クリスタ・レタリング ④半自動パイプライン ⑤英語版ローカライズ写植 ⑥素人NG10とチェックリストを横断網羅する点が新規。AnyText等の「画像内直描き」は扱わない。
写植は「画像生成のあと」に独立レイヤーで作る後処理工程。ここの完成度だけは生成画像の良し悪しと別軸で、ケチると一瞬でアマチュアとバレる。逆に正しく整えるだけで上位5〜10%圏に入れる(推定)。
① 御琥祢屋・源暎フォント置き場[6]から源暎アンチック/源暎ゴシックKL(大声用)/源暎エムゴ(地の文)を一括DL。
② 851チカラヅヨク[11](力強いSFX用)とBlambot SFX[43]を確保。
③ クリスタで「セリフ/心の声/ナレ/SFX」4レイヤーの写植テンプレPSDを1枚作り、級数18Q・行間135%・縁取り設定を保存。これを以後の全ページに複製する。
CLIP STUDIO PAINT(テキストレイヤー維持PSD出力)+ 源暎フォント全書体(SIL OFL・R18商用可)+ 851チカラヅヨク+Blambot(SFX)+ Python psd-tools/Pillow(半自動差し替え)。有料を足すならmojimo-manga(年¥3,960・36書体)[15][18]。これで「フォント沼に課金しすぎる素人」を回避しつつ商業品質に届く。
FANZA・DLsiteで「AI生成」作品が専用フロアへ隔離されて以降、プラットフォーム内の自然検索流入は枯れ、X・Fantia・pixivからの外部集客が売上を左右する構造になった。外部からサムネで連れてきた読者は、開いて最初の数ページの「読みやすさ」で残るか離れるかを決める。ここで効くのが写植だ。
読みやすさは 完読率 → レビュー平均点 → リピート購入 という因果で売上に直結する。生成画像のクオリティは上限が頭打ちになりつつある一方、写植は今でも多くのAI作品が手を抜いており、差別化の効くポイントとして残っている。サムネクリック後の早期離脱のうち、写植(フォント不統一・行間ゼロ・はみ出し・禁則崩れ)が引き金になる比率は体感で2〜3割(推定)。
級数の考え方は写植の根幹。1級(Q)=0.25mmで、大きさだけでなく字間・行間の単位にもなる[18][25]。商業誌(B4原寸)で20Q、同人(A4)で18Q、スマホで縦スクロールするWeb縦読みでは22〜24Qが読みやすさの基準とされる[19][27]。AI作品はスマホ閲覧が主戦場なので、同人でも気持ち大きめ(18〜20Q)に振るのが安全。
| 写植品質3段階 | 具体状態 | 完読率(推定) | レビュー平均(推定) | 売上インパクト(推定) |
|---|---|---|---|---|
| 下位 | 生成後ほぼ未調整/フォント混在/行間0/はみ出し | 55〜65% | 3.5前後 | 基準 |
| 中位 | フリーフォント手動配置・級数だいたい統一 | 70〜80% | 3.8〜4.0 | +10〜20% |
| 上位 | 源暎アンチック統一・18Q/行間135%・禁則・SFX描き文字化 | 85〜92% | 4.2〜4.5 | +20〜45% |
※前提:30P・980円・初月300部・外部流入はX/Fantia中心の仮定。数値はすべて(推定)で、効果はジャンル・絵の質に依存。写植単独の純効果ではなく「読みやすさ全体」の寄与を含む。
上位のAI同人・商業エロ漫画の写植を、実際に観察できる組み合わせから10パターンに類型化した(フォントは見た目からの推定を含む)。共通項は「セリフ=アンチゴチ系で統一」「SFXは力強い専用フォント+加工」「吹き出し縁は細め(0.5〜1pt相当)」。
| # | セリフ | 心の声 | SFX/喘ぎ | 吹き出し縁 | 級数 | 行間 |
|---|---|---|---|---|---|---|
| 1 | 源暎アンチック | 源暎こぶり明朝/細め | 851チカラヅヨク | 細・0.6pt | 18Q | 130% |
| 2 | 源暎アンチック | 源暎エムゴ Light | Blambot SFX | 細・0.8pt | 20Q | 120% |
| 3 | mojimo-manga(アンチ系) | しっぽりアンチック | dddFont素材 | 中・1.0pt | 22Q | 135% |
| 4 | しっぽりアンチック | 源暎アンチック細 | 851チカラヅヨク | 細・0.5pt | 18Q | 128% |
| 5 | GL-ノバンチカ源 | 明朝系 | 手書き崩しフォント | 細・0.7pt | 19Q | 132% |
| 6 | 源暎アンチック | 源暎エムゴ | 源暎ゴシックKL(大声) | 中・0.9pt | 20Q | 122% |
| 7 | 源暎アンチック | 源暎ラテミン | 851+変形 | 細・0.6pt | 20Q | 130% |
| 8 | mojimo-manga | 源暎アンチック細 | Blambot+クリスタ加工 | 細・0.8pt | 18Q | 126% |
| 9 | 源暎アンチック | しっぽりアンチック | 851+ハート混じり | 細・0.7pt | 22Q | 138% |
| 10 | 源暎アンチック | 源暎こぶり明朝 | dddFont+グラデ | 細・0.5pt | 19Q | 134% |
① セリフは源暎アンチック(or 同系アンチゴチ)でほぼ統一/② 級数・行間を全ページで固定/③ 喘ぎ・SFXは必ず変形・フチ・色で描き文字化/④ 禁則・句読点作法を守る/⑤ 吹き出し縁は細く、しっぽが口元に正確。
① 行間110%未満で文字が詰まる(圧迫感→離脱)/② 吹き出し縁が太すぎ(1.2pt超)でチープに見える/③ SFXをセリフフォントのまま置く=音が「鳴っていない」。
プロの鉄則:1作品で使うフォントは最大4〜5種に絞る(セリフ/心の声/ナレ/喘ぎ/SFX)。6種以上になると読者が無意識に「揺れ」を感じ没入が削がれる[37]。タイトルロゴはナレ用やSFX用を流用してよい。
漫画のセリフは伝統的に「かな=アンチック体・漢字=ゴシック体」を組み合わせる「アンチゴチ」が定番[1][9]。AI同人での無料・商用可の本命は:
| 用途 | 推奨フォント | 級数目安 | フチ/色の方針 | 入手URL | ライセンス |
|---|---|---|---|---|---|
| セリフ(基本) | 源暎アンチック | 18〜20Q | 黒・白フチ無し(白フキダシ内) | okoneya.jp | SIL OFL(R18商用可) |
| セリフ(柔) | しっぽりアンチック | 18〜20Q | 黒 | fontdasu.com | 規約確認 |
| 心の声 | 源暎こぶり明朝/細 | 16〜18Q | 墨グレー寄り | okoneya.jp | SIL OFL |
| ナレ/地の文 | 源暎エムゴ | 16〜18Q | 墨#222・フチ無し | okoneya.jp | SIL OFL |
| 大声セリフ | 源暎ゴシックKL | 22〜28Q | 黒・白フチ | okoneya.jp | SIL OFL |
| 喘ぎ/淫語 | 手書き崩し系/源暎アンチック | 可変 | ピンク系+白2重フチ+変形 | goodfreefonts | 各規約確認 |
| SFX(和) | 851チカラヅヨク | 24〜48Q | 黒+白フチ2px・グラデ | 配布元 | 商用可 |
| SFX(英) | Blambot SFX群 | 可変 | 描き直し相当 | blambot.com | インディー無料/商業有料 |
| 有料補完 | mojimo-manga 36書体 | — | — | mojimo.jp | 個人契約・年¥3,960 |
フォントワークスが「キルラキル」「おそ松さん」等で使われた書体を含む36書体を年¥3,960(1書体あたり約110円)で提供[15][18]。R18同人・商業ともに使用可だが、ゲーム/アプリ/放送映像/組み込み/サーバー/Webフォント利用は許諾範囲外、かつ個人契約のみ・法人不可・1人1ライセンス[16][17]。サークル共有はNG。無料の源暎で足りるなら無理に課金不要、SFXやタイトルの幅が欲しい時の選択肢。
同一作品(30P・エロ同人・980円・初月300部・外部流入はX/Fantia中心と仮定)で、写植を素人レベル→プロレベルに引き上げた場合の変化を3シナリオで推定。すべて(推定)・前提依存であり、写植単独効果ではなく「読みやすさ全体」の寄与を含む。
| 指標 | 悲観(推定) | 中央(推定) | 楽観(推定) | 効く要因 |
|---|---|---|---|---|
| 完読率 | +5pt | +15pt | +28pt | フォント統一・行間1.35倍 |
| レビュー平均 | +0.1 | +0.4 | +0.7 | 「読みやすい」言及増 |
| リピート率(2作目購入) | +3pt | +13pt | +28pt | 作家信頼の蓄積 |
| 外部流入(スクショ拡散) | +8% | +27% | +50% | 1ページの完成度 |
| 売上インパクト | +8% | +23% | +45% | 上記の複合 |
R18作品でフォント使用を「断られる」ことは基本ないが、規約上の利用範囲はフォントごとに違う。特に注意は ①フォントファイル単体の再配布 ②PSD/データへの埋め込み配布 ③Webフォント化 ④作品名・商標由来の見た目。
| フォント | 商用 | R18 | 埋め込み | 注意点 | 典拠 |
|---|---|---|---|---|---|
| 源暎シリーズ全般 | 可 | 可 | 可 | SIL OFL。フォント単体での再配布は禁止(作品内使用はOK) | [6][7] |
| 851チカラヅヨク | 可 | 可 | — | 同人・動画OK明記。許可不要 | [10][11] |
| GL-ノバンチカ源 | 可 | 可 | 可 | SIL OFL | [9] |
| しっぽりアンチック | 規約確認 | 規約確認 | — | 商用明記の有無を配布元で都度確認 | [8] |
| mojimo-manga | 可 | 可 | 不可 | 個人契約のみ・法人不可・Webフォント/組み込み/放送映像不可 | [16][17] |
| Blambot(英SFX/本文) | インディー無料 | — | — | 独立/小規模はR18含め無料。大手出版社へ提供時は有料ライセンス必須 | [42][43] |
① PSDをそのまま配布/納品するとフォント本体や未ラスタライズのテキストが第三者に渡る恐れ→配布物は文字をラスタライズ(画像化)して書き出す。② 既存商業漫画のロゴ風を真似た描き文字は商標・著作のグレー→自作で。③ Blambotを「無料だから」と無条件で商業流用→規模・出版形態で条件が変わるためlicensesを確認。
genei-antique.otf・18Q換算サイズ・行間1.35・字間設定)。フォント描画の基準関数を1本作る。script.json(セリフ/座標/吹き出し種別/級数)→Pillow自動写植 or クリスタPSD+psd-tools差し替えのどちらかを実装[35][36][37]。| 種類 | 線・しっぽ | 推奨フォント・級数 | Pillowでの作り方 | クリスタでの作り方 |
|---|---|---|---|---|
| 通常(楕円) | 黒縁細め、しっぽは三角(口元へ) | 源暎アンチック 18〜20Q | ellipse+polygonでしっぽ、stroke_width | 楕円ツール→パスでしっぽ追加 |
| 心の声(雲形/小判) | 雲形の連続円弧、しっぽは小さな円を点々 | 源暎こぶり明朝/細 16〜18Q | 複数ellipse合成+小円列 | 雲形ブラシ or パス手描き風 |
| 小声(破線) | 破線(6px on/4px off)、縁細 | セリフより1〜2Q小さく | ImageDrawで破線ループ描画 | 破線ブラシ+テキスト縮小 |
| 絶叫(トゲ/フラッシュ) | 放射状トゲ12〜16本、白フチ | 源暎ゴシックKL 22〜28Q | 星形polygon生成+回転 | 効果線ブラシ+トゲパス |
| モノローグ(角形) | 角丸長方形、しっぽ無し | 源暎ラテゴ/エムゴ 18〜20Q | rounded_rectangle | 長方形+角丸+別レイヤー |
| ナレーション(枠外) | 角丸四角・コマ外配置 | 源暎エムゴ 16〜18Q | 枠外座標に配置 | テキストレイヤー枠外 |
# Pillow: 通常吹き出し+しっぽ+セリフ(骨子)
from PIL import Image, ImageDraw, ImageFont
img = Image.new('RGBA', (512,512), (0,0,0,0))
d = ImageDraw.Draw(img)
d.ellipse([50,50,300,200], fill='white', outline='black', width=3)
d.polygon([(180,200),(205,238),(155,202)], fill='white', outline='black') # 口元へ向くしっぽ
font = ImageFont.truetype('genei-antique.otf', 40)
d.multiline_text((90,80), "セ\nリ\nフ", font=font, fill='black', spacing=14) # 縦書きは1字ずつ配置が基本
※Pillowは縦書きを直接サポートしないため、実務では1文字ずつy座標を進めて描画し、句読点・小書き・約物・縦中横を自前で処理する(→9章・10章で詳述)。
| 項目 | 商業 | 同人 | Web縦読み | 処理 |
|---|---|---|---|---|
| 級数 | 20Q(5mm) | 18Q | 22〜24Q | 1Q=0.25mm[18][25] |
| 行送り(行間) | 級数の130〜135% | 130% | 135〜140% | クリスタ既定「0」を必ず上げる[37] |
| 字間 | 0〜+0.5Q | 0Q | +0.5Q | 詰めすぎ厳禁 |
| 行頭禁則 | 、。」』)】・ゝゞ々 …等を行頭に置かない | [21][23] | ||
| 行末禁則 | 「『(【 等を行末に置かない | 追い込みで調整[23] | ||
| 縦中横 | 「!!」「!?」「2桁数字」は90°回さず横並びで縦組に収める | — | ||
| 三点リーダー | 「……」=2個セット(1個だけはNG) | [24] | ||
| ダッシュ | 「——」=全角2個連結・縦向き保持 | [24] | ||
| 長音「ー」 | 縦組では縦長に表示(回転不要) | — | ||
| 小書き(ゃゅょっ) | 縦組で右上寄せ・位置補正 | — | ||
| 句読点 | 漫画は原則入れない(改行/空白/…で間を作る) | [24] | ||
| 追い込み/追い出し | 禁則回避で行末を1〜3字調整 | [23] | ||
禁則・追い込みは「字間が広がりすぎて逆に読みにくい」副作用が出ることがあるため、禁則を厳しくしすぎず、最終は目視で間を整えるのがプロの落としどころ[21][23]。
描き文字の4原則:鋭い音=尖り/鈍い音=太く丸く/大きさ=音量/角ばり=硬さ・丸み=柔らかさ[30][31]。フォントを置くだけでは「音が鳴らない」。必ず加工する。
draw.text(..., stroke_width=4, stroke_fill='white')で1重、さらに大きめ黒文字の上に白文字を重ねて2重フチ。paste(grad, mask=textmask)。rotate(±15°)+微小なスケール揺らぎでランダム配置。GaussianBlur(2)。ハートは別レイヤーで合成。# 喘ぎの波打ち+ランダム回転(骨子)
import numpy as np
def wavy(draw, text, font, x, y, amp=6):
for i,ch in enumerate(text):
dy = int(amp*np.sin(i*0.6))
# 1字ごとに別レイヤーで回転合成するのが本実装。ここは座標骨子のみ
draw.text((x, y+dy), ch, font=font, fill=(255,20,147),
stroke_width=4, stroke_fill='white')
x += font.size*0.9
| 音 | 形状方針 | ベースフォント | 色の例 |
|---|---|---|---|
| あ゛あ゛っ | 波打ち+長音を引き伸ばす | 源暎ゴシックKL | #FF1493 |
| んっ… | 小さめ・破線吹き出し内 | 源暎アンチック | #FF69B4 |
| はぁはぁ | 息2連・横に流す | 手書き崩し | #FFB6C1 |
| イクッ | トゲ放射・爆発配置 | 851/Blambot | #FF0000 |
| きゅん | 丸く+ハート添え | 源暎ラテゴ | #FF00FF |
| ぐぷっ | 太字圧縮・粘着感 | 851チカラヅヨク | #8B0000 |
| あっあっ | 小文字連続・リズム | 源暎アンチック | #FF69B4 |
| ひぐぅ | 波+小書きで震え | 手書き崩し | #FF1493 |
| れろれろ | 舌状に曲げる | しっぽりアンチック | #FF0000 |
| びくっ | 震え線・微回転 | GL-ノバンチカ源 | #FF4500 |
完全自動は不可能。座標・しっぽ・禁則の最終判断は人が要る。狙うのは「8割を機械が下地、2割を人が仕上げ」。2方式:
script.json(セリフ/座標/種別/級数)→Pillowで縦書き写植+吹き出し描画→ComfyUI出力PNGに合成。テキストはコードで完全制御できる反面、縦書き約物処理を自作する必要。psd-tools[35]やPhotoshop JSX[36]でテキストを一括差し替え。約物・縦書きはクリスタの組版に任せられるのが利点。セリフ自動差し替えパイプラインの実例あり[37]。# psd-tools: テンプレPSDのテキストを差し替え(骨子)
from psd_tools import PSDImage
psd = PSDImage.open('typeset_template.psd')
for layer in psd.descendants():
if layer.kind == 'type' and layer.name.startswith('serif'):
layer.text = next_dialogue # 実際はエンジン制約あり→JSX併用が堅い
psd.save('page01_out.psd')
※psd-toolsはテキスト書き換えに制約があるため、堅実なのはPhotoshop/クリスタ側のスクリプト(JSX/オートアクション)でテキスト流し込み[36]。座標と原稿はscript.jsonで一元管理する設計が再利用しやすい。
script.json規約だけ共通化する。| # | NG(素人) | なぜ素人っぽい | プロはこうする |
|---|---|---|---|
| 1 | セリフが吹き出しからはみ出す | 級数とフキダシ径の見積もりが甘い[39] | 内側に0.5〜1字の余白を確保。収まらなければ改行か級数を1Q下げる |
| 2 | 行間ゼロ(クリスタ既定のまま) | 文字が詰まり圧迫感→離脱[37] | 行送り130〜140%で固定 |
| 3 | フォントを5種以上混在 | 統一感が無く安っぽい[37] | セリフ1+心の声1+ナレ1+SFX1の4種以内に絞る |
| 4 | 喘ぎ・SFXを本文と同じ明朝/ゴシックで置く | 音が鳴らず平坦[30] | 851等+フチ・グラデ・変形で描き文字化 |
| 5 | 句読点「。」「、」を多用 | 漫画作法から外れる[24] | 原則句読点なし。改行・空白・「……」で間 |
| 6 | 「…」を1個だけ/「ー」を半角 | 素人サイン[24] | 「……」「——」は2個セット・全角 |
| 7 | 行頭に「。」「)」が来る | 禁則無視で読みにくい[21][23] | 追い込み・追い出しで回避 |
| 8 | テキストが中央でなく片寄る | 吹き出し中心とズレて不安定 | 吹き出し重心に対しセンタリング、しっぽ側を空ける |
| 9 | しっぽが話者の口から出ていない | 誰のセリフか不明[28] | しっぽ先端を口元座標へ。心の声だけ頭部へ |
| 10 | 英語版で日本語フォントを流用 | 欧文として崩れる | Wild Words/Anime Ace+英語SFXに切替[38][41] |
当環境の既存写植DR群は、フォント選定・禁則・喘ぎ写植・クリスタ自動化・Pillow実装などを個別テーマで深掘りしている(例:エロ漫画フォント選定完全ガイド/日本漫画の縦書きセリフ写植/エロ漫画の喘ぎ淫語セリフ写植テク/クリスタ写植自動化/Pillow縦書き高品質実装 ほか)。本レポはそれらを「画像生成後の後付け写植を商業品質に仕上げる一気通貫の実装書」として統合し、特に①吹き出し6種②組版数値③喘ぎSFXレタリング④半自動パイプライン⑤英語版ローカライズ⑥素人NG10+チェックリストを横断する点が新規。直描き(AnyText等)を扱う「拡散モデルで日本語セリフを直接描く技術」DRの「写植維持」結論を受けた実装側の続編に位置づけられる。
減点理由:上位作品のフォントは「見た目からの推定」を含み一次確認に限界がある点/収益試算が前提依存の推定である点。フォント配布元・組版規則・スキャンレーション講座など脚注は全て実在URLで裏取り済み。
補足(同人写植の失敗談・実務): 初めての同人誌で起こしがちな失敗7項目 https://note.com/ukiwaltz/n/n074abcab640a