Office Automation을 사용하지 않고 PowerPoint 프레젠테이션을 생성하는 기술은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/825247

문제

가능하지만 사무실 자동화를 사용하여 PowerPoint 프레젠테이션을 자동으로 생성합니다, 이것은 서버에서 사용하는 것이 권장되지 않습니다. Office Automation을 사용하지 않고 PowerPoint 프레젠테이션을 생성하는 방법은 무엇입니까?

도움이 되었습니까?

해결책

우리가 궁극적으로 취한 경로 인 언급되지 않은 또 다른 옵션은 XML을 엽니 다 Office 2007 및 Office XP에서 순진하게 지원되는 파일 형식 호환성 팩. 사용 XML SDK 1.0을 엽니 다 일을하는 것이 놀랍게도 간단한 것으로 판명되었습니다.

먼저, 일반 템플릿 파일을 교체해야 할 컨텐츠 대신 토큰으로 준비되었습니다. 다음으로 DocumentFormat.openxml에 대한 참조를 프로젝트에 추가해야합니다. 코드 자체는 documentformat.openxml 및 documentformat.openxml.packaging 네임 스페이스를 참조합니다. 마지막으로 슬라이드를 통해 루프하는 코드는 다음과 같습니다.

// Open the presentation
PresentationDocument presentation = PresentationDocument.Open(fileName, true);
// Loop through all of the slides in the presentation
foreach (SlidePart slide in presentation.PresentationPart.SlideParts)
{
    // Read the XML out of the slide
    XmlDocument xml = new XmlDocument();
    xml.Load(slide.GetStream());

    // TODO: Your XML manipulation code here

    // Save the updated slide
    xml.Save(slide.GetStream());
}
// Save the updated presentation
presentation.Close();

다른 팁

PowerPoint 형식 문서를 생성 할 수있는 라이브러리를 사용하는 서버 측 코드를 작성할 수 있습니다. 예를 들어, Java에서는 사용할 수 있습니다 Apache Poi-Hslf PPT 파일을 프로그래밍 방식으로 생성합니다.

해야 할 일에 따라 '템플릿'PPT 파일로 시작하고 컨텐츠를 삽입하거나 편집하기 위해 프로그래밍 방식으로 수정하는 작업이 적을 수 있습니다.

서버 측 기술이 ASP.NET 인 경우 사용할 수 있습니다. 마찬가지로. 슬라이드. 그것은 당신이하고 싶은 일에 따라 비용 효율적인 솔루션이 아닐 수도 있지만 매우 강력하고 잘 작동합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top