자주 묻는 질문

자주 묻는 질문

자주 묻는 질문

Aspose.Slides FOSS for C++를 어떻게 빌드하고 링크합니까?

CMake FetchContent를 사용하여 라이브러리를 프로젝트에 추가하십시오. C++20 이상이 필요합니다.

cmake_minimum_required(VERSION 3.20)
project(my_app LANGUAGES CXX)
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_CXX_STANDARD_REQUIRED ON)

include(FetchContent)
FetchContent_Declare(
    aspose_slides_foss
    GIT_REPOSITORY https://github.com/aspose-slides-foss/Aspose.Slides-FOSS-for-Cpp.git
    GIT_TAG main
)
FetchContent_MakeAvailable(aspose_slides_foss)

add_executable(my_app main.cpp)
target_link_libraries(my_app PRIVATE aspose_slides_foss)

Microsoft Office 또는 기타 시스템 런타임이 필요하지 않습니다.


왜 RAII를 Presentation와 함께 사용해야 하나요?

Presentation 클래스는 내부 XML 리소스를 관리합니다. 객체가 스코프를 벗어나면 소멸자가 해당 리소스를 해제합니다. 스마트 포인터 없이 Presentationnew으로 할당하지 마세요; 스택 할당이나 std::unique_ptr을 사용하여 정리를 보장하십시오.

항상 이 패턴을 따르세요:

#include <Aspose/Slides/Foss/presentation.h>

int main() {
    Aspose::Slides::Foss::Presentation prs;
    // work here
    prs.save("output.pptx", Aspose::Slides::Foss::SaveFormat::PPTX);
    return 0;
}

어떤 파일 형식으로 저장할 수 있나요?

오직 PPTX만 지원됩니다:

prs.save("output.pptx", Aspose::Slides::Foss::SaveFormat::PPTX);

PDF, HTML, SVG 또는 이미지 형식(PNG, JPEG)으로 내보내기는 이 버전에서 사용할 수 없습니다.


.ppt (old PowerPoint 97-2003) 파일을 열 수 있나요?

아니요. .pptx (Office Open XML) 파일만 지원됩니다. 레거시 .ppt 바이너리 형식은 이 라이브러리에서 처리되지 않습니다.


슬라이드에 어떻게 접근하나요?

슬라이드는 prs.slides()을 통해 액세스할 수 있는 0 기반 컬렉션입니다:

auto& slides = prs.slides();
auto& first_slide = slides[0];
auto count = slides.size();

두 번째 슬라이드를 추가하려면 어떻게 해야 하나요?

prs.slides().add_empty_slide()을 레이아웃과 함께 사용하십시오:

Aspose::Slides::Foss::Presentation prs;
auto& layout = prs.layout_slides()[0];
prs.slides().add_empty_slide(&layout);
auto& slide2 = prs.slides()[1];
prs.save("two-slides.pptx", Aspose::Slides::Foss::SaveFormat::PPTX);

슬라이드 배경 색을 어떻게 설정하나요?

슬라이드 배경 색상은 현재 API에서 노출되지 않습니다. BaseSlideSlide에는 background() 메서드가 없습니다. 이 기능은 이 버전 라이브러리에서 사용할 수 없습니다.


NullableBool을(를) 어떻게 사용합니까?

NullableBool는 서식 속성에 사용되는 삼상 열거형입니다. 굵게, 기울임 등과 같은 속성에는 NullableBool::TRUE(C++ true이 아님)를 사용하십시오:

#include <Aspose/Slides/Foss/presentation.h>

fmt.set_font_bold(Aspose::Slides::Foss::NullableBool::TRUE);
fmt.set_font_italic(Aspose::Slides::Foss::NullableBool::FALSE);
// Note: set_font_underline() takes TextUnderlineType, not NullableBool:
// fmt.set_font_underline(Aspose::Slides::Foss::TextUnderlineType::NONE);

텍스트 색상을 설정해도 효과가 없는 이유는 무엇인가요?

색상을 할당하기 전에 fill_typeSOLID로 설정해야 합니다:

fmt.fill_format().set_fill_type(Aspose::Slides::Foss::FillType::SOLID);
fmt.fill_format().solid_fill_color().set_color(
    Aspose::Slides::Foss::Color::from_argb(255, 200, 0, 0));

차트나 스마트아트를 사용할 수 있나요?

아니오. 차트, SmartArt, OLE 개체, 애니메이션, 전환, 하이퍼링크, VBA 매크로 및 디지털 서명은 이 에디션에서 구현되지 않았습니다.


이 라이브러리는 스레드 안전합니까?

Presentation 객체는 독립적입니다. 별도의 스레드에서 별개의 Presentation 인스턴스를 생성하고 사용하는 것은 외부 잠금 없이 스레드 간에 단일 Presentation 객체를 공유하지 않는 한 안전합니다.


이미지를 삽입하려면 어떻게 해야 하나요?

이미지 바이트를 읽어 prs.images()에 추가한 다음 PictureFrame을 생성합니다:

#include <Aspose/Slides/Foss/presentation.h>
#include <fstream>
#include <vector>

std::ifstream file("logo.png", std::ios::binary);
std::vector<uint8_t> data((std::istreambuf_iterator<char>(file)),
                           std::istreambuf_iterator<char>());
auto& image = prs.images().add_image(data);
slide.shapes().add_picture_frame(
    Aspose::Slides::Foss::ShapeType::RECTANGLE, 50, 50, 200, 150, image);

또 보기

 한국어