ResourceLoadingAction
İçindekiler
[
Saklamak
]ResourceLoadingAction enumeration
Kaynak yükleme modunu belirtir.
Daha fazlasını öğrenmek için şu adresi ziyaret edin:Yükleme Seçeneklerini Belirtin dokümantasyon makalesi.
public enum ResourceLoadingAction
değerler
İsim | Değer | Tanım |
---|---|---|
Default | 0 | Aspose.Words bu kaynağı her zamanki gibi yükleyecektir. |
Skip | 1 | Aspose.Words bu kaynağın yüklenmesini atlayacak. Bir görüntü için yalnızca veri içermeyen bağlantı saklanacak, HTML formatı için CSS stil sayfası göz ardı edilecek. |
UserProvided | 2 | Aspose.Words, kullanıcı tarafından sağlanan bayt dizisini kullanacaktır.SetData kaynak verisi olarak. |
Örnekler
Dış kaynakları bir belgeye yükleme işleminin nasıl özelleştirileceğini gösterir.
public void ResourceLoadingCallback()
{
Document doc = new Document();
doc.ResourceLoadingCallback = new ImageNameHandler();
DocumentBuilder builder = new DocumentBuilder(doc);
// Görüntüler genellikle bir URI veya bir bayt dizisi kullanılarak eklenir.
// Bir kaynak yükünün her örneği, geri çağırmamızın ResourceLoading yöntemini çağıracaktır.
builder.InsertImage("Google logo");
builder.InsertImage("Aspose logo");
builder.InsertImage("Watermark");
Assert.AreEqual(3, doc.GetChildNodes(NodeType.Shape, true).Count);
doc.Save(ArtifactsDir + "DocumentBase.ResourceLoadingCallback.docx");
}
/// <summary>
/// URI'lerin aksine, önceden tanımlanmış kısayolları kullanarak görüntüleri bir belgeye yüklememize olanak tanır.
/// Bu, görüntü yükleme mantığını belge yapısının geri kalanından ayıracaktır.
/// </summary>
private class ImageNameHandler : IResourceLoadingCallback
{
public ResourceLoadingAction ResourceLoading(ResourceLoadingArgs args)
{
// Bu geri arama, bir görüntüyü yüklerken görüntünün kısa yollarından biriyle karşılaşırsa,
// tanımlanan her kısayol için, onu bir URI olarak ele almak yerine benzersiz bir mantık uygulayacaktır.
if (args.ResourceType == ResourceType.Image)
switch (args.OriginalUri)
{
case "Google logo":
using (WebClient webClient = new WebClient())
{
args.SetData(webClient.DownloadData("http://www.google.com/images/logos/ps_logo2.png"));
}
return ResourceLoadingAction.UserProvided;
case "Aspose logo":
args.SetData(File.ReadAllBytes(ImageDir + "Logo.jpg"));
return ResourceLoadingAction.UserProvided;
case "Watermark":
args.SetData(File.ReadAllBytes(ImageDir + "Transparent background logo.png"));
return ResourceLoadingAction.UserProvided;
}
return ResourceLoadingAction.Default;
}
}
Ayrıca bakınız
- ad alanı Aspose.Words.Loading
- toplantı Aspose.Words