Exemplo n.º 1
0
        /// <summary>
        /// Nhập đối tượng là audio
        /// </summary>
        /// <param name="_page"></param>
        /// <param name="_shape"></param>
        private void ShapeIsAudio(PageLayer _page, pp.Shape _shape, EAnimation _animation, string _idShape)
        {
            EAudioElement eAudio = new EAudioElement();

            eAudio.Name       = "Audio";
            eAudio.ID         = _idShape;
            eAudio.Width      = _shape.Width * Utils.tlw;
            eAudio.Height     = _shape.Height * Utils.tlh;
            eAudio.Top        = _shape.Top * Utils.tlh;
            eAudio.Left       = _shape.Left * Utils.tlw;
            eAudio.Angle      = _shape.Rotation;
            eAudio.ZOder      = (int)_shape.ZOrderPosition;
            eAudio.Animations = _animation;
            //Lấy file audio trong gói sử dụng openxml
            var lstPic = Utils.slidePart.Slide.Descendants <DocumentFormat.OpenXml.Presentation.Picture>().Select(p => p);

            P.Picture                     audioTag      = GetPictureTag(lstPic, _shape.Id.ToString());
            var                           audioFromFile = audioTag.NonVisualPictureProperties.ApplicationNonVisualDrawingProperties.Descendants <D.AudioFromFile>().Select(p => p);
            ReferenceRelationship         relationship  = Utils.slidePart.GetReferenceRelationship(audioFromFile.First().Link.Value);
            DataPartReferenceRelationship data          = (DataPartReferenceRelationship)relationship;
            string                        pathAudio     = Path.Combine((System.Windows.Application.Current as IAppGlobal).DocumentTempFolder, ObjectElementsHelper.RandomString(13) + Path.GetExtension(data.Uri.ToString()));

            Utils.CopyStream(data.DataPart.GetStream(), pathAudio);
            eAudio.AudioFileName      = new Core.Model.Media.Audio();
            eAudio.AudioFileName.Path = pathAudio;
            _page.Children.Add(eAudio);
        }
Exemplo n.º 2
0
        private static MemoryStream CreatePresentationDocumentWithDataReference()
        {
            var stream = new MemoryStream();

            using (var ppt = PresentationDocument.Create(stream, PresentationDocumentType.Presentation))
            {
                var mainPart  = ppt.AddPresentationPart();
                var slide     = new Slide();
                var slidePart = mainPart.AddNewPart <SlidePart>();
                var dataPart  = new MediaDataPart(ppt.InternalOpenXmlPackage, MediaDataPartType.Mp3);
                var dataPartReferenceRelationship = DataPartReferenceRelationship.Create(slidePart, dataPart, MediaReferenceRelationship.RelationshipTypeConst, "rId2");
                slidePart.AddDataPartReferenceRelationship(dataPartReferenceRelationship);
                slide.Save(slidePart);
                mainPart.Presentation = new Presentation.Presentation(slide);
                mainPart.Presentation.Save();
            }

            stream.Seek(0, SeekOrigin.Begin);
            return(stream);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Nhập đối tượng là video
        /// </summary>
        /// <param name="_page"></param>
        /// <param name="_shape"></param>
        private void ShapeIsVideo(PageLayer _page, pp.Shape _shape, EAnimation _animation, string _idShape)
        {
            var lstPic = Utils.slidePart.Slide.Descendants <DocumentFormat.OpenXml.Presentation.Picture>().Select(p => p);

            P.Picture             videoTag      = GetPictureTag(lstPic, _shape.Id.ToString());
            var                   videoFromFile = videoTag.NonVisualPictureProperties.ApplicationNonVisualDrawingProperties.Descendants <D.VideoFromFile>().Select(p => p);
            ReferenceRelationship relationship  = Utils.slidePart.GetReferenceRelationship(videoFromFile.First().Link.Value);

            if (videoTag.NonVisualPictureProperties.NonVisualDrawingProperties.HyperlinkOnClick == null)
            {
                VideoAsFlash(_page, _shape, relationship, _animation, _idShape);
            }
            else
            {
                EVideoPlayer eVideoPlayer = new EVideoPlayer();
                eVideoPlayer.Name       = "Video";
                eVideoPlayer.ID         = _idShape;
                eVideoPlayer.Angle      = _shape.Rotation;
                eVideoPlayer.Width      = _shape.Width * Utils.tlw;
                eVideoPlayer.Height     = _shape.Height * Utils.tlh;
                eVideoPlayer.Top        = _shape.Top * Utils.tlh;
                eVideoPlayer.Left       = _shape.Left * Utils.tlw;
                eVideoPlayer.ZOder      = _shape.ZOrderPosition;
                eVideoPlayer.Animations = _animation;
                //Lấy file video trong gói sử dụng openxml
                DataPartReferenceRelationship data = (DataPartReferenceRelationship)relationship;
                string pathVideo = Path.Combine((System.Windows.Application.Current as IAppGlobal).DocumentTempFolder, ObjectElementsHelper.RandomString(13) + Path.GetExtension(data.Uri.ToString()));
                Utils.CopyStream(data.DataPart.GetStream(), pathVideo);
                eVideoPlayer.Source      = new Core.Model.Media.Video();
                eVideoPlayer.Source.Path = pathVideo;
                //Lấy avata video
                eVideoPlayer.ImageFirst = new Image();
                string      rId       = videoTag.BlipFill.Blip.Embed.Value;
                OpenXmlPart avtPart   = Utils.slidePart.GetPartById(rId);
                string      pathAvata = Path.Combine((System.Windows.Application.Current as IAppGlobal).DocumentTempFolder, ObjectElementsHelper.RandomString(13) + Path.GetExtension(avtPart.Uri.ToString()));
                Utils.CopyStream(avtPart.GetStream(), pathAvata);
                eVideoPlayer.ImageFirst.Path = pathAvata;
                _page.Children.Add(eVideoPlayer);
            }
        }