1920 × 1080 作品として見る 版そのものを描画 — どの倍率でも字は潰れません 骨格・余白・カラムを重ねた状態
1920 × 1080 作品として見る 版そのものを描画 — どの倍率でも字は潰れません 骨格・余白・カラムを重ねた状態
コピーして貼るか、ファイルに保存して渡す。ネットにつながらない環境には「全部入り」を 1 つ渡せば足りる。
このパネルの中身を、URL の先にあるファイルの中身まで含めて 1 つにまとめた Markdown — 大きいのでファイルで渡す(コピーは 32KB まで)
以下の仕様でスライドを 1 枚作ってください。 - 版面 1920 × 1080 - 余白 上 96 右 140 下 56 左 140 ## 文字(版面 1920px に対する px) kicker 22px / 700 / 字間 0.16em / 等幅数字 title 52px / 700 / 行送り 1.35 / 等幅数字 axisHead 24px / 700 / 等幅数字 value 34px / 700 / 行送り 1.1 / 等幅数字 yoy 20px / 400 / 等幅数字 segment 30px / 700 / 等幅数字 note 20px / 400 / 等幅数字 folio 16px / 400 / 等幅数字 ## 配色 地 #FFFFFF / 面 #F2F4F8 / 文字 #0E1A2B / 補助 #5B6879 / 強調 #1D3F72 / 罫 #D6DCE5 ## 外すと崩れる点 - 左右の目盛りは違ってよいが、違うことを図の下に書く。書かないと棒の長さを左右で比べられてしまう - 棒の端に値と前年比を置き、目盛りの軸は描かない - 見出しが指す事業の両側の棒だけを濃くする - 事業は 4 つまで。それ以上は表にする 内容は[ここに自分の内容を書く]に置き換えてください。寸法と配色はそのまま守ってください。 正確に再現する場合は、この HTML をそのまま使ってください: https://design-vault.pages.dev/designs/segment-butterfly-bars/pattern.html
/ai/designs/segment-butterfly-bars.json
format: slide-16x9
density: medium
layout:
kind: axis
canvas:
w: 1920
h: 1080
margin:
top: 96
right: 140
bottom: 56
left: 140
type:
kicker:
size: 22
weight: 700
tracking: 0.16em
numeric: tabular
title:
size: 52
weight: 700
leading: 1.35
numeric: tabular
axisHead:
size: 24
weight: 700
numeric: tabular
value:
size: 34
weight: 700
leading: 1.1
numeric: tabular
yoy:
size: 20
weight: 400
numeric: tabular
segment:
size: 30
weight: 700
numeric: tabular
note:
size: 20
weight: 400
numeric: tabular
folio:
size: 16
weight: 400
numeric: tabular
colors:
ground: "#FFFFFF"
surface: "#F2F4F8"
ink: "#0E1A2B"
muted: "#5B6879"
accent: "#1D3F72"
rule: "#D6DCE5"
rules:
- 左右の目盛りは違ってよいが、違うことを図の下に書く。書かないと棒の長さを左右で比べられてしまう
- 棒の端に値と前年比を置き、目盛りの軸は描かない
- 見出しが指す事業の両側の棒だけを濃くする
- 事業は 4 つまで。それ以上は表にする{
"format": "slide-16x9",
"density": "medium",
"layout": {
"kind": "axis",
"canvas": {
"w": 1920,
"h": 1080
},
"margin": {
"top": 96,
"right": 140,
"bottom": 56,
"left": 140
}
},
"type": {
"kicker": {
"size": 22,
"weight": 700,
"tracking": "0.16em",
"numeric": "tabular"
},
"title": {
"size": 52,
"weight": 700,
"leading": 1.35,
"numeric": "tabular"
},
"axisHead": {
"size": 24,
"weight": 700,
"numeric": "tabular"
},
"value": {
"size": 34,
"weight": 700,
"leading": 1.1,
"numeric": "tabular"
},
"yoy": {
"size": 20,
"weight": 400,
"numeric": "tabular"
},
"segment": {
"size": 30,
"weight": 700,
"numeric": "tabular"
},
"note": {
"size": 20,
"weight": 400,
"numeric": "tabular"
},
"folio": {
"size": 16,
"weight": 400,
"numeric": "tabular"
}
},
"colors": {
"ground": "#FFFFFF",
"surface": "#F2F4F8",
"ink": "#0E1A2B",
"muted": "#5B6879",
"accent": "#1D3F72",
"rule": "#D6DCE5"
},
"rules": [
"左右の目盛りは違ってよいが、違うことを図の下に書く。書かないと棒の長さを左右で比べられてしまう",
"棒の端に値と前年比を置き、目盛りの軸は描かない",
"見出しが指す事業の両側の棒だけを濃くする",
"事業は 4 つまで。それ以上は表にする"
]
} /designs/segment-butterfly-bars/pattern.html — 版そのものの HTML。書体の部分集合ごと同梱で、開けばこの絵がそのまま出ます。
<!doctype html>
<meta charset="utf-8">
<title>事業別の売上と利益 — 中央の事業名を挟んで、左に売上、右に利益</title>
<meta name="dv-font" content="IBM Plex Sans JP:400;500;700">
<link rel="stylesheet" href="./font.css">
<style>
/* この版そのもの。index.md の layout / type / colors は、この HTML を
scripts/render-pattern.mjs で実測した結果であって、別に書いた説明ではない。
会社・人物・数値はすべて説明用の架空のもの。 */
:root {
--ground: #FFFFFF;
--surface: #F2F4F8;
--ink: #0E1A2B;
--muted: #5B6879;
--accent: #1D3F72;
--rule: #D6DCE5;
--bar: color-mix(in srgb, var(--accent) 30%, var(--ground));
}
* { box-sizing: border-box; margin: 0; }
html, body { width: 1920px; height: 1080px; }
body { font-family: "IBM Plex Sans JP", "IPAGothic", sans-serif; font-variant-numeric: tabular-nums; }
.artboard {
width: 1920px; height: 1080px;
background: var(--ground); color: var(--ink);
padding: 96px 140px 56px; /* → layout.margin */
}
.content { height: 100%; display: grid; grid-template-rows: auto 1fr auto; row-gap: 40px; }
.kicker { font-size: 22px; font-weight: 700; letter-spacing: .16em; color: var(--accent); }
.title { font-size: 52px; font-weight: 700; line-height: 1.35; margin-top: 12px; }
/* 頁の足:社名・資料名・頁番号。どの頁でも同じ位置に置く */
.folio { display: flex; justify-content: space-between; font-size: 16px; color: var(--muted); border-top: 1px solid var(--rule); padding-top: 16px; }
.chart { display: grid; grid-template-rows: auto 1fr auto; row-gap: 24px; }
.heads { display: grid; grid-template-columns: 1fr 280px 1fr; }
.heads p { font-size: 24px; font-weight: 700; }
.heads p:first-child { text-align: right; }
.heads p:last-child { text-align: left; }
.heads small { font-size: 20px; font-weight: 400; color: var(--muted); margin-left: 8px; }
.rows { display: grid; grid-template-rows: repeat(3, 1fr); align-items: center; border-top: 1px solid var(--rule); border-bottom: 1px solid var(--rule); }
.row { display: grid; grid-template-columns: 1fr 280px 1fr; align-items: center; }
.side { display: flex; align-items: center; gap: 20px; }
.side.left { justify-content: flex-end; }
.bar { display: block; flex: none; height: 72px; background: var(--bar); }
.val { flex: none; white-space: nowrap; }
/* 見出しが指す事業だけを濃い紺にする。残りは同じ淡い紺 */
.row.hi .bar { background: var(--accent); }
.seg { font-size: 30px; font-weight: 700; text-align: center; }
.left .val { text-align: right; }
.num { font-size: 34px; font-weight: 700; line-height: 1.1; }
.yoy { font-size: 20px; color: var(--muted); margin-top: 4px; }
.note { font-size: 20px; color: var(--muted); text-align: center; }
</style>
<div class="artboard" data-artboard>
<div class="content" data-content>
<div>
<p class="kicker" data-type="kicker">事業別</p>
<h1 class="title" data-type="title">増益の 6 割を医療機器が稼いだ</h1>
</div>
<div class="chart">
<div class="heads"><p data-type="axisHead">売上高<small>億円</small></p><span></span><p>営業利益<small>億円</small></p></div>
<div class="rows">
<div class="row">
<div class="side left"><div class="val"><p class="num" data-type="value">214.0</p><p class="yoy" data-type="yoy">前年比 +4.1%</p></div><span class="bar" style="width: 71.3%"></span></div>
<p class="seg" data-type="segment">産業機器</p>
<div class="side right"><span class="bar" style="width: 70.6%"></span><div class="val"><p class="num">22.6</p><p class="yoy">前年比 +11.3%</p></div></div>
</div>
<div class="row hi">
<div class="side left"><div class="val"><p class="num">138.5</p><p class="yoy">前年比 +14.6%</p></div><span class="bar" style="width: 46.2%"></span></div>
<p class="seg">医療機器</p>
<div class="side right"><span class="bar" style="width: 44.1%"></span><div class="val"><p class="num">14.1</p><p class="yoy">前年比 +31.8%</p></div></div>
</div>
<div class="row">
<div class="side left"><div class="val"><p class="num">130.1</p><p class="yoy">前年比 +4.2%</p></div><span class="bar" style="width: 43.4%"></span></div>
<p class="seg">計測サービス</p>
<div class="side right"><span class="bar" style="width: 14.1%"></span><div class="val"><p class="num">4.5</p><p class="yoy">前年比 −6.3%</p></div></div>
</div>
</div>
<p class="note" data-type="note">左右で目盛りが違う。棒の端は売上高 300 億円、営業利益 32 億円</p>
</div>
<div class="folio">
<p data-type="folio">アオバ精工株式会社 2027 年 3 月期 第 2 四半期 決算説明資料</p>
<p>03</p>
</div>
</div>
</div>
/designs/segment-butterfly-bars/font.css — 全部入りには入れていない
/* dv-subset v2 — generated by scripts/subset-font.mjs. Do not edit.
* font IBM Plex Sans JP 400;500;700
* chars 89 (6e273fa9e77e12ae)
*
* pattern.html の文字だけを含む部分集合。描画時に外部へ取りに行かないよう同梱する。
* 版の文字を変えたら取り直すこと — 忘れると足りない字が豆腐になる。
* その取り忘れは pattern-entries.test.ts が上の指紋で検出する。
*/
@font-face {
font-family: 'IBM Plex Sans JP';
font-style: normal;
font-weight: 400;
font-display: block;
src: url(./font-0.woff2) format('woff2');
unicode-range: U+20, U+25, U+2b, U+2e, U+30-38, U+2014, U+2212, U+3000-3002, U+3044, U+3046, U+304b-304c, U+305f-3060, U+3066-3069, U+306b, U+306e-3070, U+308a, U+3092-3094, U+3099, U+30a2, U+30aa, U+30b5-30b6, U+30b9-30ba, U+30cf-30d0, U+30d2-30d3, U+30fc, U+4e0a, U+4e2d, U+4e8b, U+4f1a, U+5104, U+5186, U+5225, U+5229, U+524d, U+5272, U+533b, U+534a, U+53f3, U+540d, U+55b6, U+5668, U+56db, U+5897, U+58f2, U+592e, U+5de5-5de6, U+5e74, U+5f0f, U+631f, U+6599, U+660e, U+6708, U+671f, U+682a, U+68d2, U+696d, U+6a5f, U+6bd4, U+6c7a, U+6e2c, U+7523, U+7642, U+76ca, U+76db, U+76ee, U+793e, U+7a3c, U+7aef, U+7b2c, U+7b97, U+7cbe, U+8a08, U+8aac, U+8cc7, U+9055, U+9ad8;
}
@font-face {
font-family: 'IBM Plex Sans JP';
font-style: normal;
font-weight: 500;
font-display: block;
src: url(./font-1.woff2) format('woff2');
unicode-range: U+20, U+25, U+2b, U+2e, U+30-38, U+2014, U+2212, U+3000-3002, U+3044, U+3046, U+304b-304c, U+305f-3060, U+3066-3069, U+306b, U+306e-3070, U+308a, U+3092-3094, U+3099, U+30a2, U+30aa, U+30b5-30b6, U+30b9-30ba, U+30cf-30d0, U+30d2-30d3, U+30fc, U+4e0a, U+4e2d, U+4e8b, U+4f1a, U+5104, U+5186, U+5225, U+5229, U+524d, U+5272, U+533b, U+534a, U+53f3, U+540d, U+55b6, U+5668, U+56db, U+5897, U+58f2, U+592e, U+5de5-5de6, U+5e74, U+5f0f, U+631f, U+6599, U+660e, U+6708, U+671f, U+682a, U+68d2, U+696d, U+6a5f, U+6bd4, U+6c7a, U+6e2c, U+7523, U+7642, U+76ca, U+76db, U+76ee, U+793e, U+7a3c, U+7aef, U+7b2c, U+7b97, U+7cbe, U+8a08, U+8aac, U+8cc7, U+9055, U+9ad8;
}
@font-face {
font-family: 'IBM Plex Sans JP';
font-style: normal;
font-weight: 700;
font-display: block;
src: url(./font-2.woff2) format('woff2');
unicode-range: U+20, U+25, U+2b, U+2e, U+30-38, U+2014, U+2212, U+3000-3002, U+3044, U+3046, U+304b-304c, U+305f-3060, U+3066-3069, U+306b, U+306e-3070, U+308a, U+3092-3094, U+3099, U+30a2, U+30aa, U+30b5-30b6, U+30b9-30ba, U+30cf-30d0, U+30d2-30d3, U+30fc, U+4e0a, U+4e2d, U+4e8b, U+4f1a, U+5104, U+5186, U+5225, U+5229, U+524d, U+5272, U+533b, U+534a, U+53f3, U+540d, U+55b6, U+5668, U+56db, U+5897, U+58f2, U+592e, U+5de5-5de6, U+5e74, U+5f0f, U+631f, U+6599, U+660e, U+6708, U+671f, U+682a, U+68d2, U+696d, U+6a5f, U+6bd4, U+6c7a, U+6e2c, U+7523, U+7642, U+76ca, U+76db, U+76ee, U+793e, U+7a3c, U+7aef, U+7b2c, U+7b97, U+7cbe, U+8a08, U+8aac, U+8cc7, U+9055, U+9ad8;
}
出典を持たない自作パターン。pattern.html が版そのもので、cover.png と frontmatter の
layout / type / colors はどちらもそこから機械的に測った結果。一式「決算・経営報告」の
1 枚で、架空の会社「アオバ精工」の第 2 四半期決算説明として描いてある。会社・人物・数値はすべて架空。
A self-authored pattern. pattern.html is the artboard itself; both cover.png and the
measurements in the frontmatter are derived from it. One of the eight results-briefing slides, drawn
as a fictional company’s half-year results deck; every company, person and figure on it is invented.