Skip to main content

float-optimizer

PaperFit advice for LaTeX figure/table placement, width, clustering and breakable-table flow, verified against current page images.

소스 정보

저장소
openraiser/paperfit
최근 소스 활동
2026년 5월 8일 15:33
감지된 SKILL.md 언어
중국어
스타
338
포크
20

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
float-optimizer
description
PaperFit advice for LaTeX figure/table placement, width, clustering and breakable-table flow, verified against current page images.
# 浮动体优化 供 Codex、Claude Code、Cursor 宿主直接参考,也可用于可选 typed runtime。无需注册专用 agent。PaperFit 给出诊断和候选;宿主结合当前源码、模板和 PDF 判断是否采纳:**请你看看这是否是对的**。不确定的锚点、几何或视觉反馈应保留不确定性,不盲改整个文档。 ## 先找实际原因 将图表 label、首次引用、定义位置与当前物理页对齐。Figure 1 与 Table 1 不混用。需要源码导航时运行: ```text paperfit run scripts/extract_crossrefs.py <root.tex> --output .paperfit/reports/crossrefs.json ``` 源码行距与页距只是线索:定义靠近引用仍可能被前面的浮动体队列阻塞;跨页引用也可能是正常模板行为。先检查对象大小、放置参数、前面的队列、显式分页/间距和模板原生机制。页数目标与可读性同时考虑,不把全篇页数修复留到所有局部动作之后。 LaTeX 的浮动体布局取决于输入、辅助文件、引擎和宏包状态。使用原编译链,让引用与辅助文件收敛;不因“浮动具有随机性”无条件重复两次编译。每个有意义的候选编译后看实际页图。 ## 按原因选择策略 ### B1:浮动体远离引用或侵入后文 - 可以移动完整对象到适合的源码锚点,或调整该对象的放置参数;没有固定先后顺序。保留标签、引用含义和正文顺序。 - `[ht]`、`[tbp]`、`[!t]`、`[p]` 等取决于模板和对象。浮动页可以是合理方案,不能一概禁止;`h` 是偏好而不是强制,`!` 也不能让不适合页面的对象自动放下。 - 只有实际参考文献区域侵入或另一条确定边界问题才考虑 `\FloatBarrier` / 清空队列;检查空白、页数和上游浮动体。插在引用后、对象定义前的 barrier 不会约束尚未进入队列的对象。不要给每个图表机械加 barrier。 - 双栏 `figure*` / `table*` 常有页顶约束,但具体行为取决于类和宏包;并非永远只能到下一页顶部。先了解原模板,不为了靠近引用引入不兼容的浮动宏包。 ### B2:宽度或可读性不合适 - 以当前容器 `\linewidth` / `\columnwidth` / 跨栏 `\textwidth` 为准。过窄的几何候选不等于应该撑满栏宽;一律将所有图片放大可能制造高图、页数增长和标签问题。 - 图像缩放保留宽高比,并看最小图内标签;不得靠裁切、隐藏内容或不可读缩放满足页数。 - 表格优先考虑列宽、长表头换行、`tabularx` 或合理跨栏。保留每个有序数据格、单位、注释、caption、label。不机械删除所有 `resizebox`,也不把全表缩小当默认解法。 - 只有常规布局不足且模板允许时,考虑旋转或等价分面;查看阅读方向、邻页和总页数。跨栏更宽,也可能加剧浮动队列与留白。 ### B3:图表聚集或大片留白 聚集是否妨碍阅读取决于图表关联、可读性和引用顺序。三个小对象排在同页可以很好;一个大对象也可能形成糟糕页面。没有“每页最多两个图表”的通用约束。 检查强制 `[H]`、多余 barriers、过严浮动比例和大显式间距。可以分散放置偏好、改变完整对象的源码位置,或将关联对象组成布局,但应保留各自科学对象和标签。不要生成几行填充正文、删除句子或擅自把结果搬到附录。若需要改变文章结构或文本,必须来自用户的授权。 ### B4:跨页表格、裁切或过高对象 普通 `figure` / `table` 浮动体通常不可分页;看到被“切开”的图,先确认是裁切、出页、组合容器错误还是实际分页。不要把 `[!h]` 当作保证单页的办法。 对于真正可分页的长表,在适配模板的环境中重复表头并保留完整数据;标准 `longtable` 不能直接作为普通双栏长表的通用替代。对于过高图组,考虑横排、合理跨栏或保留完整内容的分面;重新检查子图标签、caption、顺序和引用。 ## 验证与执行边界 把相关动作作为一个可解释的候选;不必每个参数单独占一轮。编译后查看改变对象、邻近浮动页、受影响末页和图表的正常阅读大小。大的全篇重排扩大检查范围;最终接受前查看每个物理页。保留更好的前序源码/PDF,发生编译失败或部分写入时先恢复/纠正。 检查内容保护报告,并独立复核不支持的结构;解析器未证明安全不等于图表真的丢失。确认损坏、隐藏内容和禁用操作仍需恢复。不能因工具不支持便放弃合理的宿主原生编辑;也不能将视觉建议直接当作权限或保护例外。 typed runtime 的 B1 只处理放置,B2 单独处理尺寸。无精确锚点或全篇 B1 候选需要宿主独立证据和相应复核;具体接口见 `docs/HOST_NATIVE_WORKFLOW.md`。源码写回需 `--apply` 或用户已有的宿主修复授权。可选 batch 的上限与用户目标是否完成分开报告。 简洁记录实际对象、改动、当前页图改善、页数影响和剩余问题即可。无需生成专用 JSON 汇报,除非调用接口或用户明确要求。
GitHub에서 보기