グラデーションの操作 | Python

グラデーションとは、2色以上の色または濃淡が段階的に変化する様子を指します。視覚芸術、グラフィック、デザインにおいて、グラデーションは、ある色から別の色への滑らかな変化を表現するためによく使用され、オブジェクトや画像に深み、立体感、そして視覚的な面白さを加えます。グラデーションは、シンプルな2色グラデーションから、複数の色や透明度レベルを組み合わせた複雑なグラデーションまで、その複雑さは多岐にわたります。

ここでは、PythonでXPSファイルにさまざまな種類のグラデーションを追加する方法を説明します。

XPSドキュメントにグラデーションを追加する

水平グラデーションを追加する

Aspose.Page for Python via .NETは、XPSドキュメントにグラデーションを組み込むために作成されたXpsGradientBrushクラスを提供します。これを実現するには、XpsGradientStopを指定し、XpsDocumentクラスのオブジェクトにXpsPathを追加する必要があります。以下のコードスニペットは、XPSドキュメントに水平グラデーションを追加するための完全な機能を示しています。

XPSドキュメントにグラデーションを追加するには、 .NETJavaC++を使用します。


結果

水平グラデーションを追加する

 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")

垂直グラデーションの追加

.NET 経由の Aspose.Page for Python には、XPS ドキュメントにグラデーションを組み込むための XpsGradientBrush クラスが含まれています。これを実現するには、XpsGradientStop を指定し、XpsDocument クラスのオブジェクトに XpsPath を追加する必要があります。次のコード スニペットは、XPS ドキュメントに垂直グラデーションを追加するための完全な機能を示しています。

.NETJavaC++ 経由で、XPS ドキュメントにグラデーションを追加する方法については、こちらをご覧ください。


結果

Add Vertical Gradient

 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")

斜めグラデーションを追加する

次のコードスニペットは、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")

.NETJava 経由のドキュメント XPS に関するコメントを受け付けません。 C++


結果

Add Diagonal Gradient

サンプルとデータ ファイルは GitHub からダウンロードできます。

Have any questions about Aspose.Page?



Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.