public PreviewInfo PreviewApplyStyle(ImageItem source, Slide contentSlide, float slideWidth, float slideHeight, StyleOption option) { SetStyleOptions(option); SlideWidth = slideWidth; SlideHeight = slideHeight; var previewInfo = new PreviewInfo(); var handler = CreateEffectsHandlerForPreview(source, contentSlide); // use thumbnail to apply, in order to speed up var fullSizeImgPath = source.FullSizeImageFile; var originalThumbnail = source.ImageFile; source.FullSizeImageFile = null; source.ImageFile = source.CroppedThumbnailImageFile ?? source.ImageFile; ApplyStyle(handler, source, isActualSize: false); // recover the source back source.FullSizeImageFile = fullSizeImgPath; source.ImageFile = originalThumbnail; handler.GetNativeSlide().Export(previewInfo.PreviewApplyStyleImagePath, "JPG", GetPreviewWidth(), PreviewHeight); handler.Delete(); return previewInfo; }
public PreviewInfo PreviewApplyStyle(ImageItem source, Slide contentSlide, float slideWidth, float slideHeight, StyleOption option) { Logger.Log("PreviewApplyStyle begins"); SetStyleOptions(option); SlideWidth = slideWidth; SlideHeight = slideHeight; var previewInfo = new PreviewInfo(); EffectsDesignerForPreview.PreparePreviewing(contentSlide, slideWidth, slideHeight, source); // use thumbnail to apply, in order to speed up source.BackupFullSizeImageFile = source.FullSizeImageFile; var backupImageFile = source.ImageFile; source.FullSizeImageFile = null; source.ImageFile = source.CroppedThumbnailImageFile ?? source.ImageFile; GenerateStyle(EffectsDesignerForPreview, source, isActualSize: false); // recover the source back source.FullSizeImageFile = source.BackupFullSizeImageFile; source.ImageFile = backupImageFile; EffectsDesignerForPreview.GetNativeSlide().Export(previewInfo.PreviewApplyStyleImagePath, "JPG", GetPreviewWidth(), PreviewHeight); Logger.Log("PreviewApplyStyle done"); return previewInfo; }
private void UpdateStylesVariationImages(ImageItem source, Slide contentSlide, float slideWidth, float slideHeight, bool isMockPreviewImages = false) { Logger.Log("UpdateStylesVariationImages begins"); var copiedPicture = LoadClipboardPicture(); try { if (isMockPreviewImages) { Logger.Log("Generate mock images for Picture aspect"); } Logger.Log("Number of styles: " + _styleOptions.Count); for (var i = 0; i < _styleOptions.Count; i++) { var styleOption = _styleOptions[i]; PreviewInfo previewInfo; if (isMockPreviewImages) { previewInfo = new PreviewInfo { PreviewApplyStyleImagePath = StoragePath.NoPicturePlaceholderImgPath }; } else { previewInfo = Designer.PreviewApplyStyle( IsInPictureVariation() ? _8PicturesInPictureVariation[i] : source, contentSlide, slideWidth, slideHeight, styleOption); } StylesVariationList.Add(new ImageItem { ImageFile = previewInfo.PreviewApplyStyleImagePath, Tooltip = styleOption.OptionName }); } GC.Collect(); } catch (Exception e) { View.ShowErrorMessageBox(TextCollection.PictureSlidesLabText.ErrorImageCorrupted, e); Logger.LogException(e, "UpdateStylesVariationImages"); } SaveClipboardPicture(copiedPicture); Logger.Log("UpdateStylesVariationImages done"); }