ปรับแต่งคำอธิบายภาพกราฟในงานนำเสนอโดยใช้ PHP

Overview

Aspose.Slides มีตัวเลือกสำหรับการปรับแต่งคำอธิบายภาพกราฟ (legend) ในการนำเสนอ PowerPoint บทความนี้จะแสดงวิธีกำหนดตำแหน่งและขนาดของ legend ตั้งค่าขนาดตัวอักษรสำหรับ legend ทั้งหมด และกำหนดรูปแบบให้กับรายการ legend รายการเดียว

นอกจากนี้ยังครอบคลุมพฤติกรรมที่เกี่ยวข้องหลายอย่างในส่วนคำถามที่พบบ่อย (FAQ) ได้แก่ การใช้โหมดไม่ซ้อนทับเพื่อให้พื้นที่พล็อตทำให้มีที่ว่างสำหรับ legend การให้ป้าย legend ยาวห่อข้อความหรือใช้การขึ้นบรรทัดใหม่ได้ และการทำให้การกำหนดรูปแบบของ legend สืบทอดจากธีมการนำเสนอเมื่อไม่ได้กำหนดสีข้อความและการเติมอย่างชัดเจน

Legend Positioning

เพื่อกำหนดคุณสมบัติของ legend โปรดทำตามขั้นตอนด้านล่าง:

  • สร้างอินสแตนซ์ของคลาส Presentation
  • รับอ้างอิงของสไลด์
  • เพิ่มแผนภูมิลงบนสไลด์
  • ตั้งค่าคุณสมบัติของ legend
  • เขียนไฟล์การนำเสนอเป็นไฟล์ PPTX

ในตัวอย่างด้านล่าง เราได้ตั้งค่าตำแหน่งและขนาดของ legend ของแผนภูมิ

  # สร้างอินสแตนซ์ของคลาส Presentation
  $pres = new Presentation();
  try {
    # รับอ้างอิงของสไลด์
    $slide = $pres->getSlides()->get_Item(0);
    # เพิ่มแผนภูมิคอลัมน์แบบกลุ่มบนสไลด์
    $chart = $slide->getShapes()->addChart(ChartType::ClusteredColumn, 50, 50, 500, 500);
    # ตั้งค่าคุณสมบัติของ Legend
    $chart->getLegend()->setX(50 / $chart->getWidth());
    $chart->getLegend()->setY(50 / $chart->getHeight());
    $chart->getLegend()->setWidth(100 / $chart->getWidth());
    $chart->getLegend()->setHeight(100 / $chart->getHeight());
    # เขียนการนำเสนอไปยังดิสก์
    $pres->save("Legend_out.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

Set the Font Size of a Legend

Aspose.Slides for PHP via Java ให้ผู้พัฒนาสามารถตั้งค่าขนาดตัวอักษรของ legend ได้ โปรดทำตามขั้นตอนด้านล่าง:

  • สร้างอินสแตนซ์ของคลาส Presentation
  • สร้างแผนภูมิเบื้องต้น
  • ตั้งค่าขนาดตัวอักษร
  • ตั้งค่าค่าต่ำสุดของแกน
  • ตั้งค่าค่าสูงสุดของแกน
  • เขียนไฟล์การนำเสนอลงดิสก์
  # สร้างอินสแตนซ์ของคลาส Presentation
  $pres = new Presentation();
  try {
    $chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::ClusteredColumn, 50, 50, 600, 400);
    $chart->getLegend()->getTextFormat()->getPortionFormat()->setFontHeight(20);
    $chart->getAxes()->getVerticalAxis()->setAutomaticMinValue(false);
    $chart->getAxes()->getVerticalAxis()->setMinValue(-5);
    $chart->getAxes()->getVerticalAxis()->setAutomaticMaxValue(false);
    $chart->getAxes()->getVerticalAxis()->setMaxValue(10);
    $pres->save("output.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

Set the Font Size of an Individual Legend

Aspose.Slides for PHP via Java ให้ผู้พัฒนาสามารถตั้งค่าขนาดตัวอักษรของรายการ legend แต่ละรายการได้ โปรดทำตามขั้นตอนด้านล่าง:

  • สร้างอินสแตนซ์ของคลาส Presentation
  • สร้างแผนภูมิเบื้องต้น
  • เข้าถึงรายการ legend
  • ตั้งค่าขนาดตัวอักษร
  • ตั้งค่าค่าต่ำสุดของแกน
  • ตั้งค่าค่าสูงสุดของแกน
  • เขียนไฟล์การนำเสนอลงดิสก์
  # สร้างอินสแตนซ์ของคลาส Presentation
  $pres = new Presentation();
  try {
    $chart = $pres->getSlides()->get_Item(0)->getShapes()->addChart(ChartType::ClusteredColumn, 50, 50, 600, 400);
    $tf = $chart->getLegend()->getEntries()->get_Item(1)->getTextFormat();
    $tf->getPortionFormat()->setFontBold(NullableBool::True);
    $tf->getPortionFormat()->setFontHeight(20);
    $tf->getPortionFormat()->setFontItalic(NullableBool::True);
    $tf->getPortionFormat()->getFillFormat()->setFillType(FillType::Solid);
    $tf->getPortionFormat()->getFillFormat()->getSolidFillColor()->setColor(java("java.awt.Color")->BLUE);
    $pres->save("output.pptx", SaveFormat::Pptx);
  } finally {
    if (!java_is_null($pres)) {
      $pres->dispose();
    }
  }

FAQ

ฉันสามารถเปิดใช้งาน legend เพื่อให้แผนภูมิจัดสรรพื้นที่ให้โดยอัตโนมัติแทนการซ้อนทับได้หรือไม่?

ใช่ ใช้โหมดไม่ซ้อนทับ (setOverlay(false)) ในกรณีนี้พื้นที่พล็อตจะลดลงเพื่อให้พอดีกับ legend

ฉันสามารถทำให้ป้าย legend มีหลายบรรทัดได้หรือไม่?

ใช่ ป้ายที่ยาวจะห่ออัตโนมัติเมื่อพื้นที่ไม่พอ การบังคับขึ้นบรรทัดใหม่รองรับด้วยอักขระ newline ในชื่อชุดข้อมูล

ฉันจะทำให้ legend ติดตามโทนสีของธีมการนำเสนอได้อย่างไร?

อย่ากำหนดสี/การเติม/ฟอนต์อย่างชัดเจนสำหรับ legend หรือข้อความของมัน ระบบจะสืบทอดจากธีมและจะปรับอัปเดตอย่างถูกต้องเมื่อเปลี่ยนการออกแบบ