You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell结合iText更新PDF表单时如何修改单个字段的字体

解决方案

  1. 提前准备好你需要的手写字体文件(TTF/OTF格式均可),放到本地固定路径,示例路径为C:\Scripts\PDF\Fonts\SignatureFont.ttf,可替换为系统自带的手写类字体(如华文行楷、草书等),也可使用自定义的商用免费签名字体。
  2. 只需修改你代码中处理签名字段的部分,添加字体加载、字段字体设置逻辑即可,修改后的代码片段如下:
##----------------------------------------------------------------------------------------
## Signature
##----------------------------------------------------------------------------------------
# 加载自定义手写字体,替换为你实际的字体文件路径
$fontProgram = [iText.IO.Font.FontProgramFactory]::CreateFont("C:\Scripts\PDF\Fonts\SignatureFont.ttf", $true)
# 选用IDENTITY_H编码兼容中英文显示,无需修改
$signatureFont = [iText.Kernel.Font.PdfFontFactory]::CreateFont($fontProgram, [iText.Kernel.Pdf.PdfEncodings]::IDENTITY_H, $false)

$Field = ($Fields | Where-Object {$_.key -eq "text_7byxl"}).Value
# 先给字段设置自定义字体
$Field.SetFont($signatureFont)
# 可根据字段大小调整字号,按需修改数值即可
$Field.SetFontSize(14)
$Field.SetValue("$myRequestor [from Request $myRequest]")

注意事项

  • 如调用系统自带字体,直接读取C:\Windows\Fonts\下对应字体文件即可
  • 若运行时报字体加载错误,检查字体文件是否有读取权限,建议用管理员权限运行PowerShell脚本

内容的提问来源于stack exchange,提问作者Jim Weaver

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 00:36:03