กราฟิกและการวาด

กราฟิกและการวาด

กราฟิกและการวาดภาพ

Aspose.PDF FOSS for .NET มีระบบย่อยการวาดสำหรับการเพิ่มกราฟิกเวกเตอร์ลงในหน้า PDF. ตัวคอนเทนเนอร์ Graph เก็บองค์ประกอบรูปทรง (Line, Arc, Circle) และถูกเพิ่มเข้าไปในคอลเลกชัน Paragraphs ของหน้า.


สร้างคอนเทนเนอร์กราฟ

Graph กำหนดพื้นที่ที่สามารถวาดได้โดยมีความกว้างและความสูงที่ระบุ

using var doc = new Document();
var page = doc.Pages.Add();

var graph = new Graph(400, 200);
page.Paragraphs.Add(graph);

วาดเส้น

var line = new Line(new float[] { 0, 0, 300, 100 });
graph.Shapes.Add(line);

การวาดส่วนโค้งและวงกลม

var arc = new Arc(150, 100, 80, 0, 180);
graph.Shapes.Add(arc);

var circle = new Circle(150, 100, 50);
graph.Shapes.Add(circle);

ทำงานกับสี

คลาส Color มีเมธอดแฟกทอรีสำหรับ RGB, ARGB และสีที่ตั้งชื่อ.

var red = Color.FromRgb(1.0, 0.0, 0.0);
var semiTransparent = Color.FromArgb(128, 0, 0, 255);

การวาดเส้นทาง

DrawingPath รองรับ MoveTo, LineTo, CurveTo และ Close สำหรับรูปทรงเวกเตอร์อิสระ.

var path = new DrawingPath();
path.MoveTo(10, 10);
path.LineTo(100, 10);
path.CurveTo(150, 50, 150, 100, 100, 100);
path.Close();

รูปแบบภาพ

ImageFormat ให้ค่าการนับแบบ enumeration สำหรับรูปแบบ raster ที่ใช้เมื่อแปลงหน้าเป็นภาพ: Bmp, Jpeg, Png, Tiff, Gif.


เคล็ดลับและแนวทางปฏิบัติที่ดีที่สุด

  • ตั้งค่าขนาดกราฟให้ตรงกับพื้นที่ที่คุณต้องการวาด — พิกัดภายใน Graph จะสัมพันธ์กับขอบเขตของมัน
  • ใช้ Color.FromArgb สำหรับการเติมสีกึ่งโปร่งแสง (รองรับช่องแอลฟา)
  • รวมหลายรูปทรงไว้ใน Graph เดียวเพื่อการเรนเดอร์ที่มีประสิทธิภาพ
  • DrawingPath เหมาะสำหรับเส้นโค้ง Bezier ที่ซับซ้อนและรูปหลายเหลี่ยมแบบอิสระ
  • เพิ่ม Graph ไปยังคอลเลกชัน Paragraphs ของหน้า — อย่าเพิ่มลงในคำอธิบายประกอบ

ปัญหาทั่วไป

IssueCauseFix
รูปร่างไม่ปรากฏขนาดกราฟเล็กเกินไปสำหรับพิกัดของรูปร่างเพิ่มความกว้าง/ความสูงของ Graph หรือปรับสเกลพิกัดของรูปร่าง
สีแสดงผลต่างกันในตัวดูความไม่ตรงกันของพื้นที่สีใช้ Color.FromRgb พร้อมค่าที่อยู่ในช่วง 0.0-1.0
การวาดทับข้อความกราฟถูกวางในตำแหน่งผิดในลำดับย่อหน้าปรับลำดับย่อหน้าหรือใช้ FloatingBox สำหรับการกำหนดตำแหน่งแบบสัมบูรณ์

คำถามที่พบบ่อย

ฉันสามารถวาดรูปทรงที่เติมสีได้หรือไม่?

ใช่. ตั้งค่าคุณสมบัติ GraphInfo.FillColor ของรูปร่างให้เติมด้วยสีทึบ.

ฉันจะกำหนดตำแหน่งกราฟที่พิกัดหน้าที่เฉพาะได้อย่างไร?

ห่อ Graph ด้วย FloatingBox และตั้งค่าคุณสมบัติ Left และ Top ของมันเพื่อการกำหนดตำแหน่งแบบสัมบูรณ์.

ไลบรารีสนับสนุนการไล่ระดับสีหรือไม่?

คลาส Shading รองรับรูปแบบการเชดดิ้งพื้นฐาน. ใช้ DrawingPath พร้อมการเชดดิ้งสำหรับการเติมแบบไล่สี.


สรุปอ้างอิง API

คลาส / เมธอดคำอธิบาย
Graphคอนเทนเนอร์สำหรับรูปร่างที่สามารถวาดได้, เพิ่มลงในย่อหน้าของหน้า
Lineเส้นตรงระหว่างสองจุดหรือมากกว่า
Arcส่วนโค้งวงกลมที่กำหนดโดยศูนย์กลาง, รัศมี, และมุม
Circleรูปร่างวงกลมที่กำหนดโดยศูนย์กลางและรัศมี
DrawingPathเส้นทางอิสระรูปแบบที่มี MoveTo, LineTo, CurveTo, Close
Colorค่าของสีที่มี RGB, ARGB, และเมธอด factory
Color.FromRgbสร้างสีจากส่วนประกอบ RGB
Color.FromArgbสร้างสีพร้อมความโปร่งใสแบบอัลฟา
GraphicElementCollectionคอลเลกชันขององค์ประกอบกราฟิกบนหน้า
ImageFormatการนับประเภทของรูปภาพแรสเตอร์ (Bmp, Jpeg, Png, Tiff, Gif)

ดูเพิ่มเติม

 ภาษาไทย