PHP'de Sunumları HTML5'e Dönüştür
Genel Bakış
Bu makale, Aspose.Slides for PHP via Java kullanarak PowerPoint sunumlarını HTML5’e nasıl dönüştüreceğinizi açıklar. Temel dışa aktarma, şekil animasyonları ve slayt geçişlerinin kontrolü ve yorum düzeni konularını kapsar. Ayrıca HTML5 çıktısını standart HTML dışa aktarmanın SVG tabanlı çıktısı ile karşılaştırır.
PowerPoint’i HTML5’e Dışa Aktarma
Aşağıdaki örnek, çalışma dizininden bir sunumu yükler ve HTML5 formatında kaydeder. Varsayılan dışa aktarma ayarlarını kullanır; bir sonraki örnek ise animasyon oynatımını açıkça nasıl kontrol edebileceğinizi gösterir. Girdi yolunu sunumunuzun yoluyle değiştirin.
use aspose\slides\Presentation;
use aspose\slides\SaveFormat;
$presentation = new Presentation("pres.pptx");
try {
$presentation->save("pres.html", SaveFormat::Html5);
} finally {
$presentation->dispose();
}
Note
HTML belgesinin yanı sıra, dışa aktarım slayt stilizasyonu, animasyonlar, efektler ve navigasyon için destekleyici CSS ve JavaScript dosyaları yazar. Çıktıyı taşırken veya yayınlarken bu dosyaları HTML belgesi ile birlikte tutun. Oluşturulan sayfa ayrıca jQuery ve Anime.js’i genel CDN’lerden yükler; bunlar olmadan slayt navigasyonu ve animasyonlar çalışmaz.Şekil animasyonlarını veya slayt geçişlerini oynatmadan dışa aktarmak için, Html5Options içinde setAnimateShapes ve setAnimateTransitions yöntemlerine false gönderin. Bu ayarlar bağımsızdır, bu yüzden birini etkinleştirip diğerini devre dışı bırakabilirsiniz. Örnek, oluşturulan sayfada her iki animasyon türünün de devre dışı bırakıldığı şekilde sunumu dışa aktarır.
use aspose\slides\Html5Options;
use aspose\slides\Presentation;
use aspose\slides\SaveFormat;
$html5Options = new Html5Options();
$html5Options->setAnimateShapes(false);
$html5Options->setAnimateTransitions(false);
$presentation = new Presentation("pres.pptx");
try {
$presentation->save("pres5.html", SaveFormat::Html5, $html5Options);
} finally {
$presentation->dispose();
}
PowerPoint’i HTML’e Dışa Aktarma
Standart HTML dışa aktarımı farklı bir renderleme yaklaşımı kullanır: slayt içeriği bir HTML sayfası içinde SVG olarak temsil edilir. Aşağıdaki örnek, bu renderleme yaklaşımını kullanarak bir sunumu HTML belgesine dönüştürür.
use aspose\slides\Presentation;
use aspose\slides\SaveFormat;
$presentation = new Presentation("pres.pptx");
try {
$presentation->save("pres.html", SaveFormat::Html);
} finally {
$presentation->dispose();
}
Aşağıdaki sadeleştirilmiş işaretleme, oluşturulan sayfanın yapısını gösterir. SVG öğesi renderlenen slayt içeriğini içerir; yer tutucu metin bu içeriği temsil eder ve gerçek dışa aktarma çıktısı değildir.
<body>
<div class="slide" name="slide" id="slideslideIface1">
<svg version="1.1">
<g> THE SLIDE CONTENT GOES HERE </g>
</svg>
</div>
</body>
Warning
SVG tabanlı dışa aktarım, PowerPoint şekillerini bireysel HTML öğeleri olarak ortaya çıkarmaz. Bu makalede gösterilen şekil animasyonu ve slayt geçişi seçeneklerine ihtiyaç duyduğunuzda HTML5 dışa aktarmayı kullanın.PowerPoint’i HTML5 Slayt Görünümü Olarak Dışa Aktarma
HTML5 dışa aktarımı, sunum slaytlarını bir tarayıcıda görüntülemek ve gezinmek için bir sayfa üretir. Bu örnek, dışa aktarılan slayt görünümünün kaynak sunumdaki efektleri oynatabilmesi için setAnimateShapes ve setAnimateTransitions yöntemlerini etkinleştirir.
Bu ayarların etkisini görmek için zaten şekil animasyonları ve slayt geçişleri içeren bir sunum kullanın. Bunları etkinleştirmek, hiçbir efekti olmayan slaytlara yeni efekt eklemez. Dışa aktarmadan sonra, oluşturulan HTML5 belgesini destek dosyaları mevcutken bir tarayıcıda açın.
use aspose\slides\Html5Options;
use aspose\slides\Presentation;
use aspose\slides\SaveFormat;
$html5Options = new Html5Options();
$html5Options->setAnimateShapes(true);
$html5Options->setAnimateTransitions(true);
$presentation = new Presentation("pres.pptx");
try {
$presentation->save("HTML5-slide-view.html", SaveFormat::Html5, $html5Options);
} finally {
$presentation->dispose();
}
Yorumlarla Birlikte Sunumu HTML5 Belgesine Dönüştürme
Mevcut slayt yorumlarını HTML5 çıktısına dahil edebilirsiniz, böylece okuyucular slayt içeriğinin yanında geri bildirimleri görebilir. Bu bölümdeki örnek, kaynak sunumun aşağıda gösterildiği gibi yorum içerdiğini varsayar. Yorumları dışa aktarır; yeni yorum oluşturmaz.

Bir NotesCommentsLayoutingOptions nesnesini Html5Options sınıfının setSlidesLayoutOptions metoduna geçirin. Yorumları her slaydın sağına yerleştirmek için CommentsPositions enum’undan Right değerini seçmek üzere setCommentsPosition kullanın.
Aşağıdaki örnek, sunumu bu yorum düzeniyle HTML5’e dışa aktarır. Yorum içermeyen bir sunumda gösterilecek yorum metni olmayacaktır.
use aspose\slides\CommentsPositions;
use aspose\slides\Html5Options;
use aspose\slides\NotesCommentsLayoutingOptions;
use aspose\slides\Presentation;
use aspose\slides\SaveFormat;
$layoutOptions = new NotesCommentsLayoutingOptions();
$layoutOptions->setCommentsPosition(CommentsPositions::Right);
$html5Options = new Html5Options();
$html5Options->setSlidesLayoutOptions($layoutOptions);
$presentation = new Presentation("sample.pptx");
try {
$presentation->save("output.html", SaveFormat::Html5, $html5Options);
} finally {
$presentation->dispose();
}

Dışa Aktarım Sırasında JavaScript Hiperlinklerini Hariç Tutma
hyperlinks.pptx dosyasının javascript:alert('Hello') hedefi olan bir bağlanmış metin ve normal bir https://example.com/ linki içerdiğini varsayalım. Dışa aktarım sırasında JavaScript hiperlinkini hariç tutmak için SaveOptions::setSkipJavaScriptLinks yöntemine true gönderin. Varsayılan değer false olduğu için bu linkler, seçeneği etkinleştirene kadar filtrelenmez.
Aşağıdaki örnek, sunumu çalışma dizininden yükler ve Html5Options kullanarak dışa aktarır:
use aspose\slides\Html5Options;
use aspose\slides\Presentation;
use aspose\slides\SaveFormat;
$html5Options = new Html5Options();
$html5Options->setSkipJavaScriptLinks(true);
$presentation = new Presentation("hyperlinks.pptx");
try {
$presentation->save("filtered-html5.html", SaveFormat::Html5, $html5Options);
} finally {
$presentation->dispose();
}
Dışa aktarılan dosya, metni ve normal HTTPS linkini korurken JavaScript hiperlinkini atlar. Kaynak sunum değişmemiştir.
Bu seçenek JavaScript hiperlinklerini filtreler; tüm betikleri veya diğer aktif içerikleri kaldırmaz ve CSP uyumluluğunu garanti etmez. Örneğin, HTML5 çıktısı hâlâ slayt navigasyonu ve animasyonlar için betikler içerir.
SSS
HTML5’te nesne animasyonlarının ve slayt geçişlerinin oynatılıp oynatılmayacağını kontrol edebilir miyim?
Evet, HTML5 dışa aktarımı, shape animations ve slide transitions ayrı ayrı etkinleştirme veya devre dışı bırakma seçenekleri sunar.
Yorumlar destekleniyor mu ve slayta göre nerede konumlandırılabilir?
Evet, mevcut yorumlar HTML5 çıktısına dahil edilebilir ve notlar ile yorumlar için layout settings aracılığıyla (örneğin, slaytın sağına) konumlandırılabilir.
Güvenlik veya CSP nedenleriyle JavaScript çağıran linkleri atlayabilir miyim?
Evet, setSkipJavaScriptLinks ayarı, kaydetme sırasında JavaScript çağıran hiperlinkleri atlamanızı sağlar. Varsayılan false‘tur. Bir HTML5 dışa aktarım örneği ve filtrenin kapsamı için Dışa Aktarım Sırasında JavaScript Hiperlinklerini Hariç Tutma bölümüne bakın. Bu ayar, HTML5 görüntüleyicisinin navigasyon ve animasyonlar için kullandığı JavaScript’i kaldırmaz.