我需要将我的 byteArray 响应转换为 ppt Blob 对象,以在 Angular 2 中创建 .ppt/.pptx 文件。我能够转换为图像和 pdf 格式。但我特别需要 ppt 和 pptx 格式。
var blob = new Blob(resp, {type: 'application/pdf'});
如上所述,ppt 或 pptx 转换时要指定什么类型?
如果我需要添加更多细节,请提及。
您正在寻找 Microsoft PowerPoint MIME 类型:
application/vnd.ms-powerpoint
application/vnd.openxmlformats-officedocument.presentationml.presentation
如果有人发现了这个并想以某种方式将其典型化为 TypeScript,这是我的方法:
export type ReportGenerationFormat = 'PPT' | 'WORD' | 'PDF';
interface ReportFileType {
extension: string;
mimeType: string;
}
/**
* File name extensions and their MIME Types.
* PPT is a proprietary format before PowerPoint 2007.
* PPTX is an open format since PowerPoint 2007.
* PDF is self-explanatory.
* DOC is a Microsoft document before Word 2007.
* DOCX is a Microsoft Word document.
*/
export const ReportFileTypes: Record<string, ReportFileType> = {
PPT: { extension: '.ppt', mimeType: 'application/vnd.ms-powerpoint' },
PPTX: { extension: '.pptx', mimeType: 'application/vnd.openxmlformats-officedocument.presentationml.presentation' },
PDF: { extension: '.pdf', mimeType: 'application/pdf' },
DOC: { extension: '.doc', mimeType: 'application/msword' },
DOCX: { extension: '.docx', mimeType: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' },
};
然后您所要做的就是导入该常量并将其与 fileType 一起使用,如下所示:
ReportFileTypes[fileType].mimeType