public static EmfRecord GetRecord(MetafileReader reader) { int type = reader.PeekInt32(); EmfRecord record; switch (type) { case 0x00000001: record = new EmrHeader(reader); break; case 0x0000000E: record = new EmrEOF(reader); break; case 0x00000021: record = new EmfSaveDC(reader); break; case 0x00000022: record = new EmrRestoreDC(reader); break; case 0x00000046: record = new EmrCommentEmfPlus(reader); break; case 0x0000004C: record = new EmrBitBlt(reader); break; case 0x00000062: record = new EmrSetICMMode(reader); break; default: record = new EmrUnknownRecord(reader); break; } return(record); }