Operacions de contingut

Operacions de contingut

Operacions de contingut

Les pàgines PDF es renderen per una seqüència d’operadors emmagatzemats en un flux de contingut. Aspose.PDF FOSS for .NET exposes these operators through OperatorCollection en cada un dels dos casos. Page, i proporciona: ContentStreamBuilder per a la construcció de nous contingut programàticament.


Operadors de flux de contingut de lectura

Every Page té una Contents propietat que retorna un OperatorCollection. Iterar per inspeccionar cada operador.

using var doc = Document.Open(pdfBytes);
var page = doc.Pages[1];

foreach (var op in page.Contents)
{
    Console.WriteLine(op.ToString());
}

Fonts de contingut d’edificació

ContentStreamBuilder proporciona una API fluida per a la construcció de flux de contingut seqüències d’operador, incloent la gestió de l’estat gràfic, la construcció del camí;, sortida de text i configuració del color.

var builder = new ContentStreamBuilder();
builder.SaveState();
builder.SetFillColor(1.0, 0.0, 0.0);  // Red fill
builder.SetMatrix(1, 0, 0, 1, 72, 700); // Translate
// ... add drawing or text operators
builder.RestoreState();

Estat de la gràfica

GraphicsState segueix la matriu de transformació actual, l’estat del text i Valors de color segons l’execució dels operadors.:

var gs = new GraphicsState();
gs.Save();
gs.ConcatMatrix(new Matrix(1, 0, 0, 1, 100, 200));
gs.Restore();

Operadors de color

SetColor i de la SetColorStroke fixar colors de rellotge i traços respectivament. Accepten components RGB, CMYK o en escala de gris.

// RGB fill color (blue)
var fill = new SetColor(0, 0, 1);

// RGB stroke color (red)
var stroke = new SetColorStroke(1, 0, 0);

Operadors de text

ShowText renderiza una cadena de text en la posició actual del text utilitzant el font i mida actuals des de l’estat gràfic.

var textOp = new ShowText("Hello, PDF!");

SetTextMatrix posiciona text definint una matriu de transformació per al text. l’espai.


Estat de gràfics ampliats

ExtGState controla propietats avançades de renderizació com rellotge i tracte alfa (transparència) i mode de barreja.


Consells i millors pràctiques

  • Sempre parelles. SaveState / RestoreState (o q / Q operadors) per evitar corrompre la pila d’estat gràfic.
  • Utilització: ContentStreamBuilder per a nou contingut en comptes de construir manualment objectes d’operador.
  • Inspect OperatorCollection Seqüències d’operadors inesperats poden causar problemes de renderizació.
  • Els operadors de color han d’ajustar-se a l’espai actual (RGB, CMYK o escala de gris).
  • Utilització: SetAdvancedColor per a patrons i espais de color basats en ICC.

Problemàtiques comuns

IssueCauseCorrecció
Text no visible després d’afegir operadorsNo hi ha font establerta en textAfegir a SetFont operador abans de ShowText
Els colors apareixen malament.Desacord d’espai de color (RGB vs CMYK)Utilitzar l’operador que correspon a l ’espai de color actiu.
Desbordament de l’estat dels gràfics en pilaUnbalanced Save / Restore parellesAssegurar que cada SaveState té un equipatge RestoreState
El contingut apareix en la posició equivocada.Transformació de matriu absent o incorrecta.Verify SetMatrix o de la seva ConcatMatrix valors de la

FAQ

Què és un flux de contingut PDF?

Un flux de contingut és una seqüència d’operadors que descriuen com fer un render a la pàgina trams de dibuix, col·locació de text, configuració de colors i gestió de l’estat dels gràfics.

Puc afegir contingut nou a una pàgina existent?

Accés. page.Contents i afegir nous operadors, o utilitzar ContentStreamBuilder per construir una seqüència i afegir-la.

Com faig transparent el text?

Utilització: ExtGState per configurar l’alfa de rellotge (ca) a un valor entre 0 (totalment) transparents) i 1 (totalment opaques).


Resum de referència d’API

Classe / mètodeDescription
OperatorCollectionSeqüència d’operadors de flux de contingut en una pàgina
ContentStreamBuilderConstructor fluent per a la construcció de seqüències d’operadors
ContentStreamBuilder.SaveStateEmpenyar l’estat actual de la gràfica a la pila
ContentStreamBuilder.RestoreStateEstat de gràfics pop des de la pila
ContentStreamBuilder.SetFillColorConfigurar el color de rellotge en l’espai actual de colors
ContentStreamBuilder.SetMatrixAplicar una transformació de coordenades
GraphicsStateTracks matriu de transformació, color i text estat
SetColorL’operador configura el color sense taques (emplenament)
SetColorStrokeL’operador configura el color de l’accionament.
SetAdvancedColorOperador per a espais de color basats en patrons / ICC
ShowTextOperador que representa una cadena de text
SetTextMatrixText de posicionament per operador a través d’una matriu.
ExtGStateEstat gràfic ampliat (mode alfa, mode de barreja)

See Also

 Català