SoundAnnotations.cs
- //
- // This code is part of Document Solutions for PDF demos.
- // Copyright (c) MESCIUS inc. All rights reserved.
- //
- using System;
- using System.IO;
- using System.Drawing;
- using GrapeCity.Documents.Pdf;
- using GrapeCity.Documents.Text;
- using GrapeCity.Documents.Pdf.Annotations;
-
- namespace DsPdfWeb.Demos.Basics
- {
- // This sample shows how to add sound annotations to a PDF document.
- public class SoundAnnotations
- {
- public int CreatePDF(Stream stream)
- {
- var doc = new GcPdfDocument();
- var page = doc.NewPage();
- // User names for annotations' authors:
- var user1 = "Aiff Ding";
- var user2 = "Wav Dong";
-
- var tf = new TextFormat() { Font = StandardFonts.Helvetica, FontSize = 10 };
- var noteWidth = 72 * 3;
- var gap = 8;
-
- var rc = Common.Util.AddNote(
- "This sample demonstrates adding sound annotations using DsPdf. " +
- "The track associated with an annotation can be played in a viewer that supports it. " +
- "PDF supports AIFF and WAV tracks in sound annotations.",
- page);
-
- // AIFF sound annotation:
- var ip = new PointF(rc.X, rc.Bottom + gap);
- rc = Common.Util.AddNote("A red sound annotation is placed to the right of this note. Double click the icon to play the sound.",
- page, new RectangleF(ip.X, ip.Y, noteWidth, 100));
- var aiffAnnot = new SoundAnnotation()
- {
- UserName = user1,
- Contents = "Sound annotation with an AIFF track.",
- Rect = new RectangleF(rc.Right, rc.Top, 24, 24),
- Icon = SoundAnnotationIcon.Speaker,
- Color = Color.Red,
- Sound = SoundObject.FromFile(Path.Combine("Resources", "Sounds", "ding.aiff"), AudioFormat.Aiff)
- };
- page.Annotations.Add(aiffAnnot);
-
- // WAV sound annotation:
- ip = new PointF(rc.X, rc.Bottom + gap);
- rc = Common.Util.AddNote("A blue sound annotation is placed to the right of this note. Double click the icon to play the sound.",
- page, new RectangleF(ip.X, ip.Y, noteWidth, 100));
- var wavAnnot = new SoundAnnotation()
- {
- UserName = user2,
- Contents = "Sound annotation with a WAV track.",
- Rect = new RectangleF(rc.Right, rc.Top, 24, 24),
- Icon = SoundAnnotationIcon.Mic,
- Color = Color.Blue,
- Sound = SoundObject.FromFile(Path.Combine("Resources", "Sounds", "dong.wav"), AudioFormat.Wav)
- };
- page.Annotations.Add(wavAnnot);
-
- // Done:
- doc.Save(stream);
- return doc.Pages.Count;
- }
- }
- }
-