measure_text — ANNOTATE text op

• 資料種類:text → table

• 呼叫: import fullseye as fs; fs.ledger.measure_text(text, font_size=14, font_path=None, max_width=None, min_font_size=9, line_spacing=1.15, wrap=True, bold=False, italic=False)(要直接呼叫實作,import annotate; annotate.measure_text(text, font_size=14, font_path=None, max_width=None, min_font_size=9, line_spacing=1.15, wrap=True, bold=False, italic=False);從台帳取用則 opsannotate.get("measure_text"))

用法

在畫之前先測量文字。放不下就折行或縮小,再不行就擲出例外。

Parameters

text : str

要量測的字串(以 \n 換行)。

font_size : int

期望的字級。若放不進 max_width,則每次縮小 1pt。

font_path : str or None

明確指定後,跨機器也能得到相同結果。None 時依固定順序

搜尋 FONT_CANDIDATES。

max_width : int or None

想要放入的寬度[px]。None 時既不縮小也不換行。

min_font_size : int

縮到這裡仍放不進則 ValueError(不會悄悄截斷)。

line_spacing : float

行距係數。

bold, italic : bool or int

合成的粗體、斜體(_bold_px / _italic_tile)。並非真正的

Bold / Italic 字體,所以字形不同 —— 需要真正的字體時,

請把該字體的檔案傳給 font_path。給 bold 傳整數,

可直接指定疊印次數。粗細與傾斜所增加的部分計入 width,

因此底板和表格的欄寬會相應變寬(疊印只在橫向變粗,所以

height 不變)。

wrap : bool

True(預設)時在 max_width 處換行。False 時不換行,

而是不增加行數、縮小字型來放入(用於像網格標籤那樣,變成 2 行

就會破壞版面的地方 —— 與 exhibit_tile._fit_label 同樣的做法)。

無論哪種,縮到 min_font_size 仍放不進就拋出例外。

\n 換行與 max_width 有無、wrap 取值如何無關,一律生效

(不會發生「不給寬度就壓成 1 行」的事故)。

Returns

dict

{"lines", "font", "font_size", "width", "height", "line_height"}。

width/height 為實測值[px]。

Raises

ValueError

max_width 非正 / 縮到 min_font_size 仍放不進 1 行。

詳細使用指南

• figure_annotation 族使用指南

背景知識指南(該運算子背後的物理與規範)

• dataset_conventions — 訓練資料集規範知識 —— COCO / YOLO / VOC 及外觀檢測中的陷阱

參考(範例資料、文獻)

• 範例資料目錄(下載 URL / 授權) —— 2-D 用 skimage.data(BSD/公有領域)加合成圖,3-D 給出真實資料源(Stanford/PDS 等)的下載 URL。

• 運算子來歷與參考文獻 —— 該運算子族所依據的研究/方法出處。

• 演算法的正典(作者、年份)與用途見上面的族使用指南。

可執行的範例(實際呼叫該運算子並已驗證的樣例)

• annotate_gallery — py -3.11 examples/annotate_gallery.py

• annotate_paper_tour — py -3.11 examples/annotate_paper_tour.py

• poc_diabolo_model_and_vision — py -3.11 examples/poc_diabolo_model_and_vision.py

型別可銜接的下一個運算子(可接受 table 作為輸入)

—

同類別(text)

text_box


*Provenance: annotate.py — ANNOTATE 運算子登記表。本條目由 tools/opdocs.py md 自動產生(請勿手動編輯)。*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.