Trabalhar com Gradiente em ficheiro XPS | Python

Um gradiente é uma transição gradual entre duas ou mais cores ou tons. Nas artes visuais, gráficos e design, os gradientes são frequentemente utilizados para criar transições suaves de uma cor para outra, adicionando profundidade, dimensão e interesse visual a um objeto ou imagem. Os gradientes podem variar em complexidade, desde simples gradientes de duas cores até misturas mais complexas que envolvem múltiplas cores ou até mesmo níveis de transparência.

Aqui descobrirá como adicionar diferentes tipos de gradientes a ficheiros XPS em Python.

Adicionar Gradiente em Documento XPS

Adicionar Gradiente Horizontal

O Aspose.Page para Python via .NET disponibiliza a classe XpsGradientBrush, criada para incorporar gradientes em documentos XPS. Para tal, deve especificar XpsGradientStop e adicionar XpsPath ao objeto da classe XpsDocument. O seguinte excerto de código demonstra a funcionalidade completa para adicionar um gradiente horizontal a um documento XPS:

Veja como trabalhar com um gradiente em documentos XPS através de . NET, Java e C++.


O resultado

Adicionar Gradiente Horizontal

 1# The path to the documents directory.
 2data_dir = Util.get_data_dir_working_with_gradient()
 3# Create a new XPS Document
 4doc = XpsDocument()
 5# Initialize a List of XpsGradentStop
 6stops = []
 7stops.append(doc.create_gradient_stop(doc.create_color(255, 244, 253, 225), 0.0673828))
 8stops.append(doc.create_gradient_stop(doc.create_color(255, 251, 240, 23), 0.314453))
 9stops.append(doc.create_gradient_stop(doc.create_color(255, 252, 209, 0), 0.482422))
10stops.append(doc.create_gradient_stop(doc.create_color(255, 241, 254, 161), 0.634766))
11stops.append(doc.create_gradient_stop(doc.create_color(255, 53, 253, 255), 0.915039))
12stops.append(doc.create_gradient_stop(doc.create_color(255, 12, 91, 248), 1))
13# Create a new path by defining geometery in an abbreviation form
14path = doc.add_path(doc.create_path_geometry("M 10,210 L 228,210 228,300 10,300"))
15path.render_transform = doc.create_matrix(1, 0, 0, 1, 20, 70)
16gradient: XpsLinearGradientBrush = doc.create_linear_gradient_brush(aspose.pydrawing.PointF(10, 0), aspose.pydrawing.PointF(228, 0))
17path.fill = gradient
18gradient.gradient_stops.extend(stops)
19# Save the resultant XPS document
20doc.save(data_dir + "AddHorizontalGradient_outXPS.xps")

Adicionar Gradiente Vertical

O Aspose.Page para Python via .NET inclui a classe XpsGradientBrush para incorporar gradientes em documentos XPS. Para tal, deve especificar XpsGradientStop e adicionar XpsPath ao objeto da classe XpsDocument. O seguinte excerto de código demonstra a funcionalidade completa para adicionar um gradiente vertical a um documento XPS:

Veja como trabalhar com um gradiente em documentos XPS através de . NET, Java e C++.


O resultado

Adicionar Gradiente Vertical

 1# The path to the documents directory.
 2data_dir = Util.get_data_dir_working_with_gradient()
 3# Create a new XPS Document
 4doc = XpsDocument()
 5# Initialize a List of XpsGradentStop
 6stops = []
 7stops.append(doc.create_gradient_stop(doc.create_color(253, 255, 12, 0), 0))
 8stops.append(doc.create_gradient_stop(doc.create_color(252, 255, 154, 0), 0.359375))
 9stops.append(doc.create_gradient_stop(doc.create_color(252, 255, 56, 0), 0.424805))
10stops.append(doc.create_gradient_stop(doc.create_color(253, 255, 229, 0), 0.879883))
11stops.append(doc.create_gradient_stop(doc.create_color(252, 255, 255, 234), 1))
12# Create a new path by defining geometery in an abbreviation form
13path = doc.add_path(doc.create_path_geometry("M 10,110 L 228,110 228,200 10,200"))
14path.render_transform = doc.create_matrix(1, 0, 0, 1, 20, 70)
15gradient: XpsLinearGradientBrush = doc.create_linear_gradient_brush(aspose.pydrawing.PointF(10, 110), aspose.pydrawing.PointF(10, 200))
16path.fill = gradient
17gradient.gradient_stops.extend(stops)
18# Save the resultant XPS document
19doc.save(data_dir + "AddVerticalGradient_outXPS.xps")

Adicionar Gradiente Diagonal

O próximo excerto de código mostra a funcionalidade completa de como adicionar um gradiente linear num documento XPS:

 1# The path to the documents directory.
 2data_dir = Util.get_data_dir_working_with_gradient()
 3# Create a new XPS Document
 4doc = XpsDocument()
 5# Initialize a List of XpsGradentStop
 6stops = []
 7# Add Colors to Gradient
 8stops.append(doc.create_gradient_stop(doc.create_color(0, 142, 4), 0))
 9stops.append(doc.create_gradient_stop(doc.create_color(255, 202, 0), 0.144531))
10stops.append(doc.create_gradient_stop(doc.create_color(255, 250, 0), 0.264648))
11stops.append(doc.create_gradient_stop(doc.create_color(255, 0, 0), 0.414063))
12stops.append(doc.create_gradient_stop(doc.create_color(233, 0, 255), 0.544922))
13stops.append(doc.create_gradient_stop(doc.create_color(107, 27, 190), 0.694336))
14stops.append(doc.create_gradient_stop(doc.create_color(63, 0, 255), 0.844727))
15stops.append(doc.create_gradient_stop(doc.create_color(0, 199, 80), 1))
16# Create a new path by defining geometery in an abbreviation form
17path = doc.add_path(doc.create_path_geometry("M 10,10 L 228,10 228,100 10,100"))
18path.render_transform = doc.create_matrix(1, 0, 0, 1, 20, 70)
19gradient: XpsLinearGradientBrush = doc.create_linear_gradient_brush(aspose.pydrawing.PointF(10, 10), aspose.pydrawing.PointF(228, 100))
20path.fill = gradient
21gradient.gradient_stops.extend(stops)
22# Save the resultant XPS document
23doc.save(data_dir + "AddDiagonalGradient_outXPS.xps")

Veja como trabalhar com um gradiente em documentos XPS através de . NET, Java e C++.


O resultado

Adicionar Gradiente Diagonal

Pode descarregar exemplos e ficheiros de dados do GitHub.

Have any questions about Aspose.Page?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.