bwkyd/wps-skills

wps-poetry

诗词精美排版。把古诗词、现代诗、对联排成精美的Word文档, 华文行楷大字、古风配色、充分留白,可直接打印装裱。教学展示活动布置也好用。 用于帮助用户排版诗词。当用户提到诗词、古诗、对联、书法排版时触发。 Chinese poetry typesetting - elegant formatting for printing and display.

ソースを見る

使い方

  1. インストールコマンドをコピーし、自分の環境へ導入する前にソースを確認します。
  2. 必要なツール、認証情報、対応環境を原文で確認します。
  3. 入力と成果物を指定し、出力を資料と照合します。
npx skills add https://github.com/bwkyd/wps-skills --skill wps-poetry

開始前の確認

  • 導入にはモデル契約、API枠、ファイルへのアクセス許可は含まれません。
  • スター数や導入数は活動の指標であり、独立した品質・安全性試験ではありません。
リポジトリの原文

見出し、例、コード、表、リンク、参照画像を含む原文を表示しています。

诗词排版工具

诗词 → 精美排版 → 可打印/装裱级别的文档。

小众但有趣:让诗词以最美的姿态呈现。

When to Use

  • 古诗词精美排版打印
  • 对联排版
  • 教学材料中的诗词展示
  • 文化活动用诗词海报底稿
  • 用户说"帮我排版这首诗""做个对联"

When NOT to Use

  • 普通文档排版 → 使用 wps-docx-writer
  • 公文 → 使用 wps-gongwen

排版样式

text
[1] 经典横排 → 居中、留白、印章装饰
[2] 竖排古风 → 从右到左、竖排文字
[3] 对联格式 → 上联+下联+横批
[4] 现代诗 → 左对齐、错落有致
[5] 书法练字 → 田字格/米字格

工作流程

Step 1: 确认诗词内容和排版需求

  • 诗词全文(含标题、作者)
  • 排版样式
  • 用途(打印/展示/教学)

Step 2: 生成排版

python
from docx import Document
from docx.shared import Pt, Cm, Inches, RGBColor, Emu
from docx.enum.text import WD_ALIGN_PARAGRAPH
from docx.oxml.ns import qn
import os

def create_poetry_doc(title, author, lines, style='经典横排',
                      output_path=None):
    """生成诗词排版文档"""
    doc = Document()
    section = doc.sections[0]

    def set_font(run, name='华文行楷', size=18, bold=False, color=None):
        run.font.size = Pt(size)
        run.font.name = name
        run._element.rPr.rFonts.set(qn('w:eastAsia'), name)
        run.bold = bold
        if color:
            run.font.color.rgb = RGBColor(*color)

    if style == '经典横排':
        section.page_width = Cm(21)
        section.page_height = Cm(29.7)
        section.top_margin = Cm(5)
        section.bottom_margin = Cm(5)
        section.left_margin = Cm(5)
        section.right_margin = Cm(5)

        # 大量留白后开始
        for _ in range(4):
            doc.add_paragraph()

        # 标题
        p = doc.add_paragraph()
        p.alignment = WD_ALIGN_PARAGRAPH.CENTER
        p.paragraph_format.space_after = Pt(24)
        run = p.add_run(title)
        set_font(run, '华文行楷', 28, color=(0x8B, 0x45, 0x13))

        # 作者
        p = doc.add_paragraph()
        p.alignment = WD_ALIGN_PARAGRAPH.CENTER
        p.paragraph_format.space_after = Pt(36)
        run = p.add_run(f'【{author}】')
        set_font(run, '楷体', 14, color=(0x80, 0x80, 0x80))

        # 诗句
        for line in lines:
            p = doc.add_paragraph()
            p.alignment = WD_ALIGN_PARAGRAPH.CENTER
            p.paragraph_format.line_spacing = Pt(42)
            run = p.add_run(line)
            set_font(run, '华文行楷', 22, color=(0x33, 0x33, 0x33))

    elif style == '对联格式':
        section.page_width = Cm(29.7)  # 横向
        section.page_height = Cm(21)
        section.top_margin = Cm(3)
        section.left_margin = Cm(4)
        section.right_margin = Cm(4)

        # 横批
        if len(lines) >= 3:
            p = doc.add_paragraph()
            p.alignment = WD_ALIGN_PARAGRAPH.CENTER
            p.paragraph_format.space_after = Pt(48)
            run = p.add_run(lines[2])  # 横批
            set_font(run, '华文隶书', 36, True, color=(0xCC, 0x00, 0x00))

        doc.add_paragraph()

        # 上下联(使用表格模拟左右对称)
        table = doc.add_table(rows=1, cols=3)
        table.alignment = 1  # CENTER

        if len(lines) >= 2:
            # 上联(右)
            cell = table.cell(0, 2)
            p = cell.paragraphs[0]
            p.alignment = WD_ALIGN_PARAGRAPH.CENTER
            run = p.add_run(lines[0])
            set_font(run, '华文行楷', 28, color=(0x8B, 0x00, 0x00))

            # 下联(左)
            cell = table.cell(0, 0)
            p = cell.paragraphs[0]
            p.alignment = WD_ALIGN_PARAGRAPH.CENTER
            run = p.add_run(lines[1])
            set_font(run, '华文行楷', 28, color=(0x8B, 0x00, 0x00))

    elif style == '现代诗':
        section.top_margin = Cm(4)
        section.left_margin = Cm(6)
        section.right_margin = Cm(4)

        for _ in range(3):
            doc.add_paragraph()

        # 标题
        p = doc.add_paragraph()
        p.paragraph_format.space_after = Pt(18)
        run = p.add_run(title)
        set_font(run, '微软雅黑', 22, True, color=(0x2C, 0x3E, 0x50))

        # 作者
        p = doc.add_paragraph()
        p.paragraph_format.space_after = Pt(30)
        run = p.add_run(author)
        set_font(run, '微软雅黑', 11, color=(0x99, 0x99, 0x99))

        # 诗行
        for line in lines:
            if line.strip() == '':
                doc.add_paragraph()  # 空行
            else:
                p = doc.add_paragraph()
                p.paragraph_format.line_spacing = Pt(32)
                run = p.add_run(line)
                set_font(run, '华文楷体', 14, color=(0x33, 0x33, 0x33))

    if not output_path:
        output_path = f'{title}_排版.docx'
    doc.save(output_path)
    return os.path.abspath(output_path)

Step 3: 交付

  1. 生成精美排版的诗词文档
  2. 建议用较好的纸张打印
  3. 字体说明(如果用户电脑没有华文行楷等字体)

示例

bash
# 古诗排版
/wps-poetry 帮我排版李白的《将进酒》,经典横排风格

# 对联
/wps-poetry 上联:春风得意马蹄疾 下联:一日看尽长安花 横批:金榜题名

# 现代诗
/wps-poetry 帮我排版海子的《面朝大海春暖花开》
同じリポジトリから

関連する Skills

すべての Skills
bwkyd
コミュニティ

wps-cn-calendar

日历排班值班表。生成带法定节假日和调休标注的月度/年度日历表, 还能做三班倒/两班倒排班表和节假日值班安排,颜色区分不同班次一目了然。 用于帮助用户生成日历和排班表。当用户提到日历、排班、值班、节假日时触发。 Chinese calendar with holidays, shift scheduling, and duty rosters.

導入数
1
GitHub Stars
10
更新日
5月10日
bwkyd
コミュニティ

wps-formula

表格公式助手。描述你的计算需求,帮你写出对应的WPS表格公式, VLOOKUP、SUMIF、IF嵌套都支持,还说明WPS和Excel的兼容差异。 用于帮助用户生成WPS表格公式。当用户提到公式、函数、怎么算时触发。 WPS spreadsheet formula assistant.

導入数
1
GitHub Stars
10
更新日
5月10日
bwkyd
コミュニティ

wps-meeting-minutes

会议纪要整理。将散乱的会议笔记整理成规范的会议纪要格式, 提取出席人、议题、讨论内容、议定事项和责任人。 用于帮助用户整理会议纪要。当用户提到会议纪要、会议记录、会议总结时触发。 Meeting minutes generator.

導入数
1
GitHub Stars
10
更新日
5月10日
bwkyd
コミュニティ

wps-pivot

透视表傻瓜教程。透视表看不懂?不知道字段往哪拖?用最通俗的话教你: 透视表就是"按X分组,算Y的汇总"。帮你选对字段,生成透视结果。 用于帮助用户理解和创建透视表。当用户提到透视表、数据汇总、分组统计时触发。 Pivot table guide - explains concepts in plain language and generates results.

導入数
1
GitHub Stars
10
更新日
5月10日