// ---------------------------------------------------------------------- public RtfTextConverter( RtfTextConvertSettings settings ) { if ( settings == null ) { throw new ArgumentNullException( "settings" ); } this.settings = settings; }
} // RtfTextConverter // ---------------------------------------------------------------------- public RtfTextConverter(RtfTextConvertSettings settings) { if (settings == null) { throw new ArgumentNullException("settings"); } this.settings = settings; } // RtfTextConverter
} // RtfTextConverter public RtfTextConverter(RtfTextConvertSettings settings) { if (settings == null) { throw new ArgumentNullException(nameof(settings)); } Settings = settings; } // RtfTextConverter
// ---------------------------------------------------------------------- private string InterpretRtf( IRtfGroup rtfStructure ) { string text = null; RtfInterpreterListenerFileLogger interpreterLogger = null; try { // logger if ( settings.LogInterpreter ) { string logFileName = settings.BuildDestinationFileName( settings.LogDirectory, RtfInterpreterListenerFileLogger.DefaultLogFileExtension ); interpreterLogger = new RtfInterpreterListenerFileLogger( logFileName ); } // text converter RtfTextConverter textConverter = null; if ( settings.SaveText ) { RtfTextConvertSettings textConvertSettings = new RtfTextConvertSettings(); textConvertSettings.IsShowHiddenText = settings.ShowHiddenText; textConverter = new RtfTextConverter( textConvertSettings ); } // image converter RtfImageConverter imageConverter = null; if ( settings.SaveImage ) { RtfVisualImageAdapter imageAdapter = new RtfVisualImageAdapter( settings.ImageFileNamePattern, settings.ImageFormat ); RtfImageConvertSettings imageConvertSettings = new RtfImageConvertSettings( imageAdapter ); imageConvertSettings.ImagesPath = settings.DestinationDirectory; imageConvertSettings.ScaleImage = settings.ScaleImage; imageConvertSettings.BackgroundColor = settings.ImageBackgroundColor; if ( settings.ExtendedImageScale ) { imageConvertSettings.ScaleExtension = 0.5f; } imageConverter = new RtfImageConverter( imageConvertSettings ); } // rtf parser // interpret the rtf structure using the extractors RtfInterpreterTool.Interpret( rtfStructure, interpreterLogger, textConverter, imageConverter ); // get the resulting text if ( textConverter != null ) { text = textConverter.PlainText; } } catch ( Exception e ) { if ( interpreterLogger != null ) { interpreterLogger.Dispose(); } Console.WriteLine( "error while interpreting rtf: " + e.Message ); ExitCode = ProgramExitCode.InterpretRtf; return null; } return text; }