在 PHP 中比較簡報投影片
Contents
[
Hide
]
簡介
Aspose.Slides 允許您使用 BaseSlide 類別提供的 equals 方法比較投影片、版面投影片和母片。當比較的投影片在結構與靜態內容上完全相同時,該方法會回傳 true。
比較兩張投影片
已在 BaseSlide 類別中加入 Equals 方法。它會對結構與靜態內容相同的投影片/版面和投影片/母片回傳 true。
當所有形狀、樣式、文字、動畫及其他設定等皆相同時,兩張投影片被視為相等。比較時不會考慮唯一識別碼值,例如 SlideId,亦不會考慮動態內容,例如日期佔位字元中的目前日期值。
$presentation1 = new Presentation("AccessSlides.pptx");
try {
$presentation2 = new Presentation("HelloWorld.pptx");
try {
for($i = 0; $i < java_values($presentation1->getMasters()->size()) ; $i++) {
for($j = 0; $j < java_values($presentation2->getMasters()->size()) ; $j++) {
if ($presentation1->getMasters()->get_Item($i)->equals($presentation2->getMasters()->get_Item($j))) {
echo(sprintf("SomePresentation1 MasterSlide#%d is equal to SomePresentation2 MasterSlide#%d", $i, $j));
}
}
}
} finally {
$presentation2->dispose();
}
} finally {
$presentation1->dispose();
}
常見問題
投影片被隱藏會影響投影片本身的比較嗎?
Hidden status 是呈現/播放層級的屬性,而非視覺內容。兩張特定投影片的相等性取決於其結構與靜態內容;僅因投影片被隱藏並不會使投影片不同。
超連結及其參數會被考慮嗎?
是的。連結屬於投影片的靜態內容。若 URL 或超連結動作不同,通常會被視為靜態內容的差異。
如果圖表引用外部 Excel 檔案,該檔案的內容會被考慮嗎?
不會。比較是根據投影片本身執行的。外部資料來源通常不會在比較時讀取;僅考慮投影片結構與靜態狀態中存在的內容。