コード例 #1
0
        public static void Export(string referencePrefix, string mediaFileName, string outputFilePath, TierCollection tiers)
        {
            const string ktimeFormat = "00.00###";

            using (var stream = File.CreateText(outputFilePath))
            {
                int count                   = tiers.GetTimeTier().Segments.Count;
                var timeSegments            = tiers.GetTimeTier().Segments;
                var transcriptionSegments   = tiers.GetTranscriptionTier(true).Segments;
                var freeTranslationSegments = tiers.GetFreeTranslationTier(true).Segments;

                for (int i = 0; i < count; i++)
                {
                    stream.WriteLine("\\ref " + referencePrefix + "_" + (1 + i).ToString("0000"));
                    var begin = timeSegments[i].TimeRange.StartSeconds.ToString(ktimeFormat);
                    var end   = timeSegments[i].TimeRange.EndSeconds.ToString(ktimeFormat);
                    stream.WriteLine("\\begin " + begin);
                    stream.WriteLine("\\end " + end);
                    stream.WriteLine("\\media " + mediaFileName + " " + begin + " " + end);
                    stream.WriteLine("\\t " + transcriptionSegments[i].Text);
                    stream.WriteLine("\\f " + freeTranslationSegments[i].Text);
                    stream.WriteLine();
                }
            }
        }
コード例 #2
0
        public void GetFreeTranslationTier_TierExists_ReturnsIt()
        {
            var tier = _collection.GetFreeTranslationTier();

            Assert.AreEqual(TextTier.ElanTranslationTierId, tier.Id);
            Assert.AreEqual(TierType.FreeTranslation, tier.TierType);
        }
コード例 #3
0
        public static void Export(string outputFilePath, TierCollection tiers)
        {
            using (var stream = File.CreateText(outputFilePath))
            {
                stream.WriteLine("-- " + LocalizationManager.GetString("SessionsView.Transcription.TierDisplayNames.Transcription", "Transcription") + " --");
                stream.WriteLine();
                foreach (var segment in tiers.GetTranscriptionTier().Segments)
                {
                    stream.WriteLine(segment.Text);
                }

                stream.WriteLine();
                stream.WriteLine();
                stream.WriteLine("-- " + LocalizationManager.GetString("SessionsView.Transcription.TierDisplayNames.FreeTranslation", "Free Translation") + " --");
                stream.WriteLine();
                foreach (var segment in tiers.GetFreeTranslationTier().Segments)
                {
                    stream.WriteLine(segment.Text);
                }
            }
        }
コード例 #4
0
        public static void Export(string outputFilePath, TierCollection tiers)
        {
            const string ktimeFormat = "hh\\:mm\\:ss\\.ff";             //ISO 8601 and what ELAN import expects

            using (var stream = File.CreateText(outputFilePath))
            {
                int count                   = tiers.GetTimeTier().Segments.Count;
                var timeSegments            = tiers.GetTimeTier().Segments;
                var transcriptionSegments   = tiers.GetTranscriptionTier(true).Segments;
                var freeTranslationSegments = tiers.GetFreeTranslationTier(true).Segments;

                for (int i = 0; i < count; i++)
                {
                    stream.Write(i + 1 + ",");
                    stream.Write(timeSegments[i].TimeRange.Start.ToString(ktimeFormat));
                    stream.Write(",");
                    stream.Write(timeSegments[i].TimeRange.End.ToString(ktimeFormat) + ",");
                    stream.Write(Escape(transcriptionSegments[i].Text));
                    stream.Write(",");
                    stream.Write(Escape(freeTranslationSegments[i].Text));
                    stream.WriteLine();
                }
            }
        }