Fontes Personalizadas em Campos de Formulário

This article was translated from English: Does it need improvement?
Translated
View the article in English

Ao estilizar campos de formulário interativos, o método SetFont() não pode aplicar uma fonte personalizada. Não há erro; o pedido de fonte é simplesmente ignorado, deixando o campo em sua aparência padrão.

O estilo de fonte personalizada ainda não é suportado através de SetFont(). Até que esteja disponível em uma futura versão, você pode definir a fonte, tamanho e cor diretamente através da propriedade DefaultAppearance do campo, que aceita uma string de instruções de desenho em PDF.

Solução

1. Defina a string de aparência manualmente

Carregue o documento, pegue o campo e atribua uma string DefaultAppearance que descreve a fonte, tamanho e cor:

var pdf = PdfDocument.FromFile("FilledForm.pdf");
TextFormField field = pdf.Form[0] as TextFormField;
// Manually define the appearance string:
// Format: /{FontName}-{Weight} {FontSize} Tf {R} {G} {B} rg
field.DefaultAppearance = "/AdobeThai-Bold 15 Tf 0.898 0.133 0.215 rg";
field.Value = "This is size 15";
pdf.SaveAs("customformfieldvalue15.pdf");
var pdf = PdfDocument.FromFile("FilledForm.pdf");
TextFormField field = pdf.Form[0] as TextFormField;
// Manually define the appearance string:
// Format: /{FontName}-{Weight} {FontSize} Tf {R} {G} {B} rg
field.DefaultAppearance = "/AdobeThai-Bold 15 Tf 0.898 0.133 0.215 rg";
field.Value = "This is size 15";
pdf.SaveAs("customformfieldvalue15.pdf");
Imports System

Dim pdf = PdfDocument.FromFile("FilledForm.pdf")
Dim field As TextFormField = TryCast(pdf.Form(0), TextFormField)
' Manually define the appearance string:
' Format: /{FontName}-{Weight} {FontSize} Tf {R} {G} {B} rg
field.DefaultAppearance = "/AdobeThai-Bold 15 Tf 0.898 0.133 0.215 rg"
field.Value = "This is size 15"
pdf.SaveAs("customformfieldvalue15.pdf")
$vbLabelText   $csharpLabel

A string é analisada como operadores de texto PDF, então a fonte que você nomeia deve estar instalada na máquina que renderiza o documento.

2. Leia a string de aparência

Cada token na string mapeia para uma parte do estilo do campo:

  • /AdobeThai-Bold: o nome e o peso da fonte. Esta fonte deve estar instalada no sistema.
  • 15 Tf: o tamanho da fonte, aqui 15 pt.
  • 0.898 0.133 0.215 rg: a cor RGB, neste caso, um tom avermelhado.

AvisoA fonte nomeada deve estar instalada no sistema que renderiza o PDF. Se estiver ausente, o estilo não será aplicado como escrito.

Isso lhe dá controle total sobre a fonte e a cor do texto do campo do formulário até que o suporte SetFont() chegue em uma futura versão do IronPDF.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais
Pronto para começar?
Nuget Downloads 20,296,129 | Versão: 2026.7 recém-lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas? PM > Install-Package IronPdf
executar um exemplo Veja seu HTML se transformar em um PDF.