web-dev-qa-db-ja.com

python-docxを使用して、MSWordで特定のフォントの色でテキストを記述します

pythonライブラリpython-docxを使用して、MS Wordファイルにテキストを書き込もうとしています。python-docxのフォントの色のドキュメントを確認しました このリンク上 および私のコードにも同じことを適用しましたが、今のところ成功していません。

これが私のコードです:

from docx import Document
from docx.shared import RGBColor
document = Document()
run = document.add_paragraph('some text').add_run()
font = run.font
font.color.rgb = RGBColor(0x42, 0x24, 0xE9)
p=document.add_paragraph('aaa')
document.save('demo1.docx')

Wordファイル「demo.docx」のテキストは単純に黒色です。

私はこれを理解することができません、助けていただければ幸いです。

11
troy_achilies

私はpython-docxdocsを使用して、自分で答えを見つけました。

正しいコードは次のとおりです。

from docx import Document
from docx.shared import RGBColor
document = Document()
run = document.add_paragraph().add_run('some text')
font = run.font
font.color.rgb = RGBColor(0x42, 0x24, 0xE9)
p=document.add_paragraph('aaa')
document.save('demo1.docx')

'some text'は、add_paragraph()関数ではなくadd_run()関数のパラメーターです。

上記のコードは希望の色を与えます。

6
troy_achilies