Example #1
0
            internal static DocHelper.IFilter LoadAndInitIFilter(string fileName, string extension)
            {
                DocHelper.IFilter filter = LoadIFilter(extension);
                if (filter == null)
                {
                    return(null);
                }

                IPersistFile persistFile = (filter as IPersistFile);

                if (persistFile != null)
                {
                    persistFile.Load(fileName, 0);
                    DocHelper.IFILTER_FLAGS flags;
                    DocHelper.IFILTER_INIT  iflags =
                        DocHelper.IFILTER_INIT.CANON_HYPHENS |
                        DocHelper.IFILTER_INIT.CANON_PARAGRAPHS |
                        DocHelper.IFILTER_INIT.CANON_SPACES |
                        DocHelper.IFILTER_INIT.APPLY_INDEX_ATTRIBUTES |
                        DocHelper.IFILTER_INIT.HARD_LINE_BREAKS |
                        DocHelper.IFILTER_INIT.FILTER_OWNED_VALUE_OK;

                    if (filter.Init(iflags, 0, IntPtr.Zero, out flags) == DocHelper.IFilterReturnCode.S_OK)
                    {
                        return(filter);
                    }
                }
                //If we failed to retreive an IPersistFile interface or to initialize
                //the filter, we release it and return null.
                Marshal.ReleaseComObject(filter);
                return(null);
            }
Example #2
0
 public FilterReader(string fileName)
 {
     _filter = FilterLoader.LoadAndInitIFilter(fileName);
     if (_filter == null)
     {
         throw new ArgumentException("no filter defined for " + fileName);
     }
 }
Example #3
0
 public FilterReader(string fileName)
 {
     _filter = FilterLoader.LoadAndInitIFilter(fileName);
     if (_filter == null)
         throw new ArgumentException("no filter defined for " + fileName);
 }